wujianwei
4 天以前 03c59a351565fe1b00c852bc821d7695b39084fc
修改作废
3个文件已修改
133 ■■■■ 已修改文件
api/src/main/java/com/ruoyi/api/third/controller/ReceivableBillApiController.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillManagementServiceImpl.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillManagementServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/src/main/java/com/ruoyi/api/third/controller/ReceivableBillApiController.java
@@ -78,9 +78,9 @@
            
            result.put("status", "0000");
            result.put("message", "应收账单添加成功");
            result.put("billNo", billManagement.getSystemNo());
            result.put("sourceSystemId", billManagement.getId().toString());
            
            logger.info("应收账单添加成功,账单编号:{}", billManagement.getSystemNo());
            logger.info("应收账单添加成功,来源账单id:{}", billManagement.getId());
            
        } catch (Exception e) {
            logger.error("应收账单添加失败:", e);
@@ -334,9 +334,9 @@
            
            result.put("status", "0000");
            result.put("message", "应付账单添加成功");
            result.put("billNo", billManagement.getSystemNo());
            result.put("sourceSystemId", billManagement.getId().toString());
            
            logger.info("应付账单添加成功,账单编号:{}", billManagement.getSystemNo());
            logger.info("应付账单添加成功,来源账单id:{}", billManagement.getId());
            
        } catch (Exception e) {
            logger.error("应付账单添加失败:", e);
@@ -556,6 +556,86 @@
    }
    /**
     * 应收账单作废接口
     * 其他系统调用此接口作废应收账单
     * @param request 请求数据
     * @return 操作结果
     */
    @PostMapping("/cancelBill")
    public Map<String, String> cancelReceivableBill(@RequestBody Map<String, Integer> request) {
        logger.info("接收应收账单作废请求:{}", request);
        Map<String, String> result = new HashMap<>();
        try {
            Integer sourceSystemId = request.get("sourceSystemId");
            if (sourceSystemId == null) {
                throw new IllegalArgumentException("sourceSystemId不能为空");
            }
            // 调用作废方法
            int rows = receivableBillManagementService. voidReceivableBillManagement(sourceSystemId);
            if (rows > 0) {
                result.put("status", "0000");
                result.put("message", "应收账单作废成功");
                logger.info("应收账单作废成功,sourceSystemId:{}", sourceSystemId);
            } else {
                result.put("status", "9999");
                result.put("message", "应收账单作废失败,未找到对应记录");
                logger.warn("应收账单作废失败,未找到对应记录,sourceSystemId:{}", sourceSystemId);
            }
        } catch (Exception e) {
            logger.error("应收账单作废失败:", e);
            result.put("status", "9999");
            result.put("message", "应收账单作废失败:" + e.getMessage());
        }
        return result;
    }
    /**
     * 应付账单作废接口
     * 其他系统调用此接口作废应付账单
     * @param request 请求数据
     * @return 操作结果
     */
    @PostMapping("/cancelPayableBill")
    public Map<String, String> cancelPayableBill(@RequestBody Map<String, Integer> request) {
        logger.info("接收应付账单作废请求:{}", request);
        Map<String, String> result = new HashMap<>();
        try {
            Integer sourceSystemId = request.get("sourceSystemId");
            if (sourceSystemId == null) {
                throw new IllegalArgumentException("sourceSystemId不能为空");
            }
            // 调用作废方法
            int rows = payableBillManagementService.voidPayableBillManagement(sourceSystemId);
            if (rows > 0) {
                result.put("status", "0000");
                result.put("message", "应付账单作废成功");
                logger.info("应付账单作废成功,sourceSystemId:{}", sourceSystemId);
            } else {
                result.put("status", "9999");
                result.put("message", "应付账单作废失败,未找到对应记录");
                logger.warn("应付账单作废失败,未找到对应记录,sourceSystemId:{}", sourceSystemId);
            }
        } catch (Exception e) {
            logger.error("应付账单作废失败:", e);
            result.put("status", "9999");
            result.put("message", "应付账单作废失败:" + e.getMessage());
        }
        return result;
    }
    /**
     * 健康检查接口
     * @return 健康状态
     */
