From b00f8a0bdccf0b0eed36f550e2c00176bfafe23f Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期日, 04 一月 2026 15:19:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/sqd' into sqd

---
 src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml               |   19 +++++++++++--------
 src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordOutController.java |    4 ++--
 src/main/java/com/ruoyi/basic/controller/ProductController.java                          |   10 ++++++++++
 src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java                   |   10 ++++++++++
 4 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/ruoyi/basic/controller/ProductController.java b/src/main/java/com/ruoyi/basic/controller/ProductController.java
index a586d4b..85da46e 100644
--- a/src/main/java/com/ruoyi/basic/controller/ProductController.java
+++ b/src/main/java/com/ruoyi/basic/controller/ProductController.java
@@ -8,6 +8,7 @@
 import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.basic.service.IProductModelService;
 import com.ruoyi.basic.service.IProductService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.controller.BaseController;
@@ -16,6 +17,7 @@
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 @RestController
@@ -102,4 +104,12 @@
     public AjaxResult importProduct(MultipartFile file) {
         return AjaxResult.success(productModelService.importProduct(file));
     }
+    /**
+     * 浜у搧缁存姢-涓嬭浇浜у搧妯℃澘
+     */
+    @PostMapping("/downloadTemplate")
+    public void downloadTemplate(HttpServletResponse response) {
+        ExcelUtil<ProductModel> util = new ExcelUtil<>(ProductModel.class);
+        util.importTemplateExcel(response, "浜у搧瑙勬牸妯℃澘");
+    }
 }
diff --git a/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordOutController.java b/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordOutController.java
index 5245149..3f71288 100644
--- a/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordOutController.java
+++ b/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordOutController.java
@@ -85,7 +85,7 @@
     public void exportOne(HttpServletResponse response) {
         List<ProcurementRecordOutPageDto> list = procurementRecordOutMapper.listOne();
         ExcelUtil<ProcurementRecordOutPageDto> util = new ExcelUtil<>(ProcurementRecordOutPageDto.class);
-        util.exportExcel(response, list, "鐢熶骇鍑哄簱鍙拌处");
+        util.exportExcel(response, list, "閲囪喘鍑哄簱鍙拌处");
     }
 
     /**
@@ -96,7 +96,7 @@
     public void exportTwo(HttpServletResponse response) {
         List<ProcurementRecordOutPageDto> list = procurementRecordOutMapper.listTwo();
         ExcelUtil<ProcurementRecordOutPageDto> util = new ExcelUtil<>(ProcurementRecordOutPageDto.class);
-        util.exportExcel(response, list, "鐢熶骇鍑哄簱鍙拌处");
+        util.exportExcel(response, list, "鎴愬搧鍑哄簱鍙拌处");
     }
 
 }
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
index 6493d46..e408631 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
@@ -82,6 +82,7 @@
     private final InvoiceLedgerMapper invoiceLedgerMapper;
 
     private final SalesLedgerSchedulingMapper salesLedgerSchedulingMapper;
+    private final InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
 
     @Autowired
     private SysDeptMapper sysDeptMapper;
@@ -361,6 +362,15 @@
         LambdaQueryWrapper<SalesLedgerScheduling> in = new LambdaQueryWrapper<SalesLedgerScheduling>()
                 .in(SalesLedgerScheduling::getSalesLedgerId, idList);
         salesLedgerSchedulingMapper.delete(in);
+        LambdaQueryWrapper<InvoiceRegistrationProduct> InvoiceRegistrationProductWrapper = new LambdaQueryWrapper<>();
+        InvoiceRegistrationProductWrapper.in(InvoiceRegistrationProduct::getSalesLedgerId, idList);
+        List<InvoiceRegistrationProduct> invoiceRegistrationProducts = invoiceRegistrationProductMapper.selectList(InvoiceRegistrationProductWrapper);
+        if (!CollectionUtils.isEmpty(invoiceRegistrationProducts)) {
+            List<Integer> InvoiceRegistrationProductIds = invoiceRegistrationProducts.stream().map(InvoiceRegistrationProduct::getId).collect(Collectors.toList());
+            LambdaQueryWrapper<InvoiceLedger> invoiceLedgerQuery = new LambdaQueryWrapper<>();
+            invoiceLedgerQuery.in(InvoiceLedger::getInvoiceRegistrationProductId, InvoiceRegistrationProductIds);
+            invoiceLedgerMapper.delete(invoiceLedgerQuery);
+        }
         // 2. 鍐嶅垹闄や富琛ㄦ暟鎹�
         return salesLedgerMapper.deleteBatchIds(idList);
     }
diff --git a/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml b/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml
index cdc23e7..c8290fe 100644
--- a/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml
+++ b/src/main/resources/mapper/procurementrecord/ProcurementRecordOutMapper.xml
@@ -91,20 +91,23 @@
 
     <select id="listTwo" resultType="com.ruoyi.procurementrecord.dto.ProcurementRecordOutPageDto">
         select
-            t1.supplier_name,
-            t1.product_category,
             t1.id,
-            t1.specification_model,
-            t1.unit,
-            t1.tax_rate,
-            t1.tax_inclusive_unit_price,
-            t1.tax_inclusive_total_price,
-            t1.tax_exclusive_total_price,
+            t1.`code`,
+            t3.supplier_name,
+            t2.product_category,
+            t2.specification_model,
+            t2.unit,
+            t2.tax_rate,
+            t2.tax_inclusive_unit_price,
+            t2.tax_inclusive_total_price,
+            t2.tax_exclusive_total_price,
             t1.inbound_num,
             t1.create_time,
             t1.create_time as time,
             t1.create_by
         from  procurement_record_out t1
+            left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
+            left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
         where t1.type = 3
     </select>
     <select id="listPageByProduct" resultType="com.ruoyi.procurementrecord.dto.ProcurementRecordOutPageDto">

--
Gitblit v1.9.3