package com.ycl.platform.domain.result.UY; import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.platform.domain.result.BaseResult; import constant.ApiConstants; import enumeration.DeviceType; import lombok.Data; import org.springframework.data.mongodb.core.index.TextIndexed; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; /** * 获取osd数据 * * @author:xp * @date:2024/8/8 19:35 */ @Data @Document(collection = "osd_check_result") public class OsdCheckResult extends BaseResult { /** * 国标码 */ @TextIndexed private String deviceNo; /** * 摄像机品牌0/1/2 海康/大华/宇视 */ private Integer deviceBrand; /** * 摄像机品牌0/1/2 海康/大华/宇视 */ private String deviceBrandStr; /** * 设备类型 */ private String deviceType; /** * ip */ @TextIndexed private String ip; /** * 检测时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date checkTime; /** * 标注时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date setTime; /** * osd通道名 */ @TextIndexed private String osdName; /** * osd省 */ private String osdProvince; /** * osd市 */ private String osdCity; /** * osd区 */ private String osdPart; /** * osd左下角 */ private String osdLB; /** * osdTimeCorrect时间是否正确 */ private Integer osdTimeCorrect; /** * osdTimeCorrect时间是否正确 */ private Boolean osdTimeError; /** * osd通道名是否正确 1正确 0未知 -1错 */ private Integer osdNameCorrect; /** * osd通道名是否正确 */ private Boolean osdNameError; /** * osd省是否正确 */ private Integer osdProvinceCorrect; /** * osd省是否正确 */ private Boolean osdProvinceError; /** * osd市是否正确 */ private Integer osdCityCorrect; /** * osd市是否正确 */ private Boolean osdCityError; /** * osd区是否正确 */ private Integer osdPartCorrect; /** * osd区是否正确 */ private Boolean osdPartError; /** * osd左下角是否正确 */ private Integer osdLbCorrect; public static Boolean checkOsd(OsdCheckResult result) { return ApiConstants.OSD_Correct.equals(result.getOsdTimeCorrect()) && ApiConstants.OSD_Correct.equals(result.getOsdNameCorrect()) && ApiConstants.OSD_Correct.equals(result.getOsdProvinceCorrect()) && ApiConstants.OSD_Correct.equals(result.getOsdCityCorrect()) && ApiConstants.OSD_Correct.equals(result.getOsdPartCorrect()); } public static Boolean checkTime(OsdCheckResult result) { return ApiConstants.OSD_Correct.equals(result.getOsdTimeCorrect()); } public static void getError(OsdCheckResult result) { if(ApiConstants.OSD_Correct.equals(result.getOsdTimeCorrect())) result.setOsdTimeError(Boolean.FALSE); else {result.setOsdTimeError(Boolean.TRUE); } if(ApiConstants.OSD_Correct.equals(result.getOsdNameCorrect())) result.setOsdNameError(Boolean.FALSE); else { result.setOsdNameError(Boolean.TRUE); } if(ApiConstants.OSD_Correct.equals(result.getOsdProvinceCorrect())) result.setOsdProvinceError(Boolean.FALSE); else { result.setOsdProvinceError(Boolean.TRUE); } if(ApiConstants.OSD_Correct.equals(result.getOsdCityCorrect())) result.setOsdCityError(Boolean.FALSE); else { result.setOsdCityError(Boolean.TRUE); } if(ApiConstants.OSD_Correct.equals(result.getOsdPartCorrect())) result.setOsdPartError(Boolean.FALSE); else { result.setOsdPartError(Boolean.TRUE); } if(DeviceType.DH.getType().equals(result.getDeviceBrand())) result.setDeviceBrandStr(DeviceType.DH.getDesc()); else if(DeviceType.HK.getType().equals(result.getDeviceBrand())) result.setDeviceBrandStr(DeviceType.HK.getDesc()); else if(DeviceType.YS.getType().equals(result.getDeviceBrand())) result.setDeviceBrandStr(DeviceType.YS.getDesc()); else { result.setDeviceBrandStr("未知"); } } }