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 dca65425..b2e9323a 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 @@ -33,32 +33,28 @@ public class CleanLiftAuthRocketConsumer implements RocketMQListener public void onMessage(MessageExt ext) { log.info("【消费者】接收消息:消息体 => {}", new String(ext.getBody())); -// Long deviceId = Long.parseLong(ext.getUserProperty("deviceId")); -// Long groupId = Long.parseLong(ext.getUserProperty("groupId")); -// Long deviceFloorId = Long.parseLong(ext.getUserProperty("deviceFloorId")); -// -// // 获取当前电梯信息 -// SisElevatorInfoVo ele = sisElevatorInfoService.queryById(deviceId); -// -// // 获取权限组下电梯⇄楼层关联信息 -// List groupRef = sisElevatorFloorRefService.queryByAuthGroupId(groupId); -// -// // 取出当前电梯的楼层授权信息 -// 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.getInChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)){ -// HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getInChannel().intValue(), 3); -// } -// } + Long deviceId = Long.parseLong(ext.getUserProperty("deviceId")); + Long groupId = Long.parseLong(ext.getUserProperty("groupId")); + Long deviceFloorId = Long.parseLong(ext.getUserProperty("deviceFloorId")); - HikApiService.getInstance().controlGateway("192.168.24.188", 1, 3); - HikApiService.getInstance().controlGateway("192.168.24.188", 2, 3); + // 获取当前电梯信息 + SisElevatorInfoVo ele = sisElevatorInfoService.queryById(deviceId); + // 获取权限组下电梯⇄楼层关联信息 + List groupRef = sisElevatorFloorRefService.queryByAuthGroupId(groupId); + + // 取出当前电梯的楼层授权信息 + 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.getInChannel() != null && Objects.equals(ref.getFloorId(), deviceFloorId)){ + HikApiService.getInstance().controlGateway(ele.getControlIp(), ref.getInChannel().intValue(), 3); + } + } log.info("梯控清除权限完成"); } } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisAccessControlMapper.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisAccessControlMapper.java index 6a593fd7..226224b8 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisAccessControlMapper.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisAccessControlMapper.java @@ -1,5 +1,6 @@ package org.dromara.sis.mapper; +import org.apache.ibatis.annotations.Mapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.sis.domain.SisAccessControl; import org.dromara.sis.domain.vo.SisAccessControlVo; @@ -8,8 +9,9 @@ import org.dromara.sis.domain.vo.SisAccessControlVo; * 门禁设备Mapper接口 * * @author lxj - * @date 2025-06-25 + * @since 2025-06-25 */ +@Mapper public interface SisAccessControlMapper extends BaseMapperPlus { SisAccessControlVo queryById(Long id);