From b434660de4d072909c41c504aed6fd944ba53c86 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 16 一月 2026 17:58:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtwy' into jtwy
---
src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java | 35 +++++++++++++++++++++++++++++++----
1 files changed, 31 insertions(+), 4 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 a21870a..1d71938 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java
@@ -2,17 +2,19 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
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.common.utils.SecurityUtils;
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.SalesLedgerProductMapper;
+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;
@@ -41,6 +43,9 @@
@Autowired
private SalesLedgerProductMapper salesLedgerProductMapper;
+ @Autowired
+ private InvoiceLedgerMapper invoiceLedgerMapper;
+
/**
* 寮�绁ㄧ櫥璁拌褰曟柊澧�
* @param salesLedgerDto
@@ -56,23 +61,45 @@
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){
+ if(null == currentInvoiceNum || BigDecimal.ZERO.compareTo(currentInvoiceNum) == 0){
continue;
}
+ invoiceAmountTotal = invoiceAmountTotal.add(currentInvoiceNum);
InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct();
BeanUtils.copyProperties(productDatum, invoiceRegistrationProduct);
+ //鏇存柊宸插紑绁ㄥ墿浣欐湭寮�绁ㄦ暟
+ invoiceRegistrationProductMapper.update(
+ null,
+ new LambdaUpdateWrapper<InvoiceRegistrationProduct>()
+ .eq(InvoiceRegistrationProduct::getSalesLedgerId, salesLedgerDto.getId())
+ .set(InvoiceRegistrationProduct::getNoInvoiceAmount, productDatum.getNoInvoiceAmount())
+ );
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);
+ productDatum.setInvoiceNum(currentInvoiceNum);
+ productDatum.setInvoiceAmount(productDatum.getCurrentInvoiceAmount());
salesLedgerProductMapper.updateById(productDatum);
+ // 鏂板涓�鏉″紑绁ㄥ彴璐︽暟鎹�
+ InvoiceLedger invoiceLedger = new InvoiceLedger();
+ invoiceLedger.setInvoiceDate(salesLedgerDto.getIssueDate());
+ invoiceLedger.setInvoiceRegistrationProductId(invoiceRegistrationProduct.getId());
+ invoiceLedger.setInvoiceTotal(invoiceRegistrationProduct.getInvoiceAmount());
+ invoiceLedger.setInvoiceNo(salesLedgerDto.getInvoiceNo());
+ invoiceLedger.setCreateUser(SecurityUtils.getUserId().intValue());
+ invoiceLedger.setInvoicePerson(productDatum.getRegister());
+
+ invoiceLedgerMapper.insert(invoiceLedger);
}
}
}
--
Gitblit v1.9.3