refactor(mall): 重构订单退款和资金流水相关逻辑
- 更新了订单退款时的资金流水记录方式
- 从 MoneyFlowTypeEnum 改为 ScoreFlowTypeEnum
- 增加了退款金额的格式化描述
- 统一了余额退款和微信退款的资金流水处理方式
| | |
| | | public enum ScoreFlowTypeEnum { |
| | | |
| | | |
| | | WECHAT_REFUND(15,"退款{}到微信"), |
| | | REFUND(14, "退款{}到余额"), |
| | | /** |
| | | * 抽奖 |
| | | */ |
| | |
| | | |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cc.mrbird.febs.common.entity.QueryRequest; |
| | | import cc.mrbird.febs.common.enumerates.FlowTypeEnum; |
| | | import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; |
| | | import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum; |
| | | import cc.mrbird.febs.common.enumerates.OrderStatusEnum; |
| | | import cc.mrbird.febs.common.enumerates.*; |
| | | import cc.mrbird.febs.mall.dto.*; |
| | | import cc.mrbird.febs.mall.entity.*; |
| | | import cc.mrbird.febs.mall.mapper.*; |
| | |
| | | //用户钱包增加对应的余额 |
| | | iApiMallMemberWalletService.addBalance(amount, mallOrderInfo.getMemberId()); |
| | | |
| | | mallMoneyFlowService.addMoneyFlow(mallOrderRefund.getMemberId(), amount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | mallOrderInfo.getMemberId(), |
| | | amount, |
| | | ScoreFlowTypeEnum.REFUND.getValue(), |
| | | mallOrderInfo.getOrderNo(), |
| | | FlowTypeEnum.BALANCE.getValue(), |
| | | StrUtil.format(ScoreFlowTypeEnum.REFUND.getDesc(),amount), |
| | | 2 |
| | | ); |
| | | } |
| | | |
| | | MallOrderRefundOperation mallOrderRefundOperation = new MallOrderRefundOperation(); |
| | |
| | | iApiMallMemberWalletService.addBalance(refundAmount, mallOrderInfo.getMemberId()); |
| | | |
| | | //新增一条资金流水 |
| | | mallMoneyFlowService.addMoneyFlow(mallOrderRefund.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); |
| | | |
| | | |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | mallOrderInfo.getMemberId(), |
| | | refundAmount, |
| | | ScoreFlowTypeEnum.REFUND.getValue(), |
| | | mallOrderInfo.getOrderNo(), |
| | | FlowTypeEnum.BALANCE.getValue(), |
| | | StrUtil.format(ScoreFlowTypeEnum.REFUND.getDesc(),refundAmount), |
| | | 2 |
| | | ); |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | |
| | | mallRefundEntity.setState(1); |
| | | mallRefundEntity.setUpdatedTime(DateUtil.date()); |
| | | mallRefundMapper.updateById(mallRefundEntity); |
| | | mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额退款",2); |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | mallOrderInfo.getMemberId(), |
| | | refundAmount, |
| | | ScoreFlowTypeEnum.REFUND.getValue(), |
| | | mallOrderInfo.getOrderNo(), |
| | | FlowTypeEnum.BALANCE.getValue(), |
| | | StrUtil.format(ScoreFlowTypeEnum.REFUND.getDesc(),refundAmount), |
| | | 2 |
| | | ); |
| | | |
| | | List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId); |
| | | if(CollUtil.isEmpty(mallOrderItemList)){ |
| | |
| | | mallRefundEntity.setState(1); |
| | | mallRefundEntity.setUpdatedTime(DateUtil.date()); |
| | | mallRefundMapper.updateById(mallRefundEntity); |
| | | mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.WECHAT_REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.WECHAT.getValue(),"微信退款",2); |
| | | |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | mallOrderInfo.getMemberId(), |
| | | refundAmount, |
| | | ScoreFlowTypeEnum.WECHAT_REFUND.getValue(), |
| | | mallOrderInfo.getOrderNo(), |
| | | FlowTypeEnum.BALANCE.getValue(), |
| | | StrUtil.format(ScoreFlowTypeEnum.WECHAT_REFUND.getDesc(),refundAmount), |
| | | 2 |
| | | ); |
| | | |
| | | List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId); |
| | | if(CollUtil.isEmpty(mallOrderItemList)){ |