From e39d9bfeee0b62a60dc08e2dc93e0a05f3d6b503 Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期四, 15 八月 2024 14:41:20 +0800
Subject: [PATCH] add report

---
 pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml |  240 +++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 157 insertions(+), 83 deletions(-)

diff --git a/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml b/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml
index e68e809..0ef9802 100644
--- a/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml
+++ b/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml
@@ -6,37 +6,97 @@
 
     <resultMap id="BaseResultMap" type="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog">
             <id property="id" column="id" jdbcType="BIGINT"/>
-            <result property="equipNo" column="equip_no" jdbcType="VARCHAR"/>
-            <result property="planId" column="plan_id" jdbcType="VARCHAR"/>
-            <result property="stationId" column="station_id" jdbcType="VARCHAR"/>
-            <result property="currNode" column="curr_node" jdbcType="VARCHAR"/>
-            <result property="nextNode" column="next_node" jdbcType="VARCHAR"/>
-            <result property="inLineTime" column="in_line_time" jdbcType="TIMESTAMP"/>
+            <result property="deviceNo" column="device_no" jdbcType="VARCHAR"/>
+            <result property="workId" column="work_id" jdbcType="BIGINT"/>
+            <result property="repairId" column="repair_id" jdbcType="BIGINT"/>
+            <result property="planId" column="plan_id" jdbcType="BIGINT"/>
+            <result property="stationId" column="station_id" jdbcType="BIGINT"/>
+            <result property="currNode" column="curr_node" jdbcType="BIGINT"/>
+            <result property="nodeContent" column="node_content" jdbcType="VARCHAR"/>
+            <result property="deviceCycleContent" column="device_cycle_content" jdbcType="VARCHAR"/>
             <result property="status" column="status" jdbcType="TINYINT"/>
             <result property="result" column="result" jdbcType="TINYINT"/>
-            <result property="errorCode" column="error_code" jdbcType="VARCHAR"/>
-            <result property="memo" column="memo" jdbcType="VARCHAR"/>
+            <result property="errorMsg" column="error_msg" jdbcType="VARCHAR"/>
             <result property="assistants" column="assistants" jdbcType="VARCHAR"/>
-            <result property="updatedDate" column="updated_date" jdbcType="TIMESTAMP"/>
-            <result property="updatedBy" column="updated_by" jdbcType="VARCHAR"/>
-            <result property="claimId" column="claim_id" jdbcType="BIGINT"/>
-            <result property="repairId" column="repair_id" jdbcType="BIGINT"/>
+            <result property="inTime" column="in_time" jdbcType="TIMESTAMP"/>
+            <result property="outTime" column="out_time" jdbcType="TIMESTAMP"/>
+            <result property="updatedBy" column="updated_by" jdbcType="BIGINT"/>
+            <result property="memo" column="memo" jdbcType="VARCHAR"/>
+            <result property="number" column="number" jdbcType="INTEGER"/>
+    </resultMap>
+    <resultMap id="joinResultMap" type="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog" extends="BaseResultMap">
+        <result property="planName" column="plan_name" jdbcType="VARCHAR"/>
+        <result property="stationName" column="station_name" jdbcType="VARCHAR"/>
+        <result property="updateUserName" column="update_user_name" jdbcType="VARCHAR"/>
+        <association property="assistantNames" jdbcType="VARCHAR" column="assistants"
+                     select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectNamesByAssistants" fetchType="eager" />
     </resultMap>
 
     <sql id="Base_Column_List">
-        id,equip_no,plan_id,
-        station_id,curr_node,next_node,
-        in_line_time,status,result,
-        error_code,memo,assistants,
-        updated_date,updated_by,claim_id,
-        repair_id
+        id,device_no,work_id,
+        repair_id,plan_id,station_id,
+        curr_node,node_content,device_cycle_content,
+        status,result,
+        error_msg,assistants,in_time,
+        out_time,updated_by,memo,number
     </sql>
+
 
     <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
         select
         <include refid="Base_Column_List" />
         from sta_device_production_log
         where  id = #{id,jdbcType=BIGINT} 
