From 0bd3125739c0d8bded4f7bd405fd99f1723df964 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 30 五月 2025 15:51:49 +0800 Subject: [PATCH] 不同服务器配置文件备份 --- pms-parent/pms-global/src/main/resources/mapper/StaAssemblyWorkLastMapper.xml | 320 ++++++++++++++++++++++++++++++++-------------------- 1 files changed, 196 insertions(+), 124 deletions(-) diff --git a/pms-parent/pms-global/src/main/resources/mapper/StaAssemblyWorkLastMapper.xml b/pms-parent/pms-global/src/main/resources/mapper/StaAssemblyWorkLastMapper.xml index c50c2d3..3abbda8 100644 --- a/pms-parent/pms-global/src/main/resources/mapper/StaAssemblyWorkLastMapper.xml +++ b/pms-parent/pms-global/src/main/resources/mapper/StaAssemblyWorkLastMapper.xml @@ -12,7 +12,7 @@ <result property="planId" column="plan_id" jdbcType="BIGINT"/> <result property="processId" column="process_id" jdbcType="BIGINT"/> <result property="nodeId" column="node_id" jdbcType="BIGINT"/> - <result property="nodeType" column="node_type" jdbcType="TINYINT"/> + <result property="workType" column="work_type" jdbcType="TINYINT"/> <result property="dt" column="dt" jdbcType="TIMESTAMP"/> <result property="status" column="status" jdbcType="TINYINT"/> <result property="startTime" column="start_time" jdbcType="TIMESTAMP"/> @@ -44,7 +44,7 @@ <result property="planId" column="plan_id" jdbcType="BIGINT"/> <result property="processId" column="process_id" jdbcType="BIGINT"/> <result property="nodeId" column="node_id" jdbcType="BIGINT"/> - <result property="nodeType" column="node_type" jdbcType="TINYINT"/> + <result property="workType" column="work_type" jdbcType="TINYINT"/> <result property="dt" column="dt" jdbcType="TIMESTAMP"/> <result property="status" column="status" jdbcType="TINYINT"/> <result property="startTime" column="start_time" jdbcType="TIMESTAMP"/> @@ -56,60 +56,39 @@ <result property="processName" column="process_name" jdbcType="VARCHAR"/> <result property="nodeName" column="node_name" jdbcType="VARCHAR"/> <result property="lineName" column="line_name" jdbcType="VARCHAR"/> + <result property="proId" column="pro_id" jdbcType="VARCHAR"/> + <result property="proName" column="pro_name" jdbcType="VARCHAR"/> + <result property="devicePrefix" column="device_prefix" jdbcType="VARCHAR"/> <collection property="assistantsList" ofType="com.dy.pmsGlobal.pojoBa.BaUser" select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectByAssistants" fetchType="eager" column="assistants"/> </resultMap> +<!-- <resultMap id="customResultMap" type="cn.hutool.json.JSONObject">--> +<!-- <result column="columnName" typeHandler="com.yourpackage.CustomJsonTypeHandler"/>--> +<!-- </resultMap>--> <sql id="Base_Column_List"> id ,user_id,line_id, station_id,plan_id,process_id, - node_id,node_type,dt,status, + node_id,work_type,dt,status, start_time,end_time,assistants </sql> - <sql id="part_Column_List"> - ${alias} - . - id - , - ${alias} - . - user_id, - ${alias} - . - line_id, - ${alias} - . - station_id, - ${alias} - . - plan_id, - ${alias} - . - process_id, - ${alias} - . - node_id, - ${alias} - . - node_type, - ${alias} - . - dt, - ${alias} - . - status, - ${alias} - . - start_time, - ${alias} - . - end_time, - ${alias} - . - assistants - </sql> + <sql id="part_Column_List"><![CDATA[ + ${alias}.id, + ${alias}.user_id, + ${alias}.line_id, + ${alias}.station_id, + ${alias}.plan_id, + ${alias}.process_id, + ${alias}.node_id, + ${alias}.work_type, + ${alias}.dt, + ${alias}.status, + ${alias}.start_time, + ${alias}.end_time, + ${alias}.assistants + ]]></sql> <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> select <include refid="Base_Column_List"/> @@ -117,61 +96,61 @@ where id = #{id,jdbcType=BIGINT} </select> - <select id="selectByUserAndStation" resultMap="BaseResultMap"> - select - <include refid="Base_Column_List"/> - from plt_station where status ==1 - <trim prefix="and" suffixOverrides="and"> - <if test="id != null and id !=''"> - id = #{id,jdbcType=BIGINT} and - </if> - <if test="code != null and code !=''"> - code = #{code,jdbcType=VARCHAR} and - </if> - <if test="name != null and name !=''"> - name like concat('%', #{name}, '%') and - </if> - <if test="disabled != null and disabled !=''"> - disabled = #{disabled,jdbcType=TINYINT} and - </if> - <if test="lineId != null and lineId !=''"> - line_id = #{lineId,jdbcType=BIGINT} and - </if> - </trim> - order by id desc - </select> +<!-- <select id="selectByUserAndStation" resultMap="BaseResultMap">--> +<!-- select--> +<!-- <include refid="Base_Column_List"/>--> +<!-- from plt_station where status =1--> +<!-- <trim prefix="and" suffixOverrides="and">--> +<!-- <if test="id != null">--> +<!-- id = #{id,jdbcType=BIGINT} and--> +<!-- </if>--> +<!-- <if test="code != null and code !=''">--> +<!-- code = #{code,jdbcType=VARCHAR} and--> +<!-- </if>--> +<!-- <if test="name != null and name !=''">--> +<!-- name like concat('%', #{name}, '%') and--> +<!-- </if>--> +<!-- <if test="disabled != null">--> +<!-- disabled = #{disabled,jdbcType=TINYINT} and--> +<!-- </if>--> +<!-- <if test="lineId != null">--> +<!-- line_id = #{lineId,jdbcType=BIGINT} and--> +<!-- </if>--> +<!-- </trim>--> +<!-- order by id desc--> +<!-- </select>--> <select id="selectList" resultMap="BaseResultMap"> select <include refid="Base_Column_List"/> from sta_assembly_work_last <where> - <if test="userId != null and userId !=''"> + <if test="userId != null"> and user_id = #{userId,jdbcType=BIGINT} </if> - <if test="lineId != null and lineId !=''"> + <if test="lineId != null"> and line_id = #{lineId,jdbcType=BIGINT} </if> - <if test="stationId != null and stationId !=''"> + <if test="stationId != null"> and station_id = #{stationId,jdbcType=BIGINT} </if> - <if test="planId != null and planId !=''"> + <if test="planId != null"> and plan_id = #{planId,jdbcType=BIGINT} </if> - <if test="processId != null and processId !=''"> + <if test="processId != null"> and process_id = #{processId,jdbcType=BIGINT} </if> - <if test="nodeId != null and nodeId !=''"> + <if test="nodeId != null"> and node_id = #{nodeId,jdbcType=BIGINT} </if> - <if test="status != null and status !=''"> + <if test="status != null"> and status = #{status,jdbcType=TINYINT} </if> - <if test="startTime != null and startTime !=''"> - and start_time = #{startTime,jdbcType=TIMESTAMP}, + <if test="startTime != null"> + and start_time = #{startTime,jdbcType=TIMESTAMP} </if> - <if test="endTime != null and endTime !=''"> - and end_time = #{endTime,jdbcType=TIMESTAMP}, + <if test="endTime != null"> + and end_time = #{endTime,jdbcType=TIMESTAMP} </if> <if test="assistants != null and assistants !=''"> and assistants = #{assistants,jdbcType=VARCHAR} @@ -183,19 +162,24 @@ select <include refid="part_Column_List"> <property name="alias" value="l"/> - </include> - , + </include>, u.name as user_name, s.name as station_name, p.name as plan_name, - pp.name as process_name, + ppp.name as process_name, n.content as node_name, - ll.name as line_name + ll.name as line_name, + p.pro_id as pro_id, + p.pro_name as pro_name, + concat('110', p.pro_code, p.batch_number) as device_prefix from sta_assembly_work_last l left join ba_user u on l.user_id = u.id left join plt_station s on l.station_id = s.id - left join pr_assembly_plan p on l.plan_id = p.id - left join pr_production_process pp on l.process_id = pp.id + left join (select pap.name as name,pap.id as id,pbn.batch_number as batch_number, + pp.id as pro_id,pp.name as pro_name,pp.`code` as pro_code + from pr_assembly_plan as pap,plt_product as pp,pr_batch_number as pbn + where pap.batch_id = pbn.id and pap.pro_id = pp.id) p on l.plan_id = p.id + left join pr_production_process ppp on l.process_id = ppp.id left join pr_production_node n on l.node_id = n.id left join plt_production_line ll on l.line_id = ll.id <where> @@ -209,7 +193,7 @@ and p.name like concat('%', #{planName}, '%') </if> <if test="processName != null and processName != '' "> - and pp.name like concat('%', #{processName}, '%') + and ppp.name like concat('%', #{processName}, '%') </if> <if test="nodeName != null and nodeName != '' "> and n.content like concat('%', #{nodeName}, '%') @@ -217,31 +201,31 @@ <if test="lineName != null and lineName != '' "> and ll.name like concat('%', #{lineName}, '%') </if> - <if test="startTime != null and startTime !=''"> + <if test="startTime != null"> and l.start_time <![CDATA[ > ]]> #{startTime} </if> - <if test="endTime != null and endTime !=''"> + <if test="endTime != null"> and l.start_time <![CDATA[ < ]]> #{endTime} </if> - <if test="userId != null and userId !=''"> + <if test="userId != null"> and l.user_id = #{userId,jdbcType=BIGINT} </if> - <if test="lineId != null and lineId !=''"> + <if test="lineId != null"> and l.line_id = #{lineId,jdbcType=BIGINT} </if> - <if test="stationId != null and stationId !=''"> + <if test="stationId != null"> and l.station_id = #{stationId,jdbcType=BIGINT} </if> - <if test="planId != null and planId !=''"> + <if test="planId != null"> and l.plan_id = #{planId,jdbcType=BIGINT} </if> - <if test="processId != null and processId !=''"> + <if test="processId != null"> and l.process_id = #{processId,jdbcType=BIGINT} </if> - <if test="nodeId != null and nodeId !=''"> + <if test="nodeId != null"> and l.node_id = #{nodeId,jdbcType=BIGINT} </if> - <if test="status != null and status !=''"> + <if test="status != null"> and l.status = #{status,jdbcType=TINYINT} </if> <if test="assistants != null and assistants !=''"> @@ -284,31 +268,31 @@ <if test="lineName != null and lineName != '' "> and ll.name like concat('%', #{lineName}, '%') </if> - <if test="startTime != null and startTime !=''"> + <if test="startTime != null"> and l.start_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP} </if> - <if test="endTime != null and endTime !=''"> + <if test="endTime != null"> and l.start_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP} </if> - <if test="userId != null and userId !=''"> + <if test="userId != null"> and l.user_id = #{userId,jdbcType=BIGINT} </if> - <if test="lineId != null and lineId !=''"> + <if test="lineId != null"> and l.line_id = #{lineId,jdbcType=BIGINT} </if> - <if test="stationId != null and stationId !=''"> + <if test="stationId != null"> and l.station_id = #{stationId,jdbcType=BIGINT} </if> - <if test="planId != null and planId !=''"> + <if test="planId != null"> and l.plan_id = #{planId,jdbcType=BIGINT} </if> - <if test="processId != null and processId !=''"> + <if test="processId != null"> and l.process_id = #{processId,jdbcType=BIGINT} </if> - <if test="nodeId != null and nodeId !=''"> + <if test="nodeId != null"> and l.node_id = #{nodeId,jdbcType=BIGINT} </if> - <if test="status != null and status !=''"> + <if test="status != null"> and l.status = #{status,jdbcType=TINYINT} </if> <if test="assistants != null and assistants !=''"> @@ -316,27 +300,115 @@ </if> </where> </select> + <select id="existsEntity" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List"/> + from sta_assembly_work_last + where user_id = #{userId,jdbcType=BIGINT} + and station_id = #{stationId,jdbcType=BIGINT} + <choose> + <when test="planId != null"> + and plan_id = #{planId,jdbcType=BIGINT} + </when> + <otherwise> + and plan_id is null + </otherwise> + </choose> + <choose> + <when test="processId != null"> + and process_id = #{processId,jdbcType=BIGINT} + </when> + <otherwise> + and process_id is null + </otherwise> + </choose> + <choose> + <when test="nodeId != null"> + and node_id = #{nodeId,jdbcType=BIGINT} + </when> + <otherwise> + and node_id is null + </otherwise> + </choose> + and work_type = #{workType,jdbcType=TINYINT} + <if test="id != null"> + and id != #{id,jdbcType=BIGINT} + </if> + </select> + <select id="queryWorkList" resultType="cn.hutool.json.JSONObject" > + WITH a as ( SELECT pap.id as plan_id,pap.order_name,pap.`name` as plan_name,pap.number,pap.input_number,pap.output_number, + ppp.id as process_id,ppp.`name` as process_name, + ppn.id as node_id, ppn.content as node_name, + pp.`code` as pro_code , pp.`name` as pro_name, + pbn.batch_number as batch_number, ppn.sort as sort + from (SELECT pl.*, po.`NAME` AS order_name FROM pr_assembly_plan pl LEFT JOIN pr_order po ON pl.order_id = po.id) pap, + pr_production_process ppp,pr_production_node ppn,plt_product pp,pr_batch_number pbn + WHERE pap.process_id = ppp.id and ppp.id = ppn.process_id + and pap.pro_id = pp.id and pap.batch_id = pbn.id + order by plan_id,process_id,sort) + SELECT ps.station_name,IFNULL(ppl.line_name,'') AS line_name,IFNULL(sawl.user_name,'') AS user_name,IFNULL(sawl.assistants_name,'') AS assistants_name, + IFNULL(sawl.order_name,'') AS order_name,IFNULL(sawl.pro_name,'') AS pro_name, IFNULL(sawl.plan_name,'') AS plan_name, + IF(sawl.plan_name IS NULL,'',CONCAT(IFNULL(sawl.number,'0'),'/',IFNULL(sawl.input_number,'0'),'/',IFNULL(sawl.output_number,'0'))) AS plan_number, + IFNULL(sawl.process_name,'') AS process_name,IFNULL(sawl.node_name,'') AS node_name,IFNULL(sawl.dt,'') AS dt,sawl.work_type FROM + (SELECT id,`name` AS station_name, line_id FROM plt_station WHERE deleted = 0 AND disabled = 0) ps + LEFT JOIN (SELECT id,`name` AS line_name FROM plt_production_line) ppl ON ps.line_id = ppl.id + LEFT JOIN (select w.station_id,b.`name` as user_name ,GROUP_CONCAT(us.name) as assistants_name,a.order_name, a.pro_name,a.plan_name, + a.number,a.input_number,a.output_number,a.process_name, a.node_name,w.dt, + CASE w.work_type + WHEN '1' THEN '缁勮' + WHEN '2' THEN '娴嬭瘯' + WHEN '3' THEN '鍝佹' + WHEN '4' THEN '缁翠慨' + ELSE IFNULL(w.work_type,'') END AS work_type + from sta_assembly_work_last w + LEFT JOIN ba_user b ON w.user_id = b.id + LEFT JOIN a ON w.plan_id = a.plan_id AND w.node_id = a.node_id + LEFT JOIN ba_user us ON FIND_IN_SET(us.id,w.assistants) GROUP BY w.id + ) sawl ON ps.id = sawl.station_id + </select> + <select id="queryAttendUser" resultType="cn.hutool.json.JSONObject"> + WITH total AS ( + SELECT DISTINCT user_id,dt AS login_time FROM sta_assembly_work_last + union + SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(a.assistants, ',', b.help_topic_id + 1 ), ',', - 1 ) AS user_id ,login_time + FROM + (SELECT assistants ,dt AS login_time FROM sta_assembly_work_last) a + JOIN mysql.help_topic AS b ON b.help_topic_id <![CDATA[ < ]]> ( LENGTH( a.assistants ) - LENGTH( REPLACE ( a.assistants, ',', '' ) ) + 1 ) + union + SELECT DISTINCT user_id ,end_time AS login_time FROM sta_assembly_work_history WHERE end_time BETWEEN #{startTime,jdbcType=TIMESTAMP} AND #{endTime,jdbcType=TIMESTAMP} + union + SELECT DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(c.assistants, ',', d.help_topic_id + 1 ), ',', - 1 ) AS user_id ,login_time + FROM + (SELECT assistants,end_time AS login_time FROM sta_assembly_work_history WHERE end_time BETWEEN #{startTime,jdbcType=TIMESTAMP} AND #{endTime,jdbcType=TIMESTAMP}) c + JOIN mysql.help_topic AS d ON d.help_topic_id <![CDATA[ < ]]> ( LENGTH( c.assistants ) - LENGTH( REPLACE ( c.assistants, ',', '' ) ) + 1 )) + SELECT MAX(CASE record.title WHEN 'require_attend' THEN record.count_user ELSE 0 END) require_attend, + MAX(CASE record.title WHEN 'actual_attend' THEN record.count_user ELSE 0 END) actual_attend + FROM + (SELECT COUNT(DISTINCT user_id) AS count_user,'require_attend' AS title FROM total WHERE user_id !='' + UNION + SELECT COUNT(DISTINCT user_id) AS count_user,'actual_attend' AS title FROM total WHERE user_id !='' AND login_time <![CDATA[ > ]]> #{todayDt,jdbcType=TIMESTAMP}) record + </select> <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> delete from sta_assembly_work_last where id = #{id,jdbcType=BIGINT} </delete> - <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast" - useGeneratedKeys="true"> + <insert id="insert" parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast" + > insert into sta_assembly_work_last ( id, user_id, line_id , station_id, plan_id, process_id - , node_id, node_type, dt, status + , node_id, work_type, dt, status , start_time, end_time, assistants) values ( #{id,jdbcType=BIGINT}, #{userId,jdbcType=BIGINT}, #{lineId,jdbcType=BIGINT} , #{stationId,jdbcType=BIGINT}, #{planId,jdbcType=BIGINT}, #{processId,jdbcType=BIGINT} - , #{nodeId,jdbcType=BIGINT}, #{nodeType,jdbcType=TINYINT}, #{dt,jdbcType=TIMESTAMP} + , #{nodeId,jdbcType=BIGINT}, #{workType,jdbcType=TINYINT}, #{dt,jdbcType=TIMESTAMP} , #{status,jdbcType=TINYINT} , #{startTime,jdbcType=TIMESTAMP}, #{endTime,jdbcType=TIMESTAMP}, #{assistants,jdbcType=VARCHAR}) </insert> - <insert id="insertSelective" keyColumn="id" keyProperty="id" - parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast" useGeneratedKeys="true"> + <insert id="insertSelective" + parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast"> insert into sta_assembly_work_last <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null">id,</if> @@ -344,14 +416,14 @@ <if test="lineId != null">line_id,</if> <if test="stationId != null">station_id,</if> <if test="planId != null">plan_id,</if> - <if test="processId != null">process_id,</if> - <if test="nodeId != null">node_id,</if> - <if test="nodeType != null">node_Type,</if> + <if test="processId!= null">process_id,</if> + <if test="nodeId!= null">node_id,</if> + <if test="workType!= null">work_Type,</if> <if test="dt != null">dt,</if> <if test="status != null">status,</if> <if test="startTime != null">start_time,</if> <if test="endTime != null">end_time,</if> - <if test="assistants != null">assistants,</if> + <if test="assistants != null and assistants !=''">assistants,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id,jdbcType=BIGINT},</if> @@ -359,14 +431,14 @@ <if test="lineId != null">#{lineId,jdbcType=BIGINT},</if> <if test="stationId != null">#{stationId,jdbcType=BIGINT},</if> <if test="planId != null">#{planId,jdbcType=BIGINT},</if> - <if test="processId != null">#{processId,jdbcType=BIGINT},</if> - <if test="nodeId != null">#{nodeId,jdbcType=BIGINT},</if> - <if test="nodeType != null">#{nodeType,jdbcType=TINYINT},</if> + <if test="processId!= null">#{processId,jdbcType=BIGINT},</if> + <if test="nodeId!= null">#{nodeId,jdbcType=BIGINT},</if> + <if test="workType!= null">#{workType,jdbcType=TINYINT},</if> <if test="dt != null">#{dt,jdbcType=TIMESTAMP},</if> <if test="status != null">#{status,jdbcType=TINYINT},</if> <if test="startTime != null">#{startTime,jdbcType=TIMESTAMP},</if> <if test="endTime != null">#{endTime,jdbcType=TIMESTAMP},</if> - <if test="assistants != null">#{assistants,jdbcType=VARCHAR},</if> + <if test="assistants != null and assistants !=''">#{assistants,jdbcType=VARCHAR},</if> </trim> </insert> <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast"> @@ -384,14 +456,14 @@ <if test="planId != null"> plan_id = #{planId,jdbcType=BIGINT}, </if> - <if test="processId != null"> + <if test="processId!= null"> process_id = #{processId,jdbcType=BIGINT}, </if> - <if test="nodeId != null"> + <if test="nodeId!= null"> node_id = #{nodeId,jdbcType=BIGINT}, </if> - <if test="nodeType != null"> - node_type = #{nodeType,jdbcType=TINYINT}, + <if test="workType!= null"> + work_type = #{workType,jdbcType=TINYINT}, </if> <if test="dt != null"> dt = #{dt,jdbcType=TIMESTAMP}, @@ -405,7 +477,7 @@ <if test="endTime != null"> end_time = #{endTime,jdbcType=TIMESTAMP}, </if> - <if test="assistants != null"> + <if test="assistants != null and assistants !=''"> assistants = #{assistants,jdbcType=VARCHAR}, </if> </set> @@ -419,7 +491,7 @@ plan_id = #{planId,jdbcType=BIGINT}, process_id = #{processId,jdbcType=BIGINT}, node_id = #{nodeId,jdbcType=BIGINT}, - node_type = #{nodeType,jdbcType=TINYINT}, + work_type = #{workType,jdbcType=TINYINT}, dt = #{dt,jdbcType=TIMESTAMP}, status = #{status,jdbcType=TINYINT}, start_time = #{startTime,jdbcType=TIMESTAMP}, -- Gitblit v1.8.0