소스 검색

轨道逻辑修改

gao.qiang 1 년 전
부모
커밋
43fa783097

+ 4 - 0
business-service/src/main/java/com/ozs/entity/vo/RespHeartbeatVo.java

@@ -34,4 +34,8 @@ public class RespHeartbeatVo implements Serializable {
      * 当前股道
      */
     private String routeTrack;
+    /**
+     * 车站编码
+     */
+    private String stationCode;
 }

+ 72 - 22
vehicle-sdk/src/main/java/com/ozs/controller/upload/GeoHazardMonitorTokenController.java

@@ -794,13 +794,26 @@ public class GeoHazardMonitorTokenController {
                             //赋值--股道
                             List<BaseRouteMassage> baseRouteMassageList = baseRouteMassageService.list();
                             if (!ObjectUtils.isEmpty(baseRouteMassageList)) {
-                                if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
-                                    respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
-                                }else {
-                                    respHeartbeatVo.setRouteTrack("");
+                                if (heartbeatVo.getLineDir()==1) {
+                                    if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 1500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
+                                        respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
+                                        respHeartbeatVo.setStationCode(baseRouteMassageList.get(0).getStationCode());
+                                    } else {
+                                        respHeartbeatVo.setRouteTrack("");
+                                        respHeartbeatVo.setStationCode("");
+                                    }
+                                }else if (heartbeatVo.getLineDir()==2){
+                                    if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 1500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 0) {
+                                        respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
+                                        respHeartbeatVo.setStationCode(baseRouteMassageList.get(0).getStationCode());
+                                    } else {
+                                        respHeartbeatVo.setRouteTrack("");
+                                        respHeartbeatVo.setStationCode("");
+                                    }
                                 }
                             }else {
                                 respHeartbeatVo.setRouteTrack("");
+                                respHeartbeatVo.setStationCode("");
                             }
                             jsonObject.put("resultCode", 0);
                             jsonObject.put("message", "报警里程无可用相机");
@@ -1057,13 +1070,26 @@ public class GeoHazardMonitorTokenController {
                             //赋值--股道
                             List<BaseRouteMassage> baseRouteMassageList = baseRouteMassageService.list();
                             if (!ObjectUtils.isEmpty(baseRouteMassageList)) {
-                                if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
-                                    respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
-                                }else {
-                                    respHeartbeatVo.setRouteTrack("");
+                                if (heartbeatVo.getLineDir()==1) {
+                                    if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 1500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
+                                        respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
+                                        respHeartbeatVo.setStationCode(baseRouteMassageList.get(0).getStationCode());
+                                    } else {
+                                        respHeartbeatVo.setRouteTrack("");
+                                        respHeartbeatVo.setStationCode("");
+                                    }
+                                }else if (heartbeatVo.getLineDir()==2){
+                                    if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 1500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 0) {
+                                        respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
+                                        respHeartbeatVo.setStationCode(baseRouteMassageList.get(0).getStationCode());
+                                    } else {
+                                        respHeartbeatVo.setRouteTrack("");
+                                        respHeartbeatVo.setStationCode("");
+                                    }
                                 }
                             }else {
                                 respHeartbeatVo.setRouteTrack("");
+                                respHeartbeatVo.setStationCode("");
                             }
                             jsonObject.put("resultCode", 0);
                             jsonObject.put("message", "前方没有摄像机");
@@ -1221,18 +1247,31 @@ public class GeoHazardMonitorTokenController {
                     List<BaseCameraManagement> list1 = baseCameraManagementService.list(base);
                     if (list1.size() <= 0) {
                         //赋值--股道
-                        List<BaseRouteMassage> baseRouteMassageList = baseRouteMassageService.list();
-                        if (!ObjectUtils.isEmpty(baseRouteMassageList)) {
-                            if (baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 500 && baseRouteMassageList.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
-                                respHeartbeatVo.setRouteTrack(baseRouteMassageList.get(0).getRouteStationTrack().toString());
-                            }else {
-                                respHeartbeatVo.setRouteTrack("");
+                        List<BaseRouteMassage> list = baseRouteMassageService.list();
+                        if (!ObjectUtils.isEmpty(list)) {
+                            if (heartbeatVo.getLineDir()==1) {
+                                if (list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 1500 && list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
+                                    respHeartbeatVo.setRouteTrack(list.get(0).getRouteStationTrack().toString());
+                                    respHeartbeatVo.setStationCode(list.get(0).getStationCode());
+                                } else {
+                                    respHeartbeatVo.setRouteTrack("");
+                                    respHeartbeatVo.setStationCode("");
+                                }
+                            }else if (heartbeatVo.getLineDir()==2){
+                                if (list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 1500 && list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 0) {
+                                    respHeartbeatVo.setRouteTrack(list.get(0).getRouteStationTrack().toString());
+                                    respHeartbeatVo.setStationCode(list.get(0).getStationCode());
+                                } else {
+                                    respHeartbeatVo.setRouteTrack("");
+                                    respHeartbeatVo.setStationCode("");
+                                }
                             }
                         }else {
                             respHeartbeatVo.setRouteTrack("");
+                            respHeartbeatVo.setStationCode("");
                         }
                         jsonObject.put("resultCode", 0);
-                        jsonObject.put("message", "没有监控里程的相机");
+                        jsonObject.put("message", "前方没有摄像机");
                         jsonObject.put("data", respHeartbeatVo);
                         return SM4Utils.encryptData_ECB(JSONObject.toJSONString(jsonObject), key);
                     }
@@ -1383,13 +1422,26 @@ public class GeoHazardMonitorTokenController {
                     //赋值--股道
                     List<BaseRouteMassage> list = baseRouteMassageService.list();
                     if (!ObjectUtils.isEmpty(list)) {
-                        if (list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 500 && list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
-                            respHeartbeatVo.setRouteTrack(list.get(0).getRouteStationTrack().toString());
-                        }else {
-                            respHeartbeatVo.setRouteTrack("");
+                        if (heartbeatVo.getLineDir()==1) {
+                            if (list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 1500 && list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 0) {
+                                respHeartbeatVo.setRouteTrack(list.get(0).getRouteStationTrack().toString());
+                                respHeartbeatVo.setStationCode(list.get(0).getStationCode());
+                            } else {
+                                respHeartbeatVo.setRouteTrack("");
+                                respHeartbeatVo.setStationCode("");
+                            }
+                        }else if (heartbeatVo.getLineDir()==2){
+                            if (list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() >= 1500 && list.get(0).getMileagePosition() - heartbeatVo.getCurrentMile() <= 0) {
+                                respHeartbeatVo.setRouteTrack(list.get(0).getRouteStationTrack().toString());
+                                respHeartbeatVo.setStationCode(list.get(0).getStationCode());
+                            } else {
+                                respHeartbeatVo.setRouteTrack("");
+                                respHeartbeatVo.setStationCode("");
+                            } 
                         }
                     }else {
-                        respHeartbeatVo.setRouteTrack("");  
+                        respHeartbeatVo.setRouteTrack("");
+                        respHeartbeatVo.setStationCode("");
                     }
                     respHeartbeatVo.setIsAlarm(2);
                     respHeartbeatVo.setCameraCode(list1.get(0).getCameraCode());
@@ -2091,8 +2143,6 @@ public class GeoHazardMonitorTokenController {
             }
         }
         baseRouteMassage.setCreateTime(new Date());
-        baseRouteMassage.setStationName("博野站");
-        baseRouteMassage.setMileagePosition(371685);
         baseRouteMassageService.save(baseRouteMassage);
         return AjaxResult.success();
     }