‘liusuyi’
2024-04-13 55a4112533c958492078a5a94c90667e6cf5969c
ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
@@ -14,6 +14,7 @@
import com.ruoyi.inspect.domain.ArdVideoInspectRecord;
import com.ruoyi.inspect.mapper.ArdVideoInspectRecordMapper;
import com.ruoyi.inspect.mapper.ArdVideoInspectTaskStepMapper;
import com.ruoyi.utils.websocket.util.WebSocketUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import com.ruoyi.common.utils.StringUtils;
@@ -116,7 +117,7 @@
    public int updateArdVideoInspectTask(ArdVideoInspectTask ardVideoInspectTask) {
        ardVideoInspectTask.setUpdateBy(SecurityUtils.getUsername());
        ardVideoInspectTask.setUpdateTime(DateUtils.getNowDate());
        //  ardVideoInspectTaskMapper.deleteArdVideoInspectTaskStepByTaskId(ardVideoInspectTask.getId());
        ardVideoInspectTaskMapper.deleteArdVideoInspectTaskStepByTaskId(ardVideoInspectTask.getId());
        insertArdVideoInspectTaskStep(ardVideoInspectTask);
        return ardVideoInspectTaskMapper.updateArdVideoInspectTask(ardVideoInspectTask);
    }
@@ -184,14 +185,9 @@
        }
        if (StringUtils.isNotNull(ardVideoInspectTaskStepList)) {
            for (ArdVideoInspectTaskStep ardVideoInspectTaskStep : ardVideoInspectTaskStepList) {
                if (ardVideoInspectTaskStep.getId() == null) {
                    //新的步骤,添加
                    ardVideoInspectTaskStep.setId(IdUtils.simpleUUID());
                    ardVideoInspectTaskStepMapper.insertArdVideoInspectTaskStep(ardVideoInspectTaskStep);
                } else {
                    //已有步骤,更新
                    ardVideoInspectTaskStepMapper.updateArdVideoInspectTaskStep(ardVideoInspectTaskStep);
                }
            }
        }
    }
@@ -455,10 +451,10 @@
                    CameraCmd cmd = new CameraCmd();
                    cmd.setCameraId(cameraId);
                    cmd.setChanNo(channel);
                    cmd.setTargetPosition(guidePoint);
                    cmd.setTargetPosition(new double[]{guidePoint.getLongitude(), guidePoint.getLatitude()});
                    cmd.setOperator("sys_patrol_inspect");
                    cmd.setExpired(step.getRecordingTime());//秒为单位
                    boolean setTargetPosition = cameraSdkService.guideTargetPosition(cmd);
                    boolean setTargetPosition = cameraSdkService.guideTargetPosition(cmd).get("code").equals(200);
                    if (setTargetPosition) {
                        /*控制相机巡检成功,开始录像*/
                        cameraSdkService.recordStart(cmd);
@@ -512,16 +508,24 @@
                    CameraCmd cmd = new CameraCmd();
                    cmd.setCameraId(cameraId);
                    cmd.setChanNo(channel);
                    cmd.setTargetPosition(guidePoint);
                    cmd.setTargetPosition(new double[]{guidePoint.getLongitude(), guidePoint.getLatitude()});
                    cmd.setOperator("sys_patrol_inspect");
                    cmd.setExpired(step.getRecordingTime());//秒为单位
                    boolean setTargetPosition = cameraSdkService.guideTargetPosition(cmd);
                    boolean setTargetPosition = cameraSdkService.guideTargetPosition(cmd).get("code").equals(200);
                    if (!setTargetPosition) {
                        /*控制失败,当前步骤启动时间置null*/
                        ardVideoInspectTask.setCurrentStepStartTime("");
                        ardVideoInspectTaskMapper.updateArdVideoInspectTaskWithCurrentSetpInfo(ardVideoInspectTask);
                    } else {
                        log.debug("引导成功!");
                        //region 通知前端
                        Map<String, Object> message = new HashMap<>();
                        Map<String, String> data = new HashMap<>();
                        data.put("cameraId", cmd.getCameraId());
                        data.put("wellId", well.getWellId());
                        message.put("70000", data);
                        WebSocketUtils.sendMessageAll(message);
                        //endregion
                    }
                }
            }