| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.ygtx.gxt.mapper.GxtRepairOrderMapper">
-
- <resultMap type="GxtRepairOrder" id="GxtRepairOrderResult">
- <result property="id" column="id" />
- <result property="workOrderProjectNo" column="work_order_project_no" />
- <result property="workOrderStatus" column="work_order_status" />
- <result property="gxtCenterId" column="gxt_center_id" />
- <result property="gxtCenter" column="gxt_center" />
- <result property="pcsStationId" column="pcs_station_id" />
- <result property="pcsStationName" column="pcs_station_name" />
- <result property="pcsDeviceId" column="pcs_device_id" />
- <result property="pcsDeviceName" column="pcs_device_name" />
- <result property="brand" column="brand" />
- <result property="model" column="model" />
- <result property="faultCode" column="fault_code" />
- <result property="faultDesc" column="fault_desc" />
- <result property="assignTime" column="assign_time" />
- <result property="assignUserId" column="assign_user_id" />
- <result property="assignUserName" column="assign_user_name" />
- <result property="acceptTime" column="accept_time" />
- <result property="acceptUserId" column="accept_user_id" />
- <result property="acceptUserName" column="accept_user_name" />
- <result property="realStartTime" column="real_start_time" />
- <result property="realEndTime" column="real_end_time" />
- <result property="teamLeaderId" column="team_leader_id" />
- <result property="teamLeaderName" column="team_leader_name" />
- <result property="workGroupMemberId" column="work_group_member_id" />
- <result property="workGroupMemberName" column="work_group_member_name" />
- <result property="createBy" column="create_by" />
- <result property="createTime" column="create_time" />
- <result property="updateBy" column="update_by" />
- <result property="updateTime" column="update_time" />
- <result property="remark" column="remark" />
- <result property="content" column="content" />
- <result property="planHour" column="plan_hour" />
- <result property="priorityType" column="priority_type" />
- <result property="score" column="score" />
- <result property="reviewContent" column="review_content" />
- <result property="maintenanceType" column="maintenance_type" />
- <result property="occurTime" column="occur_time" />
- <result property="faultBarcode" column="fault_barcode" />
- <result property="suspendReason" column="suspend_reason" />
- <result property="suspendDescription" column="suspend_description" />
- <result property="approvalStatus" column="approval_status" />
- <result property="rejectionReason" column="rejection_reason" />
- <result property="modifyReason" column="modify_reason" />
- <result property="finalizationRemark" column="finalization_remark" />
- <result property="relatedOrderCode" column="related_order_code" />
- <result property="relatedOrderContent" column="related_order_content" />
- <result property="misOrderNo" column="mis_order_no" />
- <result property="restartTime" column="restart_time" />
- <result property="scoringStatus" column="scoring_status" />
- <result property="pcsStationPid" column="pcs_station_pid" />
- <result property="attachmentUrls" column="attachment_urls" />
- <result property="reviewScoreNum" column="review_score_num" />
- <result property="finalCoefficient" column="final_coefficient" />
- <result property="orderType" column="order_type" />
- <result property="orderEntryType" column="order_entry_type" />
- <result property="repairMethod" column="repair_method" />
- <result property="resetMethod" column="reset_method" />
- <result property="invalidReason" column="invalid_reason" />
- <result property="returnType" column="return_type" />
- <result property="returnReason" column="return_reason" />
- <result property="feedbackReason" column="feedback_reason" />
- <result property="confirmStatus" column="confirm_status" />
- <result property="wwryNum" column="wwry_num" />
- <result property="wlryNum" column="wlry_num" />
- <result property="workArea" column="work_area" />
- <result property="infoEntry" column="info_entry" />
- <result property="realFailureReason" column="real_failure_reason" />
- <result property="lostPower" column="lost_power" />
- <result property="workPermitNum" column="work_permit_num" />
- <result property="finalizeMethod" column="finalize_method" />
- <result property="appealUserName" column="appeal_user_name" />
- <result property="appealUserId" column="appeal_user_id" />
- <result property="appealTime" column="appeal_time" />
- <result property="appealReason" column="appeal_reason" />
- <result property="suspendExplain" column="suspend_explain" />
- <result property="orderAttachment" column="order_attachment" />
- <result property="extraWork" column="extra_work" />
- <result property="acceptReturnType" column="accept_return_type" />
- <result property="acceptReturnReason" column="accept_return_reason" />
- <result property="scoreReturnReason" column="score_return_reason" />
- <result property="leader" column="leader" />
- <result property="userId" column="user_id" />
- </resultMap>
- <resultMap type="GxtRepairOrder" id="GxtRepairOrderWithPersonResult" extends="GxtRepairOrderResult">
- <collection property="repairOrderPersonList" ofType="com.ygtx.gxt.domain.GxtRepairOrderPerson">
- <result property="id" column="person_id"/>
- <result property="userId" column="person_user_id"/>
- <result property="nickName" column="person_nick_name"/>
- <result property="orderId" column="person_order_id"/>
- <result property="orderCode" column="person_order_code"/>
- <result property="status" column="person_status"/>
- <result property="selfScore" column="person_self_score"/>
- <result property="reviewScore" column="person_review_score"/>
- <result property="finalScore" column="person_final_score"/>
- <result property="isLeader" column="person_is_leader"/>
- <result property="extraScore" column="person_extra_score"/>
- <result property="totalScore" column="person_total_score"/>
- </collection>
- </resultMap>
- <resultMap type="GxtOrderData" id="GxtOrderDataResult">
- <result property="userId" column="user_id" />
- <result property="workOrderNum" column="workOrderNum" />
- <result property="workOrderNumLast" column="workOrderNumLast" />
- <result property="repairOrderNum" column="repairOrderNum" />
- <result property="repairOrderNumLast" column="repairOrderNumLast" />
- <result property="wxgs" column="wxgs" />
- <result property="wxgsLast" column="wxgs_last" />
- <result property="wbgs" column="wbgs" />
- <result property="wbgsLast" column="wbgs_last" />
- <result property="score" column="score" />
- <result property="scoreLast" column="score_last" />
- <result property="pcsWorkOrderNum" column="pcsWorkOrderNum" />
- <result property="centerWorkOrderNum" column="centerWorkOrderNum" />
- <result property="companyWorkOrderNum" column="companyWorkOrderNum" />
- <result property="pcsRepairOrderNum" column="pcsRepairOrderNum" />
- <result property="centerRepairOrderNum" column="centerRepairOrderNum" />
- <result property="companyRepairOrderNum" column="companyRepairOrderNum" />
- </resultMap>
- <resultMap type="GxtUserScore" id="GxtUserScoreResult">
- <result property="monthPeriod" column="month_period"/>
- <result property="userId" column="user_id"/>
- <result property="userName" column="user_name"/>
- <result property="nickName" column="nick_name"/>
- <result property="deptId" column="dept_id"/>
- <result property="deptName" column="dept_name"/>
- <result property="finalScore" column="final_score"/>
- <result property="centerId" column="center_id"/>
- <result property="center" column="center"/>
- <result property="companyName" column="companyName"/>
- <result property="permission" column="permission"/>
- </resultMap>
- <sql id="selectGxtRepairOrderVo">
- select id, work_order_project_no, work_order_status, gxt_center_id, gxt_center, pcs_station_id, pcs_station_name, pcs_device_id,
- pcs_device_name, brand, model, fault_code, fault_desc, assign_time, assign_user_id, assign_user_name, accept_time,
- accept_user_id, accept_user_name, real_start_time, real_end_time, team_leader_id, team_leader_name, work_group_member_id,
- work_group_member_name, t.create_by, t.create_time, t.update_by, t.update_time, t.remark, content, plan_hour, priority_type, score,
- review_content, maintenance_type, occur_time, fault_barcode, suspend_reason, suspend_description, approval_status,
- rejection_reason, modify_reason, finalization_remark, related_order_code, related_order_content, mis_order_no, restart_time,
- scoring_status, pcs_station_pid, attachment_urls, review_score_num, final_coefficient, order_type, repair_method, reset_method, invalid_reason, return_type, return_reason, feedback_reason, confirm_status,
- wwry_num, wlry_num, work_area, info_entry, real_failure_reason, lost_power, work_permit_num, finalize_method, appeal_user_name, appeal_user_id, appeal_time, appeal_reason, suspend_explain, order_entry_type, order_attachment, extra_work, accept_return_type, accept_return_reason, score_return_reason from gxt_repair_order t
- left join sys_user u on u.user_name = t.create_by
- left join sys_dept d on u.dept_id = d.dept_id
- </sql>
- <select id="selectGxtRepairOrderList" parameterType="GxtRepairOrder" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- <where>
- <if test="workOrderProjectNo != null and workOrderProjectNo != ''"> and work_order_project_no = #{workOrderProjectNo}</if>
- <if test="workOrderStatus != null and workOrderStatus != ''"> and work_order_status = #{workOrderStatus}</if>
- <if test="gxtCenterId != null "> and gxt_center_id = #{gxtCenterId}</if>
- <if test="gxtCenter != null and gxtCenter != ''"> and gxt_center = #{gxtCenter}</if>
- <if test="pcsStationId != null "> and pcs_station_id = #{pcsStationId}</if>
- <if test="pcsStationName != null and pcsStationName != ''"> and pcs_station_name = #{pcsStationName} </if>
- <if test="pcsDeviceId != null "> and pcs_device_id = #{pcsDeviceId}</if>
- <if test="pcsDeviceName != null and pcsDeviceName != ''"> and pcs_device_name like concat('%', #{pcsDeviceName}, '%')</if>
- <if test="brand != null and brand != ''"> and brand = #{brand}</if>
- <if test="model != null and model != ''"> and model = #{model}</if>
- <if test="faultCode != null and faultCode != ''"> and fault_code like concat('%', #{faultCode}, '%')</if>
- <if test="faultDesc != null and faultDesc != ''"> and fault_desc = #{faultDesc}</if>
- <if test="assignTime != null "> and assign_time = #{assignTime}</if>
- <if test="assignUserId != null "> and assign_user_id = #{assignUserId}</if>
- <if test="assignUserName != null and assignUserName != ''"> and assign_user_name like concat('%', #{assignUserName}, '%')</if>
- <if test="acceptTime != null "> and accept_time = #{acceptTime}</if>
- <if test="acceptUserId != null "> and accept_user_id = #{acceptUserId}</if>
- <if test="acceptUserName != null and acceptUserName != ''"> and accept_user_name like concat('%', #{acceptUserName}, '%')</if>
- <if test="realStartTime != null "> and real_start_time = #{realStartTime}</if>
- <if test="realEndTime != null "> and real_end_time = #{realEndTime}</if>
- <if test="teamLeaderId != null "> and team_leader_id = #{teamLeaderId}</if>
- <if test="teamLeaderName != null and teamLeaderName != ''"> and team_leader_name like concat('%', #{teamLeaderName}, '%')</if>
- <if test="workGroupMemberId != null "> and work_group_member_id = #{workGroupMemberId}</if>
- <if test="workGroupMemberName != null and workGroupMemberName != ''"> and work_group_member_name like concat('%', #{workGroupMemberName}, '%')</if>
- <if test="content != null and content != ''"> and content = #{content}</if>
- <if test="planHour != null "> and plan_hour = #{planHour}</if>
- <if test="priorityType != null "> and priority_type = #{priorityType}</if>
- <if test="score != null "> and score = #{score}</if>
- <if test="reviewContent != null and reviewContent != ''"> and review_content = #{reviewContent}</if>
- <if test="maintenanceType != null and maintenanceType != ''"> and maintenance_type = #{maintenanceType}</if>
- <if test="occurTime != null "> and occur_time = #{occurTime}</if>
- <if test="faultBarcode != null and faultBarcode != ''"> and fault_barcode = #{faultBarcode}</if>
- <if test="suspendReason != null and suspendReason != ''"> and suspend_reason = #{suspendReason}</if>
- <if test="suspendDescription != null and suspendDescription != ''"> and suspend_description = #{suspendDescription}</if>
- <if test="approvalStatus != null and approvalStatus != ''"> and approval_status = #{approvalStatus}</if>
- <if test="rejectionReason != null and rejectionReason != ''"> and rejection_reason = #{rejectionReason}</if>
- <if test="modifyReason != null and modifyReason != ''"> and modify_reason = #{modifyReason}</if>
- <if test="finalizationRemark != null and finalizationRemark != ''"> and finalization_remark = #{finalizationRemark}</if>
- <if test="relatedOrderCode != null and relatedOrderCode != ''"> and related_order_code = #{relatedOrderCode}</if>
- <if test="relatedOrderContent != null and relatedOrderContent != ''"> and related_order_content = #{relatedOrderContent}</if>
- <if test="misOrderNo != null and misOrderNo != ''"> and mis_order_no = #{misOrderNo}</if>
- <if test="restartTime != null "> and restart_time = #{restartTime}</if>
- <if test="scoringStatus != null "> and scoring_status = #{scoringStatus}</if>
- <if test="pcsStationPid != null "> and pcs_station_pid = #{pcsStationPid}</if>
- <if test="attachmentUrls != null and attachmentUrls != ''"> and attachment_urls = #{attachmentUrls}</if>
- <if test="reviewScoreNum != null "> and review_score_num = #{reviewScoreNum}</if>
- <if test="finalCoefficient != null "> and final_coefficient = #{finalCoefficient}</if>
- <if test="orderType != null "> and order_type = #{orderType}</if>
- <if test="repairMethod != null and repairMethod != ''"> and repair_method = #{repairMethod}</if>
- <if test="resetMethod != null and resetMethod != ''"> and reset_method = #{resetMethod}</if>
- <if test="returnType != null and returnType != ''"> and return_type = #{returnType}</if>
- <if test="returnReason != null and returnReason != ''"> and return_reason = #{returnReason}</if>
- <if test="outTimeParam != null"> and DATE_SUB(NOW(), INTERVAL #{outTimeParam} MINUTE) > t.update_time </if>
- <if test="wwryNum != null"> and wwry_num = #{wwryNum}</if>
- <if test="wlryNum != null"> and wlry_num = #{wlryNum}</if>
- <if test="workArea != null and workArea != ''"> and work_area = #{workArea}</if>
- <if test="infoEntry != null and infoEntry != ''"> and info_entry = #{infoEntry}</if>
- <if test="realFailureReason != null and realFailureReason != ''"> and real_failure_reason = #{realFailureReason}</if>
- <if test="lostPower != null"> and lost_power = #{lostPower}</if>
- <if test="workPermitNum != null and workPermitNum != ''"> and work_permit_num = #{workPermitNum}</if>
- <!-- 业务特定数据权限过滤条件 -->
- <if test="params.businessDataScope != null and params.businessDataScope != ''">
- ${params.businessDataScope}
- </if>
- <!-- 限制待下发工单只能创建人本部门查看 -->
- <if test="params.currentUser != null and params.currentUser != ''">
- and ((t.work_order_status != 'to_issue' and t.work_order_status != 'accept_return') or t.create_by in
- (select user_name from sys_user t1
- left join sys_dept t2 on t1.dept_id = t2.dept_id
- where t2.dept_id = (select dept_id from sys_user where user_name = #{params.currentUser,jdbcType=VARCHAR} and del_flag='0')))
- </if>
- </where>
- order by create_time desc
- </select>
- <select id="selectGxtRepairOrderListByMonth" parameterType="GxtRepairOrder" resultMap="GxtRepairOrderResult">
- SELECT
- t.*
- FROM
- gxt_repair_order t
- <if test="userId != null">LEFT JOIN gxt_repair_order_person p ON p.order_id = t.id</if>
- <where>
- <if test="userId != null"> and p.user_id=#{userId}</if>
- <if test="workOrderStatus != null and workOrderStatus != ''"> and work_order_status = #{workOrderStatus}</if>
- <if test="pcsStationPid != null "> and pcs_station_pid = #{pcsStationPid}</if>
- <if test="maintenanceType != null and maintenanceType != ''"> and maintenance_type = #{maintenanceType}</if>
- <if test="monthPeriod != null"> and DATE_FORMAT(occur_time, '%Y-%m') = #{monthPeriod}</if>
- <if test="params.businessDataScope != null and params.businessDataScope != ''">
- ${params.businessDataScope}
- </if>
- </where>
- order by t.occur_time desc
- </select>
-
- <select id="selectGxtRepairOrderById" parameterType="Long" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- where id = #{id}
- </select>
- <insert id="insertGxtRepairOrder" parameterType="GxtRepairOrder" useGeneratedKeys="true" keyProperty="id">
- insert into gxt_repair_order
- <trim prefix="(" suffix=")" suffixOverrides=",">
- <if test="workOrderProjectNo != null and workOrderProjectNo != ''">work_order_project_no,</if>
- <if test="workOrderStatus != null">work_order_status,</if>
- <if test="gxtCenterId != null">gxt_center_id,</if>
- <if test="gxtCenter != null">gxt_center,</if>
- <if test="pcsStationId != null">pcs_station_id,</if>
- <if test="pcsStationName != null">pcs_station_name,</if>
- <if test="pcsDeviceId != null">pcs_device_id,</if>
- <if test="pcsDeviceName != null">pcs_device_name,</if>
- <if test="brand != null">brand,</if>
- <if test="model != null">model,</if>
- <if test="faultCode != null">fault_code,</if>
- <if test="faultDesc != null">fault_desc,</if>
- <if test="assignTime != null">assign_time,</if>
- <if test="assignUserId != null">assign_user_id,</if>
- <if test="assignUserName != null">assign_user_name,</if>
- <if test="acceptTime != null">accept_time,</if>
- <if test="acceptUserId != null">accept_user_id,</if>
- <if test="acceptUserName != null">accept_user_name,</if>
- <if test="realStartTime != null">real_start_time,</if>
- <if test="realEndTime != null">real_end_time,</if>
- <if test="teamLeaderId != null">team_leader_id,</if>
- <if test="teamLeaderName != null">team_leader_name,</if>
- <if test="workGroupMemberId != null">work_group_member_id,</if>
- <if test="workGroupMemberName != null">work_group_member_name,</if>
- <if test="createBy != null">create_by,</if>
- <if test="createTime != null">create_time,</if>
- <if test="updateBy != null">update_by,</if>
- <if test="updateTime != null">update_time,</if>
- <if test="remark != null">remark,</if>
- <if test="content != null">content,</if>
- <if test="planHour != null">plan_hour,</if>
- <if test="priorityType != null">priority_type,</if>
- <if test="score != null">score,</if>
- <if test="reviewContent != null">review_content,</if>
- <if test="maintenanceType != null and maintenanceType != ''">maintenance_type,</if>
- <if test="occurTime != null">occur_time,</if>
- <if test="faultBarcode != null">fault_barcode,</if>
- <if test="suspendReason != null">suspend_reason,</if>
- <if test="suspendDescription != null">suspend_description,</if>
- <if test="approvalStatus != null">approval_status,</if>
- <if test="rejectionReason != null">rejection_reason,</if>
- <if test="modifyReason != null">modify_reason,</if>
- <if test="finalizationRemark != null">finalization_remark,</if>
- <if test="relatedOrderCode != null">related_order_code,</if>
- <if test="relatedOrderContent != null">related_order_content,</if>
- <if test="misOrderNo != null">mis_order_no,</if>
- <if test="restartTime != null">restart_time,</if>
- <if test="scoringStatus != null">scoring_status,</if>
- <if test="pcsStationPid != null">pcs_station_pid,</if>
- <if test="attachmentUrls != null and attachmentUrls != ''">attachment_urls,</if>
- <if test="reviewScoreNum != null">review_score_num,</if>
- <if test="finalCoefficient != null">final_coefficient,</if>
- <if test="orderType != null">order_type,</if>
- <if test="repairMethod != null and repairMethod != ''">repair_method,</if>
- <if test="resetMethod != null and resetMethod != ''">reset_method,</if>
- <if test="invalidReason != null and invalidReason != ''">invalid_reason,</if>
- <if test="returnType != null and returnType != ''">return_type,</if>
- <if test="returnReason != null and returnReason != ''">return_reason,</if>
- <if test="feedbackReason != null and feedbackReason != ''">feedback_reason,</if>
- <if test="confirmStatus != null">confirm_status,</if>
- <if test="wwryNum != null">wwry_num,</if>
- <if test="wlryNum != null">wlry_num,</if>
- <if test="workArea != null and workArea != ''">work_area,</if>
- <if test="infoEntry != null and infoEntry != ''">info_entry,</if>
- <if test="realFailureReason != null and realFailureReason != ''">real_failure_reason,</if>
- <if test="lostPower != null">lost_power,</if>
- <if test="workPermitNum != null and workPermitNum != ''">work_permit_num,</if>
- <if test="appealUserName != null and appealUserName != ''">appeal_user_name,</if>
- <if test="appealUserId != null">appeal_user_id,</if>
- <if test="appealTime != null">appeal_time,</if>
- <if test="appealReason != null and appealReason != ''">appeal_reason,</if>
- <if test="suspendExplain != null and suspendExplain != ''">suspend_explain,</if>
- <if test="orderEntryType != null and orderEntryType != ''">order_entry_type,</if>
- <if test="orderAttachment != null and orderAttachment != ''">order_attachment,</if>
- <if test="extraWork != null and extraWork != ''">extra_work,</if>
- <if test="acceptReturnType != null and acceptReturnType != ''">accept_return_type,</if>
- <if test="acceptReturnReason != null and acceptReturnReason != ''">accept_return_reason,</if>
- <if test="scoreReturnReason != null and scoreReturnReason != ''">score_return_reason,</if>
- <if test="finalizeMethod != null and finalizeMethod != ''">finalize_method,</if>
- </trim>
- <trim prefix="values (" suffix=")" suffixOverrides=",">
- <if test="workOrderProjectNo != null and workOrderProjectNo != ''">#{workOrderProjectNo},</if>
- <if test="workOrderStatus != null">#{workOrderStatus},</if>
- <if test="gxtCenterId != null">#{gxtCenterId},</if>
- <if test="gxtCenter != null">#{gxtCenter},</if>
- <if test="pcsStationId != null">#{pcsStationId},</if>
- <if test="pcsStationName != null">#{pcsStationName},</if>
- <if test="pcsDeviceId != null">#{pcsDeviceId},</if>
- <if test="pcsDeviceName != null">#{pcsDeviceName},</if>
- <if test="brand != null">#{brand},</if>
- <if test="model != null">#{model},</if>
- <if test="faultCode != null">#{faultCode},</if>
- <if test="faultDesc != null">#{faultDesc},</if>
- <if test="assignTime != null">#{assignTime},</if>
- <if test="assignUserId != null">#{assignUserId},</if>
- <if test="assignUserName != null">#{assignUserName},</if>
- <if test="acceptTime != null">#{acceptTime},</if>
- <if test="acceptUserId != null">#{acceptUserId},</if>
- <if test="acceptUserName != null">#{acceptUserName},</if>
- <if test="realStartTime != null">#{realStartTime},</if>
- <if test="realEndTime != null">#{realEndTime},</if>
- <if test="teamLeaderId != null">#{teamLeaderId},</if>
- <if test="teamLeaderName != null">#{teamLeaderName},</if>
- <if test="workGroupMemberId != null">#{workGroupMemberId},</if>
- <if test="workGroupMemberName != null">#{workGroupMemberName},</if>
- <if test="createBy != null">#{createBy},</if>
- <if test="createTime != null">#{createTime},</if>
- <if test="updateBy != null">#{updateBy},</if>
- <if test="updateTime != null">#{updateTime},</if>
- <if test="remark != null">#{remark},</if>
- <if test="content != null">#{content},</if>
- <if test="planHour != null">#{planHour},</if>
- <if test="priorityType != null">#{priorityType},</if>
- <if test="score != null">#{score},</if>
- <if test="reviewContent != null">#{reviewContent},</if>
- <if test="maintenanceType != null and maintenanceType != ''">#{maintenanceType},</if>
- <if test="occurTime != null">#{occurTime},</if>
- <if test="faultBarcode != null">#{faultBarcode},</if>
- <if test="suspendReason != null">#{suspendReason},</if>
- <if test="suspendDescription != null">#{suspendDescription},</if>
- <if test="approvalStatus != null">#{approvalStatus},</if>
- <if test="rejectionReason != null">#{rejectionReason},</if>
- <if test="modifyReason != null">#{modifyReason},</if>
- <if test="finalizationRemark != null">#{finalizationRemark},</if>
- <if test="relatedOrderCode != null">#{relatedOrderCode},</if>
- <if test="relatedOrderContent != null">#{relatedOrderContent},</if>
- <if test="misOrderNo != null">#{misOrderNo},</if>
- <if test="restartTime != null">#{restartTime},</if>
- <if test="scoringStatus != null">#{scoringStatus},</if>
- <if test="pcsStationPid != null">#{pcsStationPid},</if>
- <if test="attachmentUrls != null and attachmentUrls != ''">#{attachmentUrls},</if>
- <if test="reviewScoreNum != null">#{reviewScoreNum},</if>
- <if test="finalCoefficient != null">#{finalCoefficient},</if>
- <if test="orderType != null">#{orderType},</if>
- <if test="repairMethod != null and repairMethod != ''">#{repairMethod},</if>
- <if test="resetMethod != null and resetMethod != ''">#{resetMethod},</if>
- <if test="invalidReason != null and invalidReason != ''">#{invalidReason},</if>
- <if test="returnType != null and returnType != ''">#{returnType},</if>
- <if test="returnReason != null and returnReason != ''">#{returnReason},</if>
- <if test="feedbackReason != null and feedbackReason != ''">#{feedbackReason},</if>
- <if test="confirmStatus != null">#{confirmStatus},</if>
- <if test="wwryNum != null">#{wwryNum},</if>
- <if test="wlryNum != null">#{wlryNum},</if>
- <if test="workArea != null and workArea != ''">#{workArea},</if>
- <if test="infoEntry != null and infoEntry != ''">#{infoEntry},</if>
- <if test="realFailureReason != null and realFailureReason != ''">#{realFailureReason},</if>
- <if test="lostPower != null">#{lostPower},</if>
- <if test="workPermitNum != null and workPermitNum != ''">#{workPermitNum},</if>
- <if test="appealUserName != null and appealUserName != ''">#{appealUserName},</if>
- <if test="appealUserId != null">#{appealUserId},</if>
- <if test="appealTime != null">#{appealTime},</if>
- <if test="appealReason != null and appealReason != ''">#{appealReason},</if>
- <if test="suspendExplain != null and suspendExplain != ''">#{suspendExplain},</if>
- <if test="orderEntryType != null and orderEntryType != ''">#{orderEntryType},</if>
- <if test="orderAttachment != null and orderAttachment != ''">#{orderAttachment},</if>
- <if test="extraWork != null and extraWork != ''">#{extraWork},</if>
- <if test="acceptReturnType != null and acceptReturnType != ''">#{acceptReturnType},</if>
- <if test="acceptReturnReason != null and acceptReturnReason != ''">#{acceptReturnReason},</if>
- <if test="scoreReturnReason != null and scoreReturnReason != ''">#{scoreReturnReason},</if>
- <if test="finalizeMethod != null and finalizeMethod != ''">#{finalizeMethod},</if>
- </trim>
- </insert>
- <update id="updateGxtRepairOrder" parameterType="GxtRepairOrder">
- update gxt_repair_order
- <trim prefix="SET" suffixOverrides=",">
- <if test="workOrderProjectNo != null and workOrderProjectNo != ''">work_order_project_no = #{workOrderProjectNo},</if>
- <if test="workOrderStatus != null">work_order_status = #{workOrderStatus},</if>
- <if test="gxtCenterId != null">gxt_center_id = #{gxtCenterId},</if>
- <if test="gxtCenter != null">gxt_center = #{gxtCenter},</if>
- <if test="pcsStationId != null">pcs_station_id = #{pcsStationId},</if>
- <if test="pcsStationName != null">pcs_station_name = #{pcsStationName},</if>
- <if test="pcsDeviceId != null">pcs_device_id = #{pcsDeviceId},</if>
- <if test="pcsDeviceName != null">pcs_device_name = #{pcsDeviceName},</if>
- <if test="brand != null">brand = #{brand},</if>
- <if test="model != null">model = #{model},</if>
- <if test="faultCode != null">fault_code = #{faultCode},</if>
- <if test="faultDesc != null">fault_desc = #{faultDesc},</if>
- <if test="assignTime != null">assign_time = #{assignTime},</if>
- <if test="assignUserId != null">assign_user_id = #{assignUserId},</if>
- <if test="assignUserName != null">assign_user_name = #{assignUserName},</if>
- <if test="acceptTime != null">accept_time = #{acceptTime},</if>
- <if test="acceptUserId != null">accept_user_id = #{acceptUserId},</if>
- <if test="acceptUserName != null">accept_user_name = #{acceptUserName},</if>
- <if test="realStartTime != null">real_start_time = #{realStartTime},</if>
- <if test="realEndTime != null">real_end_time = #{realEndTime},</if>
- <if test="teamLeaderId != null">team_leader_id = #{teamLeaderId},</if>
- <if test="teamLeaderName != null">team_leader_name = #{teamLeaderName},</if>
- <if test="workGroupMemberId != null">work_group_member_id = #{workGroupMemberId},</if>
- <if test="workGroupMemberName != null">work_group_member_name = #{workGroupMemberName},</if>
- <if test="createBy != null">create_by = #{createBy},</if>
- <if test="createTime != null">create_time = #{createTime},</if>
- <if test="updateBy != null">update_by = #{updateBy},</if>
- <if test="updateTime != null">update_time = #{updateTime},</if>
- <if test="remark != null">remark = #{remark},</if>
- <if test="content != null">content = #{content},</if>
- <if test="planHour != null">plan_hour = #{planHour},</if>
- <if test="priorityType != null">priority_type = #{priorityType},</if>
- <if test="score != null">score = #{score},</if>
- <if test="reviewContent != null">review_content = #{reviewContent},</if>
- <if test="maintenanceType != null and maintenanceType != ''">maintenance_type = #{maintenanceType},</if>
- <if test="occurTime != null">occur_time = #{occurTime},</if>
- <if test="faultBarcode != null">fault_barcode = #{faultBarcode},</if>
- <if test="suspendReason != null">suspend_reason = #{suspendReason},</if>
- <if test="suspendDescription != null">suspend_description = #{suspendDescription},</if>
- <if test="approvalStatus != null">approval_status = #{approvalStatus},</if>
- <if test="rejectionReason != null">rejection_reason = #{rejectionReason},</if>
- <if test="modifyReason != null">modify_reason = #{modifyReason},</if>
- <if test="finalizationRemark != null">finalization_remark = #{finalizationRemark},</if>
- <if test="relatedOrderCode != null">related_order_code = #{relatedOrderCode},</if>
- <if test="relatedOrderContent != null">related_order_content = #{relatedOrderContent},</if>
- <if test="misOrderNo != null">mis_order_no = #{misOrderNo},</if>
- <if test="restartTime != null">restart_time = #{restartTime},</if>
- <if test="scoringStatus != null">scoring_status = #{scoringStatus},</if>
- <if test="pcsStationPid != null">pcs_station_pid = #{pcsStationPid},</if>
- <if test="attachmentUrls != null and attachmentUrls != ''">attachment_urls = #{attachmentUrls},</if>
- <if test="reviewScoreNum != null">review_score_num = #{reviewScoreNum},</if>
- <if test="finalCoefficient != null">final_coefficient = #{finalCoefficient},</if>
- <if test="orderType != null">order_type = #{orderType},</if>
- <if test="repairMethod != null and repairMethod != ''">repair_method = #{repairMethod},</if>
- <if test="resetMethod != null and resetMethod != ''">reset_method = #{resetMethod},</if>
- <if test="invalidReason != null and invalidReason != ''">invalid_reason = #{invalidReason},</if>
- <if test="returnType != null and returnType != ''">return_type = #{returnType},</if>
- <if test="workOrderStatus != null and workOrderStatus == 'return'">
- return_reason = #{returnReason},
- </if>
- <if test="feedbackReason != null and feedbackReason != ''">feedback_reason = #{feedbackReason},</if>
- <if test="confirmStatus != null">confirm_status = #{confirmStatus},</if>
- <if test="wwryNum != null">wwry_num = #{wwryNum},</if>
- <if test="wlryNum != null">wlry_num = #{wlryNum},</if>
- <if test="workArea != null and workArea != ''">work_area = #{workArea},</if>
- <if test="infoEntry != null and infoEntry != ''">info_entry = #{infoEntry},</if>
- <if test="realFailureReason != null and realFailureReason != ''">real_failure_reason = #{realFailureReason},</if>
- <if test="lostPower != null">lost_power = #{lostPower},</if>
- <if test="workPermitNum != null and workPermitNum != ''">work_permit_num = #{workPermitNum},</if>
- <if test="appealUserName != null and appealUserName != ''">appeal_user_name = #{appealUserName},</if>
- <if test="appealUserId != null">appeal_user_id = #{appealUserId},</if>
- <if test="appealTime != null">appeal_time = #{appealTime},</if>
- <if test="appealReason != null and appealReason != ''">appeal_reason = #{appealReason},</if>
- <if test="suspendExplain != null and suspendExplain != ''">suspend_explain = #{suspendExplain},</if>
- <if test="orderEntryType != null and orderEntryType != ''">order_entry_type = #{orderEntryType},</if>
- <if test="orderAttachment != null and orderAttachment != ''">order_attachment = #{orderAttachment},</if>
- <if test="extraWork != null and extraWork != ''">extra_work = #{extraWork},</if>
- <if test="acceptReturnType != null and acceptReturnType != ''">accept_return_type = #{acceptReturnType},</if>
- <if test="workOrderStatus != null and workOrderStatus == 'accept_return'">
- accept_return_reason = #{acceptReturnReason},
- </if>
- <if test="scoreReturnReason != null and scoreReturnReason != ''">score_return_reason = #{scoreReturnReason},</if>
- <if test="finalizeMethod != null and finalizeMethod != ''">finalize_method = #{finalizeMethod},</if>
- </trim>
- where id = #{id}
- </update>
- <delete id="deleteGxtRepairOrderById" parameterType="Long">
- delete from gxt_repair_order where id = #{id}
- </delete>
- <delete id="deleteGxtRepairOrderByIds" parameterType="String">
- delete from gxt_repair_order where id in
- <foreach item="id" collection="array" open="(" separator="," close=")">
- #{id}
- </foreach>
- </delete>
- <select id="selectGxtRepairOrderListForAutoFinalize" parameterType="GxtRepairOrder" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- <where>
- <if test="workOrderStatus != null and workOrderStatus != ''"> and work_order_status in
- <foreach collection="workOrderStatus.split(',')" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- and accept_time is not null
- and occur_time is not null
- and restart_time is not null
- </where>
- order by create_time desc
- </select>
- <select id="selectGxtRepairOrderByWorkOrderProjectNo" parameterType="String" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- where work_order_project_no = #{workOrderProjectNo}
- </select>
- <select id="selectGxtRepairOrderListNoPermi" parameterType="GxtRepairOrder" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- <where>
- <if test="workOrderProjectNo != null and workOrderProjectNo != ''"> and work_order_project_no = #{workOrderProjectNo}</if>
- <if test="workOrderStatus != null and workOrderStatus != ''"> and work_order_status = #{workOrderStatus}</if>
- <if test="gxtCenterId != null "> and gxt_center_id = #{gxtCenterId}</if>
- <if test="gxtCenter != null and gxtCenter != ''"> and gxt_center = #{gxtCenter}</if>
- <if test="pcsStationId != null "> and pcs_station_id = #{pcsStationId}</if>
- <if test="pcsStationName != null and pcsStationName != ''"> and pcs_station_name = #{pcsStationName} </if>
- <if test="pcsDeviceId != null "> and pcs_device_id = #{pcsDeviceId}</if>
- <if test="pcsDeviceName != null and pcsDeviceName != ''"> and pcs_device_name like concat('%', #{pcsDeviceName}, '%')</if>
- <if test="brand != null and brand != ''"> and brand = #{brand}</if>
- <if test="model != null and model != ''"> and model = #{model}</if>
- <if test="faultCode != null and faultCode != ''"> and fault_code like concat('%', #{faultCode}, '%')</if>
- <if test="faultDesc != null and faultDesc != ''"> and fault_desc = #{faultDesc}</if>
- <if test="assignTime != null "> and assign_time = #{assignTime}</if>
- <if test="assignUserId != null "> and assign_user_id = #{assignUserId}</if>
- <if test="assignUserName != null and assignUserName != ''"> and assign_user_name like concat('%', #{assignUserName}, '%')</if>
- <if test="acceptTime != null "> and accept_time = #{acceptTime}</if>
- <if test="acceptUserId != null "> and accept_user_id = #{acceptUserId}</if>
- <if test="acceptUserName != null and acceptUserName != ''"> and accept_user_name like concat('%', #{acceptUserName}, '%')</if>
- <if test="realStartTime != null "> and real_start_time = #{realStartTime}</if>
- <if test="realEndTime != null "> and real_end_time = #{realEndTime}</if>
- <if test="teamLeaderId != null "> and team_leader_id = #{teamLeaderId}</if>
- <if test="teamLeaderName != null and teamLeaderName != ''"> and team_leader_name like concat('%', #{teamLeaderName}, '%')</if>
- <if test="workGroupMemberId != null "> and work_group_member_id = #{workGroupMemberId}</if>
- <if test="workGroupMemberName != null and workGroupMemberName != ''"> and work_group_member_name like concat('%', #{workGroupMemberName}, '%')</if>
- <if test="content != null and content != ''"> and content = #{content}</if>
- <if test="planHour != null "> and plan_hour = #{planHour}</if>
- <if test="priorityType != null "> and priority_type = #{priorityType}</if>
- <if test="score != null "> and score = #{score}</if>
- <if test="reviewContent != null and reviewContent != ''"> and review_content = #{reviewContent}</if>
- <if test="maintenanceType != null and maintenanceType != ''"> and maintenance_type = #{maintenanceType}</if>
- <if test="occurTime != null "> and occur_time = #{occurTime}</if>
- <if test="faultBarcode != null and faultBarcode != ''"> and fault_barcode = #{faultBarcode}</if>
- <if test="suspendReason != null and suspendReason != ''"> and suspend_reason = #{suspendReason}</if>
- <if test="suspendDescription != null and suspendDescription != ''"> and suspend_description = #{suspendDescription}</if>
- <if test="approvalStatus != null and approvalStatus != ''"> and approval_status = #{approvalStatus}</if>
- <if test="rejectionReason != null and rejectionReason != ''"> and rejection_reason = #{rejectionReason}</if>
- <if test="modifyReason != null and modifyReason != ''"> and modify_reason = #{modifyReason}</if>
- <if test="finalizationRemark != null and finalizationRemark != ''"> and finalization_remark = #{finalizationRemark}</if>
- <if test="relatedOrderCode != null and relatedOrderCode != ''"> and related_order_code = #{relatedOrderCode}</if>
- <if test="relatedOrderContent != null and relatedOrderContent != ''"> and related_order_content = #{relatedOrderContent}</if>
- <if test="misOrderNo != null and misOrderNo != ''"> and mis_order_no = #{misOrderNo}</if>
- <if test="restartTime != null "> and restart_time = #{restartTime}</if>
- <if test="scoringStatus != null "> and scoring_status = #{scoringStatus}</if>
- <if test="pcsStationPid != null "> and pcs_station_pid = #{pcsStationPid}</if>
- <if test="attachmentUrls != null and attachmentUrls != ''"> and attachment_urls = #{attachmentUrls}</if>
- <if test="reviewScoreNum != null "> and review_score_num = #{reviewScoreNum}</if>
- <if test="repairMethod != null and repairMethod != ''"> and repair_method = #{repairMethod}</if>
- <if test="resetMethod != null and resetMethod != ''"> and reset_method = #{resetMethod}</if>
- <if test="returnType != null and returnType != ''"> and return_type = #{returnType}</if>
- <if test="returnReason != null and returnReason != ''"> and return_reason = #{returnReason}</if>
- <if test="wwryNum != null"> and wwry_num = #{wwryNum}</if>
- <if test="wlryNum != null"> and wlry_num = #{wlryNum}</if>
- <if test="workArea != null and workArea != ''"> and work_area = #{workArea}</if>
- <if test="infoEntry != null and infoEntry != ''"> and info_entry = #{infoEntry}</if>
- <if test="realFailureReason != null and realFailureReason != ''"> and real_failure_reason = #{realFailureReason}</if>
- <if test="lostPower != null"> and lost_power = #{lostPower}</if>
- <if test="workPermitNum != null and workPermitNum != ''"> and work_permit_num = #{workPermitNum}</if>
- </where>
- order by id desc
- </select>
- <select id="selectRepairOrderWithPersonById" parameterType="Long" resultMap="GxtRepairOrderWithPersonResult">
- SELECT
- t1.id,
- t1.work_order_project_no,
- t1.work_order_status,
- t1.gxt_center_id,
- t1.gxt_center,
- t1.pcs_station_id,
- t1.pcs_station_name,
- t1.pcs_device_id,
- t1.pcs_device_name,
- t1.brand,
- t1.model,
- t1.fault_code,
- t1.fault_desc,
- t1.assign_time,
- t1.assign_user_id,
- t1.assign_user_name,
- t1.accept_time,
- t1.accept_user_id,
- t1.accept_user_name,
- t1.real_start_time,
- t1.real_end_time,
- t1.team_leader_id,
- t1.team_leader_name,
- t1.work_group_member_id,
- t1.work_group_member_name,
- t1.content,
- t1.plan_hour,
- t1.priority_type,
- t1.score,
- t1.review_content,
- t1.maintenance_type,
- t1.occur_time,
- t1.fault_barcode,
- t1.suspend_reason,
- t1.suspend_description,
- t1.approval_status,
- t1.rejection_reason,
- t1.modify_reason,
- t1.finalization_remark,
- t1.related_order_code,
- t1.related_order_content,
- t1.mis_order_no,
- t1.restart_time,
- t1.scoring_status,
- t1.pcs_station_pid,
- t1.attachment_urls,
- t1.review_score_num,
- t1.final_coefficient,
- t1.create_by,
- t1.create_time,
- t1.update_by,
- t1.update_time,
- t1.remark,
- t1.return_type,
- t1.return_reason,
- t1.order_attachment,
- t1.extra_work,
- t1.accept_return_type,
- t1.accept_return_reason,
- t1.score_return_reason,
- t2.id as person_id,
- t2.user_id as person_user_id,
- t2.nick_name as person_nick_name,
- t2.order_id as person_order_id,
- t2.order_code as person_order_code,
- t2.status as person_status,
- t2.self_score as person_self_score,
- t2.review_score as person_review_score,
- t2.final_score as person_final_score,
- t2.is_leader as person_is_leader,
- t2.extra_score as person_extra_score,
- t2.total_score as person_total_score
- FROM gxt_repair_order t1
- LEFT JOIN gxt_repair_order_person t2 ON t1.id = t2.order_id
- WHERE t1.id = #{id}
- </select>
- <select id="selectHomePageData" resultMap="GxtOrderDataResult">
- SELECT
- u.user_id,
- IFNULL( a.order_num, 0 ) AS workOrderNum,
- IFNULL( b.order_num_last, 0 ) AS workOrderNumLast,
- IFNULL( c.repair_num, 0 ) AS repairOrderNum,
- 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,
- IFNULL( q.pcsRepairOrderNum, 0 ) AS pcsRepairOrderNum,
- IFNULL( r.centerWorkOrderNum, 0 ) AS centerWorkOrderNum,
- IFNULL( s.centerRepairOrderNum, 0 ) AS centerRepairOrderNum,
- IFNULL( t.companyWorkOrderNum, 0 ) AS companyWorkOrderNum,
- IFNULL( tt.companyRepairOrderNum, 0 ) AS companyRepairOrderNum
- FROM
- sys_user u
- LEFT JOIN (
- SELECT
- COUNT(*) AS order_num,
- wop.user_id
- FROM
- gxt_work_order wo
- LEFT JOIN gxt_work_order_person wop ON wo.id = wop.order_id
- WHERE wo.work_order_status IN ('completed','archived') AND
- wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_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
- ) a ON a.user_id = u.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS order_num_last,
- wop.user_id
- FROM
- gxt_work_order wo
- LEFT JOIN gxt_work_order_person wop ON wo.id = wop.order_id
- WHERE wo.work_order_status IN ('completed','archived') AND
- wo.create_time >= DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL - 1 MONTH )
- AND wo.create_time <![CDATA[<]]> STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- GROUP BY
- wop.user_id
- ) b ON u.user_id = b.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS repair_num,
- rop.user_id
- FROM
- gxt_repair_order ro
- LEFT JOIN gxt_repair_order_person rop ON ro.id = rop.order_id
- WHERE ro.work_order_status IN ('completed','archived') AND
- ro.occur_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND ro.occur_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
- ) c ON u.user_id = c.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS repair_num_last,
- rop.user_id
- FROM
- gxt_repair_order ro
- LEFT JOIN gxt_repair_order_person rop ON ro.id = rop.order_id
- WHERE ro.work_order_status IN ('completed','archived') AND
- ro.occur_time >= DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL - 1 MONTH )
- AND ro.occur_time <![CDATA[<]]> STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- GROUP BY
- rop.user_id
- ) d ON u.user_id = d.user_id
- LEFT JOIN (
- SELECT
- rop.user_id,
- SUM(TIMESTAMPDIFF( MINUTE, ro.real_start_time, ro.real_end_time ) / 60 - 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 MIN( action_time ) AS accept_time, order_id FROM gxt_repair_order_flow WHERE action_type = 'accept' GROUP BY order_id ) e ON ro.id = e.order_id
- LEFT JOIN ( SELECT MIN( action_time ) AS process_time, order_id FROM gxt_repair_order_flow WHERE action_type = 'process' GROUP BY order_id ) f ON ro.id = f.order_id
- LEFT JOIN ( SELECT MAX( action_time ) AS complete_time, order_id FROM gxt_repair_order_flow WHERE action_type = 'complete' GROUP BY order_id ) g ON ro.id = g.order_id
- WHERE
- ro.occur_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND ro.occur_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
- ) j ON u.user_id = j.user_id
- LEFT JOIN (
- SELECT
- rop.user_id,
- SUM( TIMESTAMPDIFF( MINUTE, ro.accept_time, ro.real_start_time ) / 60 ) + SUM( TIMESTAMPDIFF( MINUTE, ro.real_start_time, ro.real_end_time ) / 60 ) AS wxgs_last
- FROM
- gxt_repair_order_person rop
- LEFT JOIN gxt_repair_order ro ON rop.order_id = ro.id
- LEFT JOIN ( SELECT MIN( action_time ) AS accept_time, order_id FROM gxt_repair_order_flow WHERE action_type = 'accept' GROUP BY order_id ) e ON ro.id = e.order_id
- LEFT JOIN ( SELECT MIN( action_time ) AS process_time, order_id FROM gxt_repair_order_flow WHERE action_type = 'process' GROUP BY order_id ) f ON ro.id = f.order_id
- LEFT JOIN ( SELECT MAX( action_time ) AS complete_time, order_id FROM gxt_repair_order_flow WHERE action_type = 'complete' GROUP BY order_id ) g ON ro.id = g.order_id
- WHERE
- ro.occur_time >= DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL - 1 MONTH )
- AND ro.occur_time <![CDATA[<]]> STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- GROUP BY
- rop.user_id
- ) k ON u.user_id = k.user_id
- LEFT JOIN (
- SELECT
- wop.user_id,
- SUM(TIMESTAMPDIFF( MINUTE, wo.real_start_time, wo.real_end_time ) / 60 - 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 MIN( action_time ) AS process_time, order_id FROM gxt_work_order_flow WHERE action_type = 'process' GROUP BY order_id ) h ON wo.id = h.order_id
- LEFT JOIN ( SELECT MIN( action_time ) AS complete_time, order_id FROM gxt_work_order_flow WHERE action_type = 'complete' GROUP BY order_id ) i ON wo.id = i.order_id
- WHERE
- wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_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
- ) l ON u.user_id = l.user_id
- LEFT JOIN (
- SELECT
- wop.user_id,
- SUM( TIMESTAMPDIFF( MINUTE, h.process_time, i.complete_time ) / 60 ) AS wbgs_last
- FROM
- gxt_work_order_person wop
- LEFT JOIN gxt_work_order wo ON wop.order_id = wo.id
- LEFT JOIN ( SELECT MIN( action_time ) AS process_time, order_id FROM gxt_work_order_flow WHERE action_type = 'process' GROUP BY order_id ) h ON wo.id = h.order_id
- LEFT JOIN ( SELECT MIN( action_time ) AS complete_time, order_id FROM gxt_work_order_flow WHERE action_type = 'complete' GROUP BY order_id ) i ON wo.id = i.order_id
- WHERE
- wo.create_time >= DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL - 1 MONTH )
- AND wo.create_time <![CDATA[<]]> STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- GROUP BY
- wop.user_id
- ) m ON u.user_id = m.user_id
- LEFT JOIN (
- SELECT
- SUM( us.final_score ) AS score,
- su.user_id
- FROM
- gxt_user_score us
- LEFT JOIN sys_user su ON us.user_name = su.user_name
- WHERE
- us.month_period = #{monthPeriod}
- GROUP BY
- su.user_id
- ) n ON u.user_id = n.user_id
- LEFT JOIN (
- SELECT
- SUM( us.final_score ) AS score,
- su.user_id
- FROM
- gxt_user_score us
- LEFT JOIN sys_user su ON us.user_name = su.user_name
- WHERE
- us.month_period = DATE_FORMAT( DATE_SUB( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01' ), '%Y-%m-%d' ), INTERVAL 1 MONTH ), '%Y-%m' )
- GROUP BY
- su.user_id
- ) o ON u.user_id = o.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS pcsWorkOrderNum,
- su.dept_id,su.user_id
- FROM
- gxt_work_order wo
- LEFT JOIN sys_user su ON wo.pcs_station_pid = su.dept_id
- WHERE wo.work_order_status IN ('completed','archived') AND
- su.user_id = #{userId}
- AND wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
- ) p ON u.user_id = p.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS pcsRepairOrderNum,
- su.dept_id,su.user_id
- FROM
- gxt_repair_order wo
- LEFT JOIN sys_user su ON wo.pcs_station_pid = su.dept_id
- WHERE wo.work_order_status IN ('completed','archived') AND
- su.user_id = #{userId}
- AND wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
- ) q ON u.user_id = q.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS centerWorkOrderNum,
- su.dept_id,su.user_id
- FROM
- gxt_work_order wo
- LEFT JOIN sys_dept sd ON wo.gxt_center_id = sd.parent_id
- LEFT JOIN sys_user su ON sd.dept_id = su.dept_id
- WHERE wo.work_order_status IN ('completed','archived') AND
- su.user_id = #{userId}
- AND wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
- ) r ON u.user_id = p.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS centerRepairOrderNum,
- su.dept_id,su.user_id
- FROM
- gxt_repair_order wo
- LEFT JOIN sys_dept sd ON wo.gxt_center_id = sd.parent_id
- LEFT JOIN sys_user su ON sd.dept_id = su.dept_id
- WHERE wo.work_order_status IN ('completed','archived') AND
- su.user_id = #{userId}
- AND wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
- ) s ON u.user_id = q.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS companyWorkOrderNum,#{userId} AS user_id
- FROM
- gxt_work_order wo
- WHERE wo.work_order_status IN ('completed','archived') AND
- wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
- ) t ON u.user_id = t.user_id
- LEFT JOIN (
- SELECT
- COUNT(*) AS companyRepairOrderNum,#{userId} AS user_id
- FROM
- gxt_repair_order wo
- WHERE wo.work_order_status IN ('completed','archived') AND
- wo.create_time >= STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' )
- AND wo.create_time <![CDATA[<]]> DATE_ADD( STR_TO_DATE( CONCAT( #{monthPeriod}, '-01 00:00:00' ), '%Y-%m-%d %H:%i:%s' ), INTERVAL 1 MONTH )
- ) tt ON u.user_id = tt.user_id
- WHERE
- u.user_id = #{userId}
- </select>
- <select id="selectHomePageRank" parameterType="GxtUserScore" resultMap="GxtUserScoreResult">
- SELECT
- u.user_id,
- u.user_name,
- u.nick_name,
- d.dept_id,
- d.dept_name,
- p.dept_id AS center_id,
- p.dept_name AS center,
- (SELECT dept_name FROM sys_dept WHERE parent_id=0) AS companyName,
- IFNULL(us.final_score,0) AS final_score
- FROM
- sys_user u
- LEFT JOIN sys_dept d ON u.dept_id = d.dept_id
- LEFT JOIN sys_dept p ON d.parent_id = p.dept_id
- LEFT JOIN gxt_user_score us ON u.user_name = us.user_name AND us.month_period = DATE_FORMAT(CURDATE(), '%Y-%m')
- WHERE 1=1
- <if test="deptId != null">
- AND d.dept_id=#{deptId}
- </if>
- <if test="centerId != null">
- AND p.dept_id=#{centerId}
- </if>
- <if test="permission != null and permission != ''">
- AND u.user_id IN
- <foreach item="item" collection="permission.split(',')" open="(" separator="," close=")">
- #{item}
- </foreach>
- </if>
- ORDER BY
- IFNULL(us.final_score,0) DESC
- </select>
- <select id="selectLatestGxtRepairOrderByDeviceId" parameterType="map" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- <where>
- <if test="pcsDeviceId != null"> and pcs_device_id = #{pcsDeviceId}</if>
- <if test="limit != null and limit > 0">
- ORDER BY create_time DESC LIMIT #{limit}
- </if>
- </where>
- </select>
-
- <select id="selectGxtRepairOrderByDeviceIdWithCondition" parameterType="map" resultMap="GxtRepairOrderResult">
- <include refid="selectGxtRepairOrderVo"/>
- <where>
- <if test="pcsDeviceId != null"> and pcs_device_id = #{pcsDeviceId}</if>
- <if test="workOrderStatus != null and workOrderStatus != ''">
- <if test="excludeStatus">
- and work_order_status != #{workOrderStatus}
- </if>
- <if test="!excludeStatus">
- and work_order_status = #{workOrderStatus}
- </if>
- </if>
- </where>
- <choose>
- <when test="orderByField != null and orderByField == 'occurTime'">
- ORDER BY occur_time DESC
- </when>
- <when test="orderByField != null and orderByField == 'restartTime'">
- ORDER BY restart_time DESC
- </when>
- <otherwise>
- ORDER BY create_time DESC
- </otherwise>
- </choose>
- <if test="limit != null and limit > 0">
- LIMIT #{limit}
- </if>
- </select>
- </mapper>
|