From 279655b6eaade16ad70a755a970816bf7a40c996 Mon Sep 17 00:00:00 2001 From: liyong <18434998025@163.com> Date: 星期二, 01 七月 2025 10:11:03 +0800 Subject: [PATCH] 2025-07-01 bug修改 --- src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java | 33 ++++++++++++++++++++++++++++++++- 1 files changed, 32 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java index c7753c2..dad32cb 100644 --- a/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java +++ b/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java @@ -367,6 +367,7 @@ public List<PaymentHistoryRecordVo> getPaymentRecordList(Long supplierId) { List<PaymentHistoryRecordVo> paymentRecordList = paymentRegistrationMapper.getPaymentRecordList(supplierId); List<PaymentHistoryRecordVo> result = new ArrayList<>(); + List<PaymentHistoryRecordVo> newResult = new ArrayList<>(); // 搴斾粯鎬婚噾棰濋噾棰濊绠� BigDecimal amountTotal = BigDecimal.ZERO; if(CollectionUtils.isNotEmpty(paymentRecordList)) { @@ -403,8 +404,20 @@ result.add(paymentHistoryRecordVo); } + + for (int i = 0; i < result.size(); i++) { + PaymentHistoryRecordVo paymentHistoryRecordVo = result.get(i); + if (i == 0) { + paymentHistoryRecordVo.setPayableAmount(paymentHistoryRecordVo.getInvoiceAmount().subtract(paymentHistoryRecordVo.getCurrentPaymentAmount())); + }else { + PaymentHistoryRecordVo paymentHistoryRecordVo1 = result.get(i-1); + paymentHistoryRecordVo.setPayableAmount(paymentHistoryRecordVo1.getPayableAmount() + .add(paymentHistoryRecordVo.getInvoiceAmount()).subtract(paymentHistoryRecordVo.getCurrentPaymentAmount())); + } + newResult.add(paymentHistoryRecordVo); + } } - return result; + return newResult; } /** @@ -418,6 +431,24 @@ return paymentRegistrationMapper.paymentHistoryListPage(page, paymentRegistrationDto); } + @Override + public Boolean delete(Long[] ids) { + for (Long id : ids) { + List<ProductRecord> productRecords = productRecordMapper.selectList(new QueryWrapper<ProductRecord>().lambda().eq(ProductRecord::getTicketRegistrationId, id)); + for (ProductRecord productRecord : productRecords) { + SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(productRecord.getSaleLedgerProjectId()); + salesLedgerProduct.setTicketsNum(salesLedgerProduct.getTicketsNum().subtract(productRecord.getTicketsNum())); + salesLedgerProduct.setTicketsAmount(salesLedgerProduct.getTicketsAmount().subtract(productRecord.getTicketsAmount())); + salesLedgerProduct.setFutureTickets(salesLedgerProduct.getFutureTickets().add(productRecord.getTicketsNum())); + salesLedgerProduct.setFutureTicketsAmount(salesLedgerProduct.getFutureTicketsAmount().add(productRecord.getTicketsAmount())); + salesLedgerProductMapper.updateById(salesLedgerProduct); + } + ticketRegistrationMapper.delete(new QueryWrapper<TicketRegistration>().lambda().eq(TicketRegistration::getId, id)); + productRecordMapper.delete(new QueryWrapper<ProductRecord>().lambda().eq(ProductRecord::getTicketRegistrationId, id)); + } + return true; + } + // 鎵归噺鏌ヨ閲囪喘鍙拌处锛堝綋鏈堬級 private Map<Long, List<PurchaseLedger>> batchQueryPurchaseLedgers(List<Long> supplierIds, LocalDate startDate, LocalDate endDate) { LambdaQueryWrapper<PurchaseLedger> query = new LambdaQueryWrapper<>(); -- Gitblit v1.9.3