Helius
2021-09-28 91cf4ce7ff32663fa8af7aa3a139afdb75457b77
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -17,12 +17,14 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Slf4j
@Service
@RequiredArgsConstructor
@Transactional
public class AdminMallOrderService extends ServiceImpl<MallOrderInfoMapper, MallOrderInfo> implements IAdminMallOrderService {
    private final MallOrderInfoMapper mallOrderInfoMapper;
@@ -40,6 +42,8 @@
    private final MallMoneyFlowMapper mallMoneyFlowMapper;
    private final IApiMallMemberWalletService iApiMallMemberWalletService;
    private final MallMemberPaymentMapper mallMemberPaymentMapper;
    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
@@ -127,8 +131,28 @@
        if(ObjectUtil.isEmpty(mallOrderRefund)){
            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
        }
        mallOrderRefund.setStatus(2);
        Integer status = mallOrderRefund.getStatus();
        if(status != 1){
            return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面");
        }
        mallOrderRefund.setStatus(5);
        mallOrderRefundMapper.updateById(mallOrderRefund);
        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(mallOrderRefund.getOrderId());
        mallOrderInfo.setStatus(6);
        mallOrderInfoMapper.updateById(mallOrderInfo);
        if(!"微信支付".equals(mallOrderInfo.getPayMethod()) && !"支付宝支付".equals(mallOrderInfo.getPayMethod())){
            //用户钱包增加对应的余额
            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);
        }
        MallOrderRefundOperation mallOrderRefundOperation = new MallOrderRefundOperation();
        mallOrderRefundOperation.setRefundId(mallOrderRefund.getId());
@@ -145,6 +169,10 @@
        if(ObjectUtil.isEmpty(mallOrderRefund)){
            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
        }
        Integer status = mallOrderRefund.getStatus();
        if(status != 1){
            return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面");
        }
        mallOrderRefund.setStatus(3);
        mallOrderRefundMapper.updateById(mallOrderRefund);
@@ -153,6 +181,10 @@
        mallOrderRefundOperation.setOrderId(mallOrderRefund.getOrderId());
        mallOrderRefundOperation.setContent("不同意退款申请");
        mallOrderRefundOperationMapper.insert(mallOrderRefundOperation);
        //恢复订单状态
        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(mallOrderRefund.getOrderId());
        mallOrderInfo.setStatus(mallOrderRefund.getBeforeStatus());
        mallOrderInfoMapper.updateById(mallOrderInfo);
        return new FebsResponse().success();
    }
@@ -162,6 +194,10 @@
        MallOrderRefund mallOrderRefund = mallOrderRefundMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallOrderRefund)){
            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
        }
        Integer status = mallOrderRefund.getStatus();
        if(status != 4){
            return new FebsResponse().fail().message("申请记录不是已提交物流信息状态,请刷新页面");
        }
        mallOrderRefund.setStatus(5);
        mallOrderRefundMapper.updateById(mallOrderRefund);
@@ -248,6 +284,10 @@
        if(ObjectUtil.isEmpty(mallOrderRefund)){
            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
        }
        Integer status = mallOrderRefund.getStatus();
        if(status != 1){
            return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面");
        }
        mallOrderRefund.setStatus(2);
        mallOrderRefund.setName(mallOrderRefundAddress.getName());
        mallOrderRefund.setPhone(mallOrderRefundAddress.getPhone());
@@ -293,5 +333,31 @@
        return new FebsResponse().success();
    }
    @Override
    public FebsResponse cancelOrder(Long id) {
        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallOrderInfo)){
            return new FebsResponse().fail().message("系统繁忙,请刷新重试");
        }
        Integer status = mallOrderInfo.getStatus();
        if(status != 2){
            return new FebsResponse().fail().message("订单不是代发货状态");
        }
        mallOrderInfo.setStatus(7);
        mallOrderInfoMapper.updateById(mallOrderInfo);
        return new FebsResponse().success();
    }
    @Override
    public AdminMallMemberPaymentVo getMallMemberRefundPayInfoByFlowId(long id) {
        AdminMallMemberPaymentVo adminMallMemberPaymentVo = new AdminMallMemberPaymentVo();
        MallOrderRefund mallOrderRefund = mallOrderRefundMapper.selectById(id);
        AdminMallMemberPaymentVo adminMallMemberPaymentVoa = mallMemberPaymentMapper.getMallMemberPaymentInfoByMemberId(mallOrderRefund.getMemberId());
        if(ObjectUtil.isNotEmpty(adminMallMemberPaymentVoa)){
            adminMallMemberPaymentVo = adminMallMemberPaymentVoa;
        }
        return adminMallMemberPaymentVo;
    }
}