|
|
@@ -692,6 +692,45 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
WHERE t1.id = #{id}
|
|
|
</select>
|
|
|
|
|
|
+ <select id="selectGSTJ" resultMap="GxtOrderDataResult">
|
|
|
+ SELECT
|
|
|
+ u.user_id,a.wxgs,b.wbgs
|
|
|
+ FROM sys_user u
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ rop.user_id,
|
|
|
+ SUM((TIMESTAMPDIFF( SECOND, ro.real_start_time, ro.real_end_time ) - IFNULL(gq.total_in_work_suspend_seconds, 0)) / 3600) AS wxgs
|
|
|
+ FROM
|
|
|
+ gxt_repair_order_person rop
|
|
|
+ LEFT JOIN gxt_repair_order ro ON rop.order_id = ro.id
|
|
|
+ LEFT JOIN gxt_repair_order_flow_records_next gq ON gq.order_id = rop.order_id
|
|
|
+ LEFT JOIN (SELECT order_id,MAX(action_time) AS finish_time FROM gxt_repair_order_flow WHERE action_type IN ('complete','auto_finalize') GROUP BY order_id) flow ON flow.order_id=rop.order_id
|
|
|
+ WHERE
|
|
|
+ ro.repair_method!='2' AND ro.work_order_status IN ('completed','archived') AND flow.finish_time IS NOT NULL
|
|
|
+ AND flow.finish_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
|
|
|
+ AND flow.finish_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
|
|
|
+ GROUP BY
|
|
|
+ rop.user_id) a ON a.user_id=u.user_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ wop.user_id,
|
|
|
+ SUM((TIMESTAMPDIFF( SECOND, wo.real_start_time, wo.real_end_time ) - IFNULL(gq.total_in_work_suspend_seconds, 0)) / 3600) AS wbgs
|
|
|
+ FROM
|
|
|
+ gxt_work_order_person wop
|
|
|
+ LEFT JOIN gxt_work_order wo ON wop.order_id = wo.id
|
|
|
+ LEFT JOIN gxt_work_order_flow_records_next gq ON gq.order_id = wop.order_id
|
|
|
+ LEFT JOIN (SELECT order_id,MAX(action_time) AS finish_time FROM gxt_work_order_flow WHERE action_type IN ('complete','auto_finalize') GROUP BY order_id) flow ON flow.order_id=wop.order_id
|
|
|
+ WHERE
|
|
|
+ wo.work_order_status IN ('completed','archived') AND flow.finish_time IS NOT NULL
|
|
|
+ AND flow.finish_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
|
|
|
+ AND flow.finish_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
|
|
|
+ GROUP BY
|
|
|
+ wop.user_id) b ON u.user_id=b.user_id
|
|
|
+ <where>
|
|
|
+ <if test="userId != null"> and u.user_id=#{userId}</if>
|
|
|
+ </where>
|
|
|
+ </select>
|
|
|
+
|
|
|
<select id="selectHomePageData" resultMap="GxtOrderDataResult">
|
|
|
SELECT
|
|
|
u.user_id,
|
|
|
@@ -700,10 +739,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
IFNULL( c.repair_num, 0 ) AS repairOrderNum,
|
|
|
IFNULL( cc.repair_num, 0 ) AS repairRestartOrderNum,
|
|
|
IFNULL( d.repair_num_last, 0 ) AS repairOrderNumLast,
|
|
|
- IFNULL( j.wxgs, 0 ) AS wxgs,
|
|
|
- IFNULL( k.wxgs_last, 0 ) AS wxgs_last,
|
|
|
- IFNULL( l.wbgs, 0 ) AS wbgs,
|
|
|
- IFNULL( m.wbgs_last, 0 ) AS wbgs_last,
|
|
|
IFNULL( n.score, 0 ) AS score,
|
|
|
IFNULL( o.score, 0 ) AS score_last,
|
|
|
IFNULL( p.pcsWorkOrderNum, 0 ) AS pcsWorkOrderNum,
|