<?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.ruoyi.device.mapper.DeviceExaminePlanDetailsMapper">
|
|
|
<!--设备核查计划详情公共查询:列表与导出共用同一套字段和排序-->
|
<sql id="deviceExaminePlanDetailQuery">
|
select * from (
|
select
|
d.plan_details_id,
|
d.plan_id,
|
d.device_id,
|
d.device_number,
|
d.device_name,
|
d.device_model,
|
d.check_time,
|
d.check_index,
|
d.check_method,
|
d.how_results,
|
d.check_charger_user_id,
|
CASE WHEN d.check_charger_user='' or d.check_charger_user is null THEN u.name
|
ELSE d.check_charger_user END AS check_charger_user,
|
d.environment,
|
d.check_basis,
|
d.appearance_status,
|
d.running_status,
|
d.remark,
|
d.file_name,
|
d.file_url,
|
d.create_user,
|
d.create_time,
|
d.update_user,
|
d.update_time,
|
CASE
|
WHEN dc.review_status = 0 THEN 3
|
WHEN dc.review_status = 1 THEN 2
|
WHEN dc.record_id IS NOT NULL THEN 1
|
ELSE 0 END record_status,
|
CASE WHEN dc.review_status = 1 THEN date_format(dc.update_time, '%Y-%m-%d') END complete_date,
|
CASE
|
WHEN dd.review_status = 0 THEN 3
|
WHEN dd.review_status = 1 THEN 2
|
WHEN dd.record_contrast_id IS NOT NULL THEN 1
|
ELSE 0 END record_contrast_status,
|
CASE WHEN dev.next_examine_date IS NOT NULL
|
AND dev.next_examine_date <= date_add(curdate(), interval 1 month)
|
AND (dev.last_examine_date IS NULL OR dev.last_examine_date < str_to_date(concat(left(d.check_time, 7), '-01'), '%Y-%m-%d'))
|
THEN 1 ELSE 0 END red_flag,
|
(select count(*) from device_examine_attachment a where a.plan_details_id = d.plan_details_id) attachment_count
|
from device_examine_plan_details d
|
left join user u on u.id = d.check_charger_user_id
|
left join device_examine_record dc on d.plan_details_id = dc.plan_details_id
|
left join device_examine_record_contrast dd on dd.plan_details_id = d.plan_details_id
|
left join device dev on dev.id = d.device_id
|
) a
|
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
|
${ew.customSqlSegment}
|
</if>
|
order by device_number asc, check_time desc
|
</sql>
|
|
<!--设备核查计划详情列表-->
|
<select id="pageDeviceExaminePlanDetail" resultType="com.ruoyi.device.dto.DeviceExaminePlanDetailsDto">
|
<include refid="deviceExaminePlanDetailQuery"/>
|
</select>
|
|
<!--设备核查计划详情全量列表(导出用,不分页)-->
|
<select id="listDeviceExaminePlanDetail" resultType="com.ruoyi.device.dto.DeviceExaminePlanDetailsDto">
|
<include refid="deviceExaminePlanDetailQuery"/>
|
</select>
|
|
</mapper>
|