From 05de62989998157eab6ae4809ec3a45db6783e10 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期二, 10 六月 2025 15:36:54 +0800
Subject: [PATCH] 开票台账删除功能修改
---
src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
index d7c512e..a1272c3 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
@@ -1,7 +1,9 @@
package com.ruoyi.purchase.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
@@ -266,6 +268,37 @@
).collect(Collectors.toList());
}
+ @Override
+ public IPage<TicketRegistration> selectTicketRegistrationListPage(Page page, TicketRegistration ticketRegistration) {
+ LambdaQueryWrapper<TicketRegistration> queryWrapper = new LambdaQueryWrapper<>();
+ if (StringUtils.isNotBlank(ticketRegistration.getPurchaseContractNumber())) {
+ queryWrapper.like(TicketRegistration::getPurchaseContractNumber, ticketRegistration.getPurchaseContractNumber())
+ .like(TicketRegistration::getSupplierName, ticketRegistration.getSupplierName())
+ .eq(TicketRegistration::getIssueDate, ticketRegistration.getIssueDate());
+ }
+ IPage<TicketRegistration> ticketRegistrationIPage = ticketRegistrationMapper.selectPage(page, queryWrapper);
+ // 璁$畻宸蹭粯娆鹃噾棰�
+ if(CollectionUtils.isNotEmpty(ticketRegistrationIPage.getRecords())){
+ List<Long> ids = ticketRegistrationIPage.getRecords().stream().map(TicketRegistration::getId).collect(Collectors.toList());
+ List<PaymentRegistrationDto> paymentRegistrationDtoList = paymentRegistrationMapper.countPaymentTotalByTicketRegId(ids);
+ for (TicketRegistration registration : ticketRegistrationIPage.getRecords()) {
+ BigDecimal paymentAmountTotal = BigDecimal.ZERO;
+ for (PaymentRegistrationDto paymentRegistrationDto : paymentRegistrationDtoList) {
+ if(registration.getId().equals(paymentRegistrationDto.getTicketRegistrationId())){
+ paymentAmountTotal = paymentRegistrationDto.getPaymentAmountTotal();
+ break;
+ }
+ }
+ BigDecimal invoiceAmount = registration.getInvoiceAmount();
+ BigDecimal subtractAmount = invoiceAmount.subtract(paymentAmountTotal);
+ registration.setPaymentAmountTotal(paymentAmountTotal);
+ registration.setUnPaymentAmountTotal(subtractAmount);
+ }
+ }
+
+ return ticketRegistrationIPage;
+ }
+
private void handleSalesLedgerProducts(Long salesLedgerId, List<SalesLedgerProduct> products, Integer type) {
if (products == null || products.isEmpty()) {
return;
--
Gitblit v1.9.3