From 1b97bd4f4d8bdc316d5ef6cf1f2dbc11582f0b23 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 01 Sep 2022 17:07:03 +0800
Subject: [PATCH] 20220822
---
src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java | 2 +-
src/main/resources/mapper/modules/MallOrderItemMapper.xml | 4 ++--
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java | 36 ++++++++++++++++++++++++++++--------
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 2 +-
4 files changed, 32 insertions(+), 12 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java
index c8b1298..315dbeb 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java
@@ -10,5 +10,5 @@
List<MallOrderItem> selectItemByGoodsIdUnCancel(@Param("goodsId") Long goodsId, @Param("memberId") Long memberId);
- List<MallOrderItem> selectListByStateAndOrderId(@Param("state")Integer i, @Param("orderId")Long orderId);
+ List<MallOrderItem> selectListByNotInStateAndOrderId(@Param("state")Integer i, @Param("orderId")Long orderId);
}
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 c6cb494..ef11111 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
@@ -789,7 +789,7 @@
mallRefundEntity.setRefundPic(applyRefundOrderDto.getRefundPic());
mallRefundEntity.setMemberId(member.getId());
mallRefundEntity.setState(3);
- mallRefundEntity.setType(1);
+ mallRefundEntity.setType(applyRefundOrderDto.getType());
mallRefundEntity.setOrderId(orderId);
mallRefundEntity.setAmount(mallOrderItem.getAmount());
mallRefundMapper.insert(mallRefundEntity);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
index a94b520..f422b2f 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
@@ -12,6 +12,7 @@
import cc.mrbird.febs.mall.entity.*;
import cc.mrbird.febs.mall.mapper.*;
import cc.mrbird.febs.mall.service.IAdminMallOrderService;
+import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.service.IApiMallTeamLeaderService;
import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
import cc.mrbird.febs.mall.vo.ApiLeaderInfoVo;
@@ -56,6 +57,11 @@
private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
private final MallOrderItemMapper mallOrderItemMapper;
private final MallRefundMapper mallRefundMapper;
+ @Autowired
+ private WeixinServiceUtil weixinServiceUtil;
+ private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
+ private final IMallMoneyFlowService mallMoneyFlowService;
+ private final IApiMallMemberWalletService memberWalletService;
@Override
@Transactional
@@ -272,13 +278,6 @@
return new FebsResponse().success().data(result);
}
-
-
- @Autowired
- private WeixinServiceUtil weixinServiceUtil;
- private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
- private final IMallMoneyFlowService mallMoneyFlowService;
-
@Override
@Transactional
public FebsResponse leaderRefundOrder(ApiLeaderRefundOrderDto apiLeaderRefundOrderDto) {
@@ -318,6 +317,27 @@
BigDecimal bb = new BigDecimal(100);
int refundMoney = refundAmount.multiply(bb).intValue();
+ //余额支付退款
+ if(mallRefundEntity.getType() == 3){
+ //更新订单详情
+ mallOrderItem.setState(3);
+ mallOrderItemMapper.updateById(mallOrderItem);
+ //更新退款订单
+ mallRefundEntity.setState(1);
+ mallRefundEntity.setUpdatedTime(DateUtil.date());
+ mallRefundMapper.updateById(mallRefundEntity);
+ mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
+
+ List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId);
+ if(CollUtil.isEmpty(mallOrderItemList)){
+ MallOrderInfo mallOrderRefund = mallOrderInfoMapper.selectById(orderId);
+ mallOrderRefund.setStatus(6);
+ mallOrderInfoMapper.updateById(mallOrderRefund);
+ }
+ memberWalletService.add(refundAmount, mallOrderInfo.getMemberId(), "balance");
+ return new FebsResponse().success().message("退款成功");
+ }
+
Boolean flag = false;
Boolean debug = xcxProperties.getDebug();
if (debug) {
@@ -339,7 +359,7 @@
mallRefundMapper.updateById(mallRefundEntity);
mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
- List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByStateAndOrderId(1,orderId);
+ List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId);
if(CollUtil.isEmpty(mallOrderItemList)){
MallOrderInfo mallOrderRefund = mallOrderInfoMapper.selectById(orderId);
mallOrderRefund.setStatus(6);
diff --git a/src/main/resources/mapper/modules/MallOrderItemMapper.xml b/src/main/resources/mapper/modules/MallOrderItemMapper.xml
index 3279e3f..f599a75 100644
--- a/src/main/resources/mapper/modules/MallOrderItemMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderItemMapper.xml
@@ -8,9 +8,9 @@
where a.goods_id=#{goodsId} and b.member_id=#{memberId}
</select>
- <select id="selectListByStateAndOrderId" resultType="cc.mrbird.febs.mall.entity.MallOrderItem">
+ <select id="selectListByNotInStateAndOrderId" resultType="cc.mrbird.febs.mall.entity.MallOrderItem">
select a.* from mall_order_item a
- where a.state=#{state} and a.order_id=#{orderId}
+ where a.state != #{state} and a.order_id=#{orderId}
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1