From c4c6484a6e6d18e56ec6791db3585aae39c8584d Mon Sep 17 00:00:00 2001
From: zhangjian <zhangjianrock@163.com>
Date: 星期五, 02 六月 2023 09:13:46 +0800
Subject: [PATCH] 视频巡检任务 单独更新

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java |  419 ++++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 267 insertions(+), 152 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 a889fd7..da32f82 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,158 +35,273 @@
 
     @Resource
     IArdVideoInspectTaskService ardVideoInspectTaskService;
-    @Resource
-    IArdAlarmpointsWellService ardAlarmpointsWellService;
-    @Resource
-    IArdVideoInspectRecordService ardVideoInspectRecordService;
-    @Resource
-    IArdCamerasService ardCamerasService;
-    @Resource
-    IHikClientService hikClientService;
 
-    public void scanRun(){
-        /*鎵弿鎵�鏈夊彲鎵ц浠诲姟1-鏃堕棿婊¤冻2-鑷姩*/
-        log.info("寮�濮嬫壂鎻忔墍鏈夊彲鎵ц浠诲姟");
-        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) {
-                log.info("婊¤冻鏃堕棿");
-                /*褰撳墠浠诲姟鐨勫贰妫�姝ラ*/
-                List<ArdVideoInspectTaskStep> ardVideoInspectTaskStepList = ardVideoInspectTaskService.selectArdVideoInspectTaskById(videoInspectTask.getId()).getArdVideoInspectTaskStepList();
-                Map<Integer, Object> sortMap = new HashMap<>();//鎺掑簭map
-                Map<String, Object> stepMap = new HashMap<>();//IDmap
-                for (ArdVideoInspectTaskStep step : ardVideoInspectTaskStepList) {
-                    sortMap.put(step.getOrderNumber(), step);
-                    stepMap.put(step.getId(), step);
-                }
-                /*鑾峰彇褰撳墠浠诲姟姝e湪鎵ц鐨勬楠ゅ拰褰撳墠姝ラ寮�濮嬬殑鏃堕棿*/
-                String currentStepId = videoInspectTask.getCurrentStepId();
-                String cameraId = videoInspectTask.getCameraId();
-                Integer channel = videoInspectTask.getChannel();
-                String currentStepStartTime = videoInspectTask.getCurrentStepStartTime();
-                /*濡傛灉褰撳墠姝ラ鏈壘鍒帮紝鍒欎粠1寮�濮�*/
-                if (StringUtils.isNull(currentStepId)) {
-                    ArdVideoInspectTaskStep step = (ArdVideoInspectTaskStep) sortMap.get(1);
-                    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(videoInspectTask.getId());
-                            avit.setCurrentStepId(ardVideoInspectTaskStepList.get(0).getId());
-                            avit.setCurrentStepStartTime(DateUtils.getTime());
-                            ardVideoInspectTaskService.updateArdVideoInspectTaskNoUpdater(avit);
-                        }
-                    }
-                } else /*褰撳墠浠诲姟宸茬粡鎵ц锛屽垽鏂槸鍚﹀埌鏈�*/ {
-                    if (stepMap.containsKey(currentStepId)) {
-                        /*鑾峰彇褰撳墠姝ラ淇℃伅*/
-                        ArdVideoInspectTaskStep currentStep = (ArdVideoInspectTaskStep) stepMap.get(currentStepId);
-                        /*鑾峰彇鍒板綋鍓嶆楠ょ殑寮�濮嬪拰缁撴潫鏃堕棿*/
-                        Date currentStepStartDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStartTime);
-                        Date currentStepStopDate = DateUtils.addMinutes(currentStepStartDate, currentStep.getRecordingTime());
-                        /*鍒ゆ柇褰撳墠姝ラ鏃堕棿鏄惁杩囨湡*/
-                        if (!DateUtils.TimeCompare(currentStepStartDate, currentStepStopDate)) {
-                            /*宸茶繃鏈�,鍋滄褰曞儚*/
-                            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);
-                            String url= MinioClientSingleton.domainUrl+ "/" +cmd.getRecordBucketName()+ "/"+recordName;
-                            hikClientService.recordToMinio(cmd);
-                            /*鏇存柊宸℃璁板綍*/
-                            ArdVideoInspectRecord ardVideoInspectRecord = new ArdVideoInspectRecord();
-                            ardVideoInspectRecord.setStepId(currentStepId);
-                            ardVideoInspectRecord.setStartTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStartDate));
-                            ardVideoInspectRecord.setEndTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, currentStepStopDate));
-                            ardVideoInspectRecord.setRecordFilePath(url);
-                            ardVideoInspectRecordService.insertArdVideoInspectRecord(ardVideoInspectRecord);
-
-                            /*鍒囨崲涓嬩竴姝ラ*/
-                            Integer orderNumber = currentStep.getOrderNumber();
-                            /*鍒ゆ柇褰撳墠姝ラ搴忓彿鏄惁灏忎簬姝ラ鎬绘暟*/
-                            if (orderNumber < stepMap.size()) {
-                                /*灏忎簬鍒欐墽琛屼笅涓�姝ラ*/
-                                orderNumber++;
-                            } else {
-                                /*鍚﹀垯浠�1寮�濮嬫墽琛�*/
-                                orderNumber = 1;
-                            }
-                            ArdVideoInspectTaskStep step = (ArdVideoInspectTaskStep) sortMap.get(orderNumber);
-                            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();
-                                /*鎺у埗鐩告満宸℃*/
-                                log.info("鎸囧悜" + ardAlarmpointsWell.getWellId() + "鍧愭爣:" + targetPositon);
-                                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(videoInspectTask.getId());
-                                    avit.setCurrentStepId(step.getId());
-                                    avit.setCurrentStepStartTime(DateUtils.getTime());
-                                    ardVideoInspectTaskService.updateArdVideoInspectTaskNoUpdater(avit);
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-        }
+    //宸℃浠诲姟
+    public void scanRun() {
+        ardVideoInspectTaskService.autoTaskRun();
     }
