Browse Source

修复bug

Memory_LG 2 months ago
parent
commit
1ab72442c4

+ 17 - 3
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/service/impl/AlarmEventServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.dahuatech.icc.exception.ClientException;
 import com.dahuatech.icc.oauth.http.IccHttpHttpRequest;
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.SpringUtils;
 import com.ruoyi.common.core.utils.StringUtils;
@@ -11,6 +12,7 @@ import com.ruoyi.common.core.utils.uuid.IdUtils;
 import com.ruoyi.system.api.RemoteDeptService;
 import com.ruoyi.system.api.RemoteFileService;
 import com.ruoyi.system.api.domain.SysDept;
+import com.ruoyi.system.api.domain.SysFile;
 import com.sooka.sponest.event.centereventtdeptevent.domain.CentereventDeptEvent;
 import com.sooka.sponest.event.centereventtdeptevent.service.ICentereventDeptEventService;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.CentereventTEventcatalogue;
@@ -50,6 +52,7 @@ import org.springframework.http.MediaType;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.client.RestTemplate;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import java.util.*;
@@ -708,18 +711,29 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         alarmData.parallelStream().forEach(item -> {
             item.setId(IdUtils.simpleUUID());
             try {
-                Optional.ofNullable(NetworkImageToMultipartFile.downloadImageToMultipartFile(item.getPhotoPath()))
+                MultipartFile multipartFile = NetworkImageToMultipartFile.downloadImageToMultipartFile(item.getPhotoPath());
+                R<SysFile> upload = fileService.upload(multipartFile);
+                if(200 == upload.getCode()){
+                    item.setLocalPath(upload.getData().getUrl());
+                    logger.info("上传图片到文件服务器获取路径为====>{}",upload);
+                }else{
+                    logger.info("上传图片到文件服务器的结果为====>{}{}",upload.getCode(), upload.getMsg());
+                }
+
+                /*Optional.ofNullable(NetworkImageToMultipartFile.downloadImageToMultipartFile(item.getPhotoPath()))
                         .map(multipartFile -> fileService.upload(multipartFile).getData())
-                        .ifPresent(data -> item.setLocalPath(data.getUrl()));
+                        .ifPresent(data -> );*/
+
             } catch (Exception e) {
                 logger.error("Failed to process image for item {}: {}", item.getId(), e.getMessage());
             }
         });
         // 通过无人机id, 获取无人机信息和绑定的指挥中心
         alarmData.forEach(alarm->{
+
             Map<String, Object> data = (Map<String, Object>) SpringUtils.getBean(RemoteMonitorService.class).selectUavByUavId(alarm.getCopterId()).get("data");
             String uavId = MapUtils.getString(data, "uavId");
-            String eventName = MapUtils.getString(data, "uavName")+"上报火情事件事件";
+            String eventName = MapUtils.getString(data, "uavName")+"上报火情事件";
             String eventDescription = "基站:"+MapUtils.getString(data, "baseStationName")+",无人机:"+MapUtils.getString(data, "uavName")+",经度:"+alarm.getLongitude()+",纬度:"+alarm.getLatitude()+",海拔:"+alarm.getAltitude();
 
             //创建事件主体, 写入事件表.

+ 6 - 0
src/main/java/com/sooka/sponest/event/utils/NetworkImageToMultipartFile.java

@@ -1,5 +1,8 @@
 package com.sooka.sponest.event.utils;
 
+import com.sooka.sponest.event.centereventteventcatalogue.service.impl.AlarmEventServiceImpl;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -14,6 +17,8 @@ import java.security.cert.X509Certificate;
 
 public class NetworkImageToMultipartFile {
 
+    static Logger logger = LoggerFactory.getLogger(NetworkImageToMultipartFile.class);
+
     /**
      * 从网络路径下载图片并转换为 MultipartFile
      * @param imageUrl 图片的网络路径
@@ -44,6 +49,7 @@ public class NetworkImageToMultipartFile {
                         "image/jpeg", // 文件内容类型
                         inputStream // 输入流
                 );
+                logger.info("将网络图片转换为MultipartFile--->{}: " + multipartFile.getOriginalFilename());
 
                 // 关闭输入流
                 inputStream.close();