From 6dacac48ebb596797dfd8e5bf3a803ed0b583643 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期三, 05 二月 2025 17:11:31 +0800
Subject: [PATCH] 取水口综合信息-统计数据逻辑处理模块完善
---
pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 58 insertions(+), 0 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java
index 229b9a1..edd4f55 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueSv.java
@@ -3,12 +3,15 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
+import com.dy.common.util.NumUtil;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.common.webUtil.ResultCodeMsg;
import com.dy.pipIrrApp.issue.dto.DtoDeleteParam;
import com.dy.pipIrrApp.issue.qo.QoIssueReport;
import com.dy.pipIrrGlobal.daoOp.OpeIssueReportMapper;
import com.dy.pipIrrGlobal.daoOp.OpeReportReplyMapper;
+import com.dy.pipIrrGlobal.dyFile.FileOperate;
+import com.dy.pipIrrGlobal.dyFile.FileRestVo;
import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport;
import com.dy.pipIrrGlobal.pojoOp.OpeReportReply;
import com.dy.pipIrrGlobal.voOp.VoIssueReport;
@@ -18,6 +21,7 @@
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.*;
@@ -38,6 +42,33 @@
@Autowired
private OpeReportReplyMapper opeReportReplyMapper;
+ @Value("${dy.webFile.fmUrl}")
+ private String fmUrl ;
+
+ @Autowired
+ private FileOperate fileOp ;
+
+ private void dealWebFilePath(JSONArray jsonArray, boolean hasZipFile, boolean isVideo){
+ for (Object obj : jsonArray){
+ if(obj instanceof JSONObject){
+ JSONObject jsonObject = (JSONObject) obj;
+ Object hashObj = jsonObject.get("hash") ;
+ if(hashObj != null && NumUtil.isIntNumber(hashObj.toString())){
+ FileRestVo fvo = fileOp.parseHashcode(fmUrl, Integer.valueOf(hashObj.toString()));
+ if(fvo != null && fvo.fileWebUrl != null){
+ jsonObject.put("webPath", fvo.fileWebUrl + jsonObject.get("filePath"));
+ if(hasZipFile){
+ if(!isVideo){
+ jsonObject.put("webPathZip", fileOp.getFileZipPath(fvo.fileWebUrl + jsonObject.get("filePath")));
+ }else{
+ jsonObject.put("webPathZip", fileOp.getFileZipPath(fvo.fileWebUrl + jsonObject.get("filePath"), "jpg"));
+ }
+ }
+ }
+ }
+ }
+ }
+ }
/**
* 娣诲姞宸℃鍛橀棶棰樹笂鎶�
* @param po
@@ -94,6 +125,9 @@
JSONArray images_array = Optional.ofNullable(JSON.parseArray(report_temp.getImages())).orElse(new JSONArray());
JSONArray audios_array = Optional.ofNullable(JSON.parseArray(report_temp.getAudios())).orElse(new JSONArray());
JSONArray videos_array = Optional.ofNullable(JSON.parseArray(report_temp.getVideos())).orElse(new JSONArray());
+ this.dealWebFilePath(images_array, true, false) ;
+ this.dealWebFilePath(audios_array, false, false) ;
+ this.dealWebFilePath(videos_array, true, true) ;
report.setImages(images_array);
report.setAudios(audios_array);
report.setVideos(videos_array);
@@ -106,6 +140,30 @@
}
/**
+ * 鏍规嵁闂涓婃姤璁板綍涓婚敭鑾峰彇鑾峰彇宸℃鍛橀棶棰樹笂鎶ヨ褰曡鍥惧璞�
+ * @param issueReportId
+ * @return
+ */
+ public VoIssueReport getIssueReportById(Long issueReportId) {
+ VoIssueReport_temp issueReport = opeIssueReportMapper.getIssueReportById(issueReportId);
+
+ VoIssueReport report = new VoIssueReport();
+ BeanUtils.copyProperties(issueReport, report);
+
+ JSONArray images_array = Optional.ofNullable(JSON.parseArray(issueReport.getImages())).orElse(new JSONArray());
+ JSONArray audios_array = Optional.ofNullable(JSON.parseArray(issueReport.getAudios())).orElse(new JSONArray());
+ JSONArray videos_array = Optional.ofNullable(JSON.parseArray(issueReport.getVideos())).orElse(new JSONArray());
+ this.dealWebFilePath(images_array, true, false) ;
+ this.dealWebFilePath(audios_array, false, false) ;
+ this.dealWebFilePath(videos_array, true, true) ;
+
+ report.setImages(images_array);
+ report.setAudios(audios_array);
+ report.setVideos(videos_array);
+ return report;
+ }
+
+ /**
* 閫昏緫鍒犻櫎宸℃鍛橀棶棰樹笂鎶ワ紝鍒犻櫎鍓嶅厛鍒ゆ柇瑕佸垹闄ょ殑涓婃姤鏄惁瀛樺湪
* @param po
* @return
--
Gitblit v1.8.0