From 2f07589b54d56085af77b50d580890cd4130b444 Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期一, 19 十月 2026 15:19:53 +0800
Subject: [PATCH] 设备模块后端业务规则、计划接口与日期联动
---
cnas-device/src/main/resources/mapper/DeviceMaintenancePlanDetailsMapper.xml | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/cnas-device/src/main/resources/mapper/DeviceMaintenancePlanDetailsMapper.xml b/cnas-device/src/main/resources/mapper/DeviceMaintenancePlanDetailsMapper.xml
index aeb49ce..219a418 100644
--- a/cnas-device/src/main/resources/mapper/DeviceMaintenancePlanDetailsMapper.xml
+++ b/cnas-device/src/main/resources/mapper/DeviceMaintenancePlanDetailsMapper.xml
@@ -17,4 +17,29 @@
where dmpd.maintenance_plan_id = #{maintenancePlanId}
</select>
+ <!-- 璁惧淇濆吇璁″垝璇︽儏鍒楄〃锛堝惈鍒扮偣鏍囩孩锛� -->
+ <select id="pageMaintenancePlanDetail" resultType="com.ruoyi.device.dto.DeviceMaintenancePlanDetailsDto">
+ select
+ dmpd.*,
+ d.device_name,
+ d.management_number device_number,
+ d.specification_model,
+ d.management_number,
+ d.storage_point,
+ case when d.next_maintenance_date is not null
+ and d.next_maintenance_date <= date_add(curdate(), interval 1 month)
+ and (d.last_maintenance_date is null or d.last_maintenance_date < dmpd.maintenance_date)
+ then 1 else 0 end as red_flag
+ from device_maintenance_plan_details dmpd
+ left join device d on dmpd.device_id = d.id
+ where dmpd.maintenance_plan_id = #{planId}
+ <if test="deviceName != null and deviceName != ''">
+ and d.device_name like concat('%', #{deviceName}, '%')
+ </if>
+ <if test="deviceNumber != null and deviceNumber != ''">
+ and d.management_number like concat('%', #{deviceNumber}, '%')
+ </if>
+ order by dmpd.maintenance_date asc
+ </select>
+
</mapper>
--
Gitblit v1.9.3