ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdMonitorResult.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/PyOsdResult.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-server/src/main/java/com/ycl/config/SecurityConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-server/src/main/java/com/ycl/feign/UYClient.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-server/src/main/java/com/ycl/platform/controller/SynPY/SynPYController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-server/src/main/java/com/ycl/task/UYTask.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdMonitorResult.java
@@ -1,10 +1,12 @@ package com.ycl.platform.domain.result.UY; import com.ycl.platform.domain.result.BaseResult; import io.swagger.models.auth.In; import lombok.Data; import org.springframework.data.mongodb.core.index.TextIndexed; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; import java.util.List; /** @@ -17,111 +19,187 @@ @Document(collection = "uy_osd_monitor") public class OsdMonitorResult extends BaseResult { /** * 区域路径信息 */ @TextIndexed private String arealayerPath; private Integer areaInfoFormat; /** * 区域名称 * 辖区信息 */ @TextIndexed private String areaInfoMessage; /** * 行政区域 */ private String arealayername; /** * 区域编码 */ private String arealayerno; private Integer audited; /** * 审核时间 */ private Date auditedTime; private Integer cameraInfoFormat; /** * 摄像机信息 */ private String cameraInfoMessage; /** * 设备 ID */ @TextIndexed private String deviceId; /** * 设备名称 */ @TextIndexed private String deviceName; /** * 图片上的字幕时间和摄像机拉码流时间差是否大于最大值 * ip地址 */ private String diff; /** * 图片上的字幕时间和摄像机拉码流时间差,单位(秒), -1 表示未知 */ private Integer diffTime; /** * IP 地址 */ @TextIndexed private String ip; /** * 图片 ocr 识别结果 */ private OcrResult ocrResult; private Integer locationInfoFormat; /** * 图片地址 * 地点信息 */ private String imgPath; private String locationInfoMessage; /** * 状态码,0:正常 * ocr信息 */ private Integer statusCode; private String ocrMessage; /** * 图片上的字幕时间和摄像机拉码流时间差,单位(秒) * ocr状态 */ private String osdFormat; private Integer ocrStatus; /** * osd 信息 * ocr识别时间 */ private OsdInfo osdInfo; private Date ocrTime; private Integer timeInfoFormat; /** * 图片上的字幕时间 * 时间信息 */ private String osdTime; private Integer timeInfoMessage; /** * 摄像机标签 */ private List<String> tags; /** * 更新时间 */ private String updateTime; /** * 视频码流获取时间 */ private String videoGetTime; /** * OCR识别结果的内部类 */ @Data public static class OcrResult { private List<String> data; } /** * osd信息的内部类 */ @Data public static class OsdInfo { private String timeInfo; private String positionInfo; private String cameraInfo; } // /** // * 区域路径信息 // */ // @TextIndexed // private String arealayerPath; // // /** // * 区域名称 // */ // @TextIndexed // private String arealayername; // // /** // * 区域编码 // */ // private String arealayerno; // // /** // * 设备 ID // */ // @TextIndexed // private String deviceId; // // /** // * 设备名称 // */ // @TextIndexed // private String deviceName; // // /** // * 图片上的字幕时间和摄像机拉码流时间差是否大于最大值 // */ // private String diff; // // /** // * 图片上的字幕时间和摄像机拉码流时间差,单位(秒), -1 表示未知 // */ // private Integer diffTime; // // /** // * IP 地址 // */ // @TextIndexed // private String ip; // // /** // * 图片 ocr 识别结果 // */ // private OcrResult ocrResult; // // /** // * 图片地址 // */ // private String imgPath; // // /** // * 状态码,0:正常 // */ // private Integer statusCode; // // /** // * 图片上的字幕时间和摄像机拉码流时间差,单位(秒) // */ // private String osdFormat; // // /** // * osd 信息 // */ // private OsdInfo osdInfo; // // /** // * 图片上的字幕时间 // */ // private String osdTime; // // /** // * 摄像机标签 // */ // private List<String> tags; // // /** // * 更新时间 // */ // private String updateTime; // // /** // * 视频码流获取时间 // */ // private String videoGetTime; // // /** // * OCR识别结果的内部类 // */ // @Data // public static class OcrResult { // private List<String> data; // } // // /** // * osd信息的内部类 // */ // @Data // public static class OsdInfo { // private String timeInfo; // private String positionInfo; // private String cameraInfo; // } } ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/PyOsdResult.java
New file @@ -0,0 +1,144 @@ package com.ycl.platform.domain.result.UY; import lombok.Data; import org.springframework.data.mongodb.core.annotation.Collation; /** * python获取osd数据 * * @author:xp * @date:2024/8/8 19:35 */ @Data @Collation("py_osd") public class PyOsdResult { /** * 国标码 */ private String deviceNo; /** * 杆体编码 */ private String bodyNo; /** * 设备类型 */ private String deviceType; /** * 时间格式 */ private String timeFormat; private String ODS1; private String ODS2; /** * ip */ private String ip; /** * 省厅考核 */ private String provinceCheck; /** * 公安部考核 */ private String policeCheck; /** * 新IP */ private String newIp; /** * ip状态 */ private String ipStatus; /** * 检测时间 */ private String checkTime; /** * OSD检测状态 */ private String checkStatus; /** * 标注时间 */ private String setTime; /** * osd1省 */ private String osd1Province; /** * osd1市 */ private String osd1City; /** * osd1区 */ private String osd1Part; /** * osd1 左下角 */ private String osd1LB; /** * osd1_osd */ private String osd1OSD; /** * osd1_时间格式是否正确 */ private String osd1TimeFormat; /** * osd1_省设置 */ private String osd1ProvinceSet; /** * osd1_市设置 */ private String osd1CitySet; /** * osd1_区设置是否 */ private String osd1PartSet; /** * osd1_osd左下角设置是否正确 */ private String osd1OsdLbSet; /** * osd1_osd设置 */ private String osd1OsdSet; /** * osd1 时间格式 */ private String osd1TimeFormatSet; /** * ntp_server */ private String ntpServer; } ycl-server/src/main/java/com/ycl/config/SecurityConfig.java
@@ -98,6 +98,8 @@ .authorizeRequests() // 对于登录login 注册register 验证码captchaImage 允许匿名访问 .requestMatchers("/login", "/register", "/captchaImage").permitAll() // py推送psd数据接口 .requestMatchers("/py/syn/osd").permitAll() // 静态资源,可匿名访问 .requestMatchers(HttpMethod.GET, "/", "/*.html", "/*/*.html", "/*/*.css", "/*/*.js", "/profile/**").permitAll() .requestMatchers("/swagger-ui.html", "/swagger-resources/*", "/webjars/*", "/*/api-docs", "/druid/*").permitAll() ycl-server/src/main/java/com/ycl/feign/UYClient.java
@@ -50,7 +50,7 @@ * osd标注信息 * @return */ @GetMapping("/videomon/api/v1/app/osdMonitor/list") @GetMapping("/videomon-ocr/api/v1/osd/format/list") JSONObject osdMonitorList(@SpringQueryMap OsdMonitorParam param, @RequestHeader("tenantId") String tenantId); /** ycl-server/src/main/java/com/ycl/platform/controller/SynPY/SynPYController.java
New file @@ -0,0 +1,31 @@ package com.ycl.platform.controller.SynPY; import com.ycl.platform.domain.result.UY.PyOsdResult; import com.ycl.system.Result; import lombok.RequiredArgsConstructor; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * @author:xp * @date:2024/8/8 20:04 */ @RequiredArgsConstructor @RestController @RequestMapping("/py/syn") public class SynPYController { private final MongoTemplate mongoTemplate; @PostMapping("/osd") public Result pySynOSD(@RequestBody List<PyOsdResult> dataList) { mongoTemplate.insertAll(dataList); return Result.ok(); } } ycl-server/src/main/java/com/ycl/task/UYTask.java
@@ -4,6 +4,9 @@ import com.mongodb.client.result.DeleteResult; import com.ycl.feign.UYClient; import com.ycl.platform.domain.param.UY.*; import com.ycl.platform.domain.result.UY.OneMachineFileResult; import com.ycl.platform.domain.result.UY.OsdMonitorResult; import com.ycl.platform.domain.result.UY.RecordMetaDSumResult; import com.ycl.platform.domain.result.UY.*; import com.ycl.platform.service.ITMonitorService; import com.ycl.platform.service.IYwThresholdService; @@ -195,6 +198,8 @@ //视频标注 log.info("开始执行视频标注数据同步"); OsdMonitorParam param = new OsdMonitorParam(); param.setPageNum(ApiConstants.pageNo); param.setPageSize(ApiConstants.pageSize); JSONObject jsonObject = uyClient.osdMonitorList(param, tenantId); if (jsonObject != null) { log.info("数据格式" + jsonObject);