|
@@ -1,725 +0,0 @@
|
|
|
-/**
|
|
|
|
|
- * Copyright 2019 DH
|
|
|
|
|
- * All right reserved.
|
|
|
|
|
- * 项目名称: 山洪灾害运维系统
|
|
|
|
|
- * 创建日期:2023/8/7
|
|
|
|
|
- */
|
|
|
|
|
-package org.springblade.jobtask;
|
|
|
|
|
-
|
|
|
|
|
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
|
|
-import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
-import org.glassfish.jersey.internal.guava.ThreadFactoryBuilder;
|
|
|
|
|
-import org.springblade.constant.BusinessConstant;
|
|
|
|
|
-import org.springblade.constant.DictBusinessConstant;
|
|
|
|
|
-import org.springblade.core.tool.utils.Func;
|
|
|
|
|
-import org.springblade.enums.OrderCloseEnum;
|
|
|
|
|
-import org.springblade.enums.OrderConfirmEnum;
|
|
|
|
|
-import org.springblade.enums.OrderStatusEnum;
|
|
|
|
|
-import org.springblade.enums.WarnKindEnum;
|
|
|
|
|
-import org.springblade.modules.baseinfo.dict.entity.DictInfoEntity;
|
|
|
|
|
-import org.springblade.modules.baseinfo.dict.service.IBaseInfoDictService;
|
|
|
|
|
-import org.springblade.modules.baseinfo.org.entity.DeptRegionEntity;
|
|
|
|
|
-import org.springblade.modules.baseinfo.org.service.IDeptRegionService;
|
|
|
|
|
-import org.springblade.modules.baseinfo.region.entity.RegionInfoEntity;
|
|
|
|
|
-import org.springblade.modules.baseinfo.region.service.IBaseInfoRegionService;
|
|
|
|
|
-import org.springblade.modules.baseinfo.rtu.dto.RtuInfoDTO;
|
|
|
|
|
-import org.springblade.modules.baseinfo.rtu.service.IRtuBaseInfoService;
|
|
|
|
|
-import org.springblade.modules.business.check.order.dto.CheckOrderInfoDTO;
|
|
|
|
|
-import org.springblade.modules.business.check.order.service.IRtuCheckOrderService;
|
|
|
|
|
-import org.springblade.modules.business.check.process.service.IRtuOrderProcessService;
|
|
|
|
|
-import org.springblade.modules.business.check.process.vo.OrderProcessInfoVO;
|
|
|
|
|
-import org.springblade.modules.business.rtumanage.dto.RtuStatusDTO;
|
|
|
|
|
-import org.springblade.modules.business.rtumanage.service.IRtuManageService;
|
|
|
|
|
-import org.springblade.modules.business.warning.dto.RtuWarningInfoDTO;
|
|
|
|
|
-import org.springblade.modules.business.warning.entity.RtuWarningInfoEntity;
|
|
|
|
|
-import org.springblade.modules.business.warning.service.IRtuWarningService;
|
|
|
|
|
-import org.springblade.modules.report.entity.*;
|
|
|
|
|
-import org.springblade.modules.report.service.*;
|
|
|
|
|
-import org.springblade.modules.system.entity.Dept;
|
|
|
|
|
-import org.springblade.modules.system.service.IDeptService;
|
|
|
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
|
|
-import org.springframework.scheduling.annotation.EnableScheduling;
|
|
|
|
|
-import org.springframework.scheduling.annotation.Scheduled;
|
|
|
|
|
-import org.springframework.stereotype.Component;
|
|
|
|
|
-
|
|
|
|
|
-import javax.annotation.Resource;
|
|
|
|
|
-import java.text.SimpleDateFormat;
|
|
|
|
|
-import java.util.*;
|
|
|
|
|
-import java.util.concurrent.*;
|
|
|
|
|
-
|
|
|
|
|
-/***
|
|
|
|
|
- * Date:2023/8/7
|
|
|
|
|
- * Title:报表统计
|
|
|
|
|
- * Description:按自治区进行周报统计、按盟市统计维修任务信息
|
|
|
|
|
- * @author dylan
|
|
|
|
|
- * @version 1.0
|
|
|
|
|
- * Remark:认为有必要的其他信息
|
|
|
|
|
- */
|
|
|
|
|
-@Slf4j
|
|
|
|
|
-@Component
|
|
|
|
|
-@EnableScheduling
|
|
|
|
|
-public class ReportCountProcessor {
|
|
|
|
|
- private static ThreadFactory reportCountThreadFactory = new ThreadFactoryBuilder().setNameFormat("report-count-thread-pool-%d").build();
|
|
|
|
|
- private static ExecutorService reportCountThreadPool = new ThreadPoolExecutor(1, 1,
|
|
|
|
|
- 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>(1024), reportCountThreadFactory, new ThreadPoolExecutor.AbortPolicy());
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgCountService weekReportService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgRtuFailureService weekOrgRtuFailureService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgCheckOrderService weekOrgCheckOrderService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgRtuUpService weekOrgRtuUpService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgCheckOrderReportService weekOrgCheckOrderReportService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgEquipmentReplaceService weekOrgEquipmentReplaceService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IWeekOrgCheckOrderDayService orgCheckOrderDayService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IRtuBaseInfoService rtuBaseInfoService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IRtuCheckOrderService checkOrderService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IRtuOrderProcessService orderProcessService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IRtuWarningService rtuWarningService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IBaseInfoDictService dictService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IDeptRegionService deptRegionService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IBaseInfoRegionService regionService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IDeptService deptService;
|
|
|
|
|
-
|
|
|
|
|
- @Resource
|
|
|
|
|
- private IRtuManageService rtuManageService;
|
|
|
|
|
-
|
|
|
|
|
- @Value("${spring.task-config.report-task}")
|
|
|
|
|
- private boolean reportTaskRun;
|
|
|
|
|
-
|
|
|
|
|
-// @Scheduled(cron = "10 0 0 * * MON")
|
|
|
|
|
- public void reportWeekOrgCountTask() {
|
|
|
|
|
- if (reportTaskRun) {
|
|
|
|
|
- Date dt = new Date();
|
|
|
|
|
- log.info("周报表统计任务创建 {}", Func.formatDateTime(dt));
|
|
|
|
|
- WeekOrgCountTask task = new WeekOrgCountTask(dt);
|
|
|
|
|
- FutureTask<Integer> futureTask = new FutureTask<>(task);
|
|
|
|
|
- reportCountThreadPool.execute(futureTask);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
-// @Scheduled(cron = "20 0 0 0/1 * *")
|
|
|
|
|
- public void reportWeekOrgOrderDayCountTask() {
|
|
|
|
|
- if (reportTaskRun) {
|
|
|
|
|
- Date dt = new Date();
|
|
|
|
|
- log.info("盟市按日维修任务数据统计任务创建 {}", Func.formatDateTime(dt));
|
|
|
|
|
- WeekOrgDayCountTask task = new WeekOrgDayCountTask(dt);
|
|
|
|
|
- FutureTask<Integer> futureTask = new FutureTask<>(task);
|
|
|
|
|
- reportCountThreadPool.execute(futureTask);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
-// @Scheduled(cron = "30 0 0 1 * * ")
|
|
|
|
|
- public void reportMonthCountTask() {
|
|
|
|
|
- try {
|
|
|
|
|
- if (reportTaskRun) {
|
|
|
|
|
- Date dt = new Date();
|
|
|
|
|
- log.info("月统计任务创建 {}", Func.formatDateTime(dt));
|
|
|
|
|
- }
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("{}", e.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- private class WeekOrgDayCountTask implements Callable<Integer> {
|
|
|
|
|
- private Date reportTime;
|
|
|
|
|
-
|
|
|
|
|
- public WeekOrgDayCountTask(Date reportTime) {
|
|
|
|
|
- this.reportTime = reportTime;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Override
|
|
|
|
|
- public Integer call() throws Exception {
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("盟市周统计,按天统计维修任务 {} {}", Func.formatDateTime(reportTime), Func.formatDateTime(new Date()));
|
|
|
|
|
- Calendar calendar = Calendar.getInstance();
|
|
|
|
|
- calendar.setTime(reportTime);
|
|
|
|
|
- calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
|
|
- calendar.set(Calendar.MINUTE, 0);
|
|
|
|
|
- calendar.set(Calendar.SECOND, 0);
|
|
|
|
|
- calendar.set(Calendar.MILLISECOND, 0);
|
|
|
|
|
- calendar.add(Calendar.DAY_OF_MONTH, -1);
|
|
|
|
|
- log.info("统计日期 {}", Func.formatDateTime(calendar.getTime()));
|
|
|
|
|
- LambdaQueryWrapper<WeekOrgCheckOrderDayInfoEntity> wrapper = Wrappers.<WeekOrgCheckOrderDayInfoEntity>query().lambda();
|
|
|
|
|
- wrapper.eq(WeekOrgCheckOrderDayInfoEntity::getIsDeleted, 0);
|
|
|
|
|
- wrapper.eq(WeekOrgCheckOrderDayInfoEntity::getCountTime, calendar.getTime());
|
|
|
|
|
- long size = orgCheckOrderDayService.count(wrapper);
|
|
|
|
|
- if (size == 0) {
|
|
|
|
|
- calendar.setTime(reportTime);
|
|
|
|
|
- calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
|
|
- calendar.set(Calendar.MINUTE, 0);
|
|
|
|
|
- calendar.set(Calendar.SECOND, 0);
|
|
|
|
|
- calendar.set(Calendar.MILLISECOND, 0);
|
|
|
|
|
- Date endTm = calendar.getTime();
|
|
|
|
|
- calendar.add(Calendar.DAY_OF_MONTH, -1);
|
|
|
|
|
- int day = calendar.get(Calendar.DAY_OF_WEEK);
|
|
|
|
|
- String weekName = "";
|
|
|
|
|
- if (1 == day) {
|
|
|
|
|
- weekName = "周日";
|
|
|
|
|
- } else if (2 == day) {
|
|
|
|
|
- weekName = "周一";
|
|
|
|
|
- } else if (3 == day) {
|
|
|
|
|
- weekName = "周二";
|
|
|
|
|
- } else if (4 == day) {
|
|
|
|
|
- weekName = "周三";
|
|
|
|
|
- } else if (5 == day) {
|
|
|
|
|
- weekName = "周四";
|
|
|
|
|
- } else if (6 == day) {
|
|
|
|
|
- weekName = "周五";
|
|
|
|
|
- } else if (7 == day) {
|
|
|
|
|
- weekName = "周六";
|
|
|
|
|
- }
|
|
|
|
|
- Date startTm = calendar.getTime();
|
|
|
|
|
- log.info("统计日期区间 {} {}", Func.formatDateTime(startTm), Func.formatDateTime(endTm));
|
|
|
|
|
- String adCode = BusinessConstant.REGION_NM_ADCODE;
|
|
|
|
|
- WeekOrgCheckOrderDayInfoEntity dayInfoEntity = new WeekOrgCheckOrderDayInfoEntity();
|
|
|
|
|
- dayInfoEntity.setCountTime(calendar.getTime());
|
|
|
|
|
- dayInfoEntity.setWeekName(weekName);
|
|
|
|
|
- //任务总数
|
|
|
|
|
- CheckOrderInfoDTO checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(adCode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(endTm);
|
|
|
|
|
- long count = checkOrderService.orderCount(checkOrderInfoDTO);
|
|
|
|
|
- dayInfoEntity.setOrderCount((int) count);
|
|
|
|
|
-
|
|
|
|
|
- //未确认任务
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CREATE.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(endTm);
|
|
|
|
|
- count = checkOrderService.orderCount(checkOrderInfoDTO);
|
|
|
|
|
- dayInfoEntity.setUnconfirmOrderCount((int) count);
|
|
|
|
|
-
|
|
|
|
|
- //处理中任务
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CONFIRM.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(endTm);
|
|
|
|
|
- DictInfoEntity biz = dictService.getDict(DictBusinessConstant.ORDER_STATUS_CODE, OrderStatusEnum.STATUS_CONFIRM.getCode());
|
|
|
|
|
- if (biz != null) {
|
|
|
|
|
- checkOrderInfoDTO.setOrderStatusKey(biz.getId());
|
|
|
|
|
- }
|
|
|
|
|
- long unCloseOrderCount = checkOrderService.unCloseOrderCount(checkOrderInfoDTO);
|
|
|
|
|
- dayInfoEntity.setProcessingOrderCount((int) unCloseOrderCount);
|
|
|
|
|
-
|
|
|
|
|
- //已处理维修任务数量
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CONFIRM.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setReportStartDate(startTm);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(endTm);
|
|
|
|
|
- DictInfoEntity orderProcessDict = dictService.getDict(DictBusinessConstant.ORDER_STATUS_CODE, OrderStatusEnum.STATUS_PROCESS.getCode());
|
|
|
|
|
- if (orderProcessDict != null) {
|
|
|
|
|
- checkOrderInfoDTO.setOrderStatusKey(orderProcessDict.getId());
|
|
|
|
|
- }
|
|
|
|
|
- long reports = checkOrderService.reportCount(checkOrderInfoDTO);
|
|
|
|
|
- dayInfoEntity.setReportOrderCount((int) reports);
|
|
|
|
|
-
|
|
|
|
|
- orgCheckOrderDayService.save(dayInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- e.printStackTrace();
|
|
|
|
|
- log.error(e.getMessage());
|
|
|
|
|
- } finally {
|
|
|
|
|
- log.info("盟市周统计,按天统计维修任务,运行完成 {}", Func.formatDateTime(new Date()));
|
|
|
|
|
- }
|
|
|
|
|
- return 0;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- private class WeekOrgCountTask implements Callable<Integer> {
|
|
|
|
|
-
|
|
|
|
|
- private Date reportTime;
|
|
|
|
|
-
|
|
|
|
|
- public WeekOrgCountTask(Date reportTime) {
|
|
|
|
|
- this.reportTime = reportTime;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Override
|
|
|
|
|
- public Integer call() throws Exception {
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("盟市周统计 {} {}", Func.formatDateTime(reportTime), Func.formatDateTime(new Date()));
|
|
|
|
|
- Calendar calendar = Calendar.getInstance();
|
|
|
|
|
- calendar.setTime(reportTime);
|
|
|
|
|
- calendar.add(Calendar.WEEK_OF_MONTH, 0);
|
|
|
|
|
- calendar.set(Calendar.DAY_OF_WEEK, 2);
|
|
|
|
|
- calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
|
|
- calendar.set(Calendar.MINUTE, 0);
|
|
|
|
|
- calendar.set(Calendar.SECOND, 0);
|
|
|
|
|
- calendar.set(Calendar.MILLISECOND, 0);
|
|
|
|
|
- //统计第几周
|
|
|
|
|
- int week = calendar.get(Calendar.WEEK_OF_MONTH);
|
|
|
|
|
- if (week == 1) {
|
|
|
|
|
- week = 4;
|
|
|
|
|
- } else {
|
|
|
|
|
- week = week - 1;
|
|
|
|
|
- }
|
|
|
|
|
- LambdaQueryWrapper<WeekOrgCountInfoEntity> wrapper = Wrappers.<WeekOrgCountInfoEntity>query().lambda();
|
|
|
|
|
- wrapper.eq(WeekOrgCountInfoEntity::getIsDeleted, 0);
|
|
|
|
|
- wrapper.eq(WeekOrgCountInfoEntity::getReportTime, calendar.getTime());
|
|
|
|
|
- List<WeekOrgCountInfoEntity> weekReportInfoEntityList = weekReportService.list(wrapper);
|
|
|
|
|
- if (null == weekReportInfoEntityList || weekReportInfoEntityList.size() == 0) {
|
|
|
|
|
- String adCode = BusinessConstant.REGION_NM_ADCODE;
|
|
|
|
|
- //生成周报主记录
|
|
|
|
|
- WeekOrgCountInfoEntity entity = new WeekOrgCountInfoEntity();
|
|
|
|
|
- entity.setName("weekorgcount.ureport.xml");
|
|
|
|
|
- entity.setReportTime(calendar.getTime());
|
|
|
|
|
- SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy年MM月dd日");
|
|
|
|
|
- calendar.setTime(reportTime);
|
|
|
|
|
- calendar.add(Calendar.WEEK_OF_MONTH, -1);
|
|
|
|
|
- calendar.set(Calendar.DAY_OF_WEEK, 2);
|
|
|
|
|
- calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
|
|
- calendar.set(Calendar.MINUTE, 0);
|
|
|
|
|
- calendar.set(Calendar.SECOND, 0);
|
|
|
|
|
- calendar.set(Calendar.MILLISECOND, 0);
|
|
|
|
|
- entity.setReportStartTime(calendar.getTime());
|
|
|
|
|
- String weekTm1 = timeFormat.format(calendar.getTime());
|
|
|
|
|
- calendar.add(Calendar.DAY_OF_MONTH, 6);
|
|
|
|
|
- String weekTm2 = timeFormat.format(calendar.getTime());
|
|
|
|
|
- calendar.add(Calendar.DAY_OF_MONTH, 1);
|
|
|
|
|
- entity.setReportEndTime(calendar.getTime());
|
|
|
|
|
- entity.setReportTitle("统计时间:" + weekTm1 + "-" + weekTm2 + "第" + week + "周");
|
|
|
|
|
- //测站总数
|
|
|
|
|
- RtuInfoDTO rtuInfoDTO = new RtuInfoDTO();
|
|
|
|
|
- rtuInfoDTO.setAdCode(adCode);
|
|
|
|
|
- long rtuCount = rtuBaseInfoService.rtuCount(rtuInfoDTO);
|
|
|
|
|
- entity.setRtuCount((int) rtuCount);
|
|
|
|
|
- //任务总数
|
|
|
|
|
- CheckOrderInfoDTO checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(adCode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- long count = checkOrderService.orderCount(checkOrderInfoDTO);
|
|
|
|
|
- entity.setCheckOrderCount((int) count);
|
|
|
|
|
- //未确认任务
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(adCode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CREATE.getCode());
|
|
|
|
|
- count = checkOrderService.orderCount(checkOrderInfoDTO);
|
|
|
|
|
- entity.setUnconfirmOrderCount((int) count);
|
|
|
|
|
- //处理中任务
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(adCode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CONFIRM.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- DictInfoEntity biz = dictService.getDict(DictBusinessConstant.ORDER_STATUS_CODE, OrderStatusEnum.STATUS_CONFIRM.getCode());
|
|
|
|
|
- if (biz != null) {
|
|
|
|
|
- checkOrderInfoDTO.setOrderStatusKey(biz.getId());
|
|
|
|
|
- }
|
|
|
|
|
- count = checkOrderService.orderCount(checkOrderInfoDTO);
|
|
|
|
|
- entity.setProcessingOrderCount((int) count);
|
|
|
|
|
- //本周已处理维修任务数量
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(adCode);
|
|
|
|
|
- checkOrderInfoDTO.setReportStartDate(entity.getReportStartTime());
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- count = checkOrderService.orderReportCount(checkOrderInfoDTO);
|
|
|
|
|
- entity.setReportCheckOrderCount((int) count);
|
|
|
|
|
- //异常测站
|
|
|
|
|
- RtuWarningInfoDTO warningInfoDTO = new RtuWarningInfoDTO();
|
|
|
|
|
- warningInfoDTO.setAdCode(adCode);
|
|
|
|
|
- warningInfoDTO.setEndDate(entity.getReportEndTime());
|
|
|
|
|
- long warnCount = rtuWarningService.warningRtuCount(warningInfoDTO);
|
|
|
|
|
- entity.setWarnRtuCount((int) warnCount);
|
|
|
|
|
- //离线测站
|
|
|
|
|
- warningInfoDTO = new RtuWarningInfoDTO();
|
|
|
|
|
- warningInfoDTO.setAdCode(adCode);
|
|
|
|
|
- warningInfoDTO.setEndDate(entity.getReportEndTime());
|
|
|
|
|
- long offlineCount = rtuWarningService.warningOfflineRtuCount(warningInfoDTO);
|
|
|
|
|
- entity.setOfflineRtuCount((int) offlineCount);
|
|
|
|
|
- //其他异常测站
|
|
|
|
|
- entity.setOthersWarnRtuCount((int) (warnCount - offlineCount));
|
|
|
|
|
- weekReportService.save(entity);
|
|
|
|
|
-
|
|
|
|
|
- //统计一周故障
|
|
|
|
|
- Map<String, Integer> failureCountMap = new HashMap<>();
|
|
|
|
|
- failureCountMap.put("rtu", 0);
|
|
|
|
|
- failureCountMap.put("rainSensor", 0);
|
|
|
|
|
- failureCountMap.put("waterLevelSensor", 0);
|
|
|
|
|
- failureCountMap.put("groundLevelSensor", 0);
|
|
|
|
|
- failureCountMap.put("bt", 0);
|
|
|
|
|
- failureCountMap.put("sun", 0);
|
|
|
|
|
- failureCountMap.put("net", 0);
|
|
|
|
|
- failureCountMap.put("signl", 0);
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(adCode);
|
|
|
|
|
- checkOrderInfoDTO.setReportStartDate(entity.getReportStartTime());
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- DictInfoEntity orderProcessDict = dictService.getDict(DictBusinessConstant.ORDER_STATUS_CODE, OrderStatusEnum.STATUS_PROCESS.getCode());
|
|
|
|
|
- if (orderProcessDict != null) {
|
|
|
|
|
- checkOrderInfoDTO.setOrderStatusKey(orderProcessDict.getId());
|
|
|
|
|
- }
|
|
|
|
|
- List<OrderProcessInfoVO> processInfoVOList = orderProcessService.selectReportList(checkOrderInfoDTO);
|
|
|
|
|
- if (null != processInfoVOList && processInfoVOList.size() > 0) {
|
|
|
|
|
- for (OrderProcessInfoVO processInfoVO : processInfoVOList) {
|
|
|
|
|
- StringBuilder stringBuffer = new StringBuilder();
|
|
|
|
|
- if (null != processInfoVO.getRtuStatus() && processInfoVO.getRtuStatus() == 1) {
|
|
|
|
|
- stringBuffer.append("站点故障;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getRtuReplace() && processInfoVO.getRtuReplace() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("rtu");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("rtu", v);
|
|
|
|
|
- stringBuffer.append("更换RTU;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getRainSensorReplace() && processInfoVO.getRainSensorReplace() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("rainSensor");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("rainSensor", v);
|
|
|
|
|
- stringBuffer.append("更换雨量计;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getWaterSensorReplace() && processInfoVO.getWaterSensorReplace() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("waterLevelSensor");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("waterLevelSensor", v);
|
|
|
|
|
- stringBuffer.append("更换水位计;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getGroundSensorReplace() && processInfoVO.getGroundSensorReplace() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("groundLevelSensor");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("groundLevelSensor", v);
|
|
|
|
|
- stringBuffer.append("更换墒情计;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getBatteryReplace() && processInfoVO.getBatteryReplace() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("bt");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("bt", v);
|
|
|
|
|
- stringBuffer.append("更换蓄电池;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getSunPowerReplace() && processInfoVO.getSunPowerReplace() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("sun");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("sun", v);
|
|
|
|
|
- stringBuffer.append("更换太阳能板;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getNetworkOverdue() && processInfoVO.getNetworkOverdue() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("net");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("net", v);
|
|
|
|
|
- stringBuffer.append("物联网卡欠费;");
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getNetworkStatus() && processInfoVO.getNetworkStatus() == 1) {
|
|
|
|
|
- int v = failureCountMap.get("signl");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- failureCountMap.put("signl", v);
|
|
|
|
|
- stringBuffer.append("网络故障;");
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- //一周站点维修信息清单
|
|
|
|
|
- WeekOrgCheckOrderReportInfoEntity reportInfoEntity = new WeekOrgCheckOrderReportInfoEntity();
|
|
|
|
|
- reportInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- reportInfoEntity.setOrgName(processInfoVO.getAdCity());
|
|
|
|
|
- reportInfoEntity.setRtuName(processInfoVO.getRtuName());
|
|
|
|
|
- reportInfoEntity.setOrderId(processInfoVO.getOrderId());
|
|
|
|
|
- if (null != processInfoVO.getWarnId()) {
|
|
|
|
|
- RtuWarningInfoEntity rtuWarningInfoEntity = rtuWarningService.getById(processInfoVO.getWarnId());
|
|
|
|
|
- if (null != rtuWarningInfoEntity) {
|
|
|
|
|
- String warnKinds = "";
|
|
|
|
|
- if (WarnKindEnum.WARN_CLOCK.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "测站时钟异常";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_UP_MIN_DELAY.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "5分钟上报延时";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_OFFLINE.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "测站离线";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_RAIN_MISS_OUT.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "雨量站小时报漏报";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_WL_MISS_OUT.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "水位站小时报漏报";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_OUTLIER_VALUE.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "雨量疑似异常值";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_RAIN_UP_HOUR_DELAY.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "雨量站小时上报延时";
|
|
|
|
|
- } else if (WarnKindEnum.WARN_WL_UP_HOUR_DELAY.getCode() == rtuWarningInfoEntity.getWarningKind()) {
|
|
|
|
|
- warnKinds = "水位站小时上报延时";
|
|
|
|
|
- }
|
|
|
|
|
- reportInfoEntity.setWarnInfo(warnKinds);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- if (stringBuffer.toString().length() > 0) {
|
|
|
|
|
- reportInfoEntity.setProcessDesc(stringBuffer.toString());
|
|
|
|
|
- } else {
|
|
|
|
|
- reportInfoEntity.setProcessDesc(processInfoVO.getProcessDesc());
|
|
|
|
|
- }
|
|
|
|
|
- weekOrgCheckOrderReportService.save(reportInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- WeekOrgRtuFailureInfoEntity failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("RTU");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("rtu"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("雨量计");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("rainSensor"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("水位计");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("waterLevelSensor"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("墒情计");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("groundLevelSensor"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("蓄电池");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("bt"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("太阳能板");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("sun"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("物联网卡欠费");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("net"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
- failureInfoEntity = new WeekOrgRtuFailureInfoEntity();
|
|
|
|
|
- failureInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- failureInfoEntity.setEquipmentName("网络信号故障");
|
|
|
|
|
- failureInfoEntity.setFailureCount(failureCountMap.get("signl"));
|
|
|
|
|
- weekOrgRtuFailureService.save(failureInfoEntity);
|
|
|
|
|
-
|
|
|
|
|
- //统计维修任务、上报率
|
|
|
|
|
- LambdaQueryWrapper<Dept> deptwrapper = Wrappers.<Dept>query().lambda();
|
|
|
|
|
- deptwrapper.eq(Dept::getIsDeleted, 0);
|
|
|
|
|
- deptwrapper.eq(Dept::getParentId, BusinessConstant.DEPT_XAM_ID);
|
|
|
|
|
- List<Dept> root = deptService.list(deptwrapper);
|
|
|
|
|
- for (Dept dept : root) {
|
|
|
|
|
- WeekOrgCheckOrderInfoEntity weekOrgCheckOrderInfoEntity = new WeekOrgCheckOrderInfoEntity();
|
|
|
|
|
- weekOrgCheckOrderInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- weekOrgCheckOrderInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- LambdaQueryWrapper<DeptRegionEntity> deptLambdaQueryWrapper = Wrappers.<DeptRegionEntity>query().lambda();
|
|
|
|
|
- deptLambdaQueryWrapper.eq(DeptRegionEntity::getDeptId, dept.getId());
|
|
|
|
|
- DeptRegionEntity deptRegionEntity = deptRegionService.getOne(deptLambdaQueryWrapper);
|
|
|
|
|
- LambdaQueryWrapper<RegionInfoEntity> nodeQueryWrapper = Wrappers.<RegionInfoEntity>query().lambda();
|
|
|
|
|
- nodeQueryWrapper.eq(RegionInfoEntity::getAdcd, deptRegionEntity.getAdcd());
|
|
|
|
|
- RegionInfoEntity nodeRegion = regionService.getOne(nodeQueryWrapper);
|
|
|
|
|
- int excludecode = 0;
|
|
|
|
|
- if (nodeRegion.getParentCode().equals(BusinessConstant.REGION_NM_ADCODE)) {
|
|
|
|
|
- excludecode = 1;
|
|
|
|
|
- }
|
|
|
|
|
- //按盟市统计维修任务
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- checkOrderInfoDTO.setExcludeCode(excludecode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- //任务数量
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- long orderCount = checkOrderService.orderCount(checkOrderInfoDTO);
|
|
|
|
|
- weekOrgCheckOrderInfoEntity.setOrderCount((int) orderCount);
|
|
|
|
|
- //未确认
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- checkOrderInfoDTO.setExcludeCode(excludecode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CREATE.getCode());
|
|
|
|
|
- count = checkOrderService.unconfirmOrderCount(checkOrderInfoDTO);
|
|
|
|
|
- weekOrgCheckOrderInfoEntity.setUnconfirmOrderCount((int) count);
|
|
|
|
|
- //处理中
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- checkOrderInfoDTO.setExcludeCode(excludecode);
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- checkOrderInfoDTO.setOrderClose(OrderCloseEnum.ACTIVE_OPEN.getCode());
|
|
|
|
|
- checkOrderInfoDTO.setOrderConfirm(OrderConfirmEnum.ACTIVE_CONFIRM.getCode());
|
|
|
|
|
- biz = dictService.getDict(DictBusinessConstant.ORDER_STATUS_CODE, OrderStatusEnum.STATUS_CONFIRM.getCode());
|
|
|
|
|
- if (biz != null) {
|
|
|
|
|
- checkOrderInfoDTO.setOrderStatusKey(biz.getId());
|
|
|
|
|
- }
|
|
|
|
|
- count = checkOrderService.unCloseOrderCount(checkOrderInfoDTO);
|
|
|
|
|
- weekOrgCheckOrderInfoEntity.setProcessingOrderCount((int) count);
|
|
|
|
|
- //已处理
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- checkOrderInfoDTO.setExcludeCode(excludecode);
|
|
|
|
|
- checkOrderInfoDTO.setReportStartDate(entity.getReportStartTime());
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- long reportCount = checkOrderService.orderReportCount(checkOrderInfoDTO);
|
|
|
|
|
- weekOrgCheckOrderInfoEntity.setReportOrderCount((int) reportCount);
|
|
|
|
|
- weekOrgCheckOrderService.save(weekOrgCheckOrderInfoEntity);
|
|
|
|
|
-
|
|
|
|
|
- //盟市上报率统计
|
|
|
|
|
- WeekOrgRtuUpInfoEntity weekOrgRtuUpInfoEntity = new WeekOrgRtuUpInfoEntity();
|
|
|
|
|
- weekOrgRtuUpInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- weekOrgRtuUpInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- rtuInfoDTO = new RtuInfoDTO();
|
|
|
|
|
- rtuInfoDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- rtuInfoDTO.setExcludeCode(excludecode);
|
|
|
|
|
- count = rtuBaseInfoService.rtuCount(rtuInfoDTO);
|
|
|
|
|
- weekOrgRtuUpInfoEntity.setRtuCount(count);
|
|
|
|
|
- RtuStatusDTO rtuStatusDTO = new RtuStatusDTO();
|
|
|
|
|
- rtuStatusDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- rtuStatusDTO.setExcludeCode(excludecode);
|
|
|
|
|
- rtuStatusDTO.setBeginTime(entity.getReportStartTime());
|
|
|
|
|
- rtuStatusDTO.setEndTime(entity.getReportEndTime());
|
|
|
|
|
- count = rtuManageService.rtuUpDataCount(rtuStatusDTO);
|
|
|
|
|
- weekOrgRtuUpInfoEntity.setUpCount(count);
|
|
|
|
|
- weekOrgRtuUpService.save(weekOrgRtuUpInfoEntity);
|
|
|
|
|
-
|
|
|
|
|
- //一周站点设备更换信息
|
|
|
|
|
- Map<String, Integer> orgEquipmentReplace = new HashMap<>();
|
|
|
|
|
- orgEquipmentReplace.put("rtu", 0);
|
|
|
|
|
- orgEquipmentReplace.put("rainSensor", 0);
|
|
|
|
|
- orgEquipmentReplace.put("waterLevelSensor", 0);
|
|
|
|
|
- orgEquipmentReplace.put("groundLevelSensor", 0);
|
|
|
|
|
- orgEquipmentReplace.put("bt", 0);
|
|
|
|
|
- orgEquipmentReplace.put("sun", 0);
|
|
|
|
|
- orgEquipmentReplace.put("net", 0);
|
|
|
|
|
- checkOrderInfoDTO = new CheckOrderInfoDTO();
|
|
|
|
|
- checkOrderInfoDTO.setExcludeCode(excludecode);
|
|
|
|
|
- checkOrderInfoDTO.setAdCode(deptRegionEntity.getAdcd());
|
|
|
|
|
- checkOrderInfoDTO.setReportStartDate(entity.getReportStartTime());
|
|
|
|
|
- checkOrderInfoDTO.setReportEndDate(entity.getReportEndTime());
|
|
|
|
|
- if (orderProcessDict != null) {
|
|
|
|
|
- checkOrderInfoDTO.setOrderStatusKey(orderProcessDict.getId());
|
|
|
|
|
- }
|
|
|
|
|
- processInfoVOList = orderProcessService.selectReportList(checkOrderInfoDTO);
|
|
|
|
|
- if (null != processInfoVOList && processInfoVOList.size() > 0) {
|
|
|
|
|
- for (OrderProcessInfoVO processInfoVO : processInfoVOList) {
|
|
|
|
|
- if (null != processInfoVO.getRtuReplace() && processInfoVO.getRtuReplace() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("rtu");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("rtu", v);
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getRainSensorReplace() && processInfoVO.getRainSensorReplace() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("rainSensor");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("rainSensor", v);
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getWaterSensorReplace() && processInfoVO.getWaterSensorReplace() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("waterLevelSensor");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("waterLevelSensor", v);
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getGroundSensorReplace() && processInfoVO.getGroundSensorReplace() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("groundLevelSensor");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("groundLevelSensor", v);
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getBatteryReplace() && processInfoVO.getBatteryReplace() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("bt");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("bt", v);
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getSunPowerReplace() && processInfoVO.getSunPowerReplace() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("sun");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("sun", v);
|
|
|
|
|
- }
|
|
|
|
|
- if (null != processInfoVO.getNetworkOverdue() && processInfoVO.getNetworkOverdue() == 1) {
|
|
|
|
|
- int v = orgEquipmentReplace.get("net");
|
|
|
|
|
- v += 1;
|
|
|
|
|
- orgEquipmentReplace.put("net", v);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- //一周站点更换信息清单
|
|
|
|
|
- int replaceCount = orgEquipmentReplace.get("rtu");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("RTU");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- replaceCount = orgEquipmentReplace.get("rainSensor");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("雨量计");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- replaceCount = orgEquipmentReplace.get("waterLevelSensor");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("水位计");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- replaceCount = orgEquipmentReplace.get("groundLevelSensor");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("墒情计");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- replaceCount = orgEquipmentReplace.get("bt");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("蓄电池");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- replaceCount = orgEquipmentReplace.get("sun");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("太阳能板");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- replaceCount = orgEquipmentReplace.get("net");
|
|
|
|
|
- if (replaceCount > 0) {
|
|
|
|
|
- WeekOrgEquipmentReplaceInfoEntity equipmentReplaceInfoEntity = new WeekOrgEquipmentReplaceInfoEntity();
|
|
|
|
|
- equipmentReplaceInfoEntity.setReportId(entity.getId());
|
|
|
|
|
- equipmentReplaceInfoEntity.setOrgName(dept.getDeptName());
|
|
|
|
|
- equipmentReplaceInfoEntity.setEquipmentName("物联网卡欠费");
|
|
|
|
|
- equipmentReplaceInfoEntity.setReplaceCount(replaceCount);
|
|
|
|
|
- weekOrgEquipmentReplaceService.save(equipmentReplaceInfoEntity);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("{}", e.getMessage());
|
|
|
|
|
- } finally {
|
|
|
|
|
- log.info("周统计结束 {}", Func.formatDateTime(new Date()));
|
|
|
|
|
- }
|
|
|
|
|
- return 0;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|