From 31caa96bc740697c01812ec8382b492b309bab93 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 24 Sep 2021 17:10:25 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java |   90 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 86 insertions(+), 4 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
index b862a1a..d3c5d94 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -2,12 +2,11 @@
 
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
-import cc.mrbird.febs.mall.dto.DeliverGoodsDto;
-import cc.mrbird.febs.mall.dto.MallOrderInfoDto;
-import cc.mrbird.febs.mall.dto.MallOrderRefundDto;
+import cc.mrbird.febs.mall.dto.*;
 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.vo.*;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.ObjectUtil;
@@ -35,6 +34,12 @@
     private final MallOrderRefundMapper mallOrderRefundMapper;
 
     private final MallOrderRefundOperationMapper mallOrderRefundOperationMapper;
+
+    private final MallOrderRefundAddressMapper mallOrderRefundAddressMapper;
+
+    private final MallMoneyFlowMapper mallMoneyFlowMapper;
+
+    private final IApiMallMemberWalletService iApiMallMemberWalletService;
 
     @Override
     public IPage<AdminMallOrderInfoVo> getOrderListInPage(MallOrderInfoDto mallOrderInfo, QueryRequest request) {
@@ -67,7 +72,8 @@
             return new FebsResponse().fail().message("请输入物流公司");
         }
         MallExpressInfo mallExpressInfo = new MallExpressInfo();
-        mallExpressInfo.setMemberId(mallExpressInfo.getMemberId());
+        mallExpressInfo.setMemberId(mallOrderInfo.getMemberId());
+        mallExpressInfo.setOrderId(mallOrderInfo.getId());
         mallExpressInfo.setExpressNo(expressNo);
         mallExpressInfo.setExpressCom(expressCom);
         mallExpressInfoMapper.insert(mallExpressInfo);
@@ -149,5 +155,81 @@
         return new FebsResponse().success();
     }
 
+    @Override
+    public FebsResponse refundConfirm(Long id) {
+        MallOrderRefund mallOrderRefund = mallOrderRefundMapper.selectById(id);
+        if(ObjectUtil.isEmpty(mallOrderRefund)){
+            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
+        }
+        mallOrderRefund.setStatus(5);
+        mallOrderRefundMapper.updateById(mallOrderRefund);
+
+        MallOrderRefundOperation mallOrderRefundOperation = new MallOrderRefundOperation();
+        mallOrderRefundOperation.setRefundId(mallOrderRefund.getId());
+        mallOrderRefundOperation.setOrderId(mallOrderRefund.getOrderId());
+        mallOrderRefundOperation.setContent("已退款到用户账户");
+        mallOrderRefundOperationMapper.insert(mallOrderRefundOperation);
+
+        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(mallOrderRefund.getOrderId());
+        if(ObjectUtil.isEmpty(mallOrderInfo)){
+            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
+        }
+        mallOrderInfo.setStatus(6);
+        mallOrderInfoMapper.updateById(mallOrderInfo);
+
+        //用户钱包增加对应的余额
+        iApiMallMemberWalletService.addBalance(mallOrderInfo.getAmount(),mallOrderInfo.getMemberId());
+
+        //新增一条资金流水
+        MallMoneyFlow mallMoneyFlow = new MallMoneyFlow();
+        mallMoneyFlow.setMemberId(mallOrderRefund.getMemberId());
+        mallMoneyFlow.setOrderNo(mallOrderInfo.getOrderNo());
+        mallMoneyFlow.setType(4);
+        mallMoneyFlow.setAmount(mallOrderInfo.getAmount());
+        mallMoneyFlowMapper.insert(mallMoneyFlow);
+
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public IPage<AdminMallOrderRefundAddressVo> getMallOrderRefundAddressInPage(MallOrderRefundAddressDto mallOrderRefundAddressDto, QueryRequest request) {
+        Page<AdminMallOrderRefundAddressVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+        IPage<AdminMallOrderRefundAddressVo> adminMallOrderRefundAddressVos = mallOrderRefundAddressMapper.getMallOrderRefundAddressInPage(page, mallOrderRefundAddressDto);
+        return adminMallOrderRefundAddressVos;
+    }
+
+    @Override
+    public AdminMallOrderRefundAddressVo getMallOrderRefundAddressInfoById(long id) {
+        AdminMallOrderRefundAddressVo AdminMallOrderRefundAddressVo = mallOrderRefundAddressMapper.getMallOrderRefundAddressInfoById(id);
+        return AdminMallOrderRefundAddressVo;
+    }
+
+    @Override
+    public FebsResponse addressUpdate(AddressUpdateDto addressUpdateDto) {
+        Long id = addressUpdateDto.getId();
+        MallOrderRefundAddress mallOrderRefundAddress = mallOrderRefundAddressMapper.selectById(id);
+        mallOrderRefundAddress.setName(addressUpdateDto.getName());
+        mallOrderRefundAddress.setPhone(addressUpdateDto.getPhone());
+        mallOrderRefundAddress.setAddress(addressUpdateDto.getAddress());
+        mallOrderRefundAddressMapper.updateById(mallOrderRefundAddress);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public FebsResponse deleteAddress(Long id) {
+        mallOrderRefundAddressMapper.deleteById(id);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public FebsResponse addAddress(AddAddressDto addAddressDto) {
+        MallOrderRefundAddress mallOrderRefundAddress = new MallOrderRefundAddress();
+        mallOrderRefundAddress.setName(addAddressDto.getName());
+        mallOrderRefundAddress.setPhone(addAddressDto.getPhone());
+        mallOrderRefundAddress.setAddress(addAddressDto.getAddress());
+        mallOrderRefundAddressMapper.insert(mallOrderRefundAddress);
+        return new FebsResponse().success();
+    }
+
 
 }

--
Gitblit v1.9.1