service/src/main/java/com/ruoyi/cwgl/service/impl/PayableBillManagementServiceImpl.java
@@ -145,7 +145,11 @@
        if (result > 0) {
            PayableBillManagementLog log = new PayableBillManagementLog();
            log.setBillId(payableBillManagement.getId());
            log.setCreateBy(SecurityUtils.getUsername());
            try {
                log.setCreateBy(SecurityUtils.getUsername());
            } catch (Exception e) {
                log.setCreateBy("api");
            }
            log.setCreateTime(DateUtils.getNowDate());
            log.setOperation("修改应付账单,账单编号:" + payableBillManagement.getSystemNo());
            logService.insertPayableBillManagementLog(log);
@@ -226,14 +230,30 @@
        bill.setStatus("2");
        bill.setUpdateTime(DateUtils.getNowDate());
        
        int result = updatePayableBillManagement(bill);
        // 更新应付账单记录
        int result = payableBillManagementMapper.updatePayableBillManagement(bill);
        
        // 如果更新成功,清除关联应付费用的账单编号并更新状态
        if (result > 0) {
            // 作废应付账单后,需要将关联的应付费用记录恢复为待生成账单状态
            String relatedBillNo = bill.getSystemNo();
            if (relatedBillNo != null && !relatedBillNo.isEmpty()) {
                payableFeeManagementMapper.updatePayableFeeManagementByRelatedBillNo(relatedBillNo);
            // 获取账单系统编号
            String billSystemNo = bill.getSystemNo();
            if (billSystemNo != null && !billSystemNo.trim().isEmpty()) {
                // 查询关联该账单的应付费用记录
                payableFeeManagementMapper.updatePayableFeeManagementByRelatedBillNo(billSystemNo);
            }
            // 记录作废操作日志
            PayableBillManagementLog log = new PayableBillManagementLog();
            log.setBillId(id);
            try {
                log.setCreateBy(SecurityUtils.getUsername());
            } catch (Exception e) {
                // 远程调用时没有登录信息,使用api作为创建人
                log.setCreateBy("api");
            }
            log.setCreateTime(DateUtils.getNowDate());
            log.setOperation("作废应付账单,账单编号:" + bill.getSystemNo());
            logService.insertPayableBillManagementLog(log);
        }
        
        return result;
service/src/main/java/com/ruoyi/cwgl/service/impl/ReceivableBillManagementServiceImpl.java
@@ -309,9 +309,9 @@
            String billSystemNo = billManagement.getSystemNo();
            if (billSystemNo != null && !billSystemNo.trim().isEmpty()) {
                // 查询关联该账单的应收费用记录
                ReceivableFeeManagement queryFee = new ReceivableFeeManagement();
                queryFee.setRelatedBillNo(billSystemNo);
                List<ReceivableFeeManagement> feeList = receivableFeeManagementMapper.selectReceivableFeeManagementList(queryFee);
//                ReceivableFeeManagement queryFee = new ReceivableFeeManagement();
//                queryFee.setRelatedBillNo(billSystemNo);
//                List<ReceivableFeeManagement> feeList = receivableFeeManagementMapper.selectReceivableFeeManagementList(queryFee);
                
                // 清除关联账单编号并将状态改为0(待生成账单)
                receivableFeeManagementMapper.updateReceivableFeeManagementByRelatedBillNo(billSystemNo);
@@ -320,7 +320,12 @@
            // 记录作废操作日志
            ReceivableBillManagementLog log = new ReceivableBillManagementLog();
            log.setBillId(id);
            log.setCreateBy(SecurityUtils.getUsername());
            try {
                log.setCreateBy(SecurityUtils.getUsername());
            } catch (Exception e) {
                // 远程调用时没有登录信息,使用api作为创建人
                log.setCreateBy("api");
            }
            log.setCreateTime(DateUtils.getNowDate());
            log.setOperation("作废应收账单,账单编号:" + billManagement.getSystemNo());
            receivableBillManagementLogMapper.insertReceivableBillManagementLog(log);