| | |
| | | SEPARATOR ';' |
| | | ) AS insProductItem, |
| | | u.name , |
| | | l.laboratory_name |
| | | l.laboratory_name, |
| | | cmr.next_calibration_date nextCalibrationDateTwo, |
| | | CASE |
| | | WHEN cmr.next_calibration_date IS NULL THEN 0 |
| | | WHEN cmr.next_calibration_date BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 45 DAY) THEN 1 |
| | | ELSE 0 |
| | | END AS status |
| | | FROM |
| | | device d |
| | | LEFT JOIN `user` u ON u.id = d.equipment_manager |
| | | LEFT JOIN laboratory l ON l.id = d.subordinate_departments_id |
| | | LEFT JOIN (SELECT |
| | | device_id, |
| | | type, |
| | | MAX(next_calibration_date) AS next_calibration_date |
| | | FROM |
| | | device_metric_record |
| | | GROUP BY |
| | | device_id )cmr ON d.id = cmr.device_id |
| | | LEFT JOIN structure_item_parameter sip ON FIND_IN_SET(sip.id, d.ins_product_ids) |
| | | <where> |
| | | <if test="laboratoryNameIsNull != null and laboratoryNameIsNull == true"> |
| | | l.laboratory_name is null |
| | | </if> |
| | | AND cmr.type = 'calibrate' or cmr.type is null or cmr.type = '' |
| | | </where> |
| | | GROUP BY |
| | | d.id, |
| | | u.name, l.laboratory_name |
| | | u.name, l.laboratory_name,cmr.next_calibration_date,status |
| | | ) a |
| | | <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> |
| | | ${ew.customSqlSegment} |
| | |
| | | </where> |
| | | order by l.laboratory_name desc, d.large_category desc |
| | | </select> |
| | | <select id="selectDeviceByCode" resultType="com.yuanchu.mom.dto.DeviceDto"> |
| | | SELECT d.*, |
| | | GROUP_CONCAT(DISTINCT inspection_item SEPARATOR ';') AS ins_product_item, |
| | | l.laboratory_name, |
| | | u1.name equipmentManager_name, |
| | | u2.name authorized_person_name |
| | | FROM device d |
| | | LEFT JOIN structure_item_parameter sip ON FIND_IN_SET(sip.id, d.ins_product_ids) |
| | | LEFT JOIN laboratory l ON d.subordinate_departments_id = l.id |
| | | LEFT JOIN user u1 ON u1.id = d.equipment_manager |
| | | LEFT JOIN user u2 ON u2.id = d.authorized_person |
| | | WHERE d.id = #{id} |
| | | |
| | | GROUP BY d.id, |
| | | l.laboratory_name, |
| | | u1.name, |
| | | u2.name |
| | | </select> |
| | | </mapper> |