From fff75000a34b23041a19cacbdb62265f36e0e2c3 Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期五, 15 三月 2024 11:12:20 +0800 Subject: [PATCH] 测试 --- ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 52 insertions(+), 3 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java index be6a3b9..f4c899e 100644 --- a/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.device.camera.service.impl; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -403,8 +404,8 @@ @Override public TreeMap getNearCamerasBycoordinate(CameraCmd cmd) { try { - GuidePoint guidePoint = cmd.getTargetPosition(); - if (guidePoint == null) { + double[] targetPosition = cmd.getTargetPosition(); + if (targetPosition == null) { log.debug("鐩爣浣嶇疆涓虹┖"); return new TreeMap<>(); } @@ -419,7 +420,6 @@ continue; } double[] camPosition = new double[]{camera.getLongitude(), camera.getLatitude()}; - double[] targetPosition = new double[]{guidePoint.getLongitude(), guidePoint.getLatitude()}; double distance = GisUtil.getDistance(targetPosition, camPosition); if (camera.getCamMaxVisibleDistance() == null) { continue; @@ -561,4 +561,53 @@ } return CameraConstants.UNIQUE; } + + @Override + public List<Map<String, Object>> getCamerasByDeptId(Long deptId) { + List<Map<String, Object>> result = ardCamerasMapper.getCamerasByDeptId(deptId); + return result; + } + + @Override + public Boolean getCameraOperationByCameraId(String id, String userId) { + Boolean result = ardCamerasMapper.getCameraOperationByCameraId(id,userId); + return result; + } + + @Override + public Map<String, Object> getChannelByCameraId(String id) { + List<Map<String,Object>> result = ardCamerasMapper.getChannelByCameraId(id); + Map<String,Object> resultMap = new HashMap(); + if(result.size() == 1){ + resultMap.put("chanNo", result.get(0).get("chan_no")); + return resultMap; + }else{ + String configValue = (String) result.get(0).get("config_value"); + String beginTime = configValue.split("-")[0]; + String endTime = configValue.split("-")[1]; + Date now = new Date(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String nowDay = sdf.format(now); + try{ + Long beginDate = sdf.parse(nowDay).getTime() + + Integer.parseInt(beginTime.split(":")[0]) * 60 * 60 *1000 + + Integer.parseInt(beginTime.split(":")[1]) * 60 *1000; + Long endDate = sdf.parse(nowDay).getTime() + + Integer.parseInt(endTime.split(":")[0]) * 60 * 60 *1000 + + Integer.parseInt(endTime.split(":")[1]) * 60 *1000; + if(now.getTime() >= beginDate && now.getTime() <= endDate){ + result = result.stream().filter(map -> ((Integer)map.get("chan_no")) == 1).collect(Collectors.toList()); + resultMap.put("chanNo", result.get(0).get("chan_no")); + return resultMap; + }else{ + result = result.stream().filter(map -> ((Integer)map.get("chan_no")) == 2).collect(Collectors.toList()); + resultMap.put("chanNo", result.get(0).get("chan_no")); + return resultMap; + } + }catch (Exception e){ + e.printStackTrace(); + return resultMap; + } + } + } } -- Gitblit v1.9.3