From 3d02afb677c690bd31366d0f5683dd0020c40734 Mon Sep 17 00:00:00 2001
From: Administrator <1144154118@qq.com>
Date: 星期三, 26 七月 2023 16:04:38 +0800
Subject: [PATCH] 部门下所有车辆位置
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java | 200 -------------------------------------------------
1 files changed, 2 insertions(+), 198 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java
index e51cd61..542133a 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java
@@ -35,205 +35,9 @@
@Resource
IArdVideoInspectTaskService ardVideoInspectTaskService;
- @Resource
- IArdAlarmpointsWellService ardAlarmpointsWellService;
- @Resource
- IArdVideoInspectRecordService ardVideoInspectRecordService;
- @Resource
- IArdCamerasService ardCamerasService;
- @Resource
- IHikClientService hikClientService;
+ //宸℃浠诲姟
public void scanRun() {
- /*鎵弿鎵�鏈夊彲鎵ц浠诲姟1-鏃堕棿婊¤冻2-鑷姩*/
- ArdVideoInspectTask ardVideoInspectTask = new ArdVideoInspectTask();
- ardVideoInspectTask.setInspectMode("鑷姩");
- List<ArdVideoInspectTask> ardVideoInspectTasks = ardVideoInspectTaskService.selectArdVideoInspectTaskList(ardVideoInspectTask);
- for (ArdVideoInspectTask videoInspectTask : ardVideoInspectTasks) {
- /*閬嶅巻鎵�鏈夋椂闂存弧瓒崇殑鑷姩浠诲姟*/
- boolean timeCompare = DateUtils.TimeCompare(videoInspectTask.getStartTime(), videoInspectTask.getEndTime());
- if (timeCompare) {
- /*鑾峰彇褰撳墠浠诲姟鐨勬墍鏈夊贰妫�姝ラ*/
- List<ArdVideoInspectTaskStep> ardVideoInspectTaskStepList = ardVideoInspectTaskService.selectArdVideoInspectTaskById(videoInspectTask.getId()).getArdVideoInspectTaskStepList();
- if (ardVideoInspectTaskStepList.size() == 0) {
- continue;
- }
- videoInspectTask.setArdVideoInspectTaskStepList(ardVideoInspectTaskStepList);
- String currentStepId = videoInspectTask.getCurrentStepId();
- if (StringUtils.isNull(currentStepId)) {
- videoInspectTask.setCurrentStepId(ardVideoInspectTaskStepList.get(0).getId());
- startRunStep(videoInspectTask);//寮�濮嬪綋鍓嶄换鍔$殑绗竴涓楠�
- } else /*褰撳墠浠诲姟宸茬粡鎵ц锛屽垽鏂槸鍚﹀埌鏈�*/ {
- boolean expird = isExpirdStep(videoInspectTask); /*鍒ゆ柇褰撳墠姝ラ鏃堕棿鏄惁杩囨湡*/
- if (expird) {
- /*宸茶繃鏈�,鍋滄褰曞儚*/
-
- stopRunStep(videoInspectTask);
- /*鍒囨崲涓嬩竴姝�*/
- String nextStepId = changeNextStep(videoInspectTask);
- /*寮�濮�*/
- videoInspectTask.setCurrentStepId(nextStepId);
- startRunStep(videoInspectTask);
- }
- }
- }
- }
- }
-
- //姝ラ寮�濮�
- private void startRunStep(ArdVideoInspectTask ardVideoInspectTask) {
- String currentStepId = ardVideoInspectTask.getCurrentStepId();
- if(StringUtils.isNull(currentStepId))
- {
- log.info("褰撳墠寮�濮嬪贰妫�姝ラid涓虹┖");
- return;
- }
- log.info("姝ラ锛�" + currentStepId + "寮�濮�");
- String cameraId = ardVideoInspectTask.getCameraId();
- Integer channel = ardVideoInspectTask.getChannel();
- Optional<ArdVideoInspectTaskStep> objectOptional = ardVideoInspectTask.getArdVideoInspectTaskStepList().stream()
- .filter(obj -> obj.getId().equals(currentStepId))
- .findFirst();
- if (objectOptional.isPresent()) {
- ArdVideoInspectTaskStep step = objectOptional.get();
- String wellId = step.getWellId();
- if (!StringUtils.isNull(wellId)) {
- /*鑾峰彇浜曞潗鏍�*/
- ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellService.selectArdAlarmpointsWellById(wellId);
- double[] targetPositon = new double[3];
- targetPositon[0] = ardAlarmpointsWell.getLongitude();
- targetPositon[1] = ardAlarmpointsWell.getLatitude();
- targetPositon[2] = ardAlarmpointsWell.getAltitude();
- /*鑾峰彇鐩告満鍧愭爣*/
- ArdCameras cameras = ardCamerasService.selectArdCamerasById(cameraId);
- double[] cameraPositon = new double[3];
- cameraPositon[0] = cameras.getLongitude();
- cameraPositon[1] = cameras.getLatitude();
- cameraPositon[2] = cameras.getAltitude();
- /*鎺у埗鐩告満宸℃*/
- CameraCmd cmd = new CameraCmd();
- cmd.setCameraId(cameraId);
- cmd.setChannelNum(channel);
- cmd.setCamPosition(cameraPositon);
- cmd.setTargetPosition(targetPositon);
- cmd.setOperator("sys_patrol_inspect");
- cmd.setExpired(step.getRecordingTime());
- boolean setTargetPosition = hikClientService.setTargetPosition(cmd);
- if (setTargetPosition) {
- /*鎺у埗鐩告満宸℃鎴愬姛锛屽紑濮嬪綍鍍�*/
- cmd.setEnable(true);//鍚姩褰曞儚
- hikClientService.recordToMinio(cmd);
- /*鏇存柊浠诲姟褰撳墠姝ラid鍜屾楠ゅ惎鍔ㄦ椂闂�*/
- ArdVideoInspectTask avit = new ArdVideoInspectTask();
- avit.setId(ardVideoInspectTask.getId());
- avit.setCurrentStepId(step.getId());
- avit.setCurrentStepStartTime(DateUtils.getTime());
- ardVideoInspectTaskService.updateArdVideoInspectTaskNoUpdater(avit);
- }
- }
- }
- }
-
- //姝ラ鍋滄
- private void stopRunStep(ArdVideoInspectTask ardVideoInspectTask) {
- String currentStepId = ardVideoInspectTask.getCurrentStepId();
- log.info("姝ラ锛�" + currentStepId + "鍋滄");
- if(StringUtils.isNull(currentStepId))
- {
- log.info("褰撳墠鍋滄宸℃姝ラid涓虹┖");
- return;
- }
- String currentStepStartTime = ardVideoInspectTask.getCurrentStepStartTime();
- String cameraId = ardVideoInspectTask.getCameraId();
- Integer channel = ardVideoInspectTask.getChannel();
- Optional<ArdVideoInspectTaskStep> objectOptional = ardVideoInspectTask.getArdVideoInspectTaskStepList().stream()
- .filter(obj -> obj.getId().equals(currentStepId))
- .findFirst();
- if (objectOptional.isPresent()) {
- ArdVideoInspectTaskStep step = objectOptional.get();
- /*鍋滄褰曞儚*/
- CameraCmd cmd = new CameraCmd();
- cmd.setCameraId(cameraId);
- cmd.setChannelNum(channel);
- cmd.setOperator("sys_patrol_inspect");
- cmd.setEnable(false);//鍋滄褰曞儚
- String uuid = UUID.randomUUID().toString().replace("-", "");
- String time = new SimpleDateFormat("yyyyMMdd").format(new Date());
- String recordName = cameraId + "/" + time + "/" + uuid + ".mp4";
- cmd.setRecordBucketName("record");
- cmd.setRecordObjectName(recordName);
- hikClientService.recordToMinio(cmd);
- /*鎻掑叆宸℃璁板綍*/
- ArdVideoInspectRecord ardVideoInspectRecord = new ArdVideoInspectRecord();
- ardVideoInspectRecord.setStepId(step.getId());
- Date currentStepStartDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStartTime);
- Date currentStepStopDate = DateUtils.addMinutes(currentStepStartDate, step.getRecordingTime());
- ardVideoInspectRecord.setStartTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStartDate));
- ardVideoInspectRecord.setEndTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStopDate));
- String url = MinioClientSingleton.domainUrl + "/" + cmd.getRecordBucketName() + "/" + recordName;
- ardVideoInspectRecord.setRecordFilePath(url);
- ardVideoInspectRecordService.insertArdVideoInspectRecord(ardVideoInspectRecord);
- }
- }
-
- //姝ラ鍒ゆ柇鏄惁杩囨湡
- private boolean isExpirdStep(ArdVideoInspectTask ardVideoInspectTask) {
- List<ArdVideoInspectTaskStep> ardVideoInspectTaskStepList = ardVideoInspectTask.getArdVideoInspectTaskStepList();
- /*鑾峰彇褰撳墠浠诲姟姝e湪鎵ц鐨勬楠ゅ拰褰撳墠姝ラ寮�濮嬬殑鏃堕棿*/
- String currentStepId = ardVideoInspectTask.getCurrentStepId();
- String currentStepStartTime = ardVideoInspectTask.getCurrentStepStartTime();
- Optional<ArdVideoInspectTaskStep> objectOptional = ardVideoInspectTaskStepList.stream()
- .filter(ardVideoInspectTaskStep -> ardVideoInspectTaskStep.getId().equals(currentStepId))
- .findFirst();
- if (objectOptional.isPresent()) {
- /*鑾峰彇褰撳墠姝ラ淇℃伅*/
- ArdVideoInspectTaskStep currentStep = objectOptional.get();
- /*鑾峰彇鍒板綋鍓嶆楠ょ殑寮�濮嬪拰缁撴潫鏃堕棿*/
- Date currentStepStartDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStartTime);
- Date currentStepStopDate = DateUtils.addMinutes(currentStepStartDate, currentStep.getRecordingTime());
- /*鍒ゆ柇褰撳墠姝ラ鏃堕棿鏄惁杩囨湡*/
- if (!DateUtils.TimeCompare(currentStepStartDate, currentStepStopDate)) {
- return true;
- } else {
- return false;
- }
- } else {
- return false;
- }
-
- }
-
- //姝ラ鍒囨崲
- private String changeNextStep(ArdVideoInspectTask ardVideoInspectTask) {
- String currentStepId = ardVideoInspectTask.getCurrentStepId();
- Optional<ArdVideoInspectTaskStep> objectOptional = ardVideoInspectTask.getArdVideoInspectTaskStepList().stream()
- .filter(obj -> obj.getId().equals(currentStepId))
- .findFirst();
- if (objectOptional.isPresent()) {
- ArdVideoInspectTaskStep step = objectOptional.get();
- Integer currentStepOrderNumber = step.getOrderNumber();
- /*鍒ゆ柇褰撳墠姝ラ搴忓彿鏄惁灏忎簬姝ラ鎬绘暟*/
- if (currentStepOrderNumber < ardVideoInspectTask.getArdVideoInspectTaskStepList().size()) {
- /*灏忎簬鍒欐墽琛屼笅涓�姝ラ*/
- currentStepOrderNumber++;
- } else {
- /*鍚﹀垯浠�1寮�濮嬫墽琛�*/
- currentStepOrderNumber = 1;
- }
- Integer nextStepOrderNumber = currentStepOrderNumber;
- /*鏇存柊褰撳墠浠诲姟鍒囨崲鏂版楠�*/
- ArdVideoInspectTask avit = new ArdVideoInspectTask();
- avit.setId(ardVideoInspectTask.getId());
- String nextStepId = ardVideoInspectTask.getArdVideoInspectTaskStepList().stream()
- .filter(obj -> obj.getOrderNumber() == nextStepOrderNumber)
- .map(ArdVideoInspectTaskStep::getId)
- .findFirst()
- .orElse(null);
- avit.setCurrentStepId(nextStepId);
- ardVideoInspectTaskService.updateArdVideoInspectTaskNoUpdater(avit);
- log.info("姝ラ锛�" + currentStepId + "鍒囨崲涓�"+nextStepId);
- return nextStepId;
- }
- return "";
+ ardVideoInspectTaskService.autoTaskRun();
}
}
--
Gitblit v1.9.3