| | |
| | | import com.ruoyi.common.utils.spring.SpringUtils; |
| | | import com.ruoyi.device.camera.domain.ArdCameras; |
| | | import com.ruoyi.device.camera.domain.CameraCmd; |
| | | import com.ruoyi.device.camera.service.ICameraSdkService; |
| | | import com.ruoyi.device.hiksdk.common.GlobalVariable; |
| | | import com.ruoyi.device.hiksdk.service.IHikClientService; |
| | | import com.ruoyi.utils.websocket.util.WebSocketUtils; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | | import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS; |
| | | |
| | |
| | | @Slf4j |
| | | public class PushTask { |
| | | |
| | | @Resource |
| | | RedisCache redisCache; |
| | | @Resource |
| | | ICameraSdkService cameraSdkService; |
| | | @Resource |
| | | IGlobalAlarmService globalAlarmService; |
| | | /** |
| | | * @描述 定时推送所有报警的点位数量 |
| | | * @参数 [] |
| | |
| | | */ |
| | | public void globalAlarmCountPush() { |
| | | try { |
| | | IGlobalAlarmService globalAlarmService = SpringUtils.getBean(IGlobalAlarmService.class); |
| | | Map<String, Object> stringIntegerMap = globalAlarmService.selectAlarmLogsCount(); |
| | | if (ONLINE_USER_SESSIONS.size() > 0) { |
| | | WebSocketUtils.sendMessageAll(stringIntegerMap); |
| | |
| | | */ |
| | | public void ptzPush() { |
| | | try { |
| | | RedisCache redisCache = SpringUtils.getBean(RedisCache.class); |
| | | IHikClientService hikClientService = SpringUtils.getBean(IHikClientService.class); |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | List<Object> Objects = redisCache.getListKey(CacheConstants.CAMERA_LIST_KEY); |
| | | if (Objects.size() > 0) { |
| | |
| | | { |
| | | continue; |
| | | } |
| | | //推送大光电 |
| | | if(!"1".equals(camera.getGdtype())) |
| | | { |
| | | continue; |
| | |
| | | cmd.setChanNo(1); |
| | | cmd.setOperator(camera.getOperatorId()); |
| | | //推送在线的相机 |
| | | boolean onLine = hikClientService.isOnLine(cmd); |
| | | boolean onLine = cameraSdkService.isOnLine(cmd); |
| | | if(!onLine) |
| | | { |
| | | continue; |
| | | } |
| | | Map<String, Object> ptz = hikClientService.getGisInfo(cmd); |
| | | Map<String, Object> ptz = cameraSdkService.getGisInfo(cmd); |
| | | if (StringUtils.isNull(ptz)) { |
| | | continue; |
| | | } |