From 54b83f755d687fbc87bd9c93ac459feccc7e12d1 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期三, 19 八月 2026 10:19:55 +0800
Subject: [PATCH] feat: 生产订单新增销售号查询

---
 src/main/resources/mapper/production/ProductionOrderMapper.xml |   37 ++++++++++++++++++++++++++++++++-----
 1 files changed, 32 insertions(+), 5 deletions(-)

diff --git a/src/main/resources/mapper/production/ProductionOrderMapper.xml b/src/main/resources/mapper/production/ProductionOrderMapper.xml
index 95679a7..0028120 100644
--- a/src/main/resources/mapper/production/ProductionOrderMapper.xml
+++ b/src/main/resources/mapper/production/ProductionOrderMapper.xml
@@ -113,6 +113,9 @@
                 <if test="c.npsNo != null and c.npsNo != ''">
                     and po.nps_no like concat('%', #{c.npsNo}, '%')
                 </if>
+                <if test="c.salesContractNo != null and c.salesContractNo != ''">
+                    and po_sales.salesContractNo like concat('%', #{c.salesContractNo}, '%')
+                </if>
                 <if test="c.productionPlanIds != null and c.productionPlanIds != ''">
                     and po.production_plan_ids like concat('%', #{c.productionPlanIds}, '%')
                 </if>
@@ -134,7 +137,7 @@
         <include refid="ProductionOrderVoColumns" />
         <include refid="ProductionOrderVoFrom" />
         <include refid="ProductionOrderWhere" />
-        order by po.id desc
+        order by po.nps_no desc
     </select>
 
     <select id="listProductionOrder" resultMap="ProductionOrderVoResultMap">
@@ -227,8 +230,12 @@
             <if test="status != null">
                 and po.status = #{status}
             </if>
+            <if test="startTime != null and endTime != null">
+                and po.create_time &gt;= #{startTime}
+                and po.create_time &lt; #{endTime}
+            </if>
         </where>
-        order by po.id desc
+        order by po.nps_no desc
         limit #{offset}, #{size}
     </select>
 
@@ -239,13 +246,21 @@
             <if test="status != null">
                 and po.status = #{status}
             </if>
+            <if test="startTime != null and endTime != null">
+                and po.create_time &gt;= #{startTime}
+                and po.create_time &lt; #{endTime}
+            </if>
         </where>
     </select>
 
     <select id="countHomeOrderProgressByStatus" resultType="java.util.Map">
         select po.status as status, count(1) as cnt
         from production_order po
-        where po.status in (2, 3, 4)
+        where po.status in (1, 2, 3, 4)
+        <if test="startTime != null and endTime != null">
+            and po.create_time &gt;= #{startTime}
+            and po.create_time &lt; #{endTime}
+        </if>
         group by po.status
     </select>
 
@@ -258,7 +273,13 @@
         from production_order po
                  left join product_model pm on po.product_model_id = pm.id
                  left join product p on pm.product_id = p.id
-        where po.status in (1, 2)
+        <where>
+            po.status in (1, 2)
+            <if test="planStart != null and planEnd != null">
+                and po.plan_complete_time &gt;= #{planStart}
+                and po.plan_complete_time &lt; #{planEnd}
+            </if>
+        </where>
         order by case when po.status = 2 then 0 else 1 end, po.id desc
         limit #{size}
     </select>
@@ -266,7 +287,13 @@
     <select id="countHomeTodayProductionPlan" resultType="java.lang.Long">
         select count(1)
         from production_order po
-        where po.status in (1, 2)
+        <where>
+            po.status in (1, 2)
+            <if test="planStart != null and planEnd != null">
+                and po.plan_complete_time &gt;= #{planStart}
+                and po.plan_complete_time &lt; #{planEnd}
+            </if>
+        </where>
     </select>
 
 </mapper>

--
Gitblit v1.9.3