From 09090250b33c1f818c2364a8d03cf6d7b6c2c6de Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 15 Aug 2023 10:06:56 +0800 Subject: [PATCH] 赠送积分更新状态 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 32 ++++++++-------- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 69 ++++++++++++++++++++++++++++++++-- 2 files changed, 80 insertions(+), 21 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java index aa32039..1129921 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java @@ -405,23 +405,23 @@ if(ObjectUtil.isNotEmpty(mallGoods.getIsUnreal()) && 1 == mallGoods.getIsUnreal()){ mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue()); mallOrderInfoMapper.updateById(mallOrderInfo); - } - //是否送券 1:是 2:否 - BigDecimal levelTwoPrice = mallGoods.getLevelTwoPrice(); - if(BigDecimal.ONE.compareTo(levelTwoPrice) == 0){ - MallRollPerk mallRollPerk = new MallRollPerk(); - mallRollPerk.setMemberId(memberId); - mallRollPerk.setState(1); - mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue()); - mallRollPerkMapper.insert(mallRollPerk); - } - //赠送积分 - BigDecimal levelOnePrice = mallGoods.getLevelOnePrice(); - if(BigDecimal.ZERO.compareTo(levelOnePrice) <= 0){ - memberWalletService.add(levelOnePrice, memberId, "score"); + //是否送券 1:是 2:否 + BigDecimal levelTwoPrice = mallGoods.getLevelTwoPrice(); + if(BigDecimal.ONE.compareTo(levelTwoPrice) == 0){ + MallRollPerk mallRollPerk = new MallRollPerk(); + mallRollPerk.setMemberId(memberId); + mallRollPerk.setState(1); + mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue()); + mallRollPerkMapper.insert(mallRollPerk); + } + //赠送积分 + BigDecimal levelOnePrice = mallGoods.getLevelOnePrice(); + if(BigDecimal.ZERO.compareTo(levelOnePrice) <= 0){ + memberWalletService.add(levelOnePrice, memberId, "score"); - mallMoneyFlowService.addMoneyFlow(memberId, levelOnePrice, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), - mallOrderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"赠送积分",2); + mallMoneyFlowService.addMoneyFlow(memberId, levelOnePrice, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), + mallOrderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"赠送积分",2); + } } } } diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index 1656f38..b05c465 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -294,6 +294,7 @@ String payResultStr = ""; String wxResultStr = ""; String amountActualMsg = "0"; + StringBuffer stringBuffer = new StringBuffer(); switch (payOrderDto.getType()) { case "1": BrandWCPayRequestData brandWCPayRequestData = null; @@ -321,6 +322,11 @@ orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2); amountActualMsg = orderInfo.getAmount().toString(); + + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); break; case "3": /** @@ -376,6 +382,11 @@ mallMoneyFlowService.addMoneyFlow(member.getId(), scoreActual.negate(), MoneyFlowTypeEnum.SCORE_PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"积分支付",2); } + + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); break; case "4": MallRollPerk mallRollPerk = mallRollPerkMapper.selectById(payOrderDto.getRollId()); @@ -395,6 +406,11 @@ orderInfo.setPayMethod("兑换券支付"); orderInfo.setPayTime(new Date()); orderInfo.setPayResult("1"); + + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.ROLL_PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.PRIZE_SCORE.getValue()); @@ -429,6 +445,11 @@ orderInfo.setPayMethod("余额加微信"); orderInfo.setAmount(amountThree); amountActualMsg = amountThree.toString(); + + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); break; /** * 积分加余额 @@ -465,6 +486,11 @@ mallMoneyFlowService.addMoneyFlow(member.getId(), amountActualOne.negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2); amountActualMsg = amountActualOne.toString(); + + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); orderInfo.setPayMethod("积分加余额"); mallMoneyFlowService.addMoneyFlow(member.getId(), scoreOne.negate(), @@ -505,6 +531,12 @@ payResultStr = brandWCPayRequestDataTwo.getPrepay_id(); orderInfo.setPayMethod("积分加微信"); amountActualMsg = amountActualTwo.toString(); + + + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); break; default: throw new FebsException("请选择正确的支付方式"); @@ -518,11 +550,11 @@ String takeCode = ShareCodeUtil.toSerialCode(orderInfo.getId()); orderInfo.setTakeCode(takeCode); this.baseMapper.updateById(orderInfo); - StringBuffer stringBuffer = new StringBuffer(); - stringBuffer.append(orderInfo.getId().toString()); - stringBuffer.append("@"); - stringBuffer.append(amountActualMsg); - agentProducer.sendOrderGetMsg(stringBuffer.toString()); +// StringBuffer stringBuffer = new StringBuffer(); +// stringBuffer.append(orderInfo.getId().toString()); +// stringBuffer.append("@"); +// stringBuffer.append(amountActualMsg); +// agentProducer.sendOrderGetMsg(stringBuffer.toString()); agentProducer.sendRollSendMsg(orderInfo.getId()); // OrderStateDto orderStateDto = new OrderStateDto(); @@ -659,6 +691,33 @@ mallMoneyFlowMapper.updateById(mallMoneyFlow); memberWalletService.add(mallMoneyFlow.getAmount(), parentId, "balance"); } + List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(orderInfo.getId()); + if(CollUtil.isNotEmpty(mallOrderItemList)){ + for(MallOrderItem mallOrderItem : mallOrderItemList){ + Long goodsId = mallOrderItem.getGoodsId(); + MallGoods mallGoods = mallGoodsMapper.selectById(goodsId); + if(ObjectUtil.isEmpty(mallGoods)){ + break; + } + //是否送券 1:是 2:否 + BigDecimal levelTwoPrice = mallGoods.getLevelTwoPrice(); + if(BigDecimal.ONE.compareTo(levelTwoPrice) == 0){ + MallRollPerk mallRollPerk = new MallRollPerk(); + mallRollPerk.setMemberId(member.getId()); + mallRollPerk.setState(1); + mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue()); + mallRollPerkMapper.insert(mallRollPerk); + } + //赠送积分 + BigDecimal levelOnePrice = mallGoods.getLevelOnePrice(); + if(BigDecimal.ZERO.compareTo(levelOnePrice) <= 0){ + memberWalletService.add(levelOnePrice, member.getId(), "score"); + + mallMoneyFlowService.addMoneyFlow(member.getId(), levelOnePrice, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), + orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"赠送积分",2); + } + } + } } -- Gitblit v1.9.1