zxl
2025-06-05 0ba453c66cd5d20b970c894358031c9c06df7071
大屏修改,以及报错日志添加
3个文件已修改
69 ■■■■■ 已修改文件
ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckIndexVideoServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/task/ContractTask.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java
@@ -12,8 +12,7 @@
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.List;
/**
 * 数据中心接口
@@ -32,8 +31,6 @@
    Result updateDynamicValue(UpdateDynamicValueForm form);
    //zxl
    BigDecimal videoPointOnlineRateCount(DataCenterQuery params);
    /**
     * 视频:点位在线率
@@ -76,8 +73,6 @@
     */
    Result videoAssessmentFileRatio(DataCenterQuery query);
    //zxl
    BigDecimal videoAvailabilityRateCount(DataCenterQuery params);
    /**
     * 视频:录像可用率
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckIndexVideoServiceImpl.java
@@ -101,31 +101,8 @@
        return checkIndexVideoMapper.deleteCheckIndexVideoById(id);
    }
    public final DataCenterService dataCenterService;
    @Override
    public CheckIndexVideo dashboard(DashboardQuery dashboardQuery) {
        //修改 录像可用率 和 点位在线率在今天
        if(dashboardQuery.getDeptId() == null){
            DataCenterQuery dataCenterQuery = new DataCenterQuery();
            dataCenterQuery.setDate(new Date());
            dataCenterQuery.setTime();
            //区县 2  省厅 1  公安部3
            if(dashboardQuery.getDataScope() == 2){
                dataCenterQuery.setDataType(0);
            }else if(dashboardQuery.getDataScope() == 1){
                dataCenterQuery.setDataType(1);
            }else if(dashboardQuery.getDataScope() == 3){
                dataCenterQuery.setDataType(2);
            }
            //全部0 省厅1 公安部2
            CheckIndexVideo checkIndexVideo = checkIndexVideoMapper.dashboard(dashboardQuery);
            checkIndexVideo.setSiteOnline(dataCenterService.videoPointOnlineRateCount(dataCenterQuery));
            checkIndexVideo.setVideoAvailable(dataCenterService.videoAvailabilityRateCount(dataCenterQuery));
            return  checkIndexVideo;
        }
        return checkIndexVideoMapper.dashboard(dashboardQuery);
    }
}
ycl-server/src/main/java/com/ycl/task/ContractTask.java
@@ -24,6 +24,7 @@
import enumeration.general.WorkOrderStatusEnum;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataAccessException;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
@@ -365,13 +366,24 @@
     * 海康取人脸车辆
     */
    public void randomDeductPic() {
        try {
        log.info("开始抽查图片完整状态");
        //这个月随机抽取一天
        Date date = getRandomDate();
//        Date date = getRandomDate();
            Calendar calendar = Calendar.getInstance();
            calendar.add(Calendar.MONTH, -1); // 上个月
            calendar.set(Calendar.DAY_OF_MONTH, 1); // 设置为1号
            int lastDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
            Random random = new Random();
            int randomDay = random.nextInt(lastDay) + 1;
            calendar.set(Calendar.DAY_OF_MONTH, randomDay);
            Date date = calendar.getTime();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        //准备批量打分的集合
        List<ContractScore> contractScoreList = new ArrayList<>();
        //查询报备列表
            //查询报备列表 通过审核并且创建时间在当前日期的报备id列表
        List<String> reportNumbers = reportMapper.selectNumberList(AuditStatus_Pass, DateUtils.getDate());
        //查图片完整性规则 获取key为合同id,value为规则的map
        Map<Integer, List<CalculateRuleVO>> contractMap = contractMapper.getCalculateRule(new Date()).stream()
@@ -424,6 +436,17 @@
        }
        contractScoreService.saveBatch(contractScoreList);
        log.info("结束抽查图片完整状态");
        }catch (NullPointerException e) {
            log.error("空指针异常,抽查图片完整状态失败: {}", e.getMessage(), e);
        } catch (DataAccessException e) {
            log.error("数据库访问异常,抽查图片完整状态失败: {}", e.getMessage(), e);
        } catch (IllegalArgumentException e) {
            log.error("参数不合法异常,抽查图片完整状态失败: {}", e.getMessage(), e);
        } catch (Exception e) {
            log.error("未知异常,抽查图片完整状态失败: ", e); // 注意这里使用逗号而不是+,可以打印完整堆栈
            // 如果需要可以抛出运行时异常
            throw new RuntimeException("抽查图片完整状态失败", e);
        }
    }
@@ -432,6 +455,7 @@
     * 优云取录像
     */
    public void randomDeductVideo() {
        try{
        log.info("开始抽查录像完整状态");
        //这个月随机抽取一天
        Date date = getRandomDate();
@@ -503,6 +527,17 @@
            });
        }
        contractScoreService.saveBatch(contractScoreList);
    }catch (NullPointerException e) {
            log.error("空指针异常,抽查图片完整状态失败: {}", e.getMessage(), e);
        } catch (DataAccessException e) {
            log.error("数据库访问异常,抽查图片完整状态失败: {}", e.getMessage(), e);
        } catch (IllegalArgumentException e) {
            log.error("参数不合法异常,抽查图片完整状态失败: {}", e.getMessage(), e);
        } catch (Exception e) {
            log.error("未知异常,抽查图片完整状态失败: ", e); // 注意这里使用逗号而不是+,可以打印完整堆栈
            // 如果需要可以抛出运行时异常
            throw new RuntimeException("抽查图片完整状态失败", e);
        }
    }
    private Date getRandomDate() {