From 61f34419e094f2363276d614a960b379cc456482 Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期二, 20 五月 2025 10:37:15 +0800 Subject: [PATCH] 业务代码合并 --- cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java | 71 +++++++++++++++++++++++------------ 1 files changed, 47 insertions(+), 24 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..e8da9e5 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(); } @@ -370,6 +373,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -439,7 +443,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitorDetailsRatify.getRatifyUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -458,7 +462,10 @@ } }); } - + // 娓呯┖鐘舵�� + qualityMonitorDetailsRatifyService.update(Wrappers.<QualityMonitorDetailsRatify>lambdaUpdate() + .eq(QualityMonitorDetailsRatify::getDetailsRatifyId, qualityMonitorDetailsRatify.getDetailsRatifyId()) + .set(QualityMonitorDetailsRatify::getIsFinish, null)); return true; } @@ -469,10 +476,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; } @@ -507,6 +520,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -553,7 +567,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitorDetailsEvaluate.getRatifyUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -587,7 +601,7 @@ info.setSenderId(userId); // 鎺ユ敹浜� info.setConsigneeId(qualityMonitorDetailsEvaluate.getImplementUserId()); - info.setJumpPath("a7-Ensure-results-validity"); + info.setJumpPath(MenuJumpPathConstants.QUALITY_MONITOR); informationNotificationService.addInformationNotification(info); // 鍙戦�佷紒涓氬井淇¢�氱煡 @@ -629,13 +643,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 +659,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 +693,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 +712,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() @@ -720,6 +734,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -739,9 +754,9 @@ if (qualityMonitorDetailsId == null) { throw new ErrorException("缂哄皯鐩戞帶璇︽儏id"); } - + LocalDateTime now = LocalDateTime.now(); Integer userId =SecurityUtils.getUserId().intValue(); - + String contentType = file.getContentType(); String urlString; String pathName; try { @@ -754,12 +769,18 @@ urlString = realpath + "/" + pathName; file.transferTo(new File(urlString)); - wordInsertUrl(new HashMap<String, Object>() {{ - put("writeUrl", UserUtils.getFinalUserSignatureUrl(userId)); - }}, wordUrl + "/" + pathName.replace("/word", wordUrl)); + // 鍒ゆ柇鏄惁鏄痯df + if (!contentType.contains("pdf")) { + 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 +796,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); } @@ -789,9 +811,10 @@ // 娣诲姞鎵瑰噯浜� QualityMonitorDetails details = qualityMonitorDetailsMapper.selectById(qualityMonitorDetails.getQualityMonitorDetailsId()); - if (StringUtils.isNotBlank(details.getFinishReportUrl())) { + if (StringUtils.isNotBlank(details.getFinishReportUrl()) && !details.getFinishReportUrl().contains(".pdf")) { 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