From f59491536346c749dcde01f9ca6595e61e8a4d56 Mon Sep 17 00:00:00 2001 From: chendaofei <857448963@qq.com> Date: Wed, 8 Jul 2026 09:21:30 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=B7=BB=E5=8A=A0=E7=BB=88=E7=AB=AF=E5=91=A8?= =?UTF-8?q?=E6=9C=9F=E6=A3=80=E6=B5=8B=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pq/pojo/param/TerminalCheckParam.java | 21 +++++++ .../pq/pojo/po/SupervisionUserReportFile.java | 45 +++++++++++++++ .../njcn/device/pq/pojo/po/TerminalLogs.java | 34 ----------- .../device/pq/pojo/vo/TerminalCheckVO.java | 7 +++ .../device/pq/mapper/mapping/AlarmMapper.xml | 3 + .../controller/UserLedgerController.java | 13 +++++ .../SupervisionUserReportFileMapper.java | 15 +++++ .../SupervisionUserReportFileService.java | 8 +++ .../userledger/service/UserLedgerService.java | 4 ++ .../SupervisionUserReportFileServiceImpl.java | 19 +++++++ .../service/impl/UserLedgerServiceImpl.java | 57 +++++++++++++++++-- .../pojo/param/user/UserReportParam.java | 12 ++++ .../pojo/vo/user/UserReportVO.java | 12 ++++ 13 files changed, 211 insertions(+), 39 deletions(-) create mode 100644 pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/SupervisionUserReportFile.java delete mode 100644 pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/TerminalLogs.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/SupervisionUserReportFileMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/SupervisionUserReportFileService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/SupervisionUserReportFileServiceImpl.java diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/TerminalCheckParam.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/TerminalCheckParam.java index e1f1beae1..5bde1b5d7 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/TerminalCheckParam.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/TerminalCheckParam.java @@ -2,6 +2,10 @@ package com.njcn.device.pq.pojo.param; import com.njcn.web.pojo.param.BaseParam; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; /** * @Author: cdf @@ -10,4 +14,21 @@ import lombok.Data; */ @Data public class TerminalCheckParam extends BaseParam { + + private String devId; + + private String objId; + + private String objName; + + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate thisCheckTime; + + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate nextCheckTime; + + /** + * 检测报告 + */ + private String checkUrl; } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/SupervisionUserReportFile.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/SupervisionUserReportFile.java new file mode 100644 index 000000000..f460b1d5f --- /dev/null +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/SupervisionUserReportFile.java @@ -0,0 +1,45 @@ +package com.njcn.device.pq.pojo.po; + +/** + * @Author: cdf + * @CreateTime: 2026-07-07 + * @Description: + */ + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * 监测对象附件 + */ +@Data +@TableName("SUPERVISION_USER_REPORT_FILE") +public class SupervisionUserReportFile { + + /** + * 主键ID + */ + @TableId + private String id; + + /** + * 检测报告 + */ + private String checkUrl; + + /** + * 历史检测报告 + */ + private String checkHistoryUrl; + + /** + * 评估报告 + */ + private String assessUrl; + + /** + * 其他附件 + */ + private String otherUrl; +} \ No newline at end of file diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/TerminalLogs.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/TerminalLogs.java deleted file mode 100644 index 5ad44240b..000000000 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/TerminalLogs.java +++ /dev/null @@ -1,34 +0,0 @@ -//package com.njcn.device.pq.pojo.po; -// -//import com.baomidou.mybatisplus.annotation.TableId; -//import lombok.Data; -//import org.influxdb.annotation.Column; -//import org.influxdb.annotation.Measurement; -// -//import java.time.Instant; -// -///** -// * @version 1.0.0 -// * @author: chenchao -// * @date: 2022/06/22 19:03 -// */ -//@Data -//@Measurement(name = "pqs_terminal_logs") -//public class TerminalLogs { -// -// @Column(name = "time") -// private Instant timeId; -// -// @Column(name = "line_id") -// private String lineId; -// -// @Column(name = "terminal_type") -// private String terminalType; -// -// @Column(name = "update_by") -// private String updateBy; -// -// @Column(name = "terminal_describe") -// private String terminalDescribe; -// -//} diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/TerminalCheckVO.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/TerminalCheckVO.java index 933d986db..e05d8d910 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/TerminalCheckVO.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/TerminalCheckVO.java @@ -21,6 +21,8 @@ public class TerminalCheckVO { private String devName; + private String objId; + private String objName; private LocalDate thisCheckTime; @@ -40,5 +42,10 @@ public class TerminalCheckVO { */ private Integer overdueDay; + /** + * 检测报告 + */ + private String checkUrl; + } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/AlarmMapper.xml b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/AlarmMapper.xml index 95e9a4429..881fdeb12 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/AlarmMapper.xml +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/AlarmMapper.xml @@ -164,10 +164,12 @@ ORDER BY dev.NAME AS devName, dept.NAME AS areaName, bd.name AS bdName, + detail.obj_id AS objId, detail.obj_name AS objName, dev_detail.this_time_check AS thisCheckTime, dev_detail.next_time_check AS nextCheckTime, dev_detail.login_time AS loginDate, + files.CHECK_URL as checkUrl, DATEDIFF( day, COALESCE(CAST(dev_detail.next_time_check AS DATE), CURRENT_DATE + INTERVAL '365' DAY), @@ -190,6 +192,7 @@ ORDER BY INNER JOIN pq_line bd ON dev.pid = bd.id INNER JOIN pq_dept_line dept_line ON line.id = dept_line.line_id INNER JOIN sys_dept dept ON dept_line.id = dept.id AND dept.type = 0 + LEFT JOIN SUPERVISION_USER_REPORT_FILE files on detail.obj_id = files.id order by overdueDay desc diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java index b83131d35..f0f80a431 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java @@ -7,6 +7,7 @@ import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; +import com.njcn.device.pq.pojo.param.TerminalCheckParam; import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.param.user.UserReportParam; @@ -19,6 +20,7 @@ import com.njcn.web.controller.BaseController; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; +import jdk.nashorn.internal.ir.Terminal; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -147,4 +149,15 @@ public class UserLedgerController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportVO, methodDescribe); } + @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPLOAD) + @PostMapping("/userCheckUpload") + @ApiOperation("周期检测") + @ApiImplicitParam(name = "userReportParam", value = "实体参数", required = true) + public HttpResult userCheckUpload(@RequestBody @Validated TerminalCheckParam terminalCheckParam) { + String methodDescribe = getMethodDescribe("addUserReport"); + Boolean f = userReportPOService.userCheckUpload(terminalCheckParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, f, methodDescribe); + } + + } diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/SupervisionUserReportFileMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/SupervisionUserReportFileMapper.java new file mode 100644 index 000000000..b7ce6983e --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/SupervisionUserReportFileMapper.java @@ -0,0 +1,15 @@ +package com.njcn.device.userledger.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.device.pq.pojo.po.SupervisionUserReportFile; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author: cdf + * @CreateTime: 2026-07-07 + * @Description: + */ +@Mapper +public interface SupervisionUserReportFileMapper extends BaseMapper { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/SupervisionUserReportFileService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/SupervisionUserReportFileService.java new file mode 100644 index 000000000..279325d1f --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/SupervisionUserReportFileService.java @@ -0,0 +1,8 @@ +package com.njcn.device.userledger.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.device.pq.pojo.po.SupervisionUserReportFile; + +public interface SupervisionUserReportFileService extends IService { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java index ae74c7fdf..de5cad891 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java @@ -2,6 +2,7 @@ package com.njcn.device.userledger.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.device.pq.pojo.param.TerminalCheckParam; import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.po.user.UserReportPO; @@ -90,4 +91,7 @@ public interface UserLedgerService extends IService { * @return */ UserReportVO getUserReportById(String id); + + + Boolean userCheckUpload(TerminalCheckParam terminalCheckParam); } diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/SupervisionUserReportFileServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/SupervisionUserReportFileServiceImpl.java new file mode 100644 index 000000000..e2a9fea1f --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/SupervisionUserReportFileServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.device.userledger.service.impl; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.device.userledger.mapper.SupervisionUserReportFileMapper; +import com.njcn.device.pq.pojo.po.SupervisionUserReportFile; +import com.njcn.device.userledger.service.SupervisionUserReportFileService; +import org.springframework.stereotype.Service; + + + +/** + * @Author: cdf + * @CreateTime: 2026-07-07 + * @Description: + */ +@Service +public class SupervisionUserReportFileServiceImpl extends ServiceImpl + implements SupervisionUserReportFileService { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java index 45f1e3f99..68805d14e 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java @@ -17,17 +17,19 @@ import com.njcn.bpm.enums.BpmTaskStatusEnum; import com.njcn.common.pojo.constant.PatternRegex; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.device.device.mapper.DeviceMapper; import com.njcn.device.line.mapper.LineDetailMapper; import com.njcn.device.line.mapper.LineMapper; +import com.njcn.device.pq.pojo.param.TerminalCheckParam; +import com.njcn.device.pq.pojo.po.Device; import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.pq.pojo.po.LineDetail; +import com.njcn.device.pq.pojo.po.SupervisionUserReportFile; import com.njcn.device.substation.mapper.SubstationMapper; +import com.njcn.device.userledger.mapper.SupervisionUserReportFileMapper; import com.njcn.device.userledger.mapper.UserReportNormalMapper; import com.njcn.device.userledger.mapper.UserReportPOMapper; -import com.njcn.device.userledger.service.UserLedgerService; -import com.njcn.device.userledger.service.UserReportProjectPOService; -import com.njcn.device.userledger.service.UserReportSensitivePOService; -import com.njcn.device.userledger.service.UserReportSubstationPOService; +import com.njcn.device.userledger.service.*; import com.njcn.supervision.enums.FlowStatusEnum; import com.njcn.supervision.enums.SupervisionResponseEnum; import com.njcn.supervision.enums.UserNatureEnum; @@ -52,6 +54,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.function.Function; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -75,6 +78,8 @@ public class UserLedgerServiceImpl extends ServiceImpl selectUserList(UserReportParam userReportParam) { @@ -186,7 +191,10 @@ public class UserLedgerServiceImpl extends ServiceImpl stationList = substationMapper.selectBatchIds(stationIds); stationList.forEach(line -> atationMap.put(line.getId(), line.getName())); } - } + + List ids = page.getRecords().stream().map(UserReportVO::getId).collect(Collectors.toList()); + List supervisionUserReportFiles = supervisionUserReportFileService.lambdaQuery().in(SupervisionUserReportFile::getId,ids).list(); + Map stringSupervisionUserReportFileMap = supervisionUserReportFiles.stream().collect(Collectors.toMap(SupervisionUserReportFile::getId, Function.identity())); page.getRecords().forEach(temp -> { temp.setStationId(atationMap.getOrDefault(temp.getStationId(),"/")); Integer needGovernance = 0; @@ -234,7 +242,16 @@ public class UserLedgerServiceImpl extends ServiceImpl().eq(SupervisionUserReportFile::getId,userReportPO.getId())); + if(Objects.nonNull(supervisionUserReportFile)){ + userReportVO.setCheckUrl(supervisionUserReportFile.getCheckUrl()); + userReportVO.setAssessUrl(supervisionUserReportFile.getAssessUrl()); + userReportVO.setOtherUrl(supervisionUserReportFile.getOtherUrl()); + } /* 根据用户性质获取自己特有的字段,此处需要特殊处理 1、每个附件需要返回文件名称以及可以预览的url @@ -333,6 +357,7 @@ public class UserLedgerServiceImpl extends ServiceImpl