From 3c61c5f4bc92f75b4fe60653eaa676a21cde4325 Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期四, 19 十二月 2024 17:09:02 +0800
Subject: [PATCH] edit BI Device log and planList

---
 pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml |  137 +++++++++++++++++++++++++++++++--------------
 1 files changed, 95 insertions(+), 42 deletions(-)

diff --git a/pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml b/pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml
index f56de7d..bca0a78 100644
--- a/pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml
+++ b/pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml
@@ -6,6 +6,7 @@
 
     <resultMap id="BaseResultMap" type="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan">
         <id property="id" column="id" jdbcType="BIGINT"/>
+        <result property="orderId" column="order_id" jdbcType="BIGINT"/>
         <result property="proId" column="pro_id" jdbcType="BIGINT"/>
         <result property="batchId" column="batch_id" jdbcType="BIGINT"/>
         <result property="processId" column="process_id" jdbcType="BIGINT"/>
@@ -22,12 +23,16 @@
         <result property="outputNumber" column="output_number" jdbcType="INTEGER"/>
         <association property="proName" column="pro_id" javaType="java.lang.Long"
                      select="com.dy.pmsGlobal.daoPlt.PltProductMapper.selectProNameById" fetchType="eager"/>
+        <association property="proType" column="pro_id" javaType="java.lang.Long"
+                     select="com.dy.pmsGlobal.daoPlt.PltProductMapper.selectProTypeById" fetchType="eager" />
         <association property="creatorName" column="creator" javaType="java.lang.Long"
                      select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectNameByUserId" fetchType="eager"/>
         <association property="batchNo" column="batch_id" javaType="java.lang.Long"
                      select="com.dy.pmsGlobal.daoPr.PrBatchNumberMapper.selectBatchNoById" fetchType="eager"/>
         <association property="processName" column="process_id" javaType="java.lang.Long"
                      select="com.dy.pmsGlobal.daoPr.PrProductionProcessMapper.selectProcessNameById" fetchType="eager"/>
+        <association property="orderName" column="order_id" javaType="java.lang.Long"
+                     select="com.dy.pmsGlobal.daoPr.PrOrderMapper.selectOrderNameById" fetchType="eager" />
         <collection property="process" ofType="com.dy.pmsGlobal.pojoPr.PrProductionProcess"
                     select="com.dy.pmsGlobal.daoPr.PrProductionProcessMapper.selectByPrimaryKey" fetchType="eager"
                     column="process_id"/>
@@ -35,6 +40,7 @@
 
     <resultMap id="PlanResultMap" type="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan">
         <id property="id" column="id" jdbcType="BIGINT"/>
+        <result property="orderId" column="order_id" jdbcType="BIGINT"/>
         <result property="proId" column="pro_id" jdbcType="BIGINT"/>
         <result property="batchId" column="batch_id" jdbcType="BIGINT"/>
         <result property="processId" column="process_id" jdbcType="BIGINT"/>
@@ -54,8 +60,9 @@
                     column="process_id"/>
     </resultMap>
 
+
     <sql id="Base_Column_List">
-        id
+        id,order_id
         ,pro_id,batch_id,
         process_id,name,number,
         status,creator,
@@ -64,6 +71,7 @@
     </sql>
     <sql id="part_Column_List" >
         ${alias}.id,
+        ${alias}.order_id,
         ${alias}.pro_id,
         ${alias}.batch_id,
         ${alias}.process_id,
@@ -98,6 +106,12 @@
         from pr_assembly_plan
         where id = #{id}
     </select>
+    <select id="selectByBatchId" parameterType="java.lang.Long" resultMap="BaseResultMap">
+        select
+        <include refid="Base_Column_List"/>
+        from pr_assembly_plan
+        where batch_id = #{batchId,jdbcType=BIGINT}
+    </select>
     <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
         select
         <include refid="Base_Column_List"/>
@@ -127,16 +141,19 @@
         <include refid="Base_Column_List"/>
         from pr_assembly_plan
         <trim prefix="where" suffixOverrides="and">
+            <if test="orderId != null">
+                order_id = #{orderId,jdbcType=BIGINT} and
+            </if>
             <if test="proId != null">
                 pro_id = #{proId,jdbcType=BIGINT} and
             </if>
             <if test="batchId != null">
                 batch_id = #{batchId,jdbcType=BIGINT} and
             </if>