+    </select>
+    <select id="selectByDeviceNo" parameterType="java.lang.String" resultMap="joinResultMap">
+        select
+            t.* ,p.`name` plan_name,s.`name` station_name,u.`name` update_user_name
+        FROM
+            (
+                select <include refid="Base_Column_List" /> from sta_device_production_log_past where  device_no = #{deviceNo,jdbcType=VARCHAR} union
+                select <include refid="Base_Column_List" /> from sta_device_production_log where device_no = #{deviceNo,jdbcType=VARCHAR}
+            ) t
+                left join pr_assembly_plan p on t.plan_id=p.id
+                left join plt_station s on s.id = t.station_id
+                left JOIN ba_user u on u.id=t.updated_by
+        ORDER BY t.id DESC
+    </select>
+
+    <select id="selectProductLog"  resultMap="joinResultMap">
+        select
+        t.* ,p.`name` plan_name,s.`name` station_name,u.`name` update_user_name
+        FROM
+        (
+        select <include refid="Base_Column_List" /> from sta_device_production_log_past
+        <where>
+            <if test="deviceNo != null and deviceNo !=''">
+                and device_no = #{deviceNo,jdbcType=VARCHAR}
+            </if>
+            <if test="startTime != null">
+                and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP}
+            </if>
+            <if test="endTime != null">
+                and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP}
+            </if>
+        </where>
+        union
+        select <include refid="Base_Column_List" /> from sta_device_production_log
+        <where>
+            <if test="deviceNo != null and deviceNo !=''">
+                and device_no = #{deviceNo,jdbcType=VARCHAR}
+            </if>
+            <if test="startTime != null">
+                and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP}
+            </if>
+            <if test="endTime != null">
+                and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP}
+            </if>
+        </where>
+        ) t
+        left join pr_assembly_plan p on t.plan_id=p.id
+        left join plt_station s on s.id = t.station_id
+        left JOIN ba_user u on u.id=t.updated_by
+        ORDER BY t.id DESC
     </select>
 
     <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
@@ -45,78 +105,90 @@
     </delete>
     <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog" useGeneratedKeys="true">
         insert into sta_device_production_log
