From e4e498bd271942d95d40809028fa8f65354c8f2c Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期五, 09 五月 2025 17:18:32 +0800
Subject: [PATCH] 调用计算延期风险接口

---
 aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanMapper.xml |   84 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 81 insertions(+), 3 deletions(-)

diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanMapper.xml
index 6d758ea..7d407f4 100644
--- a/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanMapper.xml
+++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsPlatePlanMapper.xml
@@ -40,10 +40,27 @@
         <result property="isStockComplete"    column="is_stock_complete"    />
         <result property="hasTurnback"    column="has_turnback"    />
         <result property="hasRisk"    column="has_risk"    />
+        <result property="stdOp"    column="std_op"    />
+        <result property="opStatus"    column="op_status"    />
+        <result property="nextOpName"    column="next_op_name"    />
+        <result property="unmatchedQuantity"    column="unmatched_quantity"    />
+        <result property="productionBase"    column="production_base"    />
+        <result property="orderCreateTime"    column="order_create_time"    />
+        <result property="professionalAffiliation"    column="professional_affiliation"    />
+        <result property="requireId"    column="require_id"    />
+        <result property="version"    column="version"    />
     </resultMap>
 
     <sql id="selectApsPlatePlanVo">
-        select id, master_planner, week_day, week_cycle, main_part_number, main_part_drawing_number, customer, business_type, document_number, requirement_type, document_status, item_number, drawing_no, version_number, production_quantity, good_products_quantity, process_number, work_center, department, plan_start_day, plan_end_day, standby_number, standby_name, standby_stock, next_process_deparment, is_suspended, is_outsourcing, account, advanced_materials, advanced_document_number, advanced_requirement_day, is_plan_complete, is_stock_complete, has_turnback, has_risk from aps_plate_plan
+        select id, master_planner, week_day, week_cycle, main_part_number, main_part_drawing_number,
+               customer, business_type, document_number, requirement_type, document_status, item_number,
+               drawing_no, version_number, production_quantity, good_products_quantity, process_number,
+               work_center, department, plan_start_day, plan_end_day, standby_number, standby_name,
+               standby_stock, next_process_deparment, is_suspended, is_outsourcing, account, advanced_materials,
+               advanced_document_number, advanced_requirement_day, is_plan_complete, is_stock_complete,
+               has_turnback, has_risk, std_op, op_status, next_op_name ,unmatched_quantity,professional_affiliation,
+                   require_id, version,production_base, order_create_time
+        from aps_plate_plan
     </sql>
 
     <select id="selectApsPlatePlanList" parameterType="ApsPlatePlan" resultMap="ApsPlatePlanResult">
@@ -84,6 +101,9 @@
             <if test="hasTurnback != null "> and has_turnback = #{hasTurnback}</if>
             <if test="hasRisk != null "> and has_risk = #{hasRisk}</if>
             <if test="plant != null "> and plant = #{plant}</if>
+            <if test="stdOp != null "> and std_op = #{stdOp}</if>
+            <if test="opStatus != null  and opStatus != ''"> and op_status = #{opStatus}</if>
+            <if test="nextOpName != null  and nextOpName != ''"> and next_op_name = #{nextOpName}</if>
              and del_flag='0'
         </where>
     </select>
@@ -131,6 +151,10 @@
             <if test="isStockComplete != null">is_stock_complete,</if>
             <if test="hasTurnback != null">has_turnback,</if>
             <if test="hasRisk != null">has_risk,</if>
+            <if test="stdOp != null">std_op,</if>
+            <if test="opStatus != null">op_status,</if>
+            <if test="nextOpName != null">next_op_name,</if>
+            <if test="unmatchedQuantity != null">unmatched_quantity,</if>
             create_time,
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
@@ -169,6 +193,10 @@
             <if test="isStockComplete != null">#{isStockComplete},</if>
             <if test="hasTurnback != null">#{hasTurnback},</if>
             <if test="hasRisk != null">#{hasRisk},</if>
+            <if test="stdOp != null">#{stdOp},</if>
+            <if test="opStatus != null">#{opStatus},</if>
+            <if test="nextOpName != null">#{nextOpName},</if>
+            <if test="unmatchedQuantity != null">#{unmatchedQuantity},</if>
             #{createTime},
          </trim>
     </insert>
@@ -210,6 +238,10 @@
             <if test="isStockComplete != null">is_stock_complete = #{isStockComplete},</if>
             <if test="hasTurnback != null">has_turnback = #{hasTurnback},</if>
             <if test="hasRisk != null">has_risk = #{hasRisk},</if>
+            <if test="stdOp != null">std_op = #{stdOp},</if>
+            <if test="opStatus != null"> op_status= #{opStatus},</if>
+            <if test="nextOpName != null"> next_op_name= #{nextOpName},</if>
+            <if test="unmatchedQuantity != null"> unmatched_quantity = #{unmatchedQuantity},</if>
         </trim>
         where id = #{id}
     </update>
