diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/consumer/CleanLiftAuthRocketConsumer.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/consumer/CleanLiftAuthRocketConsumer.java index b2e9323a..914636a0 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/consumer/CleanLiftAuthRocketConsumer.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/consumer/CleanLiftAuthRocketConsumer.java @@ -47,8 +47,12 @@ public class CleanLiftAuthRocketConsumer implements RocketMQListener List eleRef = groupRef.stream().filter(o -> Objects.equals(o.getElevatorId(), deviceId)).toList(); for (SisElevatorFloorRefVo ref : eleRef){ - if (ref.getOutChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)){ - HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getOutChannel().intValue(), 3); + if (ref.getUpChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)){ + HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getUpChannel().intValue(), 3); + } + + if (ref.getDownChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)){ + HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getDownChannel().intValue(), 3); } if (ref.getInChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)){ diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorChannelRef.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorChannelRef.java index 925f4bf9..c66d023a 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorChannelRef.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorChannelRef.java @@ -38,14 +38,19 @@ public class SisElevatorFloorChannelRef extends TenantEntity { private Long elevatorId; /** - * 内部通道号 + * 楼层通道号 */ private Long inChannel; /** - * 外部通道号 + * 上键通道号 */ - private Long outChannel; + private Long upChannel; + + /** + * 下键通道号 + */ + private Long downChannel; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorRef.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorRef.java index 3d5d4266..5405f5ad 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorRef.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/SisElevatorFloorRef.java @@ -43,14 +43,19 @@ public class SisElevatorFloorRef extends TenantEntity { private Long authGroupId; /** - * 内部通道号 + * 楼层通道号 */ private Long inChannel; /** - * 外部通道号 + * 上键通道号 */ - private Long outChannel; + private Long upChannel; + + /** + * 下键通道号 + */ + private Long downChannel; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorChannelRefBo.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorChannelRefBo.java index 4ce2864d..b9cb019e 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorChannelRefBo.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorChannelRefBo.java @@ -39,14 +39,19 @@ public class SisElevatorFloorChannelRefBo extends BaseEntity { private Long elevatorId; /** - * 内部通道号 + * 楼层通道号 */ private Long inChannel; /** - * 外部通道号 + * 上键通道号 */ - private Long outChannel; + private Long upChannel; + + /** + * 下键通道号 + */ + private Long downChannel; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorRefBo.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorRefBo.java index 08352d42..3a1f6739 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorRefBo.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorFloorRefBo.java @@ -46,7 +46,19 @@ public class SisElevatorFloorRefBo extends BaseEntity { @NotNull(message = "授权组id不能为空", groups = { AddGroup.class, EditGroup.class }) private Long authGroupId; + /** + * 楼层通道号 + */ + private Long inChannel; + /** + * 上键通道号 + */ + private Long upChannel; + /** + * 下键通道号 + */ + private Long downChannel; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorInfoBo.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorInfoBo.java index a81c6f0a..f6d4d4d7 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorInfoBo.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/bo/SisElevatorInfoBo.java @@ -163,7 +163,8 @@ public class SisElevatorInfoBo extends BaseEntity { public static class ChannelInfo { private Long floorId; private Long inChannel; - private Long outChannel; + private Long upChannel; + private Long downChannel; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorChannelRefVo.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorChannelRefVo.java index 3aedcabf..68a9101a 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorChannelRefVo.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorChannelRefVo.java @@ -47,16 +47,23 @@ public class SisElevatorFloorChannelRefVo implements Serializable { private Long elevatorId; /** - * 内部通道号 + * 楼层通道号 */ - @ExcelProperty(value = "内部通道号") + @ExcelProperty(value = "楼层通道号") private Long inChannel; /** - * 外部通道号 + * 上键通道号 */ - @ExcelProperty(value = "外部通道号") - private Long outChannel; + @ExcelProperty(value = "上键通道号") + private Long upChannel; + + /** + * 下键通道号 + */ + @ExcelProperty(value = "下键通道号") + private Long downChannel; + } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorRefVo.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorRefVo.java index 6ba04fae..2c330d3b 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorRefVo.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/domain/vo/SisElevatorFloorRefVo.java @@ -51,13 +51,18 @@ public class SisElevatorFloorRefVo implements Serializable { private Long authGroupId; /** - * 内部通道号 + * 楼层通道号 */ private Long inChannel; /** - * 外部通道号 + * 上键通道号 */ - private Long outChannel; + private Long upChannel; + + /** + * 下键通道号 + */ + private Long downChannel; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/runner/HuaweiBoxRunner.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/runner/HuaweiBoxRunner.java index f926f6c9..8c5ef210 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/runner/HuaweiBoxRunner.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/runner/HuaweiBoxRunner.java @@ -33,13 +33,17 @@ public class HuaweiBoxRunner implements ApplicationRunner { private final HuaWeiHttp huaWeiHttp; @Override - public void run(ApplicationArguments args) throws Exception { - Boolean login = huaWeiHttp.login(); - if (login) { - log.info("华为盒子登录成功"); - this.keepAlive(); - } else { - log.error("华为盒子登录失败"); + public void run(ApplicationArguments args) { + try { + Boolean login = huaWeiHttp.login(); + if (login) { + log.info("华为盒子登录成功"); + this.keepAlive(); + } else { + log.warn("华为盒子登录失败"); + } + } catch (Exception e) { + log.error("华为盒子登录异常,但继续执行应用启动", e); } } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/sdk/huawei/service/HuaWeiBoxApiService.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/sdk/huawei/service/HuaWeiBoxApiService.java index 77ed048e..6a4cfbbf 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/sdk/huawei/service/HuaWeiBoxApiService.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/sdk/huawei/service/HuaWeiBoxApiService.java @@ -103,6 +103,7 @@ public class HuaWeiBoxApiService implements HuaWeiBoxApi { return switch (jsonRes.getInt("resultCode")) { case 912322041 -> new HWResult<>(912322041, "特征值提取失败", 0L); case 912333003 -> new HWResult<>(912333003, "base64参数非法", 0L); + case 912322040 -> new HWResult<>(912322040, "MCS检索获取特征失败", 0L); default -> new HWResult<>(jsonRes.getInt("resultCode"), jsonRes.getStr("resultMsg"), 0L); }; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorChannelRefServiceImpl.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorChannelRefServiceImpl.java index fd80aa26..e54158cf 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorChannelRefServiceImpl.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorChannelRefServiceImpl.java @@ -78,7 +78,8 @@ public class SisElevatorFloorChannelRefServiceImpl implements ISisElevatorFloorC lqw.eq(bo.getFloorId() != null, SisElevatorFloorChannelRef::getFloorId, bo.getFloorId()); lqw.eq(bo.getElevatorId() != null, SisElevatorFloorChannelRef::getElevatorId, bo.getElevatorId()); lqw.eq(bo.getInChannel() != null, SisElevatorFloorChannelRef::getInChannel, bo.getInChannel()); - lqw.eq(bo.getOutChannel() != null, SisElevatorFloorChannelRef::getOutChannel, bo.getOutChannel()); + lqw.eq(bo.getUpChannel() != null, SisElevatorFloorChannelRef::getUpChannel, bo.getUpChannel()); + lqw.eq(bo.getDownChannel() != null, SisElevatorFloorChannelRef::getDownChannel, bo.getDownChannel()); return lqw; } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorRefServiceImpl.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorRefServiceImpl.java index 3020dc70..d5706d28 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorRefServiceImpl.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorFloorRefServiceImpl.java @@ -118,7 +118,8 @@ public class SisElevatorFloorRefServiceImpl implements ISisElevatorFloorRefServi // 存在通道关系同时写入 SisElevatorFloorChannelRefVo channelRef = channelInfoMap.get(num); if (channelRef != null) { - add.setOutChannel(channelRef.getOutChannel()); + add.setDownChannel(channelRef.getDownChannel()); + add.setUpChannel(channelRef.getUpChannel()); add.setInChannel(channelRef.getInChannel()); } @@ -209,7 +210,8 @@ public class SisElevatorFloorRefServiceImpl implements ISisElevatorFloorRefServi SisElevatorFloorChannelRef floorInfo = floorInfoMap.get(item.getFloorId()); if (floorInfo != null) { item.setInChannel(floorInfo.getInChannel()); - item.setOutChannel(floorInfo.getOutChannel()); + item.setUpChannel(floorInfo.getUpChannel()); + item.setDownChannel(floorInfo.getDownChannel()); } } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorInfoServiceImpl.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorInfoServiceImpl.java index b0c5aa14..b6a2df80 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorInfoServiceImpl.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisElevatorInfoServiceImpl.java @@ -242,7 +242,8 @@ public class SisElevatorInfoServiceImpl implements ISisElevatorInfoService { ref.setElevatorId(bo.getElevatorId()); ref.setFloorId(channelInfo.getFloorId()); ref.setInChannel(channelInfo.getInChannel()); - ref.setOutChannel(channelInfo.getOutChannel()); + ref.setUpChannel(channelInfo.getUpChannel()); + ref.setDownChannel(channelInfo.getDownChannel()); channelRefs.add(ref); } // 写入电梯⇄楼层⇄通道关联表 diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/ZeroSensationPassageServiceImpl.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/ZeroSensationPassageServiceImpl.java index c4aa0f75..2f860a0a 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/ZeroSensationPassageServiceImpl.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/ZeroSensationPassageServiceImpl.java @@ -54,7 +54,7 @@ public class ZeroSensationPassageServiceImpl implements IZeroSensationPassageSer // 抓拍小图 String smallImgBase64Str = Base64Encoder.encode(smallImg); HWResult result = huaWeiBoxApi.findPerson(smallImgBase64Str); - if (result.getCode() == 0) { + if (result.getCode() != 200) { log.info("华为盒子比对失败,msg={}", result.getMessage()); // 产生告警数据 alarmEventsService.createAlarmRecord(deviceIp, 1, 1, "人脸比对失败", smallImg, bigImg); @@ -157,8 +157,12 @@ public class ZeroSensationPassageServiceImpl implements IZeroSensationPassageSer for (SisElevatorFloorRefVo ref : eleRef){ if (controlType == 2){ log.info("开始下发外面版梯控权限...."); - if (ref.getOutChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)) { - HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getOutChannel().intValue(), 2); + if (ref.getUpChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)) { + HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getUpChannel().intValue(), 2); + } + + if (ref.getDownChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)) { + HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getDownChannel().intValue(), 2); } }else { log.info("开始下发里面版梯控权限....");