Helius
2021-09-24 fc8453995e0332ff313dacc27d081568caa0975f
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -8,6 +8,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.vo.*;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
@@ -35,6 +36,10 @@
    private final MallOrderRefundMapper mallOrderRefundMapper;
    private final MallOrderRefundOperationMapper mallOrderRefundOperationMapper;
    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,41 @@
        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();
    }
}