From 5da02311d99ca78c0fc18647c3a8348f56fe9330 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期四, 05 九月 2024 21:55:13 +0800 Subject: [PATCH] 考核结果导出优化 --- ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml | 103 ++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 97 insertions(+), 6 deletions(-) diff --git a/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml index 3578040..a4e932f 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml @@ -19,6 +19,7 @@ <result column="province_tag" property="provinceTag"/> <result column="important_tag" property="importantTag"/> <result column="important_command_image_tag" property="importantCommandImageTag"/> + <result column="dept_tag" property="deptTag"/> </resultMap> <select id="selectData" resultType="com.ycl.platform.base.BaseSelect"> @@ -41,7 +42,8 @@ typ.update_time, typ.important_tag, typ.province_tag, - typ.important_command_image_tag + typ.important_command_image_tag, + typ.dept_tag FROM t_yw_point typ LEFT JOIN t_yw_unit tyu ON typ.unit_id = tyu.id AND tyu.deleted = 0 @@ -78,6 +80,9 @@ <if test="commandImage!=null and commandImage == true "> and important_command_image_tag = #{commandImage} </if> + <if test="deptTag !=null and deptTag == true "> + and dept_tag = #{deptTag} + </if> </where> </select> @@ -91,7 +96,8 @@ yp.end_time, CASE WHEN yp.province_tag = 0 THEN '鍚�' ELSE '鏄�' END AS provinceTagString, CASE WHEN yp.important_tag = 0 THEN '鍚�' ELSE '鏄�' END AS importantTagString, - CASE WHEN yp.important_command_image_tag = 0 THEN '鍚�' ELSE '鏄�' END AS importantCommandImageTagString + CASE WHEN yp.important_command_image_tag = 0 THEN '鍚�' ELSE '鏄�' END AS importantCommandImageTagString, + CASE WHEN yp.dept_tag = 0 THEN '鍚�' ELSE '鏄�' END AS deptTag FROM t_yw_point yp INNER JOIN t_monitor m ON yp.serial_number = m.serial_number @@ -115,12 +121,97 @@ <if test="point.pointName != null and point.pointName != ''"> point_name = #{point.pointName}, </if> - unit_id = #{point.unitId}, - start_time = #{point.startTime}, - end_time = #{point.endTime}, + <if test="point.unitId != null"> + unit_id = #{point.unitId}, + </if> + <if test="point.startTime != null"> + start_time = #{point.startTime}, + </if> + <if test="point.endTime != null"> + end_time = #{point.endTime}, + </if> province_tag = #{point.provinceTag}, - important_command_image_tag = #{point.importantCommandImageTag} + important_command_image_tag = #{point.importantCommandImageTag}, + dept_tag = #{point.deptTag} WHERE serial_number = #{point.serialNumber} </foreach> </update> + + <select id="countNotFinishedWorkOrderByPointId" resultType="com.ycl.platform.domain.vo.YwPointVO"> + SELECT + yp.id, yp.point_name, wo.serial_number + FROM + t_yw_point yp + INNER JOIN t_work_order wo ON yp.serial_number = wo.serial_number + AND wo.status not in ('AUDITING_SUCCESS','WAIT_DISTRIBUTE') + AND wo.deleted = 0 + AND yp.deleted = 0 + WHERE + yp.id = #{pointId} + </select> + + <select id="countNotFinishedWorkOrderByGb" resultType="com.ycl.platform.domain.vo.YwPointVO"> + SELECT + yp.id, yp.point_name, wo.serial_number + FROM + t_yw_point yp + INNER JOIN t_work_order wo ON yp.serial_number = wo.serial_number + AND wo.status not in ('AUDITING_SUCCESS','WAIT_DISTRIBUTE') + AND wo.deleted = 0 + AND yp.deleted = 0 + AND yp.serial_number = #{serialNumber} + LIMIT 1 + </select> + + <select id="getDeptPointGB" resultType="string"> + SELECT + DISTINCT serial_number + FROM + t_yw_point + WHERE + <if test="tagType == 0"> + dept_tag = 1 + </if> + <if test="tagType == 1"> + important_tag = 1 + </if> + <if test="tagType == 2"> + important_command_image_tag = 1 + </if> + AND deleted = 0 + </select> + + <select id="select" resultType="com.ycl.platform.domain.entity.YwPoint"> + SELECT + * + FROM + t_yw_point + <where> + <if test="keyword != null and keyword != ''"> + AND (serial_number like concat('%', #{keyword}, '%') or point_name like concat('%', #{keyword}, '%')) + </if> + <if test="unitId != null"> + AND unit_id = #{unitId} + </if> + AND deleted = 0 + </where> + + </select> + + <select id="getReportResult" resultType="com.ycl.platform.domain.vo.ReportAuditingRecordVO"> + SELECT + ar.result, r.begin_create_time, r.end_create_time + FROM + t_report r + INNER JOIN t_report_auditing_record ar ON r.id = ar.report_id + AND ar.deleted = 0 + AND r.report_type = #{reportType} + AND r.deleted = 0 + AND r.serial_number = #{serialNumber} + AND ar.result = 1 + ORDER BY + ar.create_time DESC + limit 1 + </select> + </mapper> -- Gitblit v1.8.0