|
@ -31,6 +31,8 @@ import com.elink.esua.epdc.commons.tools.utils.Result; |
|
|
import com.elink.esua.epdc.dao.KpiMetaDataDao; |
|
|
import com.elink.esua.epdc.dao.KpiMetaDataDao; |
|
|
import com.elink.esua.epdc.dto.EventCountFromDTO; |
|
|
import com.elink.esua.epdc.dto.EventCountFromDTO; |
|
|
import com.elink.esua.epdc.dto.KpiMetaDataDTO; |
|
|
import com.elink.esua.epdc.dto.KpiMetaDataDTO; |
|
|
|
|
|
import com.elink.esua.epdc.dto.events.form.EpdcEventsItemMataFromDTO; |
|
|
|
|
|
import com.elink.esua.epdc.dto.events.form.EventCountSqlFromDTO; |
|
|
import com.elink.esua.epdc.dto.events.form.KpiEventEvaluationFromDTO; |
|
|
import com.elink.esua.epdc.dto.events.form.KpiEventEvaluationFromDTO; |
|
|
import com.elink.esua.epdc.entity.KpiMetaDataEntity; |
|
|
import com.elink.esua.epdc.entity.KpiMetaDataEntity; |
|
|
import com.elink.esua.epdc.enums.KpiCycleEnum; |
|
|
import com.elink.esua.epdc.enums.KpiCycleEnum; |
|
@ -207,4 +209,81 @@ public class KpiMetaDataServiceImpl extends BaseServiceImpl<KpiMetaDataDao, KpiM |
|
|
} while (CollUtil.isNotEmpty(gridList)); |
|
|
} while (CollUtil.isNotEmpty(gridList)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void createItemMataData() { |
|
|
|
|
|
//查询sql入参
|
|
|
|
|
|
//月
|
|
|
|
|
|
EpdcEventsItemMataFromDTO monthFromDto; |
|
|
|
|
|
|
|
|
|
|
|
//季度
|
|
|
|
|
|
EpdcEventsItemMataFromDTO quarterFromDto; |
|
|
|
|
|
// 年
|
|
|
|
|
|
EpdcEventsItemMataFromDTO yearFromDto; |
|
|
|
|
|
//统计月
|
|
|
|
|
|
//取本月第一天
|
|
|
|
|
|
YearMonth now = YearMonth.now(); |
|
|
|
|
|
LocalDate startTime = now.minusMonths(1).atDay(1); |
|
|
|
|
|
LocalDate endTime = now.atDay(1); |
|
|
|
|
|
Date endTimeDate = LocalDateUtils.localDateToDate(startTime); |
|
|
|
|
|
//按月统计
|
|
|
|
|
|
|
|
|
|
|
|
monthFromDto = new EpdcEventsItemMataFromDTO(); |
|
|
|
|
|
monthFromDto.setEndTime(LocalDateUtils.localDateToDate(endTime)); |
|
|
|
|
|
monthFromDto.setStartTime(endTimeDate); |
|
|
|
|
|
|
|
|
|
|
|
//按照季度
|
|
|
|
|
|
int nowMonth = now.getMonthValue(); |
|
|
|
|
|
//上个季度第一天
|
|
|
|
|
|
LocalDate lastQuarter = now.minusMonths(3).atDay(1); |
|
|
|
|
|
Date startQuarterDate = LocalDateUtils.localDateToDate(lastQuarter); |
|
|
|
|
|
quarterFromDto = new EpdcEventsItemMataFromDTO(); |
|
|
|
|
|
quarterFromDto.setStartTime(startQuarterDate); |
|
|
|
|
|
quarterFromDto.setEndTime(endTimeDate); |
|
|
|
|
|
//年统计
|
|
|
|
|
|
//上个季度第一天
|
|
|
|
|
|
LocalDate lastYear = now.minusYears(1).atDay(1); |
|
|
|
|
|
yearFromDto = new EpdcEventsItemMataFromDTO(); |
|
|
|
|
|
yearFromDto.setStartTime(LocalDateUtils.localDateToDate(lastYear)); |
|
|
|
|
|
yearFromDto.setEndTime(endTimeDate); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//查询区直
|
|
|
|
|
|
getCountItem(monthFromDto, quarterFromDto, yearFromDto, nowMonth, OrganizationTypeConstant.ORG_TYPE_DISTRICT_DEPT); |
|
|
|
|
|
//查询街道
|
|
|
|
|
|
getCountItem(monthFromDto, quarterFromDto, yearFromDto, nowMonth, OrganizationTypeConstant.ORG_TYPE_STREET_DEPT); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private void getCountItem(EpdcEventsItemMataFromDTO monthFromDto, EpdcEventsItemMataFromDTO quarterFromDto, EpdcEventsItemMataFromDTO yearFromDto, int nowMonth, String dept) { |
|
|
|
|
|
List<KpiMetaDataDTO> kpiMetaDataDTOList; |
|
|
|
|
|
//容量
|
|
|
|
|
|
int pageSize = 10; |
|
|
|
|
|
//页码
|
|
|
|
|
|
int pageIndex = 1; |
|
|
|
|
|
List<Long> deptIdList; |
|
|
|
|
|
do { |
|
|
|
|
|
// 分页获取所有网格
|
|
|
|
|
|
deptIdList = deptUtils.getDeptIdList(dept, pageSize, pageIndex); |
|
|
|
|
|
//月统计
|
|
|
|
|
|
monthFromDto.setDeptIdList(deptIdList); |
|
|
|
|
|
monthFromDto.setTimeType(KpiCycleEnum.KPI_CYCLE_MONTH.getValue()); |
|
|
|
|
|
kpiMetaDataDTOList = eventFeignClient.queryItemCountData(monthFromDto).getData(); |
|
|
|
|
|
insertBatch(ConvertUtils.sourceToTarget(kpiMetaDataDTOList, KpiMetaDataEntity.class)); |
|
|
|
|
|
// 1,4,7,10 月份的时候统计 季度 季度第一天统计上一季度
|
|
|
|
|
|
if (nowMonth == NumConstant.ONE || nowMonth == NumConstant.FOUR || nowMonth == NumConstant.SEVEN || nowMonth == NumConstant.TEN) { |
|
|
|
|
|
monthFromDto.setTimeType(KpiCycleEnum.KPI_CYCLE_QUARTER.getValue()); |
|
|
|
|
|
kpiMetaDataDTOList = eventFeignClient.queryItemCountData(quarterFromDto).getData(); |
|
|
|
|
|
insertBatch(ConvertUtils.sourceToTarget(kpiMetaDataDTOList, KpiMetaDataEntity.class)); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 一月份统计去年的
|
|
|
|
|
|
if (nowMonth == NumConstant.ONE) { |
|
|
|
|
|
monthFromDto.setTimeType(KpiCycleEnum.KPI_CYCLE_YEAR.getValue()); |
|
|
|
|
|
kpiMetaDataDTOList = eventFeignClient.queryItemCountData(yearFromDto).getData(); |
|
|
|
|
|
insertBatch(ConvertUtils.sourceToTarget(kpiMetaDataDTOList, KpiMetaDataEntity.class)); |
|
|
|
|
|
} |
|
|
|
|
|
//页码
|
|
|
|
|
|
pageIndex++; |
|
|
|
|
|
deptIdList = deptUtils.getDeptIdList(dept, pageSize, pageIndex); |
|
|
|
|
|
}while (CollUtil.isNotEmpty(deptIdList)); |
|
|
|
|
|
} |
|
|
} |
|
|
} |