+
+    //鑷姩宸℃浠诲姟
+//    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 /*褰撳墠浠诲姟宸茬粡鎵ц锛屽垽鏂槸鍚﹀埌鏈�*/ {
+//                    if (StringUtils.isNull(videoInspectTask.getCurrentStepStartTime())) {
+//                        //褰撳墠浠诲姟鍚姩鏃堕棿涓簄ull锛屽垯璇存槑褰撳墠姝ラ琚腑鏂紝鐩存帴鍚姩褰撳墠姝ラ
+//                        startRunStep(videoInspectTask);
+//                    } else {
+//                        boolean expird = isExpirdStep(videoInspectTask); /*鍒ゆ柇褰撳墠姝ラ鏃堕棿鏄惁杩囨湡*/
+//                        if (expird) {
+//                            //鍋滄褰曞儚
+//                            stopRunStep(videoInspectTask);
+//                            //鍒囨崲姝ラ
+//                            String nextStepId = changeNextStep(videoInspectTask);
+//                            //寮�濮嬩笅涓�姝ラ
+//                            videoInspectTask.setCurrentStepId(nextStepId);
+//                            startRunStep(videoInspectTask);
+//                        }
+//                    }
+//                }
+//            }
+//        }
+//    }
+
+//    //鎵嬪姩宸℃浠诲姟
+//    public void ManualTaskRun(String taskId) {
+//        Timer timer = new Timer();
+//        // 5s鍚庢墽琛�
+//        // timer.schedule(new MyTask(), 5000);
+//        // 椹笂鎵ц浠诲姟,姣忛殧2000鎵ц涓�娆�
+//        timerTask = new TimerTask() {
+//            @Override
+//            public void run() {
+//                ArdVideoInspectTask videoInspectTask = ardVideoInspectTaskService.selectArdVideoInspectTaskById(taskId);
+//                /*鑾峰彇褰撳墠浠诲姟鐨勬墍鏈夊贰妫�姝ラ*/
+//                List<ArdVideoInspectTaskStep> ardVideoInspectTaskStepList = ardVideoInspectTaskService.selectArdVideoInspectTaskById(videoInspectTask.getId()).getArdVideoInspectTaskStepList();
+//                if (ardVideoInspectTaskStepList.size() == 0) {
+//                    log.error("褰撳墠浠诲姟娌℃湁鍙戠幇鎵ц姝ラ");
+//                    return;
+//                }
+//                videoInspectTask.setArdVideoInspectTaskStepList(ardVideoInspectTaskStepList);
+//                String currentStepId = videoInspectTask.getCurrentStepId();
+//                if (StringUtils.isNull(currentStepId)) {
+//                    videoInspectTask.setCurrentStepId(ardVideoInspectTaskStepList.get(0).getId());
+//                    startRunStep(videoInspectTask);//寮�濮嬪綋鍓嶄换鍔$殑绗竴涓楠�
+//                } else /*褰撳墠浠诲姟宸茬粡鎵ц锛屽垽鏂槸鍚﹀埌鏈�*/ {
+//                    if (StringUtils.isNull(videoInspectTask.getCurrentStepStartTime())) {
+//                        //褰撳墠浠诲姟鍚姩鏃堕棿涓簄ull锛屽垯璇存槑褰撳墠姝ラ琚腑鏂紝鐩存帴鍚姩褰撳墠姝ラ
+//                        startRunStep(videoInspectTask);
+//                    } else {
+//                        boolean expird = isExpirdStep(videoInspectTask); /*鍒ゆ柇褰撳墠姝ラ鏃堕棿鏄惁杩囨湡*/
+//                        if (expird) {
+//                            //鍋滄褰曞儚
+//                            stopRunStep(videoInspectTask);
+//                            //鍒囨崲姝ラ
+//                            String nextStepId = changeNextStep(videoInspectTask);
+//                            //寮�濮嬩笅涓�姝ラ
+//                            videoInspectTask.setCurrentStepId(nextStepId);
+//                            startRunStep(videoInspectTask);
+//                        }
+//                    }
+//                }
+//            }
+//        };
+//        timer.scheduleAtFixedRate(timerTask, new Date(), 2000);
+//    }
+//
+//    //姝ラ寮�濮�
+//    private void startRunStep(ArdVideoInspectTask ardVideoInspectTask) {
+//        try {
+//            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);
+//                    } else {
+//                        cmd.setEnable(false);//鍋滄褰曞儚
+//                        hikClientService.recordToMinio(cmd);
+//                        /*鎺у埗澶辫触,褰撳墠姝ラ鍚姩鏃堕棿缃畁ull*/
+//                        ArdVideoInspectTask avit = new ArdVideoInspectTask();
+//                        avit.setId(ardVideoInspectTask.getId());
+//                        avit.setCurrentStepId(step.getId());
+//                        avit.setCurrentStepStartTime(null);
+//                        ardVideoInspectTaskService.updateArdVideoInspectTaskNoUpdater(avit);
+//                    }
+//                }
+//            }
+//        } catch (Exception ex) {
+//            log.error("宸℃寮�濮嬪紓甯革細" + ex.getMessage());
+//        }
+//    }
+//
+//    //姝ラ鍋滄
+//    private void stopRunStep(ArdVideoInspectTask ardVideoInspectTask) {
+//        try {
+//            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);
+//            }
+//        } catch (Exception ex) {
+//            log.error("宸℃鍋滄寮傚父:" + ex.getMessage());
+//        }
+//    }
+//
+//    //姝ラ鍒ゆ柇鏄惁杩囨湡
+//    private boolean isExpirdStep(ArdVideoInspectTask ardVideoInspectTask) {
+//        try {
+//            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;
+//            }
+//        } catch (Exception ex) {
+//            log.error("鍒ゆ柇宸℃姝ラ杩囨湡寮傚父锛�" + ex.getMessage());
+//            return false;
+//        }
+//    }
+//
+//    //姝ラ鍒囨崲
+//    private String changeNextStep(ArdVideoInspectTask ardVideoInspectTask) {
+//        try {
+//            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;
+//            }
+//        } catch (Exception ex) {
+//            log.error("宸℃姝ラ鍒囨崲寮傚父锛�" + ex.getMessage());
+//        }
+//        return "";
+//    }
 }

--
Gitblit v1.9.3