@@ -227,9 +259,9 @@
 
     <insert id="insertPlatePlanFromTempByBatchNumber" parameterType="String">
         insert into aps_plate_plan(
-            id, master_planner, week_day, week_cycle, main_part_number, main_part_drawing_number, customer, business_type, document_number, requirement_type, document_status, item_number, drawing_no, version_number, production_quantity, good_products_quantity, process_number, work_center, department, plan_start_day, plan_end_day, standby_number, standby_name, standby_stock, next_process_deparment, is_suspended, is_outsourcing, account, advanced_materials, advanced_document_number, advanced_requirement_day, is_plan_complete, is_stock_complete, has_turnback, has_risk)
+            id, master_planner, week_day, week_cycle, main_part_number, main_part_drawing_number, customer, business_type, document_number, requirement_type, document_status, item_number, drawing_no, version_number, production_quantity, good_products_quantity, process_number, work_center, department, plan_start_day, plan_end_day, standby_number, standby_name, standby_stock, next_process_deparment, is_suspended, is_outsourcing, account, advanced_materials, advanced_document_number, advanced_requirement_day, is_plan_complete, is_stock_complete, has_turnback, has_risk, std_op, op_status, next_op_name)
         SELECT
-            id, master_planner, week_day, week_cycle, main_part_number, main_part_drawing_number, customer, business_type, document_number, requirement_type, document_status, item_number, drawing_no, version_number, production_quantity, good_products_quantity, process_number, work_center, department, plan_start_day, plan_end_day, standby_number, standby_name, standby_stock, next_process_deparment, is_suspended, is_outsourcing, account, advanced_materials, advanced_document_number, advanced_requirement_day, is_plan_complete, is_stock_complete, has_turnback, has_risk
+            id, master_planner, week_day, week_cycle, main_part_number, main_part_drawing_number, customer, business_type, document_number, requirement_type, document_status, item_number, drawing_no, version_number, production_quantity, good_products_quantity, process_number, work_center, department, plan_start_day, plan_end_day, standby_number, standby_name, standby_stock, next_process_deparment, is_suspended, is_outsourcing, account, advanced_materials, advanced_document_number, advanced_requirement_day, is_plan_complete, is_stock_complete, has_turnback, has_risk, std_op, op_status, next_op_name
         from aps_plate_plan_temp
         where batch_number = #{batch_number}
     </insert>
@@ -237,4 +269,50 @@
         update  aps_plate_plan  set del_flag='1' where del_flag ='0'
     </update>
 
+    <select id="selectPlatePlanByPlantMajor" parameterType="ApsPlatePlan" resultMap="ApsPlatePlanResult">
+        select  id,document_number,main_part_number,item_number,plant,professional_affiliation,production_quantity,require_id,
+        unmatched_quantity,version, production_base,
+        (case   when custom_time is null then plan_end_day else custom_time end ) as plan_end_day
+        from aps_plate_plan
+        <where>
+            <if test="plant != null "> and plant = #{plant}</if>
+            <if test="professionalAffiliation != null "> and professional_affiliation = #{professionalAffiliation}</if>
+            and del_flag='0'
+        </where>
+        order by document_number asc,id asc
+    </select>
+
+    <select id="selectUnMatchPlateSubPlan" parameterType="ApsPlatePlan" resultMap="ApsPlatePlanResult">
+        select  id,document_number,main_part_number,item_number,plant,professional_affiliation,production_quantity,
+             unmatched_quantity,version
+        from aps_plate_plan
+        where  del_flag='0' and professional_affiliation !='0' and unmatched_quantity > 0
+        <if test="plant != null  and plant !='' "> and plant = #{plant}</if>
+        <if test="itemNumber != null  and itemNumber !='' "> and item_number = #{itemNumber}</if>
+        order by document_number asc,id asc
+        limit 1
+    </select>
+
+
+    <update id="updatePlanUnMatchQtyByVersion" parameterType="ApsPlatePlan">
+        update aps_plate_plan
+        set unmatched_quantity=#{unmatchedQuantity},version=version+1
+        where id=#{id} and version=#{version}
+    </update>
+    <select id="selectPlateRedundantOrderList" parameterType="ApsPlatePlan" resultMap="ApsPlatePlanResult">
+        select document_number, item_number, production_quantity, unmatched_quantity, plant, production_base, plan_start_day, plan_end_day, order_create_time
+        from aps_plate_plan where unmatched_quantity>0 and professional_affiliation!='0'
+        <if test="documentNumber != null and documentNumber != ''">
+            and document_number like '%' || #{documentNumber} || '%'
+        </if>
+        <if test="itemNumber != null and itemNumber != ''">
+            and item_number like '%' || #{itemNumber} || '%'
+        </if>
+    </select>
+
+    <update id="initUnMatchQty" >
+        update aps_plate_plan
+            set unmatched_quantity=production_quantity, version=0,require_id=id
+        where   del_flag='0' and professional_affiliation !='0'
+    </update>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3