|  |  |  | 
|---|
|  |  |  | }*/ | 
|---|
|  |  |  | return list; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public  WaningEventDataVO warningEventData(Integer type){ | 
|---|
|  |  |  | WaningEventDataVO lastResult = new WaningEventDataVO(); | 
|---|
|  |  |  | 
|---|
|  |  |  | request.setPageSize(1000); | 
|---|
|  |  |  | request.setFiledOptions(new ArrayList<>()); | 
|---|
|  |  |  | request.setSorts(new ArrayList<>()); | 
|---|
|  |  |  | request.setFetchImg(true); | 
|---|
|  |  |  | RuleEventFiledOptionsRequest file = new RuleEventFiledOptionsRequest(); | 
|---|
|  |  |  | file.setFieldName("event_type"); | 
|---|
|  |  |  | file.setFieldValue("131588,131593");//安防告警和人员告警 | 
|---|
|  |  |  | //安防事件划分方式: | 
|---|
|  |  |  | //重点区域:重点人员-1644175361、区域入侵-1644175361、陌生人-1644171265、车辆违停-1644171265 | 
|---|
|  |  |  | //危险行为:人员倒地-1644171265、未带安全帽-422000002、抽烟-422000000、打电话-422000001、睡岗-422400001、离岗-422400000 | 
|---|
|  |  |  | file.setFieldValue("131588,131593,1644171265,422000002,422000000,422000001,422400001,422400000,1644175361,1644175361,1644171265,1644171265");//安防告警和人员告警 | 
|---|
|  |  |  | file.setType("in"); | 
|---|
|  |  |  | if(type == 1){ | 
|---|
|  |  |  | file.setFieldValue("131588");//安防告警 | 
|---|
|  |  |  | file.setFieldValue("131588,1644175361,1644175361,1644171265,1644171265");//安防告警 区域入侵 | 
|---|
|  |  |  | }else  if(type == 2){ | 
|---|
|  |  |  | file.setFieldValue("131593");//人员告警 | 
|---|
|  |  |  | file.setFieldValue("131593,1644171265,422000002,422000000,422000001,422400001,422400000");//人员告警 危险行为 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | request.getFiledOptions().add(file); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | RuleEventFiledOptionsRequest fileLte = new RuleEventFiledOptionsRequest(); | 
|---|
|  |  |  | fileLte.setFieldName("happen_time"); | 
|---|
|  |  |  | fileLte.setFieldValue(DateUtil.formatDate(Utils.Date.getEnd(new Date()),"yyyy-MM-dd HH:mm:ss")); | 
|---|
|  |  |  | fileLte.setType("lte"); | 
|---|
|  |  |  | request.getFiledOptions().add(fileLte); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | RuleEventFiledOptionsRequest fileGte = new RuleEventFiledOptionsRequest(); | 
|---|
|  |  |  | fileGte.setFieldName("happen_time"); | 
|---|
|  |  |  | fileGte.setFieldValue(DateUtil.formatDate(Utils.Date.getStart(new Date()),"yyyy-MM-dd HH:mm:ss")); | 
|---|
|  |  |  | fileGte.setType("gte"); | 
|---|
|  |  |  | request.getFiledOptions().add(fileGte); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | RuleEventFiledOptionsRequest fileStatus = new RuleEventFiledOptionsRequest(); | 
|---|
|  |  |  | fileStatus.setFieldName("handle_status"); | 
|---|
|  |  |  | fileStatus.setFieldValue("99"); | 
|---|
|  |  |  | fileStatus.setType("neq"); | 
|---|
|  |  |  | request.getFiledOptions().add(fileStatus); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | SortRequest sort = new SortRequest(); | 
|---|
|  |  |  | sort.setSortField("happen_time"); | 
|---|
|  |  |  | sort.setSortType("desc"); | 
|---|
|  |  |  | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | if(DateUtil.getISO8601DateByStr(r.getHappen_time()).getTime() < Utils.Date.getStart(new Date()).getTime()){ | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.equals(r.getStatus(),"99")){ | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | List<Long> startTimeList = platformLogList.stream().filter(i->Objects.nonNull(i.getParam1())) | 
|---|
|  |  |  | .filter(i->Objects.nonNull(i.getParam1())&&i.getParam1().indexOf(today)>=0) | 
|---|
|  |  |  | .map(i->DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",i.getParam1()).getTime()).collect(Collectors.toList()); | 
|---|
|  |  |  | Long startTime  = Collections.min(startTimeList); | 
|---|
|  |  |  | Long startTime  = null ; | 
|---|
|  |  |  | if(CollectionUtils.isNotEmpty(startTimeList)){ | 
|---|
|  |  |  | startTime = Collections.min(startTimeList); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //获取结束时间 | 
|---|
|  |  |  | List<Long> endTimeList = platformLogList.stream() | 
|---|
|  |  |  | .filter(i->Objects.nonNull(i.getParam2())&&i.getParam2().indexOf(today)>=0) | 
|---|
|  |  |  | .map(i->DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",i.getParam2()).getTime()).collect(Collectors.toList()); | 
|---|
|  |  |  | Long endTime = Collections.max(endTimeList); | 
|---|
|  |  |  | Long endTime = null ; | 
|---|
|  |  |  | if(CollectionUtils.isNotEmpty(endTimeList)){ | 
|---|
|  |  |  | endTime = Collections.max(endTimeList); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(Objects.isNull(startTime) | 
|---|
|  |  |  | || Objects.isNull(endTime) || (startTime>=endTime)){ | 
|---|
|  |  |  | return BigDecimal.ZERO; | 
|---|
|  |  |  | 
|---|
|  |  |  | data.setDeviceTypeList(list); | 
|---|
|  |  |  | Long totalNum =hiddenDangerMapper.selectCount(new QueryWrapper<HiddenDanger>().lambda() | 
|---|
|  |  |  | .eq(HiddenDanger::getIsdeleted,Constants.ZERO ) | 
|---|
|  |  |  | .apply("to_days(create_date) = to_days(now())" ) ); | 
|---|
|  |  |  | .apply(" DATE_FORMAT(create_date, '%Y-%m')  = DATE_FORMAT(now(), '%Y-%m')  " ) ); | 
|---|
|  |  |  | data.setDangerTotalNum(totalNum !=null?totalNum.intValue():0);//今日隐患数量 | 
|---|
|  |  |  | totalNum =hiddenDangerMapper.selectCount(new QueryWrapper<HiddenDanger>().lambda() | 
|---|
|  |  |  | .eq(HiddenDanger::getIsdeleted,Constants.ZERO ) | 
|---|
|  |  |  | .in(HiddenDanger::getStatus,Constants.ONE,Constants.TWO ) | 
|---|
|  |  |  | .apply("to_days(check_date) = to_days(now())" ) ); | 
|---|
|  |  |  | //                .in(HiddenDanger::getStatus,Constants.ONE,Constants.TWO ) | 
|---|
|  |  |  | .eq(HiddenDanger::getStatus,Constants.ZERO ) | 
|---|
|  |  |  | .apply(" DATE_FORMAT(create_date, '%Y-%m')  = DATE_FORMAT(now(), '%Y-%m')  " ) ); | 
|---|
|  |  |  | data.setDangerDealedNum(totalNum !=null?totalNum.intValue():0);//今日处理隐患数量 | 
|---|
|  |  |  | return  data; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | data.setInParkCarTotal( | 
|---|
|  |  |  | (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)).count() | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | //2025年8月4日09:24:23 更换数据源 不从海康取 | 
|---|
|  |  |  | data.setFreeParkingLot(data.getParkingLotTotal()<data.getInParkCarTotal()?Constants.ZERO:data.getParkingLotTotal() - data.getInParkCarTotal()); | 
|---|
|  |  |  | //当前在园货车司机总数 | 
|---|
|  |  |  | data.setInParkCarUserTotal( | 
|---|
|  |  |  | (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.FIVE)).count() | 
|---|