-            <if test="processId != null">
+            <if test="processId!= null">
                 process_id = #{processId,jdbcType=BIGINT} and
             </if>
-            <if test="name != null">
+            <if test="name != null and name !=''">
                 name = #{name,jdbcType=VARCHAR} and
             </if>
             <if test="number != null">
@@ -145,22 +162,22 @@
             <if test="status != null">
                 status = #{status,jdbcType=TINYINT} and
             </if>
-            <if test="creator != null">
+            <if test="creator != null and creator !=''">
                 creator = #{creator,jdbcType=VARCHAR} and
             </if>
             <if test="dt != null">
                 dt = #{dt,jdbcType=TIMESTAMP} and
             </if>
-            <if test="startDate != null">
+            <if test="startDate != null and startDate !=''">
                 start_date = #{startDate,jdbcType=VARCHAR} and
             </if>
-            <if test="endDate != null">
+            <if test="endDate != null and endDate !=''">
                 end_date = #{endDate,jdbcType=VARCHAR} and
             </if>
             <if test="deleted != null">
                 deleted = #{deleted,jdbcType=TINYINT} and
             </if>
-            <if test="content != null">
+            <if test="content != null and content !=''">
                 content = #{content,jdbcType=VARCHAR} and
             </if>
         </trim>
@@ -171,16 +188,19 @@
         <include refid="Base_Column_List"/>
         from pr_assembly_plan
         <trim prefix="where" suffixOverrides="and">
+            <if test="orderId != null">
+                order_id = #{orderId,jdbcType=BIGINT} and
+            </if>
             <if test="proId != null">
                 pro_id = #{proId,jdbcType=BIGINT} and
             </if>
             <if test="batchId != null">
                 batch_id = #{batchId,jdbcType=BIGINT} and
             </if>
-            <if test="processId != null">
+            <if test="processId!= null">
                 process_id = #{processId,jdbcType=BIGINT} and
             </if>
-            <if test="name != null">
+            <if test="name != null and name !=''">
                 name = #{name,jdbcType=VARCHAR} and
             </if>
             <if test="number != null">
@@ -189,22 +209,22 @@
             <if test="status != null">
                 status = #{status,jdbcType=TINYINT} and
             </if>
-            <if test="creator != null">
+            <if test="creator != null and creator !=''">
                 creator = #{creator,jdbcType=VARCHAR} and
             </if>
             <if test="dt != null">
                 dt = #{dt,jdbcType=TIMESTAMP} and
             </if>
-            <if test="startDate != null">
+            <if test="startDate != null and startDate !=''">
                 start_date = #{startDate,jdbcType=VARCHAR} and
             </if>
-            <if test="endDate != null">
+            <if test="endDate != null and endDate !=''">
                 end_date = #{endDate,jdbcType=VARCHAR} and
             </if>
             <if test="deleted != null">
                 deleted = #{deleted,jdbcType=TINYINT} and
             </if>
-            <if test="content != null">
+            <if test="content != null and content !=''">
                 content = #{content,jdbcType=VARCHAR} and
             </if>
         </trim>
@@ -219,12 +239,12 @@
     <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan"
             useGeneratedKeys="true">
         insert into pr_assembly_plan
