Commit 407188f2 authored by tangf's avatar tangf

保存资金流水和商户余额MQ拆分

parent 778af98c
......@@ -15,6 +15,7 @@ import com.pangding.web.vo.order.req.back.CashWithdrawalBackReqVo;
import com.pangding.web.vo.order.tl.CashWithdrawalReqVo;
import com.pangding.web.vo.order.tl.SoundReqVo;
import com.pangding.web.vo.system.req.CompanyMsgReqVo;
import com.pangding.web.vo.system.req.company.UpdateCompanyMoneyReqVo;
import com.rabbitmq.client.Channel;
import com.yanzuoguang.mq.service.MqService;
import com.yanzuoguang.mq.vo.MessageVo;
......@@ -74,14 +75,16 @@ public class CompanyConsumer {
companyProducer.applyWithdrawal(capitalFlowReqVo);
}
public void updateCompanyMoneyMQ(UpdateCompanyMoneyReqVo updateCompanyMoneyReqVo){
companyProducer.companyMoneyUpdate(updateCompanyMoneyReqVo);
}
@RabbitListener(queues = {MqConstant.COMPANY_MONEY_UPDATE})
public void UpdateCompanyMoney(String content, Message message, Channel channel) {
log.info("[UpdateCompanyMoney 监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
public void updateCompanyMoney(String content, Message message, Channel channel) {
log.info("[updateCompanyMoney 监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
try {
// CompanyMoneyUpdateReqVo companyMoneyUpdateReqVo = JsonHelper.deserialize(content, CompanyMoneyUpdateReqVo.class);
// companyService.updateCompanyMoney(companyMoneyUpdateReqVo);
CapitalFlowReqVo capitalFlowReqVo = JsonHelper.deserialize(content, CapitalFlowReqVo.class);
financeService.updateCompanyMoney(capitalFlowReqVo);
UpdateCompanyMoneyReqVo updateCompanyMoneyReqVo = JsonHelper.deserialize(content, UpdateCompanyMoneyReqVo.class);
financeService.updateCompanyMoney(updateCompanyMoneyReqVo);
} catch (Exception e) {
Log.error(CompanyConsumer.class, e);
mqService.message(new MessageVo(MqConstant.COMPANY_MONEY_UPDATE, MqConstant.COMPANY_MONEY_UPDATE,
......@@ -91,6 +94,21 @@ public class CompanyConsumer {
}
}
@RabbitListener(queues = {MqConstant.SAVE_CAPITAL_FLOW})
public void saveCapitalFlow(String content, Message message, Channel channel) {
log.info("[saveCapitalFlow 监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
try {
CapitalFlowReqVo capitalFlowReqVo = JsonHelper.deserialize(content, CapitalFlowReqVo.class);
financeService.saveCapitalFlow(capitalFlowReqVo);
} catch (Exception e) {
Log.error(CompanyConsumer.class, e);
mqService.message(new MessageVo(MqConstant.SAVE_CAPITAL_FLOW, MqConstant.SAVE_CAPITAL_FLOW,
content, 2000));
} finally {
mqService.basicAck(message, channel);
}
}
@RabbitListener(queues = {MqConstant.COMPANY_MSG})
public void saveComapnyMsg(String content, Message message, Channel channel) {
log.info("[saveComapnyMsg 监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
......
......@@ -5,6 +5,7 @@ import com.pangding.web.authority.vo.resvo.WithdrawalResVo;
import com.pangding.web.vo.order.req.CapitalFlowReqVo;
import com.pangding.web.vo.order.req.back.CashWithdrawalBackReqVo;
import com.pangding.web.vo.order.res.CapitalFlowListResVo;
import com.pangding.web.vo.system.req.company.UpdateCompanyMoneyReqVo;
import com.yanzuoguang.util.vo.ResponseResult;
/**
......@@ -36,6 +37,8 @@ public interface FinanceService {
* @param req
* @return
*/
ResponseResult<String> updateCompanyMoney(CapitalFlowReqVo req);
ResponseResult<String> saveCapitalFlow(CapitalFlowReqVo req);
void updateCompanyMoney(UpdateCompanyMoneyReqVo updateCompanyMoneyReqVo);
}
......@@ -160,11 +160,12 @@ public class FinanceServiceImpl implements FinanceService {
updateCompanyMoneyReqVo.setCompanyId(companyResVo.getId());
updateCompanyMoneyReqVo.setOldWithdrawTotalCash(oldMoney);
updateCompanyMoneyReqVo.setNewWithdrawTotalCash(newMoney);
companyExtendDao.updateCompanyMoney(updateCompanyMoneyReqVo);
companyConsumer.updateCompanyMoneyMQ(updateCompanyMoneyReqVo);
// companyExtendDao.updateCompanyMoney(updateCompanyMoneyReqVo);
capitalFlowVo.setInitMoney(oldMoney);
capitalFlowVo.setFinalMoney(newMoney);
updateCompanyMoney(capitalFlowVo, companyResVo);
saveCompanyMoney(capitalFlowVo, companyResVo);
}
}
capitalFlowDao.update(capitalFlowVo);
......@@ -176,7 +177,7 @@ public class FinanceServiceImpl implements FinanceService {
@Transactional
@Override
public ResponseResult<String> updateCompanyMoney(CapitalFlowReqVo req) {
public ResponseResult<String> saveCapitalFlow(CapitalFlowReqVo req) {
CompanyResVo companyVo = companyDao.load(req.getCompanyId(), CompanyResVo.class);
if (StringHelper.isEmpty(companyVo)) {
throw new CodeException("未找到公司信息");
......@@ -185,13 +186,13 @@ public class FinanceServiceImpl implements FinanceService {
double oldMoney = companyVo.getWithdrawTotalCash();
double newMoney = oldMoney;
double money = req.getActualMoney();
if (CompanyConstant.MONEY_CATEGORY_TYPE_DEAL == req.getCategory()
|| CompanyConstant.MONEY_CATEGORY_TYPE_RECHARGE == req.getCategory()
|| CompanyConstant.MONEY_CATEGORY_TYPE_OVER == req.getCategory()) {
if (CompanyConstant.CATEGORY_ENTRY == req.getCategory()
|| CompanyConstant.CATEGORY_RECHARGE == req.getCategory()
|| CompanyConstant.CATEGORY_DIVIDEND == req.getCategory()) {
// 交易订单金额 充值 分润
newMoney = oldMoney + req.getActualMoney();
}
if (CompanyConstant.MONEY_CATEGORY_TYPE_REFUND == req.getCategory()) {
if (CompanyConstant.CATEGORY_REFUND == req.getCategory()) {
// 退款
newMoney = oldMoney - req.getActualMoney();
money = -money;
......@@ -222,29 +223,36 @@ public class FinanceServiceImpl implements FinanceService {
updateCompanyMoneyReqVo.setCompanyId(companyVo.getId());
updateCompanyMoneyReqVo.setOldWithdrawTotalCash(oldMoney);
updateCompanyMoneyReqVo.setNewWithdrawTotalCash(newMoney);
companyExtendDao.updateCompanyMoney(updateCompanyMoneyReqVo);
updateCompanyMoney(capitalFlowVo, companyVo);
// companyExtendDao.updateCompanyMoney(updateCompanyMoneyReqVo);
companyConsumer.updateCompanyMoneyMQ(updateCompanyMoneyReqVo);
saveCompanyMoney(capitalFlowVo, companyVo);
return ResponseResult.result("处理完成");
}
public void updateCompanyMoney(CapitalFlowVo capitalFlowVo, CompanyResVo companyVo){
@Override
public void updateCompanyMoney(UpdateCompanyMoneyReqVo updateCompanyMoneyReqVo){
companyExtendDao.updateCompanyMoney(updateCompanyMoneyReqVo);
}
public void saveCompanyMoney(CapitalFlowVo capitalFlowVo, CompanyResVo companyVo){
//修改公司余额
double oldMoney = companyVo.getWithdrawTotalCash();
double inMoney = 0d, outMoney = 0d, refundMoney = 0d;
int inNumber = 0, outNumber = 0, refundNumber = 0;
if (CompanyConstant.MONEY_CATEGORY_TYPE_DEAL == capitalFlowVo.getCategory()
|| CompanyConstant.MONEY_CATEGORY_TYPE_RECHARGE == capitalFlowVo.getCategory()
|| CompanyConstant.MONEY_CATEGORY_TYPE_OVER == capitalFlowVo.getCategory()) {
if (CompanyConstant.CATEGORY_ENTRY == capitalFlowVo.getCategory()
|| CompanyConstant.CATEGORY_RECHARGE == capitalFlowVo.getCategory()
|| CompanyConstant.CATEGORY_DIVIDEND == capitalFlowVo.getCategory()) {
// 交易订单金额 充值 分润
inNumber = 1;
inMoney = capitalFlowVo.getActualMoney();
}
if (CompanyConstant.MONEY_CATEGORY_TYPE_REFUND == capitalFlowVo.getCategory()) {
if (CompanyConstant.CATEGORY_REFUND == capitalFlowVo.getCategory()) {
// 退款
refundNumber = 1;
refundMoney = capitalFlowVo.getActualMoney();
}
if (CompanyConstant.MONEY_CATEGORY_TYPE_DRAW == capitalFlowVo.getCategory()) {
if (CompanyConstant.CATEGORY_WITHDRAWAL == capitalFlowVo.getCategory()) {
// 提现
outNumber = 1;
outMoney = -capitalFlowVo.getOrderMoney();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment