wujianwei
2025-08-15 df2dea5fccf60e4179868ae2fad2c8b165ffade0
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java
@@ -1,8 +1,10 @@
package com.ruoyi.cwgl.service.impl;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import javax.annotation.Resource;
@@ -144,6 +146,19 @@
    public int updateEstimatedReceivableBill(EstimatedReceivableBill estimatedReceivableBill)
    {
        estimatedReceivableBill.setUpdateTime(DateUtils.getNowDate());
        return estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
    }
    @Override
    public int updateEstimatedReceivableBillName(EstimatedReceivableBill estimatedReceivableBill) {
        EstimatedReceivableBillLog estimatedReceivableBillLog = new EstimatedReceivableBillLog();
        estimatedReceivableBillLog.setCreateTime(new Date());
        estimatedReceivableBillLog.setBillId(estimatedReceivableBill.getId());
        estimatedReceivableBillLog.setCreateBy(SecurityUtils.getUsername());
        estimatedReceivableBillLog.setOperation("修改账单名称为"+estimatedReceivableBill.getBillName());
        logService.insertEstimatedReceivableBillLog(estimatedReceivableBillLog);
         pendingSettlementBusinessMapper.updatePendingSettlementBusinessByBillId(estimatedReceivableBill.getId(),estimatedReceivableBill.getBillName());
        return estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
    }
@@ -226,4 +241,31 @@
        }
        return estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
    }
    @Override
    public int cancelRelevancy(Integer id) {
        PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessById(id);
        if (pendingSettlementBusiness==null){
            throw new ServiceException("待入账业务不存在");
        }
        Integer billId = pendingSettlementBusiness.getBillId();
        EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(billId);
        estimatedReceivableBill.setDispatchCount(estimatedReceivableBill.getDispatchCount()-1);
        //应结算金额修改
        Long totalAmount = estimatedReceivableBill.getTotalAmount();
        estimatedReceivableBill.setTotalAmount(totalAmount-pendingSettlementBusiness.getEstimatedTotalIncome());
        EstimatedReceivableBillLog estimatedReceivableBillLog = new EstimatedReceivableBillLog();
        estimatedReceivableBillLog.setCreateTime(new Date());
        estimatedReceivableBillLog.setBillId(billId);
        estimatedReceivableBillLog.setCreateBy(SecurityUtils.getUsername());
        String dispatchNo = pendingSettlementBusiness.getDispatchNo();
        estimatedReceivableBillLog.setOperation("取消调度单"+ dispatchNo +"关联");
        logService.insertEstimatedReceivableBillLog(estimatedReceivableBillLog);
        List<String> dispatchNos = new ArrayList<>();
        dispatchNos.add(dispatchNo);
        estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,0);
        return  pendingSettlementBusinessMapper.cancelRelevancy(id);
    }
}