From 263bc4c2272eee057ae7cdfed12d74b0781592a7 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 22 Jun 2022 14:53:15 +0800 Subject: [PATCH] 20220528 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 32 ++++++++++++++++++++++++-------- 1 files changed, 24 insertions(+), 8 deletions(-) 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 820a193..ceee7d3 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 @@ -59,6 +59,7 @@ private final AgentProducer agentProducer; private final IPayService payService; + private final IMallAchieveService mallAchieveService; @Override @Transactional(rollbackFor = Exception.class) @@ -243,20 +244,22 @@ if (CollUtil.isNotEmpty(orderItems)) { for (MallOrderItem orderItem : orderItems) { MallGoods mallGoods = mallGoodsMapper.selectById(orderItem.getGoodsId()); - BigDecimal score; + BigDecimal score = BigDecimal.ZERO; MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId()); if (mallGoods.getIsNormal() == 2) { hasTc = true; score = sku.getPresentPrice().multiply(mallGoods.getStaticMulti()); - - // 普通商品1:1 返还积分 - } else { - score = sku.getPresentPrice(); +// BigDecimal staticMulti = mallGoods.getStaticMulti() == null ? BigDecimal.ZERO : mallGoods.getStaticMulti(); +// score = sku.getPresentPrice().multiply(staticMulti); } - memberWalletService.add(score, member.getId(), "score"); - mallMoneyFlowService.addMoneyFlow(member.getId(), score, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue()); + if (score.compareTo(BigDecimal.ZERO) > 0) { + memberWalletService.add(score, member.getId(), "score"); + mallMoneyFlowService.addMoneyFlow(member.getId(), score, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue()); + // 添加业绩 + mallAchieveService.add(orderItem.getId()); + } } } @@ -270,7 +273,7 @@ } mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); -// agentProducer.sendAutoLevelUpMsg(member.getId()); + agentProducer.sendAutoLevelUpMsg(member.getId()); agentProducer.sendOrderReturn(orderInfo.getId()); break; case "4": @@ -421,6 +424,13 @@ orderRefund.setRefundTime(new Date()); orderRefund.setBeforeStatus(beforeStatus); orderRefund.setStatus(OrderRefundStatusEnum.REFUND_APPLY.getValue()); + + // 未发货则退运费,发货了则不退 + if (beforeStatus == 2) { + orderRefund.setAmount(orderInfo.getAmount().add(orderInfo.getCarriage())); + } else { + orderRefund.setAmount(orderInfo.getAmount()); + } mallOrderRefundMapper.insert(orderRefund); } else { orderRefund.setDesp(addRefundDto.getDesp()); @@ -429,6 +439,12 @@ orderRefund.setRefundTime(new Date()); orderRefund.setBeforeStatus(beforeStatus); orderRefund.setStatus(OrderRefundStatusEnum.REFUND_APPLY.getValue()); + // 未发货则退运费,发货了则不退 + if (beforeStatus == 2) { + orderRefund.setAmount(orderInfo.getAmount().add(orderInfo.getCarriage())); + } else { + orderRefund.setAmount(orderInfo.getAmount()); + } mallOrderRefundMapper.updateById(orderRefund); } -- Gitblit v1.9.1