-        ( id, pro_id, batch_id
+        ( id,order_id, pro_id, batch_id
         , process_id, name, number
         , status, creator
         , dt, start_date, end_date
         , deleted, content, input_number, output_number)
-        values ( #{id,jdbcType=BIGINT}, #{proId,jdbcType=BIGINT}, #{batchId,jdbcType=BIGINT}
+        values ( #{id,jdbcType=BIGINT},#{orderId,jdbcType=BIGINT},  #{proId,jdbcType=BIGINT}, #{batchId,jdbcType=BIGINT}
                , #{processId,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{number,jdbcType=INTEGER}
                , #{status,jdbcType=TINYINT}, #{creator,jdbcType=VARCHAR}
                , #{dt,jdbcType=TIMESTAMP}, #{startDate,jdbcType=VARCHAR}, #{endDate,jdbcType=VARCHAR}
@@ -236,52 +256,57 @@
         insert into pr_assembly_plan
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="id != null">id,</if>
+            <if test="orderId != null">order_id,</if>
             <if test="proId != null">pro_id,</if>
             <if test="batchId != null">batch_id,</if>
             <if test="processId != null">process_id,</if>
-            <if test="name != null">name,</if>
+            <if test="name != null and name !=''">name,</if>
             <if test="number != null">number,</if>
             <if test="status != null">status,</if>
-            <if test="creator != null">creator,</if>
+            <if test="creator != null and creator !=''">creator,</if>
             <if test="dt != null">dt,</if>
-            <if test="startDate != null">start_date,</if>
-            <if test="endDate != null">end_date,</if>
+            <if test="startDate != null and startDate !=''">start_date,</if>
+            <if test="endDate != null and endDate !=''">end_date,</if>
             <if test="deleted != null">deleted,</if>
-            <if test="content != null">content,</if>
-            <if test="inputNumber != null">input_number,</if>
-            <if test="outputNumber != null">output_number,</if>
+            <if test="content != null and content !=''">content,</if>
+            <if test="inputNumber!= null">input_number,</if>
+            <if test="outputNumber!= null">output_number,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id,jdbcType=BIGINT},</if>
+            <if test="orderId != null">#{orderId,jdbcType=BIGINT},</if>
             <if test="proId != null">#{proId,jdbcType=BIGINT},</if>
             <if test="batchId != null">#{batchId,jdbcType=BIGINT},</if>
             <if test="processId != null">#{processId,jdbcType=BIGINT},</if>
-            <if test="name != null">#{name,jdbcType=VARCHAR},</if>
+            <if test="name != null and name !=''">#{name,jdbcType=VARCHAR},</if>
             <if test="number != null">#{number,jdbcType=INTEGER},</if>
             <if test="status != null">#{status,jdbcType=TINYINT},</if>
-            <if test="creator != null">#{creator,jdbcType=VARCHAR},</if>
+            <if test="creator != null and creator !=''">#{creator,jdbcType=VARCHAR},</if>
             <if test="dt != null">#{dt,jdbcType=TIMESTAMP},</if>
-            <if test="startDate != null">#{startDate,jdbcType=VARCHAR},</if>
-            <if test="endDate != null">#{endDate,jdbcType=VARCHAR},</if>
+            <if test="startDate != null and startDate !=''">#{startDate,jdbcType=VARCHAR},</if>
+            <if test="endDate != null and endDate !=''">#{endDate,jdbcType=VARCHAR},</if>
             <if test="deleted != null">#{deleted,jdbcType=TINYINT},</if>
-            <if test="content != null">#{content,jdbcType=VARCHAR},</if>
-            <if test="inputNumber != null">#{inputNumber,jdbcType=INTEGER},</if>
-            <if test="outputNumber != null">#{outputNumber,jdbcType=INTEGER},</if>
+            <if test="content != null and content !=''">#{content,jdbcType=VARCHAR},</if>
+            <if test="inputNumber!= null">#{inputNumber,jdbcType=INTEGER},</if>
+            <if test="outputNumber!= null">#{outputNumber,jdbcType=INTEGER},</if>
         </trim>
     </insert>
     <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan">
         update pr_assembly_plan
         <set>
+            <if test="orderId != null">
+                order_id = #{orderId,jdbcType=BIGINT} ,
+            </if>
             <if test="proId != null">
                 pro_id = #{proId,jdbcType=BIGINT},
             </if>
             <if test="batchId != null">
                 batch_id = #{batchId,jdbcType=BIGINT},
             </if>
-            <if test="processId != null">
+            <if test="processId!= null">
                 process_id = #{processId,jdbcType=BIGINT},
             </if>
-            <if test="name != null">
+            <if test="name != null and name !=''">
                 name = #{name,jdbcType=VARCHAR},
             </if>
             <if test="number != null">
@@ -290,28 +315,28 @@
             <if test="status != null">
                 status = #{status,jdbcType=TINYINT},
             </if>
-            <if test="creator != null">
+            <if test="creator != null and creator !=''">
                 creator = #{creator,jdbcType=VARCHAR},
             </if>
             <if test="dt != null">
                 dt = #{dt,jdbcType=TIMESTAMP},
             </if>
-            <if test="startDate != null">
+            <if test="startDate != null and startDate !=''">
                 start_date = #{startDate,jdbcType=VARCHAR},
             </if>
-            <if test="endDate != null">
+            <if test="endDate != null and endDate !=''">
                 end_date = #{endDate,jdbcType=VARCHAR},
             </if>
             <if test="deleted != null">
                 deleted = #{deleted,jdbcType=TINYINT},
             </if>
-            <if test="content != null">
+            <if test="content != null and content !=''">
                 content = #{content,jdbcType=VARCHAR},
             </if>
-            <if test="inputNumber != null">
+            <if test="inputNumber!= null">
                 input_number = #{inputNumber,jdbcType=INTEGER},
             </if>
-            <if test="outputNumber != null">
+            <if test="outputNumber!= null">
                 output_number = #{outputNumber,jdbcType=INTEGER},
             </if>
         </set>
@@ -319,7 +344,8 @@
     </update>
     <update id="updateByPrimaryKey" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan">
         update pr_assembly_plan
-        set pro_id        = #{proId,jdbcType=BIGINT},
+        set order_id      = #{orderId,jdbcType=BIGINT},
+            pro_id        = #{proId,jdbcType=BIGINT},
             batch_id      = #{batchId,jdbcType=BIGINT},
             process_id    = #{processId,jdbcType=BIGINT},
             name          = #{name,jdbcType=VARCHAR},
@@ -337,6 +363,7 @@
     </update>
 
     <select id="selectSome" resultMap="BaseResultMap">
+       <!-- 涓�娈垫椂闂村紑濮嬬殑浠诲姟 -->
         select
         <include refid="Base_Column_List"/>
         from pr_assembly_plan
@@ -345,10 +372,10 @@
                 pro_id = #{proId,jdbcType=BIGINT} and
             </if>
             <if test="startDate != null and startDate != '' ">
-                start_date = #{startDate,jdbcType=VARCHAR} and
+                start_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR}  and
             </if>
             <if test="endDate != null and endDate != ''">
-                end_date = #{endDate,jdbcType=VARCHAR} and
+                start_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR}  and
             </if>
         </trim>
         order by id desc
