From 50164d95bfe34f532e3f2513a53f62c0864fe1a2 Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期三, 07 五月 2025 18:11:31 +0800 Subject: [PATCH] 关闭流 --- cnas-process/src/main/java/com/ruoyi/process/service/impl/QualityMonitorServiceImpl.java | 29 ++++++++++++++++++++--------- 1 files changed, 20 insertions(+), 9 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 ce42d05..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 @@ -373,6 +373,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -519,6 +520,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -710,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() @@ -732,6 +734,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -751,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 { @@ -766,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) { @@ -787,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); } @@ -801,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