| | |
| | | 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> |
| | |
| | | * @return |
| | | */ |
| | | DeviceExaminePlanDto getDeviceExaminePlan(Integer planId); |
| | | |
| | | /** |
| | | * 按年份查询设备核查计划(不存在则自动创建),并自动补全已到点的设备明细 |
| | | * @param planYear 年份 |
| | | * @return 计划主表信息 |
| | | */ |
| | | DeviceExaminePlanDto getOrCreatePlanByYear(String planYear); |
| | | |
| | | /** |
| | | * 设备档案变更后,立即把设备登记到下次核查日期所在年份的设备核查计划明细 |
| | | * @param device 设备 |
| | | */ |
| | | void syncDeviceExamineDetail(Device device); |
| | | |
| | | /** |
| | | * 核查记录复核通过后,滚动设备档案的最近/下次核查日期,并登记下一轮计划 |
| | | * @param planDetailsId 计划明细id |
| | | */ |
| | | void updateDeviceExamineDate(Integer planDetailsId); |
| | | |
| | | /** |
| | | * 为指定设备找一条可录入核查记录的计划明细,没有则新增本轮明细 |
| | | * @param deviceId 设备id |
| | | * @param checkTime 核查月份(yyyy-MM),决定明细所属的计划年份 |
| | | * @return 计划明细 |
| | | */ |
| | | DeviceExaminePlanDetails resolveExaminePlanDetail(Integer deviceId, String checkTime); |
| | | |
| | | /** |
| | | * 查找指定设备可复用的核查记录计划明细(只查询,不新增计划或明细) |
| | | * @param deviceId 设备id |
| | | * @param checkTime 核查月份(yyyy-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); |
| | | } |