| | |
| | | package com.ruoyi.inspect.service.impl; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | | |
| | | import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell; |
| | | import com.ruoyi.alarmpoints.well.mapper.ArdAlarmpointsWellMapper; |
| | | import com.ruoyi.common.utils.DateUtils; |
| | |
| | | import com.ruoyi.device.camera.domain.ArdCameras; |
| | | import com.ruoyi.device.camera.domain.CameraCmd; |
| | | import com.ruoyi.device.camera.mapper.ArdCamerasMapper; |
| | | import com.ruoyi.device.hiksdk.config.MinioClientSingleton; |
| | | import com.ruoyi.device.hiksdk.service.IHikClientService; |
| | | import com.ruoyi.inspect.domain.ArdVideoInspectRecord; |
| | | import com.ruoyi.inspect.mapper.ArdVideoInspectRecordMapper; |
| | |
| | | import com.ruoyi.inspect.mapper.ArdVideoInspectTaskMapper; |
| | | import com.ruoyi.inspect.domain.ArdVideoInspectTask; |
| | | import com.ruoyi.inspect.service.IArdVideoInspectTaskService; |
| | | |
| | | import javax.annotation.PostConstruct; |
| | | import javax.annotation.Resource; |
| | | |
| | |
| | | * @date 2023-05-30 |
| | | */ |
| | | @Service |
| | | @Slf4j(topic = "PatrolInspectionTask") |
| | | @Slf4j(topic = "patrolInspectionTask") |
| | | public class ArdVideoInspectTaskServiceImpl implements IArdVideoInspectTaskService { |
| | | @Resource |
| | | private ArdVideoInspectTaskMapper ardVideoInspectTaskMapper; |
| | |
| | | @Transactional |
| | | @Override |
| | | public int insertArdVideoInspectTask(ArdVideoInspectTask ardVideoInspectTask) { |
| | | ardVideoInspectTask.setId(IdUtils.simpleUUID()); |
| | | ardVideoInspectTask.setCreateBy(SecurityUtils.getUsername()); |
| | | ardVideoInspectTask.setCreateTime(DateUtils.getNowDate()); |
| | | ardVideoInspectTask.setUserId(SecurityUtils.getUserId()); |
| | |
| | | try { |
| | | String currentStepId = ardVideoInspectTask.getCurrentStepId(); |
| | | if (StringUtils.isNull(currentStepId)) { |
| | | log.info("当前开始巡检步骤id为空"); |
| | | log.debug("当前开始巡检步骤id为空"); |
| | | return; |
| | | } |
| | | log.debug("巡检步骤:" + currentStepId + "尝试开始"); |
| | |
| | | targetPositon[2] = ardAlarmpointsWell.getAltitude(); |
| | | /*获取相机坐标*/ |
| | | ArdCameras cameras = ardCamerasMapper.selectArdCamerasById(cameraId); |
| | | if(StringUtils.isNull(cameras)) |
| | | { |
| | | log.debug("找不到相机:"+cameraId); |
| | | return; |
| | | } |
| | | double[] cameraPositon = new double[3]; |
| | | cameraPositon[0] = cameras.getLongitude(); |
| | | cameraPositon[1] = cameras.getLatitude(); |
| | |
| | | /*控制相机巡检*/ |
| | | CameraCmd cmd = new CameraCmd(); |
| | | cmd.setCameraId(cameraId); |
| | | cmd.setChannelNum(channel); |
| | | cmd.setChanNo(channel); |
| | | cmd.setTargetPosition(targetPositon); |
| | | cmd.setOperator("sys_patrol_inspect"); |
| | | cmd.setExpired(step.getRecordingTime() * 60); |
| | |
| | | try { |
| | | String currentStepId = ardVideoInspectTask.getCurrentStepId(); |
| | | if (StringUtils.isNull(currentStepId)) { |
| | | log.info("当前开始巡检步骤id为空"); |
| | | log.debug("当前开始巡检步骤id为空"); |
| | | return; |
| | | } |
| | | log.debug("巡检正常,尝试引导:" + currentStepId); |
| | |
| | | targetPositon[2] = ardAlarmpointsWell.getAltitude(); |
| | | /*获取相机坐标*/ |
| | | ArdCameras cameras = ardCamerasMapper.selectArdCamerasById(cameraId); |
| | | if(StringUtils.isNull(cameras)) |
| | | { |
| | | log.debug("找不到相机:"+cameraId); |
| | | return; |
| | | } |
| | | double[] cameraPositon = new double[3]; |
| | | cameraPositon[0] = cameras.getLongitude(); |
| | | cameraPositon[1] = cameras.getLatitude(); |
| | |
| | | /*控制相机巡检*/ |
| | | CameraCmd cmd = new CameraCmd(); |
| | | cmd.setCameraId(cameraId); |
| | | cmd.setChannelNum(channel); |
| | | cmd.setChanNo(channel); |
| | | cmd.setTargetPosition(targetPositon); |
| | | cmd.setOperator("sys_patrol_inspect"); |
| | | cmd.setExpired(step.getRecordingTime() * 60); |
| | |
| | | /*停止录像*/ |
| | | CameraCmd cmd = new CameraCmd(); |
| | | cmd.setCameraId(cameraId); |
| | | cmd.setChannelNum(channel); |
| | | cmd.setChanNo(channel); |
| | | cmd.setOperator("sys_patrol_inspect"); |
| | | cmd.setRecordBucketName("record"); |
| | | cmd.setRecordObjectName("inspect_" + IdUtils.fastSimpleUUID()); |