Browse Source

问题修改

liweifan 3 years ago
parent
commit
cb52117aae

+ 7 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderRefundServiceImpl.java

@@ -125,7 +125,9 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
         if (CollectionUtils.isEmpty(refundReq.getOredrDetilIds())) {
             //查询订单下未退款的所有详情订单
             List<UserOrderDetail> orderDetails = baseMapper.selectOrderRefundDetils(detail.getId());
-
+            if(CollectionUtils.isEmpty(orderDetails)){
+                return HttpResponseResult.failed("订单中没有可退款商品");
+            }
             refundReq.setOredrDetilIds(orderDetails.stream().map(UserOrderDetail::getId).collect(Collectors.toList()));
         }
         //退款的详情id
@@ -237,6 +239,9 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
         }
         //查询订单下未退款的所有详情订单
         List<UserOrderDetail> orderDetails = baseMapper.selectOrderRefundDetils(detail.getId());
+        if(CollectionUtils.isEmpty(orderDetails)){
+            return HttpResponseResult.failed("订单中没有可退款商品");
+        }
 
         //退款的详情id
         List<Long> detilIds = orderDetails.stream().map(UserOrderDetail::getId).collect(Collectors.toList());
@@ -259,11 +264,9 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
                 orderRefundReq.setOredrDetil(vo);
                 HttpResponseResult<RefundCreateRes> apply = refundCreateFunction.apply(orderRefundReq);
                 if (apply.getStatus()) {
-                    detilIds.add(vo.getId());
                     actualPrice = actualPrice.add(apply.getData().getActualPrice());
                 }
             } else {
-                detilIds.add(vo.getId());
                 actualPrice = actualPrice.add(vo.getActualPrice());
             }
         }
@@ -276,6 +279,7 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
         orderRefunds.setOredrDetilIds(join);
         orderRefunds.setStatus(AuthStatusEnum.PASS);
         orderRefunds.setApplyAmount(actualPrice);
+        orderRefunds.setActualAmount(actualPrice);
         orderRefunds.setReason(reason);
         save(orderRefunds);