sen
2025-08-18 e0cc9278a0bcbf480446f87a78b9d7ddd8819eeb
Merge remote-tracking branch 'origin/yagwly_fa_master' into yagwly_fa_master
6个文件已修改
81 ■■■■ 已修改文件
service/src/main/java/com/ruoyi/cwgl/mapper/EstimatedReceivableMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/java/com/ruoyi/cwgl/service/impl/PendingSettlementBusinessServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/resources/mapper/cwgl/EstimatedReceivableMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/java/com/ruoyi/cwgl/mapper/EstimatedReceivableMapper.java
@@ -86,5 +86,5 @@
     */
    public int deleteEstimatedReceivableByIds(Integer[] ids);
    void updateEstimatedReceivableBillStatus(@Param("list") List<String> list, @Param("status") int status);
    void updateEstimatedReceivableBillStatus(@Param("list") List<String> list, @Param("status") int status,@Param("billName")String billName);
}
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java
@@ -241,12 +241,12 @@
       if (settlementAmount.add(settledAmount).compareTo(totalAmount) == 0) {
            //已结算大于应计算金额为已结算
            estimatedReceivableBill.setStatus(2);
            estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,3);
            estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,3,null);
            pendingSettlementBusinessMapper.updateEstimatedReceivableBillStatus(dispatchNos,3);
        }else {
            //否则部分结算
            estimatedReceivableBill.setStatus(1);
            estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,2);
            estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,2,null);
           pendingSettlementBusinessMapper.updateEstimatedReceivableBillStatus(dispatchNos,2);
        }
        settledAmount = settledAmount.add(settlementAmount);
@@ -273,9 +273,7 @@
        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);
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java
@@ -128,6 +128,15 @@
        estimatedReceivable.setCreateTime(nowDate);
        estimatedReceivable.setFeeSystemNo("YF"+datePart+ RandomUtils.random(5));
        estimatedReceivable.setFeeType(0);
        PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
        if (pendingSettlementBusiness == null){
            throw new ServiceException("调度单不存在");
        }
        Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
        if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
            throw new ServiceException("当前调度单已结算或部分结算无法新增明细");
        }
        return estimatedReceivableMapper.insertEstimatedReceivable(estimatedReceivable);
    }
@@ -244,6 +253,21 @@
            throw new ServiceException("无需重复确认");
        }
        PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
        if (pendingSettlementBusiness == null){
            throw new ServiceException("调度单不存在");
        }
        Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
        if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
            throw new ServiceException("当前调度单已结算或部分结算无法确认");
        }
        if (pendingSettlementBusiness.getBillId()!=null){
            EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(pendingSettlementBusiness.getBillId());
            BigDecimal totalAmount = estimatedReceivableBill.getTotalAmount();
            estimatedReceivableBill.setTotalAmount(totalAmount.add(estimatedReceivable.getEstimatedAmount()));
            estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
        }
        String username = SecurityUtils.getUsername();
        logService.insertEstimatedReceivableLog("确认应收",id,username);
@@ -267,10 +291,26 @@
            throw new ServiceException("无需重复取消");
        }
        PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
        if (pendingSettlementBusiness == null){
            throw new ServiceException("调度单不存在");
        }
        Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
        if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
            throw new ServiceException("当前调度单已结算或部分结算无法取消");
        }
        if (pendingSettlementBusiness.getBillId()!=null){
            EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(pendingSettlementBusiness.getBillId());
            BigDecimal totalAmount = estimatedReceivableBill.getTotalAmount();
            estimatedReceivableBill.setTotalAmount(totalAmount.subtract(estimatedReceivable.getEstimatedAmount()));
            estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
        }
        String username = SecurityUtils.getUsername();
        logService.insertEstimatedReceivableLog("取消应收",id,username);
        estimatedReceivable.setIsConfirmed(0);
        return estimatedReceivableMapper.updateEstimatedReceivable(estimatedReceivable);
    }
service/src/main/java/com/ruoyi/cwgl/service/impl/PendingSettlementBusinessServiceImpl.java
@@ -320,7 +320,7 @@
        estimatedReceivableBill.setCreateBy(username);
        estimatedReceivableBillMapper.insertEstimatedReceivableBill(estimatedReceivableBill);
        //修改入账
        estimatedReceivableMapper.updateEstimatedReceivableBillStatus(collect,1);
        estimatedReceivableMapper.updateEstimatedReceivableBillStatus(collect,1,createBillVo.getBillName());
        //修改调度单为已创建账单
        return  pendingSettlementBusinessMapper.updatePendingSettlementBusinessIsCreate(collect,estimatedReceivableBill.getId(),createBillVo.getBillName());
@@ -366,7 +366,7 @@
        estimatedReceivableBill.setCreateBy(username);
        estimatedReceivableBillMapper.insertEstimatedReceivableBill(estimatedReceivableBill);
        //修改应收管理表已入账
        estimatedReceivableMapper.updateEstimatedReceivableBillStatus(collect,1);
        estimatedReceivableMapper.updateEstimatedReceivableBillStatus(collect,1,billName);
        //修改调度单为已创建账单
        return  pendingSettlementBusinessMapper.updatePendingSettlementBusinessIsCreate(collect,estimatedReceivableBill.getId(),billName);
    }
service/src/main/resources/mapper/cwgl/EstimatedReceivableMapper.xml
@@ -194,6 +194,10 @@
    <update id="updateEstimatedReceivableBillStatus">
        UPDATE estimated_receivable
        SET related_bill_status = #{status}
        <if test="billName !=null and billName != ''">
            , related_bill_name = #{billName}
        </if>
        WHERE dispatch_no IN
        <foreach item="item" collection="list" open="(" separator="," close=")">
            #{item}
service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml
@@ -540,9 +540,12 @@
    </update>
    <update id="updatePendingSettlementBusinessIsCreate">
        UPDATE pending_settlement_business
        SET is_create = 1 ,bill_id = #{id},bill_name = #{billName},related_bill_status = 1
        SET
        is_create = 1,
        bill_id = #{id},
        bill_name = #{billName},
        related_bill_status = 1
        WHERE dispatch_no IN
        <foreach item="item" collection="list" open="(" separator="," close=")">
            #{item}
@@ -554,18 +557,16 @@
            SET
            p.bill_name = #{billName},
            e.related_bill_name = #{billName}
            WHERE p.bill_id = #{id};
            WHERE p.bill_id = #{id}
    </update>
    <update id="updateEstimatedReceivableBillStatus">
        UPDATE pending_settlement_business p
        JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no
        UPDATE pending_settlement_business
        SET
        p.is_create = 1,
        p.bill_id = #{id},
        p.bill_name = #{billName},
        p.related_bill_status = 1,
        e.related_bill_name = #{billName}
        WHERE p.dispatch_no IN
        is_create = 1,
        bill_id = #{id},
        bill_name = #{billName},
        related_bill_status = 1,
        WHERE dispatch_no IN
        <foreach item="item" collection="list" open="(" separator="," close=")">
            #{item}
        </foreach>