ソースを参照

车载心跳监测接口定义修改

gao.qiang 2 週間 前
コミット
39b493a8a2

+ 4 - 2
business-service/src/main/java/com/ozs/utils/CameraUtil.java

@@ -32,6 +32,7 @@ import com.ozs.system.mapper.SysDictDataMapper;
 import com.ozs.system.service.ISysDictTypeService;
 import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
+import okhttp3.Response;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
@@ -320,8 +321,9 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
         String result = null;
         String url = bakUrl + "/api/gb28181/invite?id=" + cameraCode + "&channel=" + channel;
         try {
-            result = HttpClientUtil.get(url);
-            log.info("result:{}", result);
+            Response response = HttpClientUtil.get(url);
+            log.info("result:{}", String.valueOf(response.code()));
+            return String.valueOf(response.code());
         } catch (Exception e) {
             log.info(e.getMessage());
             e.printStackTrace();

+ 24 - 25
vehicle-sdk/src/main/java/com/ozs/controller/upload/GeoHazardMonitorTokenController.java

@@ -239,7 +239,7 @@ public class GeoHazardMonitorTokenController {
      */
     @PostMapping("/api/alarm")
     @Transactional(rollbackFor = Exception.class)
-    public  synchronized String alarm(@RequestBody ParameterVo parameterVo, HttpServletRequest request) throws Exception {
+    public synchronized String alarm(@RequestBody ParameterVo parameterVo, HttpServletRequest request) throws Exception {
         String token = apiTokenUtils.getGeoHazardMonitorToken(request);
         log.info("token:{}", token);
         log.info("parameter:{}", parameterVo);
@@ -880,7 +880,7 @@ public class GeoHazardMonitorTokenController {
                         }
                         respHeartbeatVo.setPreAlarmList(responseList);
                     } else {
-                        BaseCameraManagementReq baseCameraManagementReq=new BaseCameraManagementReq();
+                        BaseCameraManagementReq baseCameraManagementReq = new BaseCameraManagementReq();
                         //没有报警信息的时候
                         if (heartbeatVo.getLineDir() == 1) {
                             distance = heartbeatVo.getVisualDistance() + heartbeatVo.getCurrentMile();
@@ -1062,10 +1062,10 @@ public class GeoHazardMonitorTokenController {
                 } else {
                     //没有报警信息的时候
                     LambdaQueryWrapper<BaseCameraManagement> base = new LambdaQueryWrapper<>();
-                    BaseCameraManagementReq baseCameraManagementReq=new BaseCameraManagementReq();
+                    BaseCameraManagementReq baseCameraManagementReq = new BaseCameraManagementReq();
                     if (heartbeatVo.getLineDir() == 1) {
                         distance = heartbeatVo.getVisualDistance() + heartbeatVo.getCurrentMile();
-                        baseCameraManagementReq.setInstallMile(heartbeatVo.getCurrentMile() +10000);
+                        baseCameraManagementReq.setInstallMile(heartbeatVo.getCurrentMile() + 10000);
                     }
                     if (heartbeatVo.getLineDir() == 2) {
                         distance = heartbeatVo.getCurrentMile() - heartbeatVo.getVisualDistance();
@@ -1729,32 +1729,31 @@ public class GeoHazardMonitorTokenController {
             terminal.eq(BaseTerminal::getTerminalCode, baseTerminalLog.getTerminalCode());
             boolean update = baseTerminalService.update(baseTerminal1, terminal);
             if (baseTerminalLogService.save(baseTerminalLog) && update) {
-                if (!ObjectUtils.isEmpty(baseTerminalLog.getTrainNum()) && !ObjectUtils.isEmpty(baseTerminalLog.getFrontTrainNum())) {
-                    VehiclePosition vehiclePosition = vehiclePositionService.getOne(new LambdaQueryWrapper<VehiclePosition>().eq(VehiclePosition::getVehicleCode, baseTerminalLog.getTrainNum()).orderByDesc(VehiclePosition::getCreateTime).last("limit 1"));
-                    // 获取当前时间的前5分钟
-                    Date fiveMinutesAgo = Date.from(Instant.now().minus(5, ChronoUnit.MINUTES));
-                    log.info("fiveMinutesAgo:{}", fiveMinutesAgo);
-                    VehiclePosition positionServiceOne = vehiclePositionService.getOne(new LambdaQueryWrapper<VehiclePosition>()
-                            .eq(VehiclePosition::getVehicleCode, baseTerminalLog.getFrontTrainNum())
-                            .eq(VehiclePosition::getLineDir, vehiclePosition.getLineDir())
-                            .ge(VehiclePosition::getCreateTime, fiveMinutesAgo) // 添加条件:createTime大于当前时间前5分钟
-                            .orderByDesc(VehiclePosition::getCreateTime).last("limit 1"));
-                    Map<String, Object> map = new HashMap<>();
-                    if (!ObjectUtils.isEmpty(positionServiceOne) && !ObjectUtils.isEmpty(vehiclePosition)) {
-                        if ((vehiclePosition.getLineDir() == 1 && positionServiceOne.getTravelMile() >= vehiclePosition.getTravelMile()) ||
-                                (vehiclePosition.getLineDir() == 2 && positionServiceOne.getTravelMile() <= vehiclePosition.getTravelMile())) {
-                            int dif = vehiclePosition.getTravelMile() - positionServiceOne.getTravelMile();
-                            map.put("frontVehicleDistance", Math.abs(dif));
-                        } else {
-                            map.put("frontVehicleDistance", "_");
-                        }
+                VehiclePosition vehiclePosition = vehiclePositionService.getOne(new LambdaQueryWrapper<VehiclePosition>().eq(VehiclePosition::getVehicleCode, baseTerminalLog.getTrainNum()).orderByDesc(VehiclePosition::getCreateTime).last("limit 1"));
+                // 获取当前时间的前5分钟
+                List<SysDictData> frontValue = dictTypeService.selectDictDataByType("distance_time");
+                Date fiveMinutesAgo = Date.from(Instant.now().minus(Long.valueOf(frontValue.get(0).getDictValue()), ChronoUnit.MINUTES));
+                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                String formattedDate = sdf.format(fiveMinutesAgo);
+                log.info("fiveMinutesAgo:{}", fiveMinutesAgo);
+                VehiclePosition positionServiceOne = vehiclePositionService.getOne(new LambdaQueryWrapper<VehiclePosition>()
+                        .eq(VehiclePosition::getVehicleCode, baseTerminalLog.getFrontTrainNum())
+                        .eq(VehiclePosition::getLineDir, 1)
+                        .ge(VehiclePosition::getCreateTime, formattedDate) // 添加条件:createTime大于当前时间前5分钟
+                        .orderByDesc(VehiclePosition::getCreateTime).last("limit 1"));
+                Map<String, Object> map = new HashMap<>();
+                if (!ObjectUtils.isEmpty(positionServiceOne) && !ObjectUtils.isEmpty(vehiclePosition)) {
+                    if ((vehiclePosition.getLineDir() == 1 && positionServiceOne.getTravelMile() >= vehiclePosition.getTravelMile()) ||
+                            (vehiclePosition.getLineDir() == 2 && positionServiceOne.getTravelMile() <= vehiclePosition.getTravelMile())) {
+                        int dif = vehiclePosition.getTravelMile() - positionServiceOne.getTravelMile();
+                        map.put("frontVehicleDistance", Math.abs(dif));
                     } else {
                         map.put("frontVehicleDistance", "_");
                     }
-                    AjaxResults1 = new AjaxResults(1, "ok", map);
                 } else {
-                    AjaxResults1 = new AjaxResults(1, "ok");
+                    map.put("frontVehicleDistance", "_");
                 }
+                AjaxResults1 = new AjaxResults(1, "ok", map);
                 return SM4Utils.encryptData_ECB(JSONObject.toJSONString(AjaxResults1), key);
             } else {
                 AjaxResults1 = new AjaxResults(0, "新增失败");