From 809ab6be1d9c5c79ed401b51d223429fa9509ac3 Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期三, 16 四月 2025 11:13:53 +0800 Subject: [PATCH] 修改质量监控报告查询和前面 --- cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java | 57 ++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 38 insertions(+), 19 deletions(-) diff --git a/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java b/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java index 27638db..b8f2d71 100644 --- a/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java +++ b/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java @@ -14,16 +14,19 @@ import com.deepoove.poi.XWPFTemplate; import com.deepoove.poi.config.Configure; import com.deepoove.poi.data.Pictures; +import com.ruoyi.common.constant.MenuJumpPathConstants; import com.ruoyi.common.core.domain.entity.InformationNotification; import com.ruoyi.common.core.domain.entity.User; import com.ruoyi.common.utils.DateImageUtil; import com.ruoyi.common.utils.QueryWrappers; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.WxCpUtils; +import com.ruoyi.device.pojo.DeviceExamineRecord; import com.ruoyi.framework.exception.ErrorException; import com.ruoyi.inspect.util.HackLoopTableRenderPolicy; import com.ruoyi.inspect.util.UserUtils; import com.ruoyi.inspect.util.XWPFDocumentUtils; +import com.ruoyi.process.dto.QualityMonitorDetailsDto; import com.ruoyi.process.dto.QualityMonitorDetailsEvaluateDto; import com.ruoyi.process.dto.QualityMonitorDto; import com.ruoyi.process.excel.QualityMonitorDetailsUpload; @@ -128,7 +131,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(monitor.getExamineUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -215,7 +218,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitor.getRatifyUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -272,7 +275,7 @@ * @return */ @Override - public IPage<QualityMonitorDetails> pageQualityMonitorDetail(Page page, QualityMonitorDetails qualityMonitorDetails) { + public IPage<QualityMonitorDetailsDto> pageQualityMonitorDetail(Page page, QualityMonitorDetails qualityMonitorDetails) { if (qualityMonitorDetails.getQualityMonitorId() == null) { return new Page(); } @@ -439,7 +442,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitorDetailsRatify.getRatifyUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -458,7 +461,10 @@ } }); } - + // 娓呯┖鐘舵�� + qualityMonitorDetailsRatifyService.update(Wrappers.<QualityMonitorDetailsRatify>lambdaUpdate() + .eq(QualityMonitorDetailsRatify::getDetailsRatifyId, qualityMonitorDetailsRatify.getDetailsRatifyId()) + .set(QualityMonitorDetailsRatify::getIsFinish, null)); return true; } @@ -469,10 +475,16 @@ */ @Override public boolean addQualityMonitorRatifyOpinion(QualityMonitorDetailsRatify qualityMonitorDetailsRatify) { - qualityMonitorDetailsRatifyService.update(Wrappers.<QualityMonitorDetailsRatify>lambdaUpdate() + LambdaUpdateWrapper<QualityMonitorDetailsRatify> wrapper = Wrappers.<QualityMonitorDetailsRatify>lambdaUpdate() .eq(QualityMonitorDetailsRatify::getDetailsRatifyId, qualityMonitorDetailsRatify.getDetailsRatifyId()) .set(QualityMonitorDetailsRatify::getRatifyOpinion, qualityMonitorDetailsRatify.getRatifyOpinion()) - .set(QualityMonitorDetailsRatify::getIsFinish, 1)); + .set(QualityMonitorDetailsRatify::getIsFinish, qualityMonitorDetailsRatify.getIsFinish()); + // 涓�0娓呴櫎瀹℃牳浜� + if (qualityMonitorDetailsRatify.getIsFinish().equals(0)) { + wrapper.set(QualityMonitorDetailsRatify::getRatifyUserId, null); + } + + qualityMonitorDetailsRatifyService.update(wrapper); return true; } @@ -553,7 +565,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitorDetailsEvaluate.getRatifyUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -587,7 +599,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitorDetailsEvaluate.getImplementUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -629,13 +641,13 @@ /** * 鏂板鐩戞帶璇勪环闄勪欢琛� - * @param detailsEvaluateId + * @param qualityMonitorDetailsId * @param file * @return */ @Override - public boolean uploadEvaluateFile(Integer detailsEvaluateId, MultipartFile file) { - if (detailsEvaluateId == null) { + public boolean uploadEvaluateFile(Integer qualityMonitorDetailsId, MultipartFile file) { + if (qualityMonitorDetailsId == null) { throw new ErrorException("缂哄皯鐩戞帶璇︽儏id"); } @@ -645,7 +657,7 @@ String filename = file.getOriginalFilename(); String contentType = file.getContentType(); QualityMonitorDetailsEvaluateFile evaluateFile = new QualityMonitorDetailsEvaluateFile(); - evaluateFile.setDetailsEvaluateId(detailsEvaluateId); + evaluateFile.setDetailsEvaluateId(qualityMonitorDetailsId); evaluateFile.setFileName(filename); if (contentType != null && contentType.startsWith("image/")) { // 鏄浘鐗� @@ -679,9 +691,9 @@ * @return */ @Override - public List<QualityMonitorDetailsEvaluateFile> getEvaluateFileList(Integer detailsEvaluateId) { + public List<QualityMonitorDetailsEvaluateFile> getEvaluateFileList(Integer qualityMonitorDetailsId) { return qualityMonitorDetailsEvaluateFileMapper.selectList(Wrappers.<QualityMonitorDetailsEvaluateFile>lambdaQuery() - .eq(QualityMonitorDetailsEvaluateFile::getDetailsEvaluateId, detailsEvaluateId)); + .eq(QualityMonitorDetailsEvaluateFile::getDetailsEvaluateId, qualityMonitorDetailsId)); } @@ -698,7 +710,7 @@ BeanUtils.copyProperties(qualityMonitorDetailsEvaluate, qualityMonitorDetailsEvaluateDto); // 鏍煎紡鍖栨椂闂� DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - qualityMonitorDetailsEvaluateDto.setRatifyTimeStr(qualityMonitorDetailsEvaluate.getRatifyTime().format(dateTimeFormatter)); + qualityMonitorDetailsEvaluateDto.setRatifyTimeStr(qualityMonitorDetailsEvaluate.getRatifyTime() == null ? null : qualityMonitorDetailsEvaluate.getRatifyTime().format(dateTimeFormatter)); // 鑾峰彇璺緞 InputStream inputStream = this.getClass().getResourceAsStream("/static/quality-monitor-evaluate.docx"); Configure configure = Configure.builder() @@ -739,7 +751,9 @@ if (qualityMonitorDetailsId == null) { throw new ErrorException("缂哄皯鐩戞帶璇︽儏id"); } - + QualityMonitorDetails qualityMonitorDetails = qualityMonitorDetailsService.getOne(Wrappers.<QualityMonitorDetails>lambdaUpdate() + .eq(QualityMonitorDetails::getQualityMonitorDetailsId, qualityMonitorDetailsId)); + LocalDateTime now = LocalDateTime.now(); Integer userId =SecurityUtils.getUserId().intValue(); String urlString; @@ -756,10 +770,13 @@ wordInsertUrl(new HashMap<String, Object>() {{ put("writeUrl", UserUtils.getFinalUserSignatureUrl(userId)); + put("writeDateUrl", Pictures.ofStream(DateImageUtil.createDateImage(now)).create()); }}, wordUrl + "/" + pathName.replace("/word", wordUrl)); + qualityMonitorDetailsService.update(Wrappers.<QualityMonitorDetails>lambdaUpdate() .eq(QualityMonitorDetails::getQualityMonitorDetailsId, qualityMonitorDetailsId) - .set(QualityMonitorDetails::getFinishReportUrl, pathName)); + .set(QualityMonitorDetails::getFinishReportUrl, pathName) + .set(QualityMonitorDetails::getWriteTime, now)); return true; } catch (Exception e) { @@ -775,13 +792,14 @@ */ @Override public boolean ratifyFinishReport(QualityMonitorDetails qualityMonitorDetails) { + LocalDateTime now = LocalDateTime.now(); Integer userId =SecurityUtils.getUserId().intValue(); LambdaUpdateWrapper<QualityMonitorDetails> wrapper = Wrappers.<QualityMonitorDetails>lambdaUpdate() .eq(QualityMonitorDetails::getQualityMonitorDetailsId, qualityMonitorDetails.getQualityMonitorDetailsId()) .set(QualityMonitorDetails::getRatifyUserId, userId) .set(QualityMonitorDetails::getRatifyRemark, qualityMonitorDetails.getRatifyRemark()) .set(QualityMonitorDetails::getRatifyStatus, qualityMonitorDetails.getRatifyStatus()) - .set(QualityMonitorDetails::getRatifyTime, LocalDateTime.now()); + .set(QualityMonitorDetails::getRatifyTime, now); if (qualityMonitorDetails.getRatifyStatus().equals(0)) { wrapper.set(QualityMonitorDetails::getFinishReportUrl, null); } @@ -792,6 +810,7 @@ if (StringUtils.isNotBlank(details.getFinishReportUrl())) { wordInsertUrl(new HashMap<String, Object>() {{ put("ratifyUrl", UserUtils.getFinalUserSignatureUrl(userId)); + put("ratifyDateUrl", Pictures.ofStream(DateImageUtil.createDateImage(now)).create()); }}, wordUrl + "/" + details.getFinishReportUrl().replace("/word", wordUrl)); } return true; -- Gitblit v1.9.3