-        ( id,equip_no,plan_id
-        ,station_id,curr_node,next_node
-        ,in_line_time,status,result
-        ,error_code,memo,assistants
-        ,updated_date,updated_by,claim_id
-        ,repair_id)
-        values (#{id,jdbcType=BIGINT},#{equipNo,jdbcType=VARCHAR},#{planId,jdbcType=VARCHAR}
-        ,#{stationId,jdbcType=VARCHAR},#{currNode,jdbcType=VARCHAR},#{nextNode,jdbcType=VARCHAR}
-        ,#{inLineTime,jdbcType=TIMESTAMP},#{status,jdbcType=TINYINT},#{result,jdbcType=TINYINT}
-        ,#{errorCode,jdbcType=VARCHAR},#{memo,jdbcType=VARCHAR},#{assistants,jdbcType=VARCHAR}
-        ,#{updatedDate,jdbcType=TIMESTAMP},#{updatedBy,jdbcType=VARCHAR},#{claimId,jdbcType=BIGINT}
-        ,#{repairId,jdbcType=BIGINT})
+        ( id,device_no,work_id
+        ,repair_id,plan_id,station_id
+        ,curr_node,node_content,device_cycle_content
+        ,status,result
+        ,error_msg,assistants,in_time
+        ,out_time,updated_by,memo,number
+        )
+        values (#{id,jdbcType=BIGINT},#{deviceNo,jdbcType=VARCHAR},#{workId,jdbcType=BIGINT}
+        ,#{repairId,jdbcType=BIGINT},#{planId,jdbcType=BIGINT},#{stationId,jdbcType=BIGINT}
+        ,#{currNode,jdbcType=BIGINT},#{nodeContent,jdbcType=VARCHAR},#{deviceCycleContent,jdbcType=VARCHAR}
+        ,#{status,jdbcType=TINYINT},#{result,jdbcType=TINYINT}
+        ,#{errorMsg,jdbcType=VARCHAR},#{assistants,jdbcType=VARCHAR},#{inTime,jdbcType=TIMESTAMP}
+        ,#{outTime,jdbcType=TIMESTAMP},#{updatedBy,jdbcType=BIGINT},#{memo,jdbcType=VARCHAR}, #{number,jdbcType=INTEGER}
+        )
     </insert>
     <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog" useGeneratedKeys="true">
         insert into sta_device_production_log
         <trim prefix="(" suffix=")" suffixOverrides=",">
                 <if test="id != null">id,</if>
-                <if test="equipNo != null">equip_no,</if>
+                <if test="deviceNo != null">device_no,</if>
+                <if test="workId != null">work_id,</if>
+                <if test="repairId != null">repair_id,</if>
                 <if test="planId != null">plan_id,</if>
                 <if test="stationId != null">station_id,</if>
                 <if test="currNode != null">curr_node,</if>
-                <if test="nextNode != null">next_node,</if>
-                <if test="inLineTime != null">in_line_time,</if>
+                <if test="nodeContent != null">node_content,</if>
+                <if test="deviceCycleContent != null">device_cycle_content,</if>
                 <if test="status != null">status,</if>
                 <if test="result != null">result,</if>
-                <if test="errorCode != null">error_code,</if>
-                <if test="memo != null">memo,</if>
+                <if test="errorMsg != null">error_msg,</if>
                 <if test="assistants != null">assistants,</if>
-                <if test="updatedDate != null">updated_date,</if>
+                <if test="inTime != null">in_time,</if>
+                <if test="outTime != null">out_time,</if>
                 <if test="updatedBy != null">updated_by,</if>
-                <if test="claimId != null">claim_id,</if>
-                <if test="repairId != null">repair_id,</if>
+                <if test="memo != null">memo,</if>
+                <if test="number != null">number,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
                 <if test="id != null">#{id,jdbcType=BIGINT},</if>
-                <if test="equipNo != null">#{equipNo,jdbcType=VARCHAR},</if>
-                <if test="planId != null">#{planId,jdbcType=VARCHAR},</if>
-                <if test="stationId != null">#{stationId,jdbcType=VARCHAR},</if>
-                <if test="currNode != null">#{currNode,jdbcType=VARCHAR},</if>
-                <if test="nextNode != null">#{nextNode,jdbcType=VARCHAR},</if>
-                <if test="inLineTime != null">#{inLineTime,jdbcType=TIMESTAMP},</if>
+                <if test="deviceNo != null">#{deviceNo,jdbcType=VARCHAR},</if>
+                <if test="workId != null">#{workId,jdbcType=BIGINT},</if>
+                <if test="repairId != null">#{repairId,jdbcType=BIGINT},</if>
+                <if test="planId != null">#{planId,jdbcType=BIGINT},</if>
+                <if test="stationId != null">#{stationId,jdbcType=BIGINT},</if>
+                <if test="currNode != null">#{currNode,jdbcType=BIGINT},</if>
+                <if test="nodeContent != null">#{nodeContent,jdbcType=VARCHAR},</if>
+                <if test="deviceCycleContent != null">#{deviceCycleContent,jdbcType=VARCHAR},</if>
                 <if test="status != null">#{status,jdbcType=TINYINT},</if>
                 <if test="result != null">#{result,jdbcType=TINYINT},</if>
-                <if test="errorCode != null">#{errorCode,jdbcType=VARCHAR},</if>
-                <if test="memo != null">#{memo,jdbcType=VARCHAR},</if>
+                <if test="errorMsg != null">#{errorMsg,jdbcType=VARCHAR},</if>
                 <if test="assistants != null">#{assistants,jdbcType=VARCHAR},</if>
-                <if test="updatedDate != null">#{updatedDate,jdbcType=TIMESTAMP},</if>
-                <if test="updatedBy != null">#{updatedBy,jdbcType=VARCHAR},</if>
-                <if test="claimId != null">#{claimId,jdbcType=BIGINT},</if>
-                <if test="repairId != null">#{repairId,jdbcType=BIGINT},</if>
+                <if test="inTime != null">#{inTime,jdbcType=TIMESTAMP},</if>
+                <if test="outTime != null">#{outTime,jdbcType=TIMESTAMP},</if>
+                <if test="updatedBy != null">#{updatedBy,jdbcType=BIGINT},</if>
+                <if test="memo != null">#{memo,jdbcType=VARCHAR},</if>
+                <if test="number != null">#{number,jdbcType=INTEGER},</if>
         </trim>
     </insert>
     <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog">
         update sta_device_production_log
         <set>
-                <if test="equipNo != null">
-                    equip_no = #{equipNo,jdbcType=VARCHAR},
+                <if test="deviceNo != null">
+                    device_no = #{deviceNo,jdbcType=VARCHAR},
+                </if>
+                <if test="workId != null">
+                    work_id = #{workId,jdbcType=BIGINT},
+                </if>
+                <if test="repairId != null">
+                    repair_id = #{repairId,jdbcType=BIGINT},
                 </if>
                 <if test="planId != null">
-                    plan_id = #{planId,jdbcType=VARCHAR},
+                    plan_id = #{planId,jdbcType=BIGINT},
                 </if>
                 <if test="stationId != null">
-                    station_id = #{stationId,jdbcType=VARCHAR},
+                    station_id = #{stationId,jdbcType=BIGINT},
                 </if>
                 <if test="currNode != null">
-                    curr_node = #{currNode,jdbcType=VARCHAR},
+                    curr_node = #{currNode,jdbcType=BIGINT},
                 </if>
-                <if test="nextNode != null">
-                    next_node = #{nextNode,jdbcType=VARCHAR},
+                <if test="nodeContent != null">
+                    node_content = #{nodeContent,jdbcType=VARCHAR},
                 </if>
-                <if test="inLineTime != null">
-                    in_line_time = #{inLineTime,jdbcType=TIMESTAMP},
+                <if test="deviceCycleContent != null">
+                    device_cycle_content = #{deviceCycleContent,jdbcType=VARCHAR},
                 </if>
                 <if test="status != null">
                     status = #{status,jdbcType=TINYINT},
@@ -124,26 +196,26 @@
                 <if test="result != null">
                     result = #{result,jdbcType=TINYINT},
                 </if>
-                <if test="errorCode != null">
-                    error_code = #{errorCode,jdbcType=VARCHAR},
-                </if>
-                <if test="memo != null">
-                    memo = #{memo,jdbcType=VARCHAR},
+                <if test="errorMsg != null">
+                    error_msg = #{errorMsg,jdbcType=VARCHAR},
                 </if>
                 <if test="assistants != null">
                     assistants = #{assistants,jdbcType=VARCHAR},
                 </if>
-                <if test="updatedDate != null">
-                    updated_date = #{updatedDate,jdbcType=TIMESTAMP},
+                <if test="inTime != null">
+                    in_time = #{inTime,jdbcType=TIMESTAMP},
+                </if>
+                <if test="outTime != null">
+                    out_time = #{outTime,jdbcType=TIMESTAMP},
                 </if>
                 <if test="updatedBy != null">
-                    updated_by = #{updatedBy,jdbcType=VARCHAR},
+                    updated_by = #{updatedBy,jdbcType=BIGINT},
                 </if>
-                <if test="claimId != null">
-                    claim_id = #{claimId,jdbcType=BIGINT},
+                <if test="memo != null">
+                    memo = #{memo,jdbcType=VARCHAR},
                 </if>
-                <if test="repairId != null">
-                    repair_id = #{repairId,jdbcType=BIGINT},
+                <if test="number != null">
+                    number = #{number,jdbcType=INTEGER},
                 </if>
         </set>
         where   id = #{id,jdbcType=BIGINT} 
@@ -151,21 +223,23 @@
     <update id="updateByPrimaryKey" parameterType="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog">
         update sta_device_production_log
         set 
-            equip_no =  #{equipNo,jdbcType=VARCHAR},
-            plan_id =  #{planId,jdbcType=VARCHAR},
-            station_id =  #{stationId,jdbcType=VARCHAR},
-            curr_node =  #{currNode,jdbcType=VARCHAR},
-            next_node =  #{nextNode,jdbcType=VARCHAR},
-            in_line_time =  #{inLineTime,jdbcType=TIMESTAMP},
+            device_no =  #{deviceNo,jdbcType=VARCHAR},
+            work_id =  #{workId,jdbcType=BIGINT},
+            repair_id =  #{repairId,jdbcType=BIGINT},
+            plan_id =  #{planId,jdbcType=BIGINT},
+            station_id =  #{stationId,jdbcType=BIGINT},
+            curr_node =  #{currNode,jdbcType=BIGINT},
+            node_content =  #{nodeContent,jdbcType=VARCHAR},
+            device_cycle_content =  #{deviceCycleContent,jdbcType=VARCHAR},
             status =  #{status,jdbcType=TINYINT},
             result =  #{result,jdbcType=TINYINT},
-            error_code =  #{errorCode,jdbcType=VARCHAR},
-            memo =  #{memo,jdbcType=VARCHAR},
+            error_msg =  #{errorMsg,jdbcType=VARCHAR},
             assistants =  #{assistants,jdbcType=VARCHAR},
-            updated_date =  #{updatedDate,jdbcType=TIMESTAMP},
-            updated_by =  #{updatedBy,jdbcType=VARCHAR},
-            claim_id =  #{claimId,jdbcType=BIGINT},
-            repair_id =  #{repairId,jdbcType=BIGINT}
+            in_time =  #{inTime,jdbcType=TIMESTAMP},
+            out_time =  #{outTime,jdbcType=TIMESTAMP},
+            updated_by =  #{updatedBy,jdbcType=BIGINT},
+            memo =  #{memo,jdbcType=VARCHAR},
+            number = #{number,jdbcType=INTEGER}
         where   id = #{id,jdbcType=BIGINT} 
     </update>
 </mapper>

--
Gitblit v1.8.0