@@ -367,10 +394,10 @@
                 pro_id = #{proId,jdbcType=BIGINT} and
             </if>
             <if test="startDate != null and startDate != '' ">
-                start_date = #{startDate,jdbcType=VARCHAR} and
+                start_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR}  and
             </if>
             <if test="endDate != null and endDate != ''">
-                end_date = #{endDate,jdbcType=VARCHAR} and
+                start_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR}  and
             </if>
         </trim>
     </select>
@@ -388,4 +415,30 @@
         set deleted = 1
         where id = #{id}
     </update>
+
+    <select id="countByPlanIdAndNodeId" resultType="java.lang.Long">
+        select count(1) from pr_assembly_plan ap
+        left join pr_production_node pn on ap.process_id = pn.process_id
+        where ap.id = #{planId}  and pn.id= #{nodeId}
+    </select>
+
+    <select id="selectByPlanName" resultType="cn.hutool.json.JSONObject">
+        select ap.id planId,ap.name planName,ap.`status`,pn.id nodeId,pn.content from pr_assembly_plan ap
+        left join pr_production_node pn on ap.process_id = pn.process_id
+        where status != -1
+        <if test="planName != null and planName!= ''">
+            and ap.name like concat('%', #{planName}, '%')
+        </if>
+    </select>
+
+    <select id="queryPlanList" resultType="cn.hutool.json.JSONObject">
+        select pp.`name` as pro_name, p.`name` ,p.number, p.output_number, concat(round(((p.output_number/p.number) * 100 ),0), '%') as complete_rate ,p.end_date,
+        TIMESTAMPDIFF(DAY, NOW(),p.end_date) AS days_difference
+        from (SELECT * FROM pr_assembly_plan WHERE  STATUS = 1 and deleted = 0)  p
+        LEFT JOIN plt_product pp
+        on p.pro_id = pp.id
+        ORDER BY end_date
+    </select>
+
+
 </mapper>

--
Gitblit v1.8.0