From 8796f34f80c0d96148637cc179d914f73c779a21 Mon Sep 17 00:00:00 2001 From: wxz Date: Thu, 18 Jun 2020 18:27:11 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=96=B0=E5=A2=9E=E5=B9=B4=E7=BB=B4=E5=BA=A6?= =?UTF-8?q?=E5=92=8C=E5=AD=A3=E7=BB=B4=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/DimController.java | 18 ++++- .../service/impl/StatsDimServiceImpl.java | 47 +++++++----- .../epmet/service/stats/DimYearService.java | 3 + .../stats/impl/DimDateServiceImpl.java | 46 ++++++++---- .../stats/impl/DimMonthServiceImpl.java | 58 ++++++++------- .../stats/impl/DimQuarterServiceImpl.java | 29 +++++--- .../stats/impl/DimYearServiceImpl.java | 73 +++++++++++++++++++ 7 files changed, 200 insertions(+), 74 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java index 764c960452..0964efb49f 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java @@ -3,10 +3,7 @@ package com.epmet.controller; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.AgencySubTreeDto; import com.epmet.service.StatsDimService; -import com.epmet.service.stats.DimAgencyService; -import com.epmet.service.stats.DimDateService; -import com.epmet.service.stats.DimMonthService; -import com.epmet.service.stats.DimQuarterService; +import com.epmet.service.stats.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -28,6 +25,9 @@ public class DimController { @Autowired private DimQuarterService quarterService; + @Autowired + private DimYearService dimYearService; + @Autowired private StatsDimService statsDimService; @@ -104,6 +104,16 @@ public class DimController { return new Result(); } + /** + * 年度维度 + * @return + */ + @PostMapping("/year/init") + public Result initYearDim() { + dimYearService.initYearDim(); + return new Result(); + } + /** * @Description 所有机构 * @param diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsDimServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsDimServiceImpl.java index 7d79ead2cf..d4b435a6d8 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsDimServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsDimServiceImpl.java @@ -16,6 +16,7 @@ import com.epmet.service.org.CustomerGridService; import com.epmet.service.stats.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; import java.util.Date; import java.util.List; @@ -53,6 +54,11 @@ public class StatsDimServiceImpl implements StatsDimService { @Override public void initGridDim() { + LastExecRecordEntity lastExecRecord = lastExecRecordService.getLastExecRecord(StatsSubject.DIM_GRID); + if (lastExecRecord == null) { + lastExecRecord = lastExecRecordService.createLastExecRecord(StatsSubject.DIM_GRID); + } + DimGridEntity lastCreatedGridDim = dimGridService.getLastCreatedGridDim(); List grids; if (lastCreatedGridDim == null) { @@ -68,7 +74,11 @@ public class StatsDimServiceImpl implements StatsDimService { } List gridDims = convertCustomerGrid2GridDim(grids); - dimGridService.addGridDims(gridDims); + if (!CollectionUtils.isEmpty(gridDims)) { + dimGridService.addGridDims(gridDims); + lastExecRecord.setExecTime(new Date()); + lastExecRecordService.updateById(lastExecRecord); + } } /** @@ -112,11 +122,13 @@ public class StatsDimServiceImpl implements StatsDimService { } List agencies = customerAgencyService.listAgenciesByCreateTime(statsStartTime, statsEndTime); - dimAgencyService.addAgencyDims(agencies); - lastExecRecord.setExecTime(new Date()); + if (!CollectionUtils.isEmpty(agencies)) { + dimAgencyService.addAgencyDims(agencies); + lastExecRecord.setExecTime(new Date()); - // 记录最后一次统计时间 - lastExecRecordService.updateById(lastExecRecord); + // 记录最后一次统计时间 + lastExecRecordService.updateById(lastExecRecord); + } } /** @@ -136,12 +148,14 @@ public class StatsDimServiceImpl implements StatsDimService { } List customers = customerService.listValidCustomersByCreateTime(statsStartTime, statsEndTime); - dimCustomerService.addCustomerDims(customers); + if (!CollectionUtils.isEmpty(customers)) { + dimCustomerService.addCustomerDims(customers); - lastExecRecord.setExecTime(new Date()); + lastExecRecord.setExecTime(new Date()); - // 记录最后一次统计时间 - lastExecRecordService.updateById(lastExecRecord); + // 记录最后一次统计时间 + lastExecRecordService.updateById(lastExecRecord); + } } @Override @@ -158,14 +172,11 @@ public class StatsDimServiceImpl implements StatsDimService { } List departments = departmentService.listDepartmentsByCreatedTime(statsStartTime, statsEndTime); - - dimDepartmentService.addDepartmentDims(departments); - - lastExecRecord.setExecTime(new Date()); - - // 记录最后一次统计时间 - lastExecRecordService.updateById(lastExecRecord); - + if (!CollectionUtils.isEmpty(departments)) { + dimDepartmentService.addDepartmentDims(departments); + lastExecRecord.setExecTime(new Date()); + // 记录最后一次统计时间 + lastExecRecordService.updateById(lastExecRecord); + } } - } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimYearService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimYearService.java index 516317f48a..ed840f7636 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimYearService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimYearService.java @@ -92,4 +92,7 @@ public interface DimYearService extends BaseService { * @date 2020-06-16 */ void delete(String[] ids); + + + void initYearDim(); } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimDateServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimDateServiceImpl.java index 102111c92e..9f6281c20b 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimDateServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimDateServiceImpl.java @@ -24,12 +24,17 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.utils.DateUtils; +import com.epmet.constant.StatsSubject; import com.epmet.dao.stats.DimDateDao; import com.epmet.dto.stats.DimDateDTO; import com.epmet.entity.stats.DimDateEntity; +import com.epmet.entity.stats.LastExecRecordEntity; import com.epmet.service.stats.DimDateService; +import com.epmet.service.stats.LastExecRecordService; import com.epmet.util.DimIdGenerator; import org.apache.commons.lang3.StringUtils; +import org.joda.time.LocalDate; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -44,6 +49,9 @@ import java.util.*; @Service public class DimDateServiceImpl extends BaseServiceImpl implements DimDateService { + @Autowired + private LastExecRecordService lastExecRecordService; + @Override public PageData page(Map params) { IPage page = baseDao.selectPage( @@ -109,32 +117,44 @@ public class DimDateServiceImpl extends BaseServiceImpl implements DimYearService { + @Autowired + private LastExecRecordService lastExecRecordService; + @Override public PageData page(Map params) { IPage page = baseDao.selectPage( @@ -97,4 +106,68 @@ public class DimYearServiceImpl extends BaseServiceImpl