From e2079ea034c7f6bb5fc096fd4d83ed9b2cc3ff13 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期日, 21 六月 2026 10:38:31 +0800
Subject: [PATCH] fix: 导入销售订单汇总修改
---
src/main/resources/mapper/sales/ShippingInfoMapper.xml | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 107 insertions(+), 3 deletions(-)
diff --git a/src/main/resources/mapper/sales/ShippingInfoMapper.xml b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
index efe93cf..fde05d2 100644
--- a/src/main/resources/mapper/sales/ShippingInfoMapper.xml
+++ b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
@@ -1,22 +1,34 @@
-<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.sales.mapper.ShippingInfoMapper">
- <select id="listPage" resultType="com.ruoyi.sales.pojo.ShippingInfo">
+ <select id="listPage" resultType="com.ruoyi.sales.dto.ShippingInfoDto">
SELECT
s.id,
s.sales_ledger_id,
s.shipping_date,
s.shipping_car_number,
+ s.express_number,
+ s.express_company,
+ s.shipping_no,
+ s.type,
+ s.status,
s.create_time,
s.update_time,
s.create_user,
s.update_user,
s.tenant_id,
sl.sales_contract_no,
+ slp.specification_model,
+ p.product_name,
+ pm.thickness,
sl.customer_name
FROM shipping_info s
LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+ LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id and slp.type = 1
+ left join product_model pm on slp.product_model_id = pm.id
+ left join product p on pm.product_id = p.id
WHERE 1=1
<if test="req.salesContractNo != null and req.salesContractNo != ''">
AND sl.sales_contract_no LIKE CONCAT('%',#{req.salesContractNo},'%')
@@ -24,6 +36,19 @@
<if test="req.shippingCarNumber != null and req.shippingCarNumber != ''">
AND s.shipping_car_number LIKE CONCAT('%',#{req.shippingCarNumber},'%')
</if>
+ <if test="req.shippingNo != null and req.shippingNo != ''">
+ AND s.shipping_no LIKE CONCAT('%',#{req.shippingNo},'%')
+ </if>
+ <if test="req.expressNumber != null and req.expressNumber != ''">
+ AND s.express_number LIKE CONCAT('%',#{req.expressNumber},'%')
+ </if>
+ <if test="req.shippingDateStart != null and req.shippingDateStart != ''">
+ AND s.shipping_date >= #{req.shippingDateStart}
+ </if>
+ <if test="req.shippingDateEnd != null and req.shippingDateEnd != ''">
+ AND s.shipping_date <= #{req.shippingDateEnd}
+ </if>
+ order by create_time DESC
</select>
<select id="listAll" resultType="com.ruoyi.sales.pojo.ShippingInfo">
SELECT
@@ -39,6 +64,85 @@
sl.sales_contract_no,
sl.customer_name
FROM shipping_info s
- LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+ LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+ ORDER BY s.create_time ASC
+ </select>
+
+ <select id="exportList" resultType="com.ruoyi.sales.dto.ShippingInfoDto">
+ SELECT
+ s.id,
+ s.sales_ledger_id,
+ s.shipping_date,
+ s.shipping_car_number,
+ s.express_number,
+ s.express_company,
+ s.shipping_no,
+ s.type,
+ s.status,
+ s.create_time,
+ s.update_time,
+ s.create_user,
+ s.update_user,
+ s.tenant_id,
+ sl.sales_contract_no,
+ slp.specification_model,
+ p.product_name,
+ pm.thickness,
+ sl.customer_name
+ FROM shipping_info s
+ LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+ LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id and slp.type = 1
+ left join product_model pm on slp.product_model_id = pm.id
+ left join product p on pm.product_id = p.id
+ WHERE 1=1
+ <if test="req.salesContractNo != null and req.salesContractNo != ''">
+ AND sl.sales_contract_no LIKE CONCAT('%',#{req.salesContractNo},'%')
+ </if>
+ <if test="req.shippingCarNumber != null and req.shippingCarNumber != ''">
+ AND s.shipping_car_number LIKE CONCAT('%',#{req.shippingCarNumber},'%')
+ </if>
+ <if test="req.expressNumber != null and req.expressNumber != ''">
+ AND s.express_number LIKE CONCAT('%',#{req.expressNumber},'%')
+ </if>
+ <if test="req.shippingDateStart != null and req.shippingDateStart != ''">
+ AND s.shipping_date >= #{req.shippingDateStart}
+ </if>
+ <if test="req.shippingDateEnd != null and req.shippingDateEnd != ''">
+ AND s.shipping_date <= #{req.shippingDateEnd}
+ </if>
+ order by s.create_time DESC
+ </select>
+
+ <select id="getReturnManagementDtoById" resultType="com.ruoyi.sales.dto.SalesLedgerProductDto">
+ SELECT
+ slp.*,
+ GREATEST(slp.quantity - COALESCE(rs.total_return_num, 0), 0) AS un_quantity,
+ COALESCE(rs.total_return_num, 0) AS total_return_num,
+ pm.unit AS product_model_unit,
+ pm.thickness AS thickness
+ FROM shipping_info si
+ LEFT JOIN sales_ledger_product slp ON si.sales_ledger_product_id = slp.id and slp.type = 1
+ LEFT JOIN product_model pm ON slp.product_model_id = pm.id
+ LEFT JOIN (
+ SELECT
+ return_sale_ledger_product_id,
+ SUM(num) AS total_return_num
+ FROM return_sale_product rsp
+ left join return_management rm on rm.id = rsp.return_management_id
+ left join shipping_info si on si.id = rm.shipping_id
+ WHERE 1=1
+ GROUP BY return_sale_ledger_product_id
+ ) rs ON rs.return_sale_ledger_product_id = slp.id
+ <where>
+ <if test="shippingId != null">
+ si.id = #{shippingId}
+ </if>
+ </where>
+ </select>
+
+ <select id="getShippingInfoByCustomerName" resultType="com.ruoyi.sales.pojo.ShippingInfo">
+ select * from shipping_info si
+ left join sales_ledger sl on si.sales_ledger_id = sl.id
+ where si.status = '宸插彂璐�' and sl.customer_name = #{customerName}
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.3