diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java index 327594d..a441dd2 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java @@ -209,11 +209,8 @@ @RequestMapping("/cruiseRoute") @ResponseBody public Object cruiseRoute(String deviceIp, String command, Integer cruiseValue, String cruiseName) { - Long userId = getUserIdByIp(deviceIp); - if (ObjectUtil.isEmpty(userId) || userId < 0) { - return ResponseData.error("设备注册失败"); - } - if (ihcNetService.cruiseRoute(userId.intValue(), command, cruiseValue, cruiseName, deviceIp)) { + + if (ihcNetService.cruiseRoute( command, cruiseValue, cruiseName, deviceIp)) { return ResponseData.success(); } else { return ResponseData.error("设置失败"); diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java index 327594d..a441dd2 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java @@ -209,11 +209,8 @@ @RequestMapping("/cruiseRoute") @ResponseBody public Object cruiseRoute(String deviceIp, String command, Integer cruiseValue, String cruiseName) { - Long userId = getUserIdByIp(deviceIp); - if (ObjectUtil.isEmpty(userId) || userId < 0) { - return ResponseData.error("设备注册失败"); - } - if (ihcNetService.cruiseRoute(userId.intValue(), command, cruiseValue, cruiseName, deviceIp)) { + + if (ihcNetService.cruiseRoute( command, cruiseValue, cruiseName, deviceIp)) { return ResponseData.success(); } else { return ResponseData.error("设置失败"); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java index a40228b..d59b50d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java @@ -30,7 +30,7 @@ boolean cruise(Integer userId, String command,Integer lineNum,Integer interval); - boolean cruiseRoute(Integer userId, String command,Integer cruiseValue,String cruiseName,String deviceIp); + boolean cruiseRoute( String command,Integer cruiseValue,String cruiseName,String deviceIp); boolean getPosition(Long userId); diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java index 327594d..a441dd2 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java @@ -209,11 +209,8 @@ @RequestMapping("/cruiseRoute") @ResponseBody public Object cruiseRoute(String deviceIp, String command, Integer cruiseValue, String cruiseName) { - Long userId = getUserIdByIp(deviceIp); - if (ObjectUtil.isEmpty(userId) || userId < 0) { - return ResponseData.error("设备注册失败"); - } - if (ihcNetService.cruiseRoute(userId.intValue(), command, cruiseValue, cruiseName, deviceIp)) { + + if (ihcNetService.cruiseRoute( command, cruiseValue, cruiseName, deviceIp)) { return ResponseData.success(); } else { return ResponseData.error("设置失败"); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java index a40228b..d59b50d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java @@ -30,7 +30,7 @@ boolean cruise(Integer userId, String command,Integer lineNum,Integer interval); - boolean cruiseRoute(Integer userId, String command,Integer cruiseValue,String cruiseName,String deviceIp); + boolean cruiseRoute( String command,Integer cruiseValue,String cruiseName,String deviceIp); boolean getPosition(Long userId); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index 6d7361c..efd0514 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -643,7 +643,7 @@ @Override - public boolean cruiseRoute(Integer userId, String command, Integer cruiseValue, String cruiseName, String deviceIp) { + public boolean cruiseRoute(String command, Integer cruiseValue, String cruiseName, String deviceIp) { boolean res = false; switch (command) { @@ -654,7 +654,7 @@ res = cruiseEdit(cruiseName, deviceIp, cruiseValue); break; case "cruiseDelete": - res = cruiseDelete(userId, deviceIp, cruiseName, cruiseValue); + res = cruiseDelete( deviceIp, cruiseName, cruiseValue); break; default: break; @@ -668,8 +668,8 @@ MonitorBaseInfo baseInfo = monipoiInfoService.selectInfoByDeviceIp(deviceIp); Integer lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), cruiseName); if (ObjectUtil.isNotEmpty(lineNum)) { - throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); - }else { + throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); + } else { lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), ""); lineNum = ObjectUtil.isNotEmpty(lineNum) ? lineNum + 1 : 1; } @@ -682,30 +682,42 @@ } - private boolean cruiseDelete(Integer userId, String deviceIp, String cruiseName, Integer cruiseValue) { - + private boolean cruiseDelete(String deviceIp, String cruiseName, Integer cruiseValue) { + Long userId = getUserIdByIp(deviceIp); + if (ObjectUtil.isEmpty(userId) || userId < 0) { + throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); + } Long serialHandle = serialHandle(Long.valueOf(userId)); List busObserpoiInfoList = obserpoiInfoService.selectByMonitor(deviceIp, cruiseValue); - BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); - //先停止巡航 - if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { - sendStopCommand(serialHandle); - } else { - stopCruise(userId); + //先判断是否有设置过预置点,没有直接删除 + List nonull = busObserpoiInfoList.stream().filter(s -> s != null).filter(s -> ObjectUtil.isNotEmpty(s.getSerialNum())).collect(Collectors.toList()); + if (ObjectUtil.isEmpty(nonull)) { + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } + try { + BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); + //先停止巡航 + if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { + sendStopCommand(serialHandle); + } else { + stopCruise(userId.intValue()); + } - if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { - busObserpoiInfoList.forEach(busObserpoiInfo -> { - try { - //先删除解码板上的预置点 - Thread.sleep(300); - deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); - } catch (InterruptedException e) { - e.printStackTrace(); - } - }); + if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { + busObserpoiInfoList.forEach(busObserpoiInfo -> { + try { + //先删除解码板上的预置点 + Thread.sleep(300); + deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); + } catch (InterruptedException e) { + e.printStackTrace(); + } + }); + } + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); + } catch (Exception e) { + throw new BusinessException(BusinessExceptionEnum.CRUISE_DELETE_ERROR); } - return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } /** @@ -1976,27 +1988,27 @@ @Override public void globalSet(GlobalParamsDTO globalParamsDTO) { BusMonipoiInfo monipoiInfo = monipoiInfoService.getById(globalParamsDTO.getId()); - if(ObjectUtil.isNotEmpty(monipoiInfo)){ + if (ObjectUtil.isNotEmpty(monipoiInfo)) { Long userId = getUserIdByIp(monipoiInfo.getDeviceIp()); if (ObjectUtil.isEmpty(userId) || userId < 0) { throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); } Long serialHandle = serialHandle(Long.valueOf(userId)); //设置全局报警值 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())){ - this.setWholeAlarmValue( userId.intValue(), serialHandle, globalParamsDTO.getHigh()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())) { + this.setWholeAlarmValue(userId.intValue(), serialHandle, globalParamsDTO.getHigh()); } //设置全局速度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())){ - this.patrolSpeedSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())) { + this.patrolSpeedSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); } //设置全局停留时间 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())){ - this.patrolStopTimeSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())) { + this.patrolStopTimeSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); } //设置全局角度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())){ - this.riskPointAngleSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getAngle()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())) { + this.riskPointAngleSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getAngle()); } } } diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java index 327594d..a441dd2 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java @@ -209,11 +209,8 @@ @RequestMapping("/cruiseRoute") @ResponseBody public Object cruiseRoute(String deviceIp, String command, Integer cruiseValue, String cruiseName) { - Long userId = getUserIdByIp(deviceIp); - if (ObjectUtil.isEmpty(userId) || userId < 0) { - return ResponseData.error("设备注册失败"); - } - if (ihcNetService.cruiseRoute(userId.intValue(), command, cruiseValue, cruiseName, deviceIp)) { + + if (ihcNetService.cruiseRoute( command, cruiseValue, cruiseName, deviceIp)) { return ResponseData.success(); } else { return ResponseData.error("设置失败"); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java index a40228b..d59b50d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java @@ -30,7 +30,7 @@ boolean cruise(Integer userId, String command,Integer lineNum,Integer interval); - boolean cruiseRoute(Integer userId, String command,Integer cruiseValue,String cruiseName,String deviceIp); + boolean cruiseRoute( String command,Integer cruiseValue,String cruiseName,String deviceIp); boolean getPosition(Long userId); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index 6d7361c..efd0514 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -643,7 +643,7 @@ @Override - public boolean cruiseRoute(Integer userId, String command, Integer cruiseValue, String cruiseName, String deviceIp) { + public boolean cruiseRoute(String command, Integer cruiseValue, String cruiseName, String deviceIp) { boolean res = false; switch (command) { @@ -654,7 +654,7 @@ res = cruiseEdit(cruiseName, deviceIp, cruiseValue); break; case "cruiseDelete": - res = cruiseDelete(userId, deviceIp, cruiseName, cruiseValue); + res = cruiseDelete( deviceIp, cruiseName, cruiseValue); break; default: break; @@ -668,8 +668,8 @@ MonitorBaseInfo baseInfo = monipoiInfoService.selectInfoByDeviceIp(deviceIp); Integer lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), cruiseName); if (ObjectUtil.isNotEmpty(lineNum)) { - throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); - }else { + throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); + } else { lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), ""); lineNum = ObjectUtil.isNotEmpty(lineNum) ? lineNum + 1 : 1; } @@ -682,30 +682,42 @@ } - private boolean cruiseDelete(Integer userId, String deviceIp, String cruiseName, Integer cruiseValue) { - + private boolean cruiseDelete(String deviceIp, String cruiseName, Integer cruiseValue) { + Long userId = getUserIdByIp(deviceIp); + if (ObjectUtil.isEmpty(userId) || userId < 0) { + throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); + } Long serialHandle = serialHandle(Long.valueOf(userId)); List busObserpoiInfoList = obserpoiInfoService.selectByMonitor(deviceIp, cruiseValue); - BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); - //先停止巡航 - if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { - sendStopCommand(serialHandle); - } else { - stopCruise(userId); + //先判断是否有设置过预置点,没有直接删除 + List nonull = busObserpoiInfoList.stream().filter(s -> s != null).filter(s -> ObjectUtil.isNotEmpty(s.getSerialNum())).collect(Collectors.toList()); + if (ObjectUtil.isEmpty(nonull)) { + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } + try { + BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); + //先停止巡航 + if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { + sendStopCommand(serialHandle); + } else { + stopCruise(userId.intValue()); + } - if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { - busObserpoiInfoList.forEach(busObserpoiInfo -> { - try { - //先删除解码板上的预置点 - Thread.sleep(300); - deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); - } catch (InterruptedException e) { - e.printStackTrace(); - } - }); + if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { + busObserpoiInfoList.forEach(busObserpoiInfo -> { + try { + //先删除解码板上的预置点 + Thread.sleep(300); + deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); + } catch (InterruptedException e) { + e.printStackTrace(); + } + }); + } + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); + } catch (Exception e) { + throw new BusinessException(BusinessExceptionEnum.CRUISE_DELETE_ERROR); } - return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } /** @@ -1976,27 +1988,27 @@ @Override public void globalSet(GlobalParamsDTO globalParamsDTO) { BusMonipoiInfo monipoiInfo = monipoiInfoService.getById(globalParamsDTO.getId()); - if(ObjectUtil.isNotEmpty(monipoiInfo)){ + if (ObjectUtil.isNotEmpty(monipoiInfo)) { Long userId = getUserIdByIp(monipoiInfo.getDeviceIp()); if (ObjectUtil.isEmpty(userId) || userId < 0) { throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); } Long serialHandle = serialHandle(Long.valueOf(userId)); //设置全局报警值 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())){ - this.setWholeAlarmValue( userId.intValue(), serialHandle, globalParamsDTO.getHigh()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())) { + this.setWholeAlarmValue(userId.intValue(), serialHandle, globalParamsDTO.getHigh()); } //设置全局速度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())){ - this.patrolSpeedSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())) { + this.patrolSpeedSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); } //设置全局停留时间 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())){ - this.patrolStopTimeSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())) { + this.patrolStopTimeSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); } //设置全局角度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())){ - this.riskPointAngleSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getAngle()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())) { + this.riskPointAngleSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getAngle()); } } } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index 1ecbee5..1ae1fce 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.dto.monitor.BusMonipoiInfoResponse; import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util.List; @@ -28,4 +29,6 @@ MonitorBaseInfo selectInfoByDeviceIp(@Param("deviceIp") String deviceIp); List overviewMap(@Param("scope") DataScope dataScope); + + BusMonipoiInfoResponse monitorDetail(@Param("id") Long id); } diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java index 327594d..a441dd2 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java @@ -209,11 +209,8 @@ @RequestMapping("/cruiseRoute") @ResponseBody public Object cruiseRoute(String deviceIp, String command, Integer cruiseValue, String cruiseName) { - Long userId = getUserIdByIp(deviceIp); - if (ObjectUtil.isEmpty(userId) || userId < 0) { - return ResponseData.error("设备注册失败"); - } - if (ihcNetService.cruiseRoute(userId.intValue(), command, cruiseValue, cruiseName, deviceIp)) { + + if (ihcNetService.cruiseRoute( command, cruiseValue, cruiseName, deviceIp)) { return ResponseData.success(); } else { return ResponseData.error("设置失败"); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java index a40228b..d59b50d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java @@ -30,7 +30,7 @@ boolean cruise(Integer userId, String command,Integer lineNum,Integer interval); - boolean cruiseRoute(Integer userId, String command,Integer cruiseValue,String cruiseName,String deviceIp); + boolean cruiseRoute( String command,Integer cruiseValue,String cruiseName,String deviceIp); boolean getPosition(Long userId); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index 6d7361c..efd0514 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -643,7 +643,7 @@ @Override - public boolean cruiseRoute(Integer userId, String command, Integer cruiseValue, String cruiseName, String deviceIp) { + public boolean cruiseRoute(String command, Integer cruiseValue, String cruiseName, String deviceIp) { boolean res = false; switch (command) { @@ -654,7 +654,7 @@ res = cruiseEdit(cruiseName, deviceIp, cruiseValue); break; case "cruiseDelete": - res = cruiseDelete(userId, deviceIp, cruiseName, cruiseValue); + res = cruiseDelete( deviceIp, cruiseName, cruiseValue); break; default: break; @@ -668,8 +668,8 @@ MonitorBaseInfo baseInfo = monipoiInfoService.selectInfoByDeviceIp(deviceIp); Integer lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), cruiseName); if (ObjectUtil.isNotEmpty(lineNum)) { - throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); - }else { + throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); + } else { lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), ""); lineNum = ObjectUtil.isNotEmpty(lineNum) ? lineNum + 1 : 1; } @@ -682,30 +682,42 @@ } - private boolean cruiseDelete(Integer userId, String deviceIp, String cruiseName, Integer cruiseValue) { - + private boolean cruiseDelete(String deviceIp, String cruiseName, Integer cruiseValue) { + Long userId = getUserIdByIp(deviceIp); + if (ObjectUtil.isEmpty(userId) || userId < 0) { + throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); + } Long serialHandle = serialHandle(Long.valueOf(userId)); List busObserpoiInfoList = obserpoiInfoService.selectByMonitor(deviceIp, cruiseValue); - BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); - //先停止巡航 - if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { - sendStopCommand(serialHandle); - } else { - stopCruise(userId); + //先判断是否有设置过预置点,没有直接删除 + List nonull = busObserpoiInfoList.stream().filter(s -> s != null).filter(s -> ObjectUtil.isNotEmpty(s.getSerialNum())).collect(Collectors.toList()); + if (ObjectUtil.isEmpty(nonull)) { + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } + try { + BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); + //先停止巡航 + if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { + sendStopCommand(serialHandle); + } else { + stopCruise(userId.intValue()); + } - if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { - busObserpoiInfoList.forEach(busObserpoiInfo -> { - try { - //先删除解码板上的预置点 - Thread.sleep(300); - deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); - } catch (InterruptedException e) { - e.printStackTrace(); - } - }); + if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { + busObserpoiInfoList.forEach(busObserpoiInfo -> { + try { + //先删除解码板上的预置点 + Thread.sleep(300); + deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); + } catch (InterruptedException e) { + e.printStackTrace(); + } + }); + } + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); + } catch (Exception e) { + throw new BusinessException(BusinessExceptionEnum.CRUISE_DELETE_ERROR); } - return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } /** @@ -1976,27 +1988,27 @@ @Override public void globalSet(GlobalParamsDTO globalParamsDTO) { BusMonipoiInfo monipoiInfo = monipoiInfoService.getById(globalParamsDTO.getId()); - if(ObjectUtil.isNotEmpty(monipoiInfo)){ + if (ObjectUtil.isNotEmpty(monipoiInfo)) { Long userId = getUserIdByIp(monipoiInfo.getDeviceIp()); if (ObjectUtil.isEmpty(userId) || userId < 0) { throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); } Long serialHandle = serialHandle(Long.valueOf(userId)); //设置全局报警值 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())){ - this.setWholeAlarmValue( userId.intValue(), serialHandle, globalParamsDTO.getHigh()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())) { + this.setWholeAlarmValue(userId.intValue(), serialHandle, globalParamsDTO.getHigh()); } //设置全局速度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())){ - this.patrolSpeedSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())) { + this.patrolSpeedSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); } //设置全局停留时间 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())){ - this.patrolStopTimeSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())) { + this.patrolStopTimeSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); } //设置全局角度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())){ - this.riskPointAngleSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getAngle()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())) { + this.riskPointAngleSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getAngle()); } } } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index 1ecbee5..1ae1fce 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.dto.monitor.BusMonipoiInfoResponse; import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util.List; @@ -28,4 +29,6 @@ MonitorBaseInfo selectInfoByDeviceIp(@Param("deviceIp") String deviceIp); List overviewMap(@Param("scope") DataScope dataScope); + + BusMonipoiInfoResponse monitorDetail(@Param("id") Long id); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 94076bc..8a14363 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -34,17 +34,18 @@ - ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts + ID + AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts + + + diff --git a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 98d07b2..f5a1cfe 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -13,7 +13,8 @@ DEVICE_BOUND_FAILED(500, "设备绑定,场站删除失败"), DEVICE_REGISTER_FAILED(2500, "设备注册失败"), RUN_TASK_FAILED(2501, "此段时间有任务正在执行"), - CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"); + CRUISE_NAME_DUPLICATE(2502, "巡航路径名称重复"), + CRUISE_DELETE_ERROR(2503, "巡航路径删除过程中对设备操作异常"); private Integer code; private String message; diff --git a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java index 8a4e092..b8d9c07 100644 --- a/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java +++ b/casic-common/src/main/java/com/casic/missiles/enums/DictEnum.java @@ -13,7 +13,7 @@ //设备状态 String DEVICE_STATUS = "deviceStatus"; - //报警类型 + //设备类型 String DEVICE_TYPE = "deviceType"; //任务开始 diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java index 327594d..a441dd2 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/HCNetController.java @@ -209,11 +209,8 @@ @RequestMapping("/cruiseRoute") @ResponseBody public Object cruiseRoute(String deviceIp, String command, Integer cruiseValue, String cruiseName) { - Long userId = getUserIdByIp(deviceIp); - if (ObjectUtil.isEmpty(userId) || userId < 0) { - return ResponseData.error("设备注册失败"); - } - if (ihcNetService.cruiseRoute(userId.intValue(), command, cruiseValue, cruiseName, deviceIp)) { + + if (ihcNetService.cruiseRoute( command, cruiseValue, cruiseName, deviceIp)) { return ResponseData.success(); } else { return ResponseData.error("设置失败"); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java index a40228b..d59b50d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IHCNetService.java @@ -30,7 +30,7 @@ boolean cruise(Integer userId, String command,Integer lineNum,Integer interval); - boolean cruiseRoute(Integer userId, String command,Integer cruiseValue,String cruiseName,String deviceIp); + boolean cruiseRoute( String command,Integer cruiseValue,String cruiseName,String deviceIp); boolean getPosition(Long userId); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index 6d7361c..efd0514 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -643,7 +643,7 @@ @Override - public boolean cruiseRoute(Integer userId, String command, Integer cruiseValue, String cruiseName, String deviceIp) { + public boolean cruiseRoute(String command, Integer cruiseValue, String cruiseName, String deviceIp) { boolean res = false; switch (command) { @@ -654,7 +654,7 @@ res = cruiseEdit(cruiseName, deviceIp, cruiseValue); break; case "cruiseDelete": - res = cruiseDelete(userId, deviceIp, cruiseName, cruiseValue); + res = cruiseDelete( deviceIp, cruiseName, cruiseValue); break; default: break; @@ -668,8 +668,8 @@ MonitorBaseInfo baseInfo = monipoiInfoService.selectInfoByDeviceIp(deviceIp); Integer lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), cruiseName); if (ObjectUtil.isNotEmpty(lineNum)) { - throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); - }else { + throw new BusinessException(BusinessExceptionEnum.CRUISE_NAME_DUPLICATE); + } else { lineNum = obserpoiInfoService.selectByMonitorByCruiseName(baseInfo.getMonitorId(), ""); lineNum = ObjectUtil.isNotEmpty(lineNum) ? lineNum + 1 : 1; } @@ -682,30 +682,42 @@ } - private boolean cruiseDelete(Integer userId, String deviceIp, String cruiseName, Integer cruiseValue) { - + private boolean cruiseDelete(String deviceIp, String cruiseName, Integer cruiseValue) { + Long userId = getUserIdByIp(deviceIp); + if (ObjectUtil.isEmpty(userId) || userId < 0) { + throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); + } Long serialHandle = serialHandle(Long.valueOf(userId)); List busObserpoiInfoList = obserpoiInfoService.selectByMonitor(deviceIp, cruiseValue); - BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); - //先停止巡航 - if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { - sendStopCommand(serialHandle); - } else { - stopCruise(userId); + //先判断是否有设置过预置点,没有直接删除 + List nonull = busObserpoiInfoList.stream().filter(s -> s != null).filter(s -> ObjectUtil.isNotEmpty(s.getSerialNum())).collect(Collectors.toList()); + if (ObjectUtil.isEmpty(nonull)) { + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } + try { + BusMonipoiInfo busMonipoiInfo = monipoiInfoService.selectByDeviceIp(deviceIp); + //先停止巡航 + if (DeviceTypeEnum.XST_TYPE.getCode().equals(busMonipoiInfo.getDeviceType())) { + sendStopCommand(serialHandle); + } else { + stopCruise(userId.intValue()); + } - if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { - busObserpoiInfoList.forEach(busObserpoiInfo -> { - try { - //先删除解码板上的预置点 - Thread.sleep(300); - deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); - } catch (InterruptedException e) { - e.printStackTrace(); - } - }); + if (ObjectUtil.isNotEmpty(busObserpoiInfoList)) { + busObserpoiInfoList.forEach(busObserpoiInfo -> { + try { + //先删除解码板上的预置点 + Thread.sleep(300); + deletePreset(serialHandle, busObserpoiInfo.getSerialNum()); + } catch (InterruptedException e) { + e.printStackTrace(); + } + }); + } + return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); + } catch (Exception e) { + throw new BusinessException(BusinessExceptionEnum.CRUISE_DELETE_ERROR); } - return obserpoiInfoService.deleteCruise(deviceIp, cruiseName, cruiseValue); } /** @@ -1976,27 +1988,27 @@ @Override public void globalSet(GlobalParamsDTO globalParamsDTO) { BusMonipoiInfo monipoiInfo = monipoiInfoService.getById(globalParamsDTO.getId()); - if(ObjectUtil.isNotEmpty(monipoiInfo)){ + if (ObjectUtil.isNotEmpty(monipoiInfo)) { Long userId = getUserIdByIp(monipoiInfo.getDeviceIp()); if (ObjectUtil.isEmpty(userId) || userId < 0) { throw new BusinessException(BusinessExceptionEnum.DEVICE_REGISTER_FAILED); } Long serialHandle = serialHandle(Long.valueOf(userId)); //设置全局报警值 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())){ - this.setWholeAlarmValue( userId.intValue(), serialHandle, globalParamsDTO.getHigh()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getHigh())) { + this.setWholeAlarmValue(userId.intValue(), serialHandle, globalParamsDTO.getHigh()); } //设置全局速度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())){ - this.patrolSpeedSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getSpeed())) { + this.patrolSpeedSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getSpeed()); } //设置全局停留时间 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())){ - this.patrolStopTimeSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getStopTime())) { + this.patrolStopTimeSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getStopTime()); } //设置全局角度 - if(ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())){ - this.riskPointAngleSetWhole( userId.intValue(), serialHandle, globalParamsDTO.getAngle()); + if (ObjectUtil.isNotEmpty(globalParamsDTO.getAngle())) { + this.riskPointAngleSetWhole(userId.intValue(), serialHandle, globalParamsDTO.getAngle()); } } } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index 1ecbee5..1ae1fce 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -1,13 +1,14 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.system.dto.monitor.BusMonipoiInfoResponse; import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util.List; @@ -28,4 +29,6 @@ MonitorBaseInfo selectInfoByDeviceIp(@Param("deviceIp") String deviceIp); List overviewMap(@Param("scope") DataScope dataScope); + + BusMonipoiInfoResponse monitorDetail(@Param("id") Long id); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 94076bc..8a14363 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -34,17 +34,18 @@ - ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts + ID + AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts + + + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml index f64f967..fbd7cb0 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml @@ -47,7 +47,7 @@ SELECT bmi.id,monitor_name AS monitorName,bmi.DEVICE_IP as ip FROM bus_monipoi_info bmi - JOIN ( - SELECT id,DEPT_ID - FROM bus_station_info - WHERE valid=0 - )bsi ON bsi.id=station_id + JOIN ( + SELECT id,DEPT_ID + FROM bus_station_info + WHERE valid=0 + )bsi ON bsi.id=station_id where valid=0 and station_id =#{stationId} @@ -56,10 +57,10 @@ ,stationName FROM bus_monipoi_info JOIN ( - SELECT id as idd,DEPT_ID,STATION_NAME AS stationName - FROM bus_station_info - WHERE valid=0 - )bsi ON bsi.idd=station_id + SELECT id as idd,DEPT_ID,STATION_NAME AS stationName + FROM bus_station_info + WHERE valid=0 + )bsi ON bsi.idd=station_id where valid=0 and station_id =#{stationId} @@ -70,35 +71,79 @@ + + + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml index f64f967..fbd7cb0 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml @@ -47,7 +47,7 @@ SELECT bmi.id,monitor_name AS monitorName,bmi.DEVICE_IP as ip FROM bus_monipoi_info bmi - JOIN ( - SELECT id,DEPT_ID - FROM bus_station_info - WHERE valid=0 - )bsi ON bsi.id=station_id + JOIN ( + SELECT id,DEPT_ID + FROM bus_station_info + WHERE valid=0 + )bsi ON bsi.id=station_id where valid=0 and station_id =#{stationId} @@ -56,10 +57,10 @@ ,stationName FROM bus_monipoi_info JOIN ( - SELECT id as idd,DEPT_ID,STATION_NAME AS stationName - FROM bus_station_info - WHERE valid=0 - )bsi ON bsi.idd=station_id + SELECT id as idd,DEPT_ID,STATION_NAME AS stationName + FROM bus_station_info + WHERE valid=0 + )bsi ON bsi.idd=station_id where valid=0 and station_id =#{stationId} @@ -70,35 +71,79 @@ + + + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml index f64f967..fbd7cb0 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml @@ -47,7 +47,7 @@ SELECT bmi.id,monitor_name AS monitorName,bmi.DEVICE_IP as ip FROM bus_monipoi_info bmi - JOIN ( - SELECT id,DEPT_ID - FROM bus_station_info - WHERE valid=0 - )bsi ON bsi.id=station_id + JOIN ( + SELECT id,DEPT_ID + FROM bus_station_info + WHERE valid=0 + )bsi ON bsi.id=station_id where valid=0 and station_id =#{stationId} @@ -56,10 +57,10 @@ ,stationName FROM bus_monipoi_info JOIN ( - SELECT id as idd,DEPT_ID,STATION_NAME AS stationName - FROM bus_station_info - WHERE valid=0 - )bsi ON bsi.idd=station_id + SELECT id as idd,DEPT_ID,STATION_NAME AS stationName + FROM bus_station_info + WHERE valid=0 + )bsi ON bsi.idd=station_id where valid=0 and station_id =#{stationId} @@ -70,35 +71,79 @@ + + + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml index f64f967..fbd7cb0 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusObserpoiInfoMapper.xml @@ -47,7 +47,7 @@