From 9ac4d80845f961574b4732e87a4bb80993705512 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 08 Sep 2022 16:23:14 +0800
Subject: [PATCH] 20220902
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 90 ++++++++++++--------------------------------
1 files changed, 25 insertions(+), 65 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 09e56e6..fd7ac30 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
@@ -462,7 +462,8 @@
@Override
public OrderDetailVo findOrderDetailsById(Long id) {
MallOrderInfo orderInfo = this.baseMapper.selectOrderDetailsById(id);
- if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) {
+// if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) {
+ if (ObjectUtil.isNull(orderInfo)) {
throw new FebsException("订单不存在");
}
@@ -504,6 +505,11 @@
if (orderInfo.getDeliveryState() != OrderDeliveryStateEnum.DELIVERY_FINISH.getValue()) {
throw new FebsException("还未送至自提点");
+ }
+
+ List<MallRefundEntity> mallRefundEntities = mallRefundMapper.selectByItemIdAndOrderIdAndState(null, orderInfo.getId(), 3);
+ if(CollUtil.isNotEmpty(mallRefundEntities)){
+ throw new FebsException("请先处理退款商品");
}
orderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
@@ -722,9 +728,10 @@
mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_RITEM"+mallOrderItem.getId());
mallRefundEntity.setMemberId(member.getId());
mallRefundEntity.setOrderId(mallOrderInfo.getId());
- if("余额支付"==mallOrderInfo.getPayMethod()){
+ mallRefundEntity.setItemId(mallOrderItem.getId());
+ if("余额支付".equals(mallOrderInfo.getPayMethod())){
mallRefundEntity.setType(3);
- }else if("微信支付"==mallOrderInfo.getPayMethod()){
+ }else if("微信支付".equals(mallOrderInfo.getPayMethod())){
mallRefundEntity.setType(1);
}else{
mallRefundEntity.setType(3);
@@ -736,14 +743,12 @@
if(mallRefund.getState() == 1){
return new FebsResponse().fail().message("订单已退款");
}
- if(mallRefund.getState() == 3){
- return new FebsResponse().fail().message("订单退款中");
- }
- if(mallRefund.getState() == 2){
+ if(mallRefund.getState() == 2 || mallRefund.getState() == 3){
mallRefundEntity.setId(mallRefund.getId());
mallRefundEntity.setRefundNo(mallRefund.getRefundNo());
mallRefundEntity.setMemberId(mallRefund.getMemberId());
mallRefundEntity.setOrderId(mallRefund.getOrderId());
+ mallRefundEntity.setItemId(mallRefund.getItemId());
mallRefundEntity.setType(mallRefund.getType());
mallRefundEntity.setState(3);
mallRefundEntity.setAmount(mallRefund.getAmount());
@@ -755,65 +760,8 @@
apiLeaderRefundOrderDto.setItemId(mallOrderItem.getId());
apiLeaderRefundOrderDto.setAgreeState(1);
iApiMallTeamLeaderService.leaderRefundOrder(apiLeaderRefundOrderDto);
-
-// //退款订单编号
-// String orderNo = mallOrderInfo.getOrderNo();
-// //退款退款编号
-// String refundNo = mallRefundEntity.getRefundNo();
-// //退款订单金额
-// BigDecimal orderAmount = mallOrderInfo.getAmount();
-// BigDecimal aa = new BigDecimal(100);
-// int orderMoney = orderAmount.multiply(aa).intValue();
-//
-// //退款退款金额
-// BigDecimal refundAmount = mallRefundEntity.getAmount();
-// BigDecimal bb = new BigDecimal(100);
-// int refundMoney = refundAmount.multiply(bb).intValue();
-//
-// Long refundId = mallRefundEntity.getId();
-// MallRefundEntity mallRefundOld = mallRefundMapper.selectById(refundId);
-// MallOrderInfo mallOrderInfoOld = this.baseMapper.selectByOrderNo(orderNo);
-// //余额支付退款
-// if(OrderPayMethodEnum.BALANCE.getName().equals(mallOrderInfo.getPayMethod())){
-// mallRefundOld.setState(1);
-// mallRefundMapper.updateById(mallRefundOld);
-// mallOrderInfoOld.setStatus(OrderStatusEnum.REFUNDED.getValue());
-// this.baseMapper.updateById(mallOrderInfoOld);
-// mallMoneyFlowService.addMoneyFlow(mallOrderInfoOld.getMemberId(), mallOrderInfoOld.getAmount(), MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
-// memberWalletService.add(refundAmount, member.getId(), "balance");
-// mallOrderItemMapper.updateStateByOrderId(3,mallOrderInfoOld.getId());
-// return new FebsResponse().success().message("退款成功");
-// }
-//
-// Boolean flag = false;
-// Boolean debug = xcxProperties.getDebug();
-// if (debug) {
-// boolean b = weixinServiceUtil.comRefund(orderNo, refundNo, 1, 1, null);
-// flag = b;
-// } else {
-// log.info("开始调用退款接口。。。退款编号为{}", refundNo);
-// boolean b = weixinServiceUtil.comRefund(orderNo, refundNo, orderMoney, refundMoney, null);
-// flag = b;
-// }
-//
-// /**
-// * 更新退款表
-// * 更新订单表
-// */
-// if(flag){
-// mallRefundOld.setState(1);
-// mallRefundMapper.updateById(mallRefundOld);
-// mallOrderInfoOld.setStatus(OrderStatusEnum.REFUNDED.getValue());
-// this.baseMapper.updateById(mallOrderInfoOld);
-// mallOrderItemMapper.updateStateByOrderId(3,mallOrderInfoOld.getId());
-// mallMoneyFlowService.addMoneyFlow(mallOrderInfoOld.getMemberId(), mallOrderInfoOld.getAmount(), MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
-// }else{
-// mallRefundOld.setState(2);
-// mallRefundMapper.updateById(mallRefundOld);
-// return new FebsResponse().fail().message("退款失败,请联系客服人员");
-// }
}
- return new FebsResponse().success().message("退款成功");
+ return new FebsResponse().success();
}
@Override
@@ -855,4 +803,16 @@
return new FebsResponse().success().message("已申请");
}
+ @Override
+ public FebsResponse cancelRefundOrder(Long id) {
+ MallRefundEntity mallRefundEntity = mallRefundMapper.selectById(id);
+ mallRefundEntity.setState(2);
+ mallRefundMapper.updateById(mallRefundEntity);
+ Long itemId = mallRefundEntity.getItemId();
+ MallOrderItem mallOrderItem = mallOrderItemMapper.selectById(itemId);
+ mallOrderItem.setState(1);
+ mallOrderItemMapper.updateById(mallOrderItem);
+ return new FebsResponse().success().message("已取消");
+ }
+
}
--
Gitblit v1.9.1