From 3d397976d08f0359b8cfeb4e4f22403ae5d0c04f Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期六, 24 十月 2026 20:44:14 +0800
Subject: [PATCH] feat(device): 设备核查计划附件与设备使用记录联动改造
---
cnas-device/src/main/java/com/ruoyi/device/service/DeviceExaminePlanService.java | 74 +++++++++++++++++++++++++++++++++++++
1 files changed, 74 insertions(+), 0 deletions(-)
diff --git a/cnas-device/src/main/java/com/ruoyi/device/service/DeviceExaminePlanService.java b/cnas-device/src/main/java/com/ruoyi/device/service/DeviceExaminePlanService.java
index a468993..aa4c52d 100644
--- a/cnas-device/src/main/java/com/ruoyi/device/service/DeviceExaminePlanService.java
+++ b/cnas-device/src/main/java/com/ruoyi/device/service/DeviceExaminePlanService.java
@@ -5,11 +5,14 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.device.dto.DeviceExaminePlanDetailsDto;
import com.ruoyi.device.dto.DeviceExaminePlanDto;
+import com.ruoyi.device.pojo.Device;
+import com.ruoyi.device.pojo.DeviceExamineAttachment;
import com.ruoyi.device.pojo.DeviceExaminePlan;
import com.ruoyi.device.pojo.DeviceExaminePlanDetails;
import org.springframework.web.multipart.MultipartFile;
import jakarta.servlet.http.HttpServletResponse;
+import java.util.List;
/**
* <p>
@@ -86,4 +89,75 @@
* @return
*/
DeviceExaminePlanDto getDeviceExaminePlan(Integer planId);
+
+ /**
+ * 鎸夊勾浠芥煡璇㈣澶囨牳鏌ヨ鍒掞紙涓嶅瓨鍦ㄥ垯鑷姩鍒涘缓锛夛紝骞惰嚜鍔ㄨˉ鍏ㄥ凡鍒扮偣鐨勮澶囨槑缁�
+ * @param planYear 骞翠唤
+ * @return 璁″垝涓昏〃淇℃伅
+ */
+ DeviceExaminePlanDto getOrCreatePlanByYear(String planYear);
+
+ /**
+ * 璁惧妗f鍙樻洿鍚庯紝绔嬪嵆鎶婅澶囩櫥璁板埌涓嬫鏍告煡鏃ユ湡鎵�鍦ㄥ勾浠界殑璁惧鏍告煡璁″垝鏄庣粏
+ * @param device 璁惧
+ */
+ void syncDeviceExamineDetail(Device device);
+
+ /**
+ * 鏍告煡璁板綍澶嶆牳閫氳繃鍚庯紝婊氬姩璁惧妗f鐨勬渶杩�/涓嬫鏍告煡鏃ユ湡锛屽苟鐧昏涓嬩竴杞鍒�
+ * @param planDetailsId 璁″垝鏄庣粏id
+ */
+ void updateDeviceExamineDate(Integer planDetailsId);
+
+ /**
+ * 涓烘寚瀹氳澶囨壘涓�鏉″彲褰曞叆鏍告煡璁板綍鐨勮鍒掓槑缁嗭紝娌℃湁鍒欐柊澧炴湰杞槑缁�
+ * @param deviceId 璁惧id
+ * @param checkTime 鏍告煡鏈堜唤锛坹yyy-MM锛夛紝鍐冲畾鏄庣粏鎵�灞炵殑璁″垝骞翠唤
+ * @return 璁″垝鏄庣粏
+ */
+ DeviceExaminePlanDetails resolveExaminePlanDetail(Integer deviceId, String checkTime);
+
+ /**
+ * 鏌ユ壘鎸囧畾璁惧鍙鐢ㄧ殑鏍告煡璁板綍璁″垝鏄庣粏锛堝彧鏌ヨ锛屼笉鏂板璁″垝鎴栨槑缁嗭級
+ * @param deviceId 璁惧id
+ * @param checkTime 鏍告煡鏈堜唤锛坹yyy-MM锛�
+ * @return 鍙鐢ㄧ殑璁″垝鏄庣粏锛屾病鏈夋椂杩斿洖 null
+ */
+ DeviceExaminePlanDetails findExaminePlanDetail(Integer deviceId, String checkTime);
+
+ /**
+ * 淇敼璁″垝鏄庣粏锛堟牳鏌ユ湀浠借法骞存椂褰掑埌瀵瑰簲骞翠唤鐨勮鍒掞級
+ * @param detail 璁″垝鏄庣粏
+ * @return 鏄惁淇敼鎴愬姛
+ */
+ boolean updateExaminePlanDetail(DeviceExaminePlanDetails detail);
+
+ /**
+ * 鍒犻櫎璁″垝鏄庣粏锛堝凡鏈夋牳鏌ヨ褰曠殑涓嶅厑璁稿垹闄わ級
+ * @param planDetailsId 璁″垝鏄庣粏id
+ * @return 鏄惁鍒犻櫎鎴愬姛
+ */
+ boolean removeExaminePlanDetail(Integer planDetailsId);
+
+ /**
+ * 鏌ヨ鏍告煡璁板綍鐨勯檮浠跺垪琛�
+ * @param planDetailsId 璁″垝鏄庣粏id
+ * @return 闄勪欢鍒楄〃
+ */
+ List<DeviceExamineAttachment> selectAttachments(Integer planDetailsId);
+
+ /**
+ * 涓婁紶鏍告煡璁板綍鐨勯檮浠讹紙鏀寔浠绘剰鏍煎紡锛屽彲澶氫釜锛�
+ * @param planDetailsId 璁″垝鏄庣粏id
+ * @param file 鏂囦欢
+ * @return 闄勪欢淇℃伅
+ */
+ DeviceExamineAttachment uploadAttachment(Integer planDetailsId, MultipartFile file);
+
+ /**
+ * 鍒犻櫎鏍告煡璁板綍鐨勯檮浠�
+ * @param id 闄勪欢id
+ * @return 鏄惁鍒犻櫎鎴愬姛
+ */
+ boolean deleteAttachment(Long id);
}
--
Gitblit v1.9.3