fuliqi
2024-07-30 7fed6ecd850022ba7cd2ac68a1b70460a204d6c6
车辆、人脸对接接口
16个文件已修改
192 ■■■■ 已修改文件
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/AttrRecognitionMonitorResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CarDetectResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CodeByAreaResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CoordinateByAreaResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CriteriaResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CrossDetailResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/DataIntegrityMonitoringResult.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/FaceDetectResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/FaceDeviceSamplingResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/MonitorResourceResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/MonitoringDetailResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/OrganizationTreeResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/PicAccessResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/SnapshotDelayMonitorResult.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/VehicleDeviceSamplingResult.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/task/HKTask.java 158 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/AttrRecognitionMonitorResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 属性识别准确监测结果
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "attr_recognition_monitor")
public class AttrRecognitionMonitorResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CarDetectResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 按区域统计车辆数据监测指标项(2.3.0新增)
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "car_detect")
public class CarDetectResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CodeByAreaResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 按区域统计编码异常设备或卡口
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "code_by_area")
public class CodeByAreaResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CoordinateByAreaResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 按区域统计经纬度异常设备或卡口
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "coordinate_by_area")
public class CoordinateByAreaResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CriteriaResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 指标配置信息查询
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "criteria")
public class CriteriaResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/CrossDetailResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 卡口属性监测结果(调整,可查历史)
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "cross_detail")
public class CrossDetailResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/DataIntegrityMonitoringResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 数据完整性监测结果,2.2.0版本新增
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "data_integrity_monitoring")
public class DataIntegrityMonitoringResult extends BaseResult{
    /**
@@ -15,7 +17,7 @@
     */
    private String indexCode;
    /**
     /**
     * 设备或卡口国标编码
     */
    private String externalIndexCode;
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/FaceDetectResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 按区域统计人脸数据监测指标项(2.3.0新增)
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "face_detect")
public class FaceDetectResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/FaceDeviceSamplingResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 人脸设备抽检指标监测结果,2.3.0版本新增
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "face_device_sampling")
public class FaceDeviceSamplingResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/MonitorResourceResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
import java.util.List;
@@ -9,6 +10,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "monitor_resource")
public class MonitorResourceResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/MonitoringDetailResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 采集设备属性监测结果
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "monitoring_detail")
public class MonitoringDetailResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/OrganizationTreeResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
import java.util.List;
@@ -10,6 +11,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "organization_tree")
public class OrganizationTreeResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/PicAccessResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 图片访问监测结果
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "pic_access")
public class PicAccessResult extends BaseResult{
    /**
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/SnapshotDelayMonitorResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 抓拍数据时延监测结果
@@ -8,8 +9,9 @@
 * @author gonghl
 */
@Data
@Document(collection = "snapshop_delay_monitor")
public class SnapshotDelayMonitorResult extends BaseResult{
    private Integer dataType;
    /**
     * dataType为1:卡口内码   dataType为2或11:采集设备内码
     */
ycl-pojo/src/main/java/com/ycl/platform/domain/result/HK/VehicleDeviceSamplingResult.java
@@ -1,6 +1,7 @@
package com.ycl.platform.domain.result.HK;
import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
/**
 * 车辆设备抽检指标监测结果,2.3.0版本新增
@@ -8,6 +9,7 @@
 * @author gonghl
 */
@Data
@Document(collection = "vehicle_device_sampling")
public class VehicleDeviceSamplingResult extends BaseResult{
    /**
ycl-server/src/main/java/com/ycl/task/HKTask.java
@@ -45,7 +45,7 @@
    private ICheckIndexVideoService checkIndexVideoService;
    //车辆设备全检指标监测结果
    public void VehicleDeviceInspectionTask() {
    public void vehicleDeviceInspectionTask() {
        log.info("开始执行车辆设备全检指标监测结果数据同步");
        VehicleDeviceInspectionParam param = new VehicleDeviceInspectionParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate());
@@ -64,7 +64,7 @@
    }
    //人脸设备全检指标监测结果
    public void FaceDeviceInspectionTask() {
    public void faceDeviceInspectionTask() {
        log.info("开始执行人脸设备全检指标监测结果数据同步");
        FaceDeviceInspectionParam param = new FaceDeviceInspectionParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate());
@@ -85,7 +85,7 @@
    //抓拍数据量监测结果
    public void SnapshotDataMonitorTask() {
    public void snapshotDataMonitorTask() {
        log.info("开始执行抓拍数据量检测结果数据同步");
        /** 车辆数据 */
        SnapshotDataMonitorParam carParam = new SnapshotDataMonitorParam();
@@ -99,7 +99,7 @@
                    .and("dataType").is(ApiConstants.HK_DATATYPE_CAR));
            DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class);
            //存放在mongo中
            carList.forEach(item->item.setDataType(ApiConstants.HK_DATATYPE_CAR));
            carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_CAR));
            mongoTemplate.insert(carList);
        }
@@ -115,24 +115,17 @@
                    .and("dataType").is(ApiConstants.HK_DATATYPE_FACE));
            DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class);
            //存放在mongo中
            carList.forEach(item->item.setDataType(ApiConstants.HK_DATATYPE_FACE));
            carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_FACE));
            mongoTemplate.insert(faceList);
        }
        //TODO:工单
        log.info("结束抓拍数据量检测结果数据同步");
    }
    //一机一档
    public void task2() {
        //联网卡口设备目录一致率
    }
    //采集设备属性监测结果(人脸)
    public void monitorDetailTask() {
        log.info("开始执行采集设备属性监测结果数据同步");
        //采集设备属性监测结果
        //人脸卡口信息采集准确率
        MonitoringDetailParam param = new MonitoringDetailParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate());
        JSONObject jsonObject = hkClient.monitorDetail(param);
@@ -141,7 +134,7 @@
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class);
            DeleteResult result = mongoTemplate.remove(query, MonitoringDetailResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
@@ -161,7 +154,7 @@
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class);
            DeleteResult result = mongoTemplate.remove(query, CrossDetailResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
@@ -170,30 +163,143 @@
    }
    //数据完整性监测结果
    public void task4() {
    public void dataIntegrityMonitoringTask() {
        log.info("开始执行数据完整性监测结果数据同步");
        //车辆卡口设备抓拍数据完整性
        DataIntegrityMonitoringParam param = new DataIntegrityMonitoringParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR);
        JSONObject jsonObject = hkClient.DataIntegrityMonitoring(param);
        List<DataIntegrityMonitoringResult> faceList = getDataList(jsonObject, DataIntegrityMonitoringResult.class, "数据完整性监测结果数据为空");
        if (!CollectionUtils.isEmpty(faceList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, DataIntegrityMonitoringResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
        //TODO:工单处理
        log.info("结束数据完整性监测结果数据同步");
    }
    //属性识别准确监测结果
    public void task5() {
        //车辆卡口设备抓拍数据完整性
    }
    public void attrRecognitionMonitorTask() {
        log.info("开始执行属性识别准确监测结果数据同步");
        //车辆卡口设备抓拍数据准确性
        AttrRecognitionParam param = new AttrRecognitionParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR);
        JSONObject jsonObject = hkClient.AttrRecognitionMonitor(param);
        List<AttrRecognitionMonitorResult> faceList = getDataList(jsonObject, AttrRecognitionMonitorResult.class, "属性识别准确监测结果数据为空");
        if (!CollectionUtils.isEmpty(faceList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, AttrRecognitionMonitorResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
        //TODO:工单处理
        log.info("结束属性识别准确监测结果数据同步");
    //车辆设备全检指标监测结果
    public void task6() {
        //车辆卡口设备时钟准确性
    }
    //抓拍数据时延监测结果
    public void task7() {
    public void snapshopDelayMonitorTask() {
        log.info("开始执行抓拍数据时延监测结果数据同步");
        //车辆卡口设备抓拍数据上传及时性
        /** 车辆数据 */
        SnapshotDelayMonitorParam carParam = new SnapshotDelayMonitorParam();
        carParam.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR);
        JSONObject carJsonObject = hkClient.SnapshotDelayMonitor(carParam);
        List<SnapshotDelayMonitorResult> carList = getDataList(carJsonObject, SnapshotDelayMonitorResult.class, "车辆抓拍数据量检测结果数据");
        if (!CollectionUtils.isEmpty(carList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))
                    .and("dataType").is(ApiConstants.HK_DATATYPE_CAR));
            DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class);
            //存放在mongo中
            carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_CAR));
            mongoTemplate.insert(carList);
        }
        /** 人脸数据 */
        SnapshotDelayMonitorParam faceParam = new SnapshotDelayMonitorParam();
        faceParam.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_FACE);
        JSONObject faceJsonObject = hkClient.SnapshotDelayMonitor(faceParam);
        List<SnapshotDelayMonitorParam> faceList = getDataList(faceJsonObject, SnapshotDelayMonitorParam.class, "人脸抓拍数据量检测结果数据为空");
        if (!CollectionUtils.isEmpty(faceList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))
                    .and("dataType").is(ApiConstants.HK_DATATYPE_FACE));
            DeleteResult result = mongoTemplate.remove(query, SnapshotDataMonitorResult.class);
            //存放在mongo中
            carList.forEach(item -> item.setDataType(ApiConstants.HK_DATATYPE_FACE));
            mongoTemplate.insert(faceList);
        }
        //TODO:工单
        log.info("结束抓拍数据时延监测结果数据同步");
    }
    //图片访问监测结果
    public void task8() {
        //车辆卡口信息采集准确率
    public void PicAccessTask() {
        log.info("开始执行图片访问监测结果数据同步");
        //车辆卡口信息采集准确率、车辆卡口设备url可用性
        PicAccessParam param = new PicAccessParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate()).setDataType(ApiConstants.HK_DATATYPE_CAR);
        JSONObject jsonObject = hkClient.PicAccessMonitor(param);
        List<PicAccessResult> faceList = getDataList(jsonObject, PicAccessResult.class, "图片访问监测结果数据为空");
        if (!CollectionUtils.isEmpty(faceList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
        //TODO:工单处理
        log.info("结束图片访问监测结果数据同步");
    }
        //车辆卡口设备url可用性
    //人脸设备抽检指标监测结果
    public void Face() {
        log.info("开始执行人脸设备抽检指标监测结果数据同步");
        //车辆卡口信息采集准确率、车辆卡口设备url可用性
        FaceDeviceSamplingParam param = new FaceDeviceSamplingParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate());
        JSONObject jsonObject = hkClient.FaceDeviceSampling(param);
        List<FaceDeviceSamplingResult> faceList = getDataList(jsonObject, FaceDeviceSamplingResult.class, "人脸设备抽检指标监测结果数据为空");
        if (!CollectionUtils.isEmpty(faceList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
        //TODO:工单处理
        log.info("结束人脸设备抽检指标监测结果数据同步");
    }
    //车辆设备抽检指标监测结果
    public void FaceDeviceSamplingTask() {
        log.info("开始执行车辆设备抽检指标监测结果数据同步");
        //车辆卡口信息采集准确率、车辆卡口设备url可用性
        FaceDeviceSamplingParam param = new FaceDeviceSamplingParam();
        param.setPageNO(ApiConstants.pageNo).setPageSize(ApiConstants.pageSize).setDate(DateUtils.getDate());
        JSONObject jsonObject = hkClient.FaceDeviceSampling(param);
        List<FaceDeviceSamplingResult> faceList = getDataList(jsonObject, FaceDeviceSamplingResult.class, "人脸设备抽检指标监测结果数据为空");
        if (!CollectionUtils.isEmpty(faceList)) {
            //如果今天存在之前的数据先删除
            Query query = new Query(Criteria
                    .where("createTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
            DeleteResult result = mongoTemplate.remove(query, PicAccessResult.class);
            //存放在mongo中
            mongoTemplate.insert(faceList);
        }
        //TODO:工单处理
        log.info("结束人脸设备抽检指标监测结果数据同步");
    }
    //解析数据