From ab01a0f611c0adb97662bc8f548ca4a911ec8045 Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期五, 06 六月 2025 17:37:39 +0800 Subject: [PATCH] 分页修改 --- src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java | 69 +++++++++++++++++++++------------- 1 files changed, 42 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java index 3130872..a42850d 100644 --- a/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java +++ b/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java @@ -5,15 +5,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.basic.excel.SupplierManageExcelDto; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.sales.dto.InvoiceRegistrationDto; import com.ruoyi.sales.dto.InvoiceRegistrationProductDto; +import com.ruoyi.sales.dto.SalesLedgerDto; import com.ruoyi.sales.excel.InvoiceRegisAndProductExcelDto; -import com.ruoyi.sales.mapper.InvoiceRegistrationMapper; -import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper; +import com.ruoyi.sales.mapper.*; +import com.ruoyi.sales.pojo.InvoiceLedger; import com.ruoyi.sales.pojo.InvoiceRegistration; import com.ruoyi.sales.pojo.InvoiceRegistrationProduct; +import com.ruoyi.sales.pojo.SalesLedgerProduct; import com.ruoyi.sales.service.InvoiceRegistrationService; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.BeanUtils; @@ -23,6 +24,7 @@ import org.springframework.util.ObjectUtils; import javax.servlet.http.HttpServletResponse; +import java.math.BigDecimal; import java.util.List; import java.util.stream.Collectors; @@ -35,38 +37,51 @@ @Autowired private InvoiceRegistrationProductMapper invoiceRegistrationProductMapper; + @Autowired + private SalesLedgerProductMapper salesLedgerProductMapper; + + @Autowired + private InvoiceLedgerMapper invoiceLedgerMapper; /** - * 寮�绁ㄧ櫥璁版柊澧� - * @param invoiceRegistrationDto + * 寮�绁ㄧ櫥璁拌褰曟柊澧� + * @param salesLedgerDto * @return */ @Override @Transactional(rollbackFor = Exception.class) - public void invoiceRegistrationSaveOrUpdate(InvoiceRegistrationDto invoiceRegistrationDto) { + public void invoiceRegistrationSave(SalesLedgerDto salesLedgerDto) { InvoiceRegistration invoiceRegistration = new InvoiceRegistration(); - BeanUtils.copyProperties(invoiceRegistrationDto, invoiceRegistration); - List<InvoiceRegistrationProductDto> productDtoList = invoiceRegistrationDto.getProductDtoList(); - // 鏂板寮�绁ㄧ櫥璁� - if(invoiceRegistrationDto.getId() == null){ - invoiceRegistrationMapper.insert(invoiceRegistration); - // 鏂板寮�绁ㄤ骇鍝佺櫥璁� - if(CollectionUtils.isNotEmpty(productDtoList)){ - for (InvoiceRegistrationProductDto invoiceRegistrationProductDto : productDtoList) { - InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct(); - BeanUtils.copyProperties(invoiceRegistrationProductDto, invoiceRegistrationProduct); - invoiceRegistrationProduct.setInvoiceRegistrationId(invoiceRegistration.getId()); - invoiceRegistrationProductMapper.insert(invoiceRegistrationProduct); + BeanUtils.copyProperties(salesLedgerDto, invoiceRegistration); + invoiceRegistration.setId(null); + invoiceRegistration.setCustomerId(salesLedgerDto.getCustomerId().intValue()); + invoiceRegistration.setSalesLedgerId(salesLedgerDto.getId().intValue()); + invoiceRegistrationMapper.insert(invoiceRegistration); + List<SalesLedgerProduct> productData = salesLedgerDto.getProductData(); + BigDecimal invoiceAmountTotal = BigDecimal.ZERO; + if(CollectionUtils.isNotEmpty(productData)){ + for (SalesLedgerProduct productDatum : productData) { + // 濡傛灉寮�绁ㄦ暟涓�0 璺宠繃 + BigDecimal currentInvoiceNum = productDatum.getCurrentInvoiceNum(); + if(null != currentInvoiceNum && BigDecimal.ZERO.compareTo(currentInvoiceNum) == 0){ + continue; } - } - // 寮�绁ㄧ櫥璁颁慨鏀� - }else { - if(CollectionUtils.isNotEmpty(productDtoList)){ - for (InvoiceRegistrationProductDto invoiceRegistrationProductDto : productDtoList) { - InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct(); - BeanUtils.copyProperties(invoiceRegistrationProductDto, invoiceRegistrationProduct); - invoiceRegistrationProductMapper.updateById(invoiceRegistrationProduct); - } + invoiceAmountTotal = invoiceAmountTotal.add(currentInvoiceNum); + InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct(); + BeanUtils.copyProperties(productDatum, invoiceRegistrationProduct); + invoiceRegistrationProduct.setId(null); + invoiceRegistrationProduct.setSalesLedgerId(salesLedgerDto.getId().intValue()); + invoiceRegistrationProduct.setInvoiceRegistrationId(invoiceRegistration.getId()); + invoiceRegistrationProduct.setInvoiceAmount(productDatum.getCurrentInvoiceAmount()); + invoiceRegistrationProduct.setInvoiceNum(productDatum.getCurrentInvoiceNum()); + invoiceRegistrationProduct.setSalesLedgerProductId(productDatum.getId().intValue()); + invoiceRegistrationProductMapper.insert(invoiceRegistrationProduct); + salesLedgerProductMapper.updateById(productDatum); + // 鏂板涓�鏉″紑绁ㄥ彴璐︽暟鎹� + InvoiceLedger invoiceLedger = new InvoiceLedger(); + invoiceLedger.setInvoiceRegistrationProductId(invoiceRegistrationProduct.getId()); + invoiceLedger.setInvoiceTotal(invoiceRegistrationProduct.getInvoiceAmount()); + invoiceLedgerMapper.insert(invoiceLedger); } } } -- Gitblit v1.9.3