Pu Zhibing
2024-12-30 443dffce29daf6ed03b3c2137738925e315fb09f
guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PatrolTaskServiceImpl.java
@@ -35,7 +35,9 @@
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
@@ -192,7 +194,8 @@
            Integer vehicleId = taskDetailVehicle.getVehicleId();
            VehicleOnline vehicleOnline1 = null;
            for (VehicleOnline vehicleOnline : vehicleOnlines2018) {
               if(vehicleOnline.getVehicleId().equals(vehicleId) && vehicleOnline.getVehicleType().equals(vehicleType)){
               if(null != vehicleOnline.getVehicleId() && vehicleOnline.getVehicleId().equals(vehicleId) &&
                     null != vehicleOnline.getVehicleType() && vehicleOnline.getVehicleType().equals(vehicleType)){
                  vehicleOnline1 = vehicleOnline;
                  String vehicleGpsProtocol = vehicleOnline.getVehicleGpsProtocol();
                  vehicleOnline1.setVehicleGpsProtocol("808-guangzhou".equals(vehicleGpsProtocol) ? "1" : "2");
@@ -201,7 +204,8 @@
            }
            if(null == vehicleOnline1){
               for (VehicleOnline vehicleOnline : vehicleOnlines203) {
                  if(vehicleOnline.getVehicleId().equals(vehicleId) && vehicleOnline.getVehicleType().equals(vehicleType)){
                  if(null != vehicleOnline.getVehicleId() && vehicleOnline.getVehicleId().equals(vehicleId) &&
                        null != vehicleOnline.getVehicleType() && vehicleOnline.getVehicleType().equals(vehicleType)){
                     vehicleOnline1 = vehicleOnline;
                     vehicleOnline1.setVehicleGpsProtocol(vehicleOnline.getVehicleGpsProtocol());
                     break;
@@ -224,6 +228,7 @@
            String terminalId = vehicleOnline1.getTerminalId();
            for (TaskDetailVehiclesChannel taskDetailVehiclesChannel : taskDetailVehiclesChannels) {
               Integer videoChannel = taskDetailVehiclesChannel.getVideoChannel();
               if("1".equals(vehicleGpsProtocol)){
                  //2018 协议
                  String fileId = VideoGateway.cameraShot2018(terminalId, videoChannel, 0);
@@ -232,7 +237,7 @@
                     throw new RuntimeException();
                  }else{
                     //等待15秒
                     Thread.sleep(15000);
                     Thread.sleep(30000);
                     
                     String fileUrl = VideoGateway.getCameraShotByFileId2018(terminalId, fileId, 0);
                     if(null == fileUrl){
@@ -244,7 +249,7 @@
                           throw new Exception();
                        }else{
                           //等待15秒
                           Thread.sleep(15000);
                           Thread.sleep(30000);
                           
                           fileUrl = VideoGateway.getCameraShotByFileId2018(terminalId, fileId, 0);
                           if(null == fileUrl){
@@ -255,8 +260,11 @@
                              taskDetailVehiclesChannel.setSysCreateTime(LocalDateTime.now());
                              taskDetailVehiclesChannel.setArtificialStatus(1);
                              //开始调模型接口得出结果
                              boolean b = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                              Map<String, Object> map = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                              Boolean b = (Boolean) map.get("b");
                              String r = map.get("r").toString();
                              taskDetailVehiclesChannel.setSysStatus(b ? 2 : 3);
                              taskDetailVehiclesChannel.setResult(r);
                              taskDetailVehiclesChannelService.updateById(taskDetailVehiclesChannel);
                           }
                        }
@@ -265,8 +273,11 @@
                        taskDetailVehiclesChannel.setSysCreateTime(LocalDateTime.now());
                        taskDetailVehiclesChannel.setArtificialStatus(1);
                        //开始调模型接口得出结果
                        boolean b = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                        Map<String, Object> map = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                        Boolean b = (Boolean) map.get("b");
                        String r = map.get("r").toString();
                        taskDetailVehiclesChannel.setSysStatus(b ? 2 : 3);
                        taskDetailVehiclesChannel.setResult(r);
                        taskDetailVehiclesChannelService.updateById(taskDetailVehiclesChannel);
                     }
                  }
@@ -278,7 +289,7 @@
                     throw new Exception();
                  }else{
                     //等待15秒
                     Thread.sleep(15000);
                     Thread.sleep(30000);
                     
                     String fileUrl = VideoGateway.getCameraShotByFileId2023(fileId, 0);
                     if(null == fileUrl){
@@ -290,7 +301,7 @@
                           throw new Exception();
                        }else{
                           //等待15秒
                           Thread.sleep(15000);
                           Thread.sleep(30000);
                           
                           fileUrl = VideoGateway.getCameraShotByFileId2023(fileId, 0);
                           if(null == fileUrl){
@@ -301,8 +312,11 @@
                              taskDetailVehiclesChannel.setSysCreateTime(LocalDateTime.now());
                              taskDetailVehiclesChannel.setArtificialStatus(1);
                              //开始调模型接口得出结果
                              boolean b = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                              Map<String, Object> map = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                              Boolean b = (Boolean) map.get("b");
                              String r = map.get("r").toString();
                              taskDetailVehiclesChannel.setSysStatus(b ? 2 : 3);
                              taskDetailVehiclesChannel.setResult(r);
                              taskDetailVehiclesChannelService.updateById(taskDetailVehiclesChannel);
                           }
                        }
@@ -311,8 +325,11 @@
                        taskDetailVehiclesChannel.setSysCreateTime(LocalDateTime.now());
                        taskDetailVehiclesChannel.setArtificialStatus(1);
                        //开始调模型接口得出结果
                        boolean b = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                        Map<String, Object> map = ImageModelUtil.modelCheck(fileUrl, ImageModelEnum.getImageModelEnum(patrolTask.getImageModel()));
                        Boolean b = (Boolean) map.get("b");
                        String r = map.get("r").toString();
                        taskDetailVehiclesChannel.setSysStatus(b ? 2 : 3);
                        taskDetailVehiclesChannel.setResult(r);
                        taskDetailVehiclesChannelService.updateById(taskDetailVehiclesChannel);
                     }
                  }