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 | 116 +++++++++++++++++++-------------------------------------- 1 files changed, 39 insertions(+), 77 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 baaeee9..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,19 +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.InvoiceRegistrationProductRecordMapper; -import com.ruoyi.sales.mapper.InvoiceRegistrationRecordMapper; +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.InvoiceRegistrationProductRecord; -import com.ruoyi.sales.pojo.InvoiceRegistrationRecord; +import com.ruoyi.sales.pojo.SalesLedgerProduct; import com.ruoyi.sales.service.InvoiceRegistrationService; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.BeanUtils; @@ -41,85 +38,50 @@ private InvoiceRegistrationProductMapper invoiceRegistrationProductMapper; @Autowired - private InvoiceRegistrationRecordMapper invoiceRegistrationRecordMapper; + private SalesLedgerProductMapper salesLedgerProductMapper; @Autowired - private InvoiceRegistrationProductRecordMapper invoiceRegistrationProductRecordMapper; - + private InvoiceLedgerMapper invoiceLedgerMapper; /** - * 寮�绁ㄧ櫥璁版柊澧� - * @param invoiceRegistrationDto + * 寮�绁ㄧ櫥璁拌褰曟柊澧� + * @param salesLedgerDto * @return */ @Override @Transactional(rollbackFor = Exception.class) - public void invoiceRegistrationSaveOrUpdate(InvoiceRegistrationDto invoiceRegistrationDto) { - List<InvoiceRegistrationProductDto> productDtoList = invoiceRegistrationDto.getProductDtoList(); - Integer salesLedgerId = invoiceRegistrationDto.getSalesLedgerId(); - if (null == salesLedgerId){ - throw new RuntimeException("鏈叧鑱旈攢鍞悎鍚�"); - } - QueryWrapper<InvoiceRegistration> inRegWrapper = new QueryWrapper<>(); - inRegWrapper.eq("sales_ledger_id", salesLedgerId); - InvoiceRegistration invoiceRegistration = invoiceRegistrationMapper.selectOne(inRegWrapper); - Integer invoiceRegistrationId = null; - // 鍒ゆ柇鏄惁宸茬粡鍋氳繃鐧昏锛屽鏋滄湁鍚堝苟锛屽鏋滄病鏈夋柊澧� - if(ObjectUtils.isEmpty(invoiceRegistration)){ - InvoiceRegistration insertInvocieReg = new InvoiceRegistration(); - BeanUtils.copyProperties(invoiceRegistrationDto, insertInvocieReg); - invoiceRegistrationMapper.insert(insertInvocieReg); - invoiceRegistrationId = insertInvocieReg.getId(); - }else { - invoiceRegistrationId = invoiceRegistration.getId(); - } - // 鏌ヨ浜у搧鏄惁宸茬粡鐧昏 - if(CollectionUtils.isNotEmpty(productDtoList)){ - QueryWrapper<InvoiceRegistrationProduct> inRegProductWrapper = new QueryWrapper<>(); - inRegProductWrapper.eq("invoice_registration_id", invoiceRegistrationId); - List<InvoiceRegistrationProduct> invoiceRegistrationProductList = invoiceRegistrationProductMapper.selectList(inRegProductWrapper); - if(CollectionUtils.isNotEmpty(invoiceRegistrationProductList)){ - // 鎵归噺鏇存柊 - for (InvoiceRegistrationProduct invoiceRegistrationProduct : invoiceRegistrationProductList) { - for (InvoiceRegistrationProductDto invoiceRegistrationProductDto : productDtoList) { - if( null != invoiceRegistrationProductDto.getId() && null != invoiceRegistrationProduct.getSalesLedgerProductId() - && invoiceRegistrationProductDto.getId() == invoiceRegistrationProduct.getSalesLedgerProductId().longValue() ){ - // 璁$畻宸插紑绁ㄦ暟 - invoiceRegistrationProduct.setInvoiceNum(invoiceRegistrationProduct.getInvoiceNum() + invoiceRegistrationProductDto.getInvoiceNum()); - // 璁$畻宸插紑绁ㄩ噾棰� - invoiceRegistrationProduct.setInvoiceAmount(invoiceRegistrationProduct.getInvoiceAmount().add(invoiceRegistrationProductDto.getInvoiceAmount())); -// // 璁$畻鏈紑绁ㄦ暟 - invoiceRegistrationProduct.setNoInvoiceNum(invoiceRegistrationProductDto.getNoInvoiceNum()); -// // 璁$畻鏈紑绁ㄩ噾棰� 鍚◣鎬讳环-寮�绁ㄩ噾棰� - invoiceRegistrationProduct.setNoInvoiceAmount(invoiceRegistrationProductDto.getNoInvoiceAmount()); - invoiceRegistrationProductMapper.updateById(invoiceRegistrationProduct); - } - } + public void invoiceRegistrationSave(SalesLedgerDto salesLedgerDto) { + InvoiceRegistration invoiceRegistration = new InvoiceRegistration(); + 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 { - // 鎵归噺鎻掑叆 - for (InvoiceRegistrationProductDto invoiceRegistrationProductDto : productDtoList) { - InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct(); - BeanUtils.copyProperties(invoiceRegistrationProductDto, invoiceRegistrationProduct); - invoiceRegistrationProduct.setInvoiceRegistrationId(invoiceRegistrationId); - invoiceRegistrationProduct.setSalesLedgerProductId(invoiceRegistrationProductDto.getId()); - invoiceRegistrationProduct.setId(null); - invoiceRegistrationProductMapper.insert(invoiceRegistrationProduct); - } - } - } - // 淇濆瓨鏈寮�绁ㄧ櫥璁拌褰� - InvoiceRegistrationRecord invoiceRegistrationRecord = new InvoiceRegistrationRecord(); - BeanUtils.copyProperties(invoiceRegistrationDto, invoiceRegistrationRecord); - invoiceRegistrationRecordMapper.insert(invoiceRegistrationRecord); - if(CollectionUtils.isNotEmpty(productDtoList)){ - for (InvoiceRegistrationProductDto invoiceRegistrationProductDto : productDtoList) { - InvoiceRegistrationProductRecord invoiceRegistrationProductRecord = new InvoiceRegistrationProductRecord(); - BeanUtils.copyProperties(invoiceRegistrationProductDto, invoiceRegistrationProductRecord); - invoiceRegistrationProductRecord.setInvoiceRegistrationRecordId(invoiceRegistrationRecord.getId()); - invoiceRegistrationProductRecord.setSalesLedgerProductId(invoiceRegistrationProductDto.getId()); - invoiceRegistrationProductRecord.setId(null); - invoiceRegistrationProductRecordMapper.insert(invoiceRegistrationProductRecord); + 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