From 1a6a034373a07c5ce7b5a442b7ddf5842fc4e7b4 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 30 Aug 2022 14:40:00 +0800
Subject: [PATCH] 20220822

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 46 insertions(+), 1 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 616e4c3..20b1a19 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
@@ -127,6 +127,7 @@
                 orderItem.setStyleName(mallGoods.getGoodsName());
                 orderItem.setSkuName(mallGoods.getGoodsName());
                 orderItem.setSkuImage(mallGoods.getThumb());
+                orderItem.setState(1);
 
                 total = total.add(amount);
             } else {
@@ -161,6 +162,7 @@
                 orderItem.setGoodsId(sku.getGoodsId());
                 orderItem.setGoodsName(sku.getGoodsName());
                 orderItem.setSkuId(sku.getId());
+                orderItem.setState(1);
                 orderItem.setStyleName(sku.getStyleName());
                 orderItem.setSkuName(sku.getSkuName());
                 orderItem.setSkuImage(sku.getSkuImage());
@@ -180,7 +182,11 @@
             }
             mallOrderItemMapper.insert(orderItem);
         }
-
+        //配送费
+        BigDecimal delivaryAmount = addOrderDto.getDeliveryAmount() == null ? BigDecimal.ZERO : addOrderDto.getDeliveryAmount();
+        if(BigDecimal.ZERO.compareTo(delivaryAmount) < 0 && 1 == addOrderDto.getIsHome()){
+            total = total.add(delivaryAmount);
+        }
         orderInfo.setAmount(total);
         orderInfo.setCarriage(carriage);
 
@@ -729,4 +735,43 @@
         return new FebsResponse().success().message("退款成功");
     }
 
+    @Override
+    public FebsResponse applyRefundOrder(ApplyRefundOrderDto applyRefundOrderDto) {
+        Long orderId = applyRefundOrderDto.getOrderId();
+        Long itemId = applyRefundOrderDto.getItemId();
+        MallMember member = LoginUserUtil.getLoginUser();
+        MallOrderInfo mallOrderInfo = this.baseMapper.selectById(orderId);
+        if(ObjectUtil.isEmpty(mallOrderInfo)){
+            return new FebsResponse().fail().message("订单不存在");
+        }
+
+        List<MallRefundEntity> mallRefundEntitieSuccess = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId,orderId,1);
+        List<MallRefundEntity> mallRefundEntitiesIng = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId,orderId,3);
+        if(CollUtil.isNotEmpty(mallRefundEntitieSuccess) || CollUtil.isNotEmpty(mallRefundEntitiesIng)){
+            return new FebsResponse().fail().message("该订单无法申请退款");
+        }
+
+        MallRefundEntity mallRefundEntity = new MallRefundEntity();
+        MallOrderItem mallOrderItem = mallOrderItemMapper.selectById(itemId);
+        if(ObjectUtil.isNotEmpty(mallOrderItem)){
+            mallOrderItem.setState(2);
+            mallOrderItemMapper.updateById(mallOrderItem);
+            mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_RITEM"+itemId);
+            mallRefundEntity.setItemId(itemId);
+        }else{
+
+            mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_R"+orderId);
+        }
+        mallRefundEntity.setRefundReason(applyRefundOrderDto.getRefundReason());
+        mallRefundEntity.setRefundRemark(applyRefundOrderDto.getRefundRemark());
+        mallRefundEntity.setRefundPic(applyRefundOrderDto.getRefundPic());
+        mallRefundEntity.setMemberId(member.getId());
+        mallRefundEntity.setState(3);
+        mallRefundEntity.setType(1);
+        mallRefundEntity.setOrderId(orderId);
+        mallRefundEntity.setAmount(mallOrderItem.getAmount());
+        mallRefundMapper.insert(mallRefundEntity);
+        return new FebsResponse().success().message("已申请");
+    }
+
 }

--
Gitblit v1.9.1