From beeba1259f983a5f92e6b8137d2fb05389f184b4 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期二, 27 五月 2025 11:39:43 +0800
Subject: [PATCH] 开票台账功能修改
---
src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml | 85 +++++++++++++++++++++++++++++-------------
src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java | 2 +
src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java | 12 ++++--
src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java | 6 +-
src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java | 4 +-
5 files changed, 73 insertions(+), 36 deletions(-)
diff --git a/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java b/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java
index 650dbaa..f3ddc45 100644
--- a/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java
+++ b/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java
@@ -85,12 +85,12 @@
/**
* 寮�绁ㄥ彴璐﹀鍑�
* @param response
- * @param invoiceLedgerDto
+ * @param invoiceRegistrationProductDto
* @return
*/
@PostMapping("/export")
- public void invoiceLedgerExport(HttpServletResponse response, InvoiceLedgerDto invoiceLedgerDto) {
- invoiceLedgerService.invoiceLedgerExport(response, invoiceLedgerDto);
+ public void invoiceLedgerExport(HttpServletResponse response, InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
+ invoiceLedgerService.invoiceLedgerExport(response, invoiceRegistrationProductDto);
}
/**
diff --git a/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java b/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java
index 13819da..6edc5f0 100644
--- a/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java
+++ b/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java
@@ -46,4 +46,6 @@
@ApiModelProperty(value = "鍙戠エ鏂囦欢鍚�")
private String invoiceFileName;
+ private String searchText;
+
}
diff --git a/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java b/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java
index 5a3b6fb..fc64488 100644
--- a/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java
+++ b/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java
@@ -54,10 +54,10 @@
/**
* 闄勪欢涓嬭浇
* @param response
- * @param invoiceLedgerDto
+ * @param invoiceRegistrationProductDto
* @return
*/
- void invoiceLedgerExport(HttpServletResponse response ,InvoiceLedgerDto invoiceLedgerDto);
+ void invoiceLedgerExport(HttpServletResponse response ,InvoiceRegistrationProductDto invoiceRegistrationProductDto);
/**
* 寮�绁ㄥ彴璐﹁鎯�
diff --git a/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java
index 55a2f7a..9ce10fb 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java
@@ -12,6 +12,7 @@
import com.ruoyi.sales.excel.InvoiceLedgerExcelDto;
import com.ruoyi.sales.mapper.InvoiceLedgerFileMapper;
import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
+import com.ruoyi.sales.mapper.InvoiceRegistrationMapper;
import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
import com.ruoyi.sales.pojo.InvoiceLedger;
import com.ruoyi.sales.pojo.InvoiceLedgerFile;
@@ -49,6 +50,9 @@
@Autowired
private InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
+
+ @Autowired
+ private InvoiceRegistrationMapper invoiceRegistrationMapper;
/**
* 寮�绁ㄥ彴璐︽柊澧�
@@ -158,13 +162,13 @@
/**
* 闄勪欢涓嬭浇
* @param response
- * @param invoiceLedgerDto
+ * @param invoiceRegistrationProductDto
* @return
*/
@Override
- public void invoiceLedgerExport(HttpServletResponse response, InvoiceLedgerDto invoiceLedgerDto) {
- List<InvoiceLedgerDto> invoiceLedgerDtoList = invoiceLedgerMapper.invoiceLedgerList(invoiceLedgerDto);
- List<InvoiceLedgerExcelDto> invoiceLedgerExcelDtoList = invoiceLedgerDtoList.stream().map(item -> {
+ public void invoiceLedgerExport(HttpServletResponse response, InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
+ List<InvoiceRegistrationProductDto> invoiceRegistrationProductList = invoiceRegistrationProductMapper.invoiceRegistrationProductList(invoiceRegistrationProductDto);
+ List<InvoiceLedgerExcelDto> invoiceLedgerExcelDtoList = invoiceRegistrationProductList.stream().map(item -> {
InvoiceLedgerExcelDto invoiceLedgerExcelDto = new InvoiceLedgerExcelDto();
BeanUtils.copyProperties(item, invoiceLedgerExcelDto);
return invoiceLedgerExcelDto;
diff --git a/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml b/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml
index cf13c1e..e239178 100644
--- a/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml
+++ b/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml
@@ -6,37 +6,57 @@
<select id="invoiceRegistrationProductList" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
SELECT
- id ,
- sales_ledger_id ,
- sales_ledger_product_id ,
- invoice_registration_id ,
- product_category ,
- specification_model ,
- unit ,
- quantity ,
- tax_rate ,
- tax_inclusive_unit_price ,
- tax_inclusive_total_price ,
- tax_exclusive_total_price ,
- invoice_type ,
- invoice_num ,
- invoice_amount ,
- no_invoice_num ,
- no_invoice_amount ,
- create_time ,
- create_user ,
- update_time ,
- update_user ,
- tenant_id
- FROM invoice_registration_product
+ T1.id ,
+ T1.sales_ledger_id ,
+ T1.sales_ledger_product_id ,
+ T1.invoice_registration_id ,
+ T1.product_category ,
+ T1.specification_model ,
+ T1.unit ,
+ T1.quantity ,
+ T1.tax_rate ,
+ T1.tax_inclusive_unit_price ,
+ T1.tax_inclusive_total_price ,
+ T1.tax_exclusive_total_price ,
+ T1.invoice_type ,
+ T1.invoice_num ,
+ T1.invoice_amount ,
+ T1.no_invoice_num ,
+ T1.no_invoice_amount ,
+ T1.create_time ,
+ T1.create_user ,
+ T1.update_time ,
+ T1.update_user ,
+ T1.tenant_id,
+ T2.sales_contract_no,
+ T2.customer_contract_no,
+ T2.customer_name,
+ T3.invoice_no,
+ T3.invoice_total,
+ T3.invoice_person,
+ T3.invoice_date,
+ T4.invoiceFileName
+ FROM invoice_registration_product T1
+ LEFT JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
+ LEFT JOIN invoice_ledger T3 ON T1.id = T3.invoice_registration_product_id
+ LEFT JOIN (
+ SELECT
+ invoice_ledger_id,
+ GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
+ FROM invoice_ledger_file GROUP BY invoice_ledger_id
+ ) T4 ON T4.invoice_ledger_id = T3.id
<where>
- <if test="invoiceRegistrationProductDto.invoiceRegistrationId != null">
- invoice_registration_id = #{invoiceRegistrationProductDto.invoiceRegistrationId}
+ <if test="invoiceRegistrationProductDto.searchText != null and invoiceRegistrationProductDto.searchText != '' ">
+ AND (T2.sales_contract_no LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
+ OR
+ T2.customer_name LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
+ )
</if>
- <if test="invoiceRegistrationProductDto.salesLedgerId != null">
- sales_ledger_id = #{invoiceRegistrationProductDto.salesLedgerId}
+ <if test="invoiceRegistrationProductDto.invoiceDate != null">
+ AND T3.invoice_date = #{invoiceRegistrationProductDto.invoiceDate}
</if>
</where>
+ ORDER BY T1.create_time DESC
</select>
<select id="invoiceRegistrationProductPage" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
@@ -80,6 +100,17 @@
GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
FROM invoice_ledger_file GROUP BY invoice_ledger_id
) T4 ON T4.invoice_ledger_id = T3.id
+ <where>
+ <if test="invoiceRegistrationProductDto.searchText != null and invoiceRegistrationProductDto.searchText != '' ">
+ AND (T2.sales_contract_no LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
+ OR
+ T2.customer_name LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
+ )
+ </if>
+ <if test="invoiceRegistrationProductDto.invoiceDate != null">
+ AND T3.invoice_date = #{invoiceRegistrationProductDto.invoiceDate}
+ </if>
+ </where>
ORDER BY T1.create_time DESC
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.3