|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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.pipIrrGlobal.daoSe.SeIssueReportMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoSe.SeReportReplyMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.dyFile.FileOperate; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.dyFile.FileRestVo; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoSe.SeIssueReport; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoSe.SeReportReply; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSe.VoIssueReport; | 
|---|
|  |  |  | 
|---|
|  |  |  | 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.*; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SeReportReplyMapper seReportReplyMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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 | 
|---|
|  |  |  | 
|---|
|  |  |  | 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); | 
|---|