From 24eb8a2c2eb67bf3aab16593f52ed93802eed1cb Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期三, 14 五月 2025 18:04:59 +0800
Subject: [PATCH] 管路、气柜产能负载按月统计工厂拆分修改"_"拼接工厂

---
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml |   80 ++++++++++++++++++++++++++++++++--------
 1 files changed, 64 insertions(+), 16 deletions(-)

diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml
index ee20061..6f64152 100644
--- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanOrderManagerMapper.xml
@@ -4,9 +4,9 @@
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.aps.core.mapper.ApsPlateOrderPlanManagerMapper">
     
-    <resultMap type="ApsPlateOrderPlanManager" id="ApsPlateOrderPlanManagerResult">
+    <resultMap type="com.aps.core.domain.ApsPlateOrderPlanManager" id="ApsPlateOrderPlanManagerResult">
         <result property="id"    column="id"    />
-        <result property="require_id"    column="requireId"    />
+        <result property="requireId"    column="require_id"    />
         <result property="requireTrackId"    column="require_track_id"    />
         <result property="workOrderNo"    column="doc_no"    />
         <result property="deductionAmount"    column="deduction_amount"    />
@@ -20,10 +20,13 @@
         <result property="planStartDay"    column="plan_start_day"    />
         <result property="planEndDay"    column="plan_end_day"    />
         <result property="unmatchedQuantity"    column="unmatched_quantity"    />
-        <result property="hasDelayRisk"    column="has_risk"    />
+        <result property="hasDelayRisk"    column="has_delay_risk"    />
+        <result property="startDate"    column="start_date"    />
+        <result property="completeDate"    column="complete_date"    />
+        <result property="orderCreateTime"    column="order_create_time"    />
     </resultMap>
 
-    <select id="selectApsPlanOrderManager" parameterType="ApsPlateOrderPlanManager" resultMap="ApsPlateOrderPlanManagerResult">
+    <select id="selectApsPlanOrderManager" parameterType="com.aps.core.domain.ApsPlateOrderPlanManager" resultMap="ApsPlateOrderPlanManagerResult">
         select
             detail.require_id,
             detail.require_track_id,
@@ -39,20 +42,23 @@
             plan.plan_start_day,
             plan.plan_end_day,
             plan.unmatched_quantity,
-            plan.has_risk,
-            plan.id
+            require.has_delay_risk,
+            plan.id,
+            require.start_date,
+            require.complete_date,
+            plan.order_create_time
         from aps_plate_standard_require_bom_order_detail detail
-            left join aps_plate_plan plan on detail.doc_no = plan.document_number
-        <where>  
+        left join aps_plate_standard_require require on detail.require_id = require.id and require.del_flag = '0'
+        left join aps_plate_plan plan on detail.doc_no = plan.document_number and plan.del_flag = '0'
+        where detail.del_flag='0' and require.del_flag = '0' and plan.del_flag = '0'
             <if test="workOrderNo != null  and workOrderNo != ''"> and detail.doc_no = #{workOrderNo}</if>
-            <if test="requireId != null  and requireId != ''"> and detail.require_id = #{requireId}</if>
+            <if test="requireTrackId != null  and requireTrackId != ''"> and detail.require_track_id = '${requireTrackId}'</if>
             <if test="mainPartNumber != null  and mainPartNumber != ''"> and plan.main_part_number = #{mainPartNumber}</if>
-            <if test="hasDelayRisk != null  and hasDelayRisk != ''"> and plan.has_risk = #{hasDelayRisk}</if>
-        </where>
+            <if test="hasDelayRisk != null  and hasDelayRisk != ''"> and require.has_delay_risk = #{hasDelayRisk}</if>
     </select>
 
 
-    <resultMap type="ApsPlateStandardRequire" id="ApsPlateStandardRequireResult">
+    <resultMap type="com.aps.core.domain.ApsPlateStandardRequire" id="ApsPlateStandardRequireResult">
         <result property="id"    column="id"    />
         <result property="requireTrackId"    column="require_track_id"    />
         <result property="bomLineId"    column="bom_line_id"    />
@@ -82,7 +88,7 @@
     </resultMap>
 
     <sql id="selectApsPlateStandardRequireVo">
-        select require.id,
+        select distinct require.id,
                require.require_track_id,
                require.bom_line_id,
                require.bom_line_code,
@@ -115,9 +121,51 @@
 
     <select id="selectApsPlanStandardRequire" parameterType="String" resultMap="ApsPlateStandardRequireResult">
         <include refid="selectApsPlateStandardRequireVo"/>
-        <where>
-            <if test="workOrderNo != null  and workOrderNo != ''"> and detail.doc_no = #{workOrderNo}</if>
-        </where>
+        where require.del_flag = '0'
+        <if test="workOrderNo != null  and workOrderNo != ''"> and detail.doc_no = #{workOrderNo}</if>
     </select>
 
+    <resultMap type="com.aps.core.domain.ApsPlateOrderPlanRequireDate" id="selectPlanRequireIdsResult">
+        <result property="id"    column="id"    />
+        <result property="start"    column="start_date"    />
+        <result property="end"    column="end_date"    />
+    </resultMap>
+
+    <select id="selectPlanRequireIds" parameterType="String" resultMap="selectPlanRequireIdsResult">
+        select
+            plan.id,
+            min(require.start_date) as start_date,
+            min(require.complete_date) as end_date
+        from aps_plate_standard_require_bom_order_detail detail
+            left join aps_plate_standard_require require on detail.require_id = require.id and require.del_flag = '0'
+            left join aps_plate_plan plan on detail.doc_no = plan.document_number and plan.del_flag = '0'
+        where
+            detail.del_flag = '0' and
+            plan.id in
+        <foreach collection="planIds" item="planId" open="(" separator="," close=")">
+            #{planId}
+        </foreach>
+        group by plan.id
+    </select>
+
+    <update id="updatePlanDateByBatch" parameterType="com.aps.core.domain.ApsPlateOrderPlanRequireDate">
+        update aps_plate_plan set
+          plan_start_day = #{start},
+          plan_end_day = #{end},
+          update_by = #{updateBy},
+          update_time = now()
+        where id =  #{id}
+    </update>
+
+    <update id="updatePlanDateByCustom" parameterType="com.aps.core.domain.ApsPlateOrderPlanDate">
+        update aps_plate_plan set
+          plan_end_day = #{customDate},
+          update_by = #{updateBy},
+          update_time = now()
+        where id in
+        <foreach collection="planIds" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </update>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3