Przeglądaj źródła

北向录像天数 视频质量代码提交

jingyuanchao 1 rok temu
rodzic
commit
dc8a10dd25

+ 4 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/video/MediatorVideoDiagnosisLog.java

@@ -77,5 +77,9 @@ public class MediatorVideoDiagnosisLog extends BaseEntity implements Serializabl
     @TableField("equipment_name")
     private String equipmentName;
 
+    @ApiModelProperty(value = "诊断图片")
+    @TableField("img_url")
+    private String imgUrl;
+
 
 }

+ 0 - 4
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/video/MediatorVideoDiagnosisRecord.java

@@ -43,10 +43,6 @@ public class MediatorVideoDiagnosisRecord extends BaseEntity implements Serializ
     @TableField("org_path")
     private String orgPath;
 
-    @ApiModelProperty(value = "视频质量诊断id")
-    @TableField("video_diagnosis_id")
-    private Long videoDiagnosisId;
-
     @ApiModelProperty(value = "设备id")
     @TableField("equipment_code")
     private String equipmentCode;

+ 20 - 5
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/api/service/impl/VideoDaysCheckServiceImpl.java

@@ -4,18 +4,19 @@ import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xunmei.common.core.constant.Constants;
 import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.domain.iot.domain.IotDevice;
 import com.xunmei.common.core.domain.iot.domain.IotDvrChannel;
 import com.xunmei.common.core.domain.video.MediatorVideoDaysCheck;
+import com.xunmei.common.core.domain.video.MediatorVideoDaysCheckLog;
+import com.xunmei.common.core.domain.video.MediatorVideoIntegrityCheck;
+import com.xunmei.common.core.domain.video.MediatorVideoIntegrityCheckLog;
 import com.xunmei.common.core.utils.DateUtils;
 import com.xunmei.mediator.api.mapper.VideoDaysCheckMapper;
-import com.xunmei.mediator.api.service.IIotDeviceService;
-import com.xunmei.mediator.api.service.IIotDvrChannelService;
-import com.xunmei.mediator.api.service.IVideoDaysCheckService;
-import com.xunmei.mediator.api.service.NorthErrorService;
+import com.xunmei.mediator.api.service.*;
 import com.xunmei.system.api.domain.north.NorthError;
 import com.xunmei.system.api.dto.protection.ReceiveErrorDto;
 import com.xunmei.mediator.domain.dto.videoDaysCheck.VideoDaysCheckDto;
@@ -25,6 +26,7 @@ import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.SysDevice;
 import com.xunmei.system.api.domain.SysOrg;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.util.ObjectUtils;
 
@@ -52,6 +54,9 @@ public class VideoDaysCheckServiceImpl extends ServiceImpl<VideoDaysCheckMapper,
     @Resource
     IIotDvrChannelService dvrChannelService;
 
+    @Resource
+    IVideoDaysCheckLogService daysCheckLogService;
+
     @Override
     public ReceiveErrorDto saveData(VideoDaysCheckDto videoDaysCheckDto, String msgId, String branchId) {
         if (null == videoDaysCheckDto) {
@@ -93,7 +98,7 @@ public class VideoDaysCheckServiceImpl extends ServiceImpl<VideoDaysCheckMapper,
         MediatorVideoDaysCheck videoDaysCheck = new MediatorVideoDaysCheck();
 
         //获取监控主机
-        IotDevice hostDevice = iIotDeviceService.findByHostCode(videoDaysCheckDto.getEquipmentCode(),org.getId());
+        IotDevice hostDevice = iIotDeviceService.findByHostCode(videoDaysCheckDto.getEquipmentCode(), org.getId());
         if (hostDevice != null) {
             videoDaysCheck.setEquipmentName(hostDevice.getEquipmentName());
         }
@@ -144,6 +149,7 @@ public class VideoDaysCheckServiceImpl extends ServiceImpl<VideoDaysCheckMapper,
             return ReceiveErrorDto.success();
         }
         this.saveOrUpdate(videoDaysCheck);
+        saveLog(videoDaysCheck);
         return ReceiveErrorDto.success();
     }
 
@@ -157,4 +163,13 @@ public class VideoDaysCheckServiceImpl extends ServiceImpl<VideoDaysCheckMapper,
         qw.last(Constants.LIMIT1);
         return baseMapper.selectOne(qw);
     }
+
+    private void saveLog(MediatorVideoDaysCheck daysCheck) {
+        MediatorVideoDaysCheckLog newLog = new MediatorVideoDaysCheckLog();
+        BeanUtils.copyProperties(daysCheck, newLog, "id");
+        newLog.setId(IdWorker.getId());
+        newLog.setVideoDaysCheckId(daysCheck.getId());
+        daysCheckLogService.save(newLog);
+
+    }
 }

+ 1 - 0
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/api/service/impl/VideoDiagnosisLogServiceImpl.java

@@ -34,6 +34,7 @@ public class VideoDiagnosisLogServiceImpl extends ServiceImpl<VideoDiagnosisLogM
         videoDiagnosisLog.setOrgName(data.getOrgName());
         videoDiagnosisLog.setOrgPath(data.getOrgPath());
         videoDiagnosisLog.setEquipmentName(data.getEquipmentName());
+        videoDiagnosisLog.setImgUrl(data.getImgUrl());
         videoDiagnosisLog.setCreateTime(new Date());
         videoDiagnosisLog.setUpdateTime(new Date());
         this.saveOrUpdate(videoDiagnosisLog);

+ 3 - 2
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/api/service/impl/VideoDiagnosisRecordServiceImpl.java

@@ -63,9 +63,9 @@ public class VideoDiagnosisRecordServiceImpl extends ServiceImpl<VideoDiagnosisR
         //与上次接收到的数据进行比较,如果相同则不进行处理
         //这里要返回true,不然接口调用端会重复发送
         if (redisUtil.compareWithCache(videoDiagnosisDto)) {
-            error.setErrorMsg(RedisKey.REPORT_DATA_REFUSE_MSG);
+          /*  error.setErrorMsg(RedisKey.REPORT_DATA_REFUSE_MSG);
             error.setSuccess(true);
-            return error;
+            return error;*/
         }
         Map<String, Object> map = this.checkVideoDiagnosisDto(videoDiagnosisDto);
         error = (ReceiveErrorDto) map.get("error");
@@ -207,6 +207,7 @@ public class VideoDiagnosisRecordServiceImpl extends ServiceImpl<VideoDiagnosisR
         videoDiagnosis.setOrgId(org.getId());
         videoDiagnosis.setOrgName(org.getShortName());
         videoDiagnosis.setOrgPath(org.getPath());
+        videoDiagnosis.setImgUrl(videoDiagnosisDto.getImgUrl());
         IotDevice hostDevice = iIotDeviceService.findByHostCode(videoDiagnosis.getEquipmentCode(),org.getId());
         if (hostDevice != null) {
             videoDiagnosis.setEquipmentName(hostDevice.getEquipmentName());

+ 2 - 3
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/api/service/impl/VideoIntegrityCheckServiceImpl.java

@@ -75,7 +75,7 @@ public class VideoIntegrityCheckServiceImpl extends ServiceImpl<VideoIntegrityCh
         }
         //与上次接收到的数据进行比较,如果相同则不进行处理
         if (redisUtil.compareWithCache(videoIntegrityCheckDto)) {
-            // return ReceiveErrorDto.error(RedisKey.REPORT_DATA_REFUSE_MSG);
+             return ReceiveErrorDto.error(RedisKey.REPORT_DATA_REFUSE_MSG);
         }
 
         String organizationGuid = videoIntegrityCheckDto.getOrganizationGuid();
@@ -98,10 +98,8 @@ public class VideoIntegrityCheckServiceImpl extends ServiceImpl<VideoIntegrityCh
         MediatorVideoIntegrityCheck videoIntegrityCheck = new MediatorVideoIntegrityCheck();
         if (old != null) {
             videoIntegrityCheck = old;
-            videoIntegrityCheck.setUpdateTime(new Date());
         } else {
             videoIntegrityCheck.setCreateTime(new Date());
-            videoIntegrityCheck.setUpdateTime(new Date());
         }
 
         //获取监控主机
@@ -123,6 +121,7 @@ public class VideoIntegrityCheckServiceImpl extends ServiceImpl<VideoIntegrityCh
                 videoIntegrityCheck.setPlanDays(30);
             }
         }
+        videoIntegrityCheck.setUpdateTime(new Date());
         videoIntegrityCheck.setChannelCode(videoIntegrityCheckDto.getChannelCode());
         videoIntegrityCheck.setChannelName(videoIntegrityCheckDto.getChannelName());
         videoIntegrityCheck.setCheckSpan(JSON.toJSONString(videoIntegrityCheckDto.getCheckSpan()));

+ 2 - 2
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/domain/dto/videoDaysCheck/VideoDaysCheckDto.java

@@ -21,10 +21,10 @@ public class VideoDaysCheckDto {
     private String equipmentCode;
     private String channelCode;
     private String channelName;
-    private Map checkDate;
+    private Map<String,String> checkDate;
     private Integer planDays;
     private Integer realDays;
-    private List loseDate;
+    private List<String> loseDate;
 
     @ApiModelProperty("最早录像日期")
     private String earliestVideoTime;

+ 1 - 0
soc-modules/soc-modules-mediator/src/main/java/com/xunmei/mediator/domain/dto/videoDiagnosis/VideoDiagnosisDto.java

@@ -19,6 +19,7 @@ public class VideoDiagnosisDto implements IRedisCompare {
     private String equipmentCode;
     private String channelCode;
     private String channelName;
+    private String imgUrl;
     private Integer isAlarm;
     private String alarmTime;
     private List detailInfo;