Browse Source

Merge remote-tracking branch 'remotes/origin/dev'

dev_shibei_match
jianjun 5 years ago
parent
commit
bafe1d8900
  1. 38
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java
  2. 33
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/AggregationExtractFormDTO.java
  3. 21
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java
  4. 22
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java
  5. 163
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactAggregationExtractController.java
  6. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginExtractController.java
  7. 30
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsIssueController.java
  8. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsPublicityController.java
  9. 9
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsTopicController.java
  10. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsUserController.java
  11. 18
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactGroupAgencyDailyDao.java
  12. 17
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsIssueService.java
  13. 8
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsTopicService.java
  14. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsUserService.java
  15. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java
  16. 106
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java
  17. 43
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsIssueServiceImpl.java
  18. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsProjectServiceImpl.java
  19. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsPublicityServiceImpl.java
  20. 33
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java
  21. 33
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java
  22. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactGroupAgencyDailyService.java
  23. 17
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactGroupAgencyDailyServiceImpl.java
  24. 1
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java
  25. 6
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactGroupAgencyDailyDao.xml
  26. 8
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsIssueService.java
  27. 7
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsTopicService.java
  28. 7
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsUserService.java
  29. 14
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsIssueServiceImpl.java
  30. 7
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java
  31. 5
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java
  32. 13
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsIssueTask.java
  33. 13
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsTopicTask.java
  34. 13
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsUserTask.java

38
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java

@ -19,11 +19,8 @@ import org.joda.time.format.DateTimeFormatter;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.DateTimeException;
import java.time.ZoneId; import java.time.ZoneId;
import java.util.*; import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/** /**
* 日期处理工具类 * 日期处理工具类
@ -464,10 +461,41 @@ public class DateUtils {
// 日期加1(包含结束) // 日期加1(包含结束)
tempEnd.add(Calendar.DATE, +1); tempEnd.add(Calendar.DATE, +1);
while (tempStart.before(tempEnd)) { while (tempStart.before(tempEnd)) {
days.add(DateUtils.format(tempStart.getTime(),DateUtils.DATE_PATTERN_YYYYMMDD)); days.add(DateUtils.format(tempStart.getTime(), DateUtils.DATE_PATTERN_YYYYMMDD));
tempStart.add(Calendar.DAY_OF_YEAR, 1); tempStart.add(Calendar.DAY_OF_YEAR, 1);
} }
}catch (Exception e){ } catch (Exception e) {
e.printStackTrace();
}
return days;
}
/**
* @param startTime yyyyMMdd
* @param endTime yyyyMMdd
* @return java.util.List<java.lang.String> 返回yyyyMMdd
* @author yinzuomei
* @description 获取两个日期之间所有的日期集合包含开始结束
* @Date 2020/6/23 1:26
**/
public static List<String> getDaysBetween(String startTime, String endTime, String sourceFormatPattern, String resultFormatPattern) {
// 返回的日期集合
List<String> days = new ArrayList<String>();
try {
Date start = DateUtils.parse(startTime, sourceFormatPattern);
Date end = DateUtils.parse(endTime, sourceFormatPattern);
Calendar tempStart = Calendar.getInstance();
tempStart.setTime(start);
Calendar tempEnd = Calendar.getInstance();
tempEnd.setTime(end);
// 日期加1(包含结束)
tempEnd.add(Calendar.DATE, +1);
while (tempStart.before(tempEnd)) {
days.add(DateUtils.format(tempStart.getTime(), resultFormatPattern));
tempStart.add(Calendar.DAY_OF_YEAR, 1);
}
} catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
return days; return days;

33
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/AggregationExtractFormDTO.java

@ -0,0 +1,33 @@
package com.epmet.dto.extract.form;
import lombok.Data;
import java.io.Serializable;
/**
* desc: 从业务数据抽取到统计库Form DTO
*
* @Author zxc
* @DateTime 2020/9/16 6:01 下午
*/
@Data
public class AggregationExtractFormDTO implements Serializable {
private static final long serialVersionUID = -5488214001979782952L;
private String customerId;
/**
* 开始日期 yyyy-MM-dd
*/
private String startDate;
/**
* 结束日期 yyyy-MM-dd
*/
private String endDate;
/**
* 抽取类型 monthlydaily
*/
private String type;
}

21
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java

@ -7,13 +7,11 @@ import com.epmet.dto.extract.form.ExtractIndexFormDTO;
import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.dto.extract.form.ExtractOriginFormDTO;
import com.epmet.dto.extract.form.ExtractScreenFormDTO; import com.epmet.dto.extract.form.ExtractScreenFormDTO;
import com.epmet.dto.group.form.GroupStatsFormDTO; import com.epmet.dto.group.form.GroupStatsFormDTO;
import com.epmet.dto.issue.form.IssueJobFromDTO;
import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO;
import com.epmet.feign.impl.DataStatisticalOpenFeignClientFallBack; import com.epmet.feign.impl.DataStatisticalOpenFeignClientFallBack;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
/** /**
* desc: 数据统计 对外feign client * desc: 数据统计 对外feign client
@ -84,7 +82,7 @@ public interface DataStatisticalOpenFeignClient {
/** /**
* desc: 统计阅读最多的标签 包含 机关 网格 * desc: 统计阅读最多的标签 包含 机关 网格
* *
* @param date * @param formDTO
* @date: 2020/6/22 9:09 * @date: 2020/6/22 9:09
* @author: jianjun liu * @author: jianjun liu
*/ */
@ -124,18 +122,7 @@ public interface DataStatisticalOpenFeignClient {
* @date 2020/6/23 14:34 * @date 2020/6/23 14:34
*/ */
@PostMapping("/data/stats/statsissue/issuestats") @PostMapping("/data/stats/statsissue/issuestats")
Result agencyGridIssueStats(); Result agencyGridIssueStats(StatsFormDTO formDTO);
/**
* 指定日期统计
*
* @param fromDTO
* @return com.epmet.commons.tools.utils.Result
* @author zhaoqifeng
* @date 2020/7/1 15:29
*/
@PostMapping("/data/stats/statsissue/issuestatsofdate")
Result agencyGridIssueStatsOfDate(@RequestBody IssueJobFromDTO fromDTO);
/** /**
* @Description 数据统计-项目-机关日月统计 * @Description 数据统计-项目-机关日月统计
@ -167,7 +154,7 @@ public interface DataStatisticalOpenFeignClient {
* @date 2020.06.29 09:26 * @date 2020.06.29 09:26
**/ **/
@PostMapping("/data/stats/statsuser/execute") @PostMapping("/data/stats/statsuser/execute")
Result execUserStatistical(@RequestParam(value = "date", required = false) String date); Result execUserStatistical(@RequestBody StatsFormDTO formDTO);
/** /**
* @param * @param
@ -177,7 +164,7 @@ public interface DataStatisticalOpenFeignClient {
* @date 2020.06.29 09:27 * @date 2020.06.29 09:27
**/ **/
@PostMapping("/data/stats/statstopic/execute") @PostMapping("/data/stats/statstopic/execute")
Result execTopicStatistical(@RequestParam(value = "date", required = false) String date); Result execTopicStatistical(@RequestBody StatsFormDTO formDTO);
/** /**
* @param customerIdAndDateIdFormDTO * @param customerIdAndDateIdFormDTO

22
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java

@ -8,7 +8,6 @@ import com.epmet.dto.extract.form.ExtractIndexFormDTO;
import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.dto.extract.form.ExtractOriginFormDTO;
import com.epmet.dto.extract.form.ExtractScreenFormDTO; import com.epmet.dto.extract.form.ExtractScreenFormDTO;
import com.epmet.dto.group.form.GroupStatsFormDTO; import com.epmet.dto.group.form.GroupStatsFormDTO;
import com.epmet.dto.issue.form.IssueJobFromDTO;
import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO;
import com.epmet.feign.DataStatisticalOpenFeignClient; import com.epmet.feign.DataStatisticalOpenFeignClient;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -119,13 +118,8 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp
} }
@Override @Override
public Result agencyGridIssueStats() { public Result agencyGridIssueStats(StatsFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "agencyGridIssueStats"); return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "agencyGridIssueStats", formDTO);
}
@Override
public Result agencyGridIssueStatsOfDate(IssueJobFromDTO fromDTO) {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "agencyGridIssueStatsOfDate");
} }
/** /**
@ -152,27 +146,27 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp
} }
/** /**
* @Description 执行用户统计
* @param * @param
* @return * @return
* @Description 执行用户统计
* @author wangc * @author wangc
* @date 2020.06.29 09:26 * @date 2020.06.29 09:26
**/ **/
@Override @Override
public Result execUserStatistical(String date) { public Result execUserStatistical(StatsFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "execUserStatistical",date); return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "execUserStatistical", formDTO);
} }
/** /**
* @Description 执行话题统计
* @param * @param
* @return * @return
* @Description 执行话题统计
* @author wangc * @author wangc
* @date 2020.06.29 09:27 * @date 2020.06.29 09:27
**/ **/
@Override @Override
public Result execTopicStatistical(String date) { public Result execTopicStatistical(StatsFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "execTopicStatistical",date); return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "execTopicStatistical", formDTO);
} }
@Override @Override

163
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactAggregationExtractController.java

@ -0,0 +1,163 @@
package com.epmet.controller;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.dto.extract.form.AggregationExtractFormDTO;
import com.epmet.dto.group.form.GroupStatsFormDTO;
import com.epmet.service.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
import java.util.List;
/**
* @author liujianjun
* @Description 业务数据聚合统计
* @ClassName FactAggregationExtractController
* @Date 2020-06-23 15:18
*/
@Slf4j
@RestController
@RequestMapping("fact/aggregation")
public class FactAggregationExtractController {
@Autowired
private StatsGroupService statsGroupService;
@Autowired
private StatsUserService statsUserService;
@Autowired
private StatsTopicService statsTopicService;
@Autowired
private StatsIssueService statsIssueService;
@Autowired
private StatsProjectService statsProjectService;
@Autowired
private StatsPublicityService statsPublicityService;
/**
* desc: 按月或者天抽取业务数据到统计库
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
* @author LiuJanJun
* @date 2020/11/10 3:14 下午
*/
@RequestMapping("extractDailyOrMonthly")
public Result extractDaily(@RequestBody AggregationExtractFormDTO formDTO) {
if (StringUtils.isBlank(formDTO.getStartDate()) && StringUtils.isBlank(formDTO.getEndDate())) {
log.error("抽取日期范围不能为空");
return new Result().error();
}
if (formDTO.getStartDate().indexOf(StrConstant.HYPHEN) < 0 || formDTO.getEndDate().indexOf(StrConstant.HYPHEN) < 0) {
log.error("抽取日期范围格式不正确,yyyy-MM-dd");
return new Result().error();
}
List<String> daysBetween = DateUtils.getDaysBetween(formDTO.getStartDate(), formDTO.getEndDate(), DateUtils.DATE_PATTERN, DateUtils.DATE_PATTERN);
daysBetween.forEach(dateId -> {
Date date = DateUtils.parse(dateId, DateUtils.DATE_PATTERN);
StatsFormDTO param = new StatsFormDTO();
param.setCustomerId(formDTO.getCustomerId());
param.setDate(dateId);
switch (formDTO.getType()) {
case "monthly":
extractGroupDataMonthly(param);
extractArticleDataMonthlyAndQuarterly(param);
break;
default:
extractUserDataDaily(param);
extractGroupDataDaily(param);
extractTopicDataDaily(param);
extractIssueDataDaily(param);
extractProjectDataDaily(param);
extractAtricleDataDaily(param);
}
});
return new Result();
}
private void extractUserDataDaily(StatsFormDTO formDTO) {
try {
statsUserService.partition(formDTO);
} catch (Exception e) {
log.error("抽取【用户】数据失败", e);
}
}
private void extractTopicDataDaily(StatsFormDTO formDTO) {
try {
statsTopicService.partition(formDTO);
} catch (Exception e) {
log.error("抽取【话题】数据失败", e);
}
}
private void extractIssueDataDaily(StatsFormDTO formDTO) {
try {
statsIssueService.agencyGridIssueStats(formDTO);
} catch (Exception e) {
log.error("抽取【议题】数据失败", e);
}
}
private void extractProjectDataDaily(StatsFormDTO formDTO) {
try {
statsProjectService.gridProjectStats(formDTO);
statsProjectService.agencyProjectStats(formDTO);
} catch (Exception e) {
log.error("抽取【项目】数据失败", e);
}
}
private void extractAtricleDataDaily(StatsFormDTO formDTO) {
try {
statsPublicityService.articleSummaryDailyStatsjob(formDTO);
statsPublicityService.tagUsedDailyStatsjob(formDTO);
statsPublicityService.tagViewedDailyStatsjob(formDTO);
} catch (Exception e) {
log.error("抽取【文章】数据失败", e);
}
}
private void extractGroupDataDaily(StatsFormDTO formDTO) {
try {
GroupStatsFormDTO groupStatsFormDTO = new GroupStatsFormDTO();
groupStatsFormDTO.setDate(formDTO.getDate());
groupStatsFormDTO.setCustomerId(formDTO.getCustomerId());
statsGroupService.groupGridDaily(groupStatsFormDTO);
statsGroupService.groupAgencyDaily(groupStatsFormDTO);
} catch (Exception e) {
log.error("抽取【小组】数据失败", e);
}
}
private void extractGroupDataMonthly(StatsFormDTO formDTO) {
try {
GroupStatsFormDTO groupStatsFormDTO = new GroupStatsFormDTO();
groupStatsFormDTO.setDate(formDTO.getDate());
groupStatsFormDTO.setCustomerId(formDTO.getCustomerId());
statsGroupService.groupAgencyMonthly(groupStatsFormDTO);
} catch (Exception e) {
log.error("抽取【小组】数据失败", e);
}
}
private void extractArticleDataMonthlyAndQuarterly(StatsFormDTO formDTO) {
try {
statsPublicityService.tagUsedMonthlyStatsjob(formDTO);
statsPublicityService.tagUsedQuarterlyStatsjob(formDTO);
statsPublicityService.tagViewedMonthlyStatsjob(formDTO);
statsPublicityService.tagViewedQuarterlyStatsjob(formDTO);
} catch (Exception e) {
log.error("抽取【文章】数据失败", e);
}
}
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginExtractController.java

@ -40,16 +40,6 @@ public class FactOriginExtractController {
*/ */
@PostMapping("extractall") @PostMapping("extractall")
public Result extractAll(@RequestBody ExtractOriginFormDTO extractOriginFormDTO) { public Result extractAll(@RequestBody ExtractOriginFormDTO extractOriginFormDTO) {
/*if (StringUtils.isNotBlank(extractOriginFormDTO.getStartDate()) && StringUtils.isNotBlank(extractOriginFormDTO.getEndDate())) {
List<String> daysBetween = DateUtils.getDaysBetween(extractOriginFormDTO.getStartDate(), extractOriginFormDTO.getEndDate());
for (int i = 0; i < daysBetween.size(); i++) {
String dateDimId = daysBetween.get(i);
extractOriginFormDTO.setDateId(dateDimId);
factOriginExtractService.extractAll(extractOriginFormDTO);
}
} else {
factOriginExtractService.extractAll(extractOriginFormDTO);
}*/
factOriginExtractService.extractAll(extractOriginFormDTO); factOriginExtractService.extractAll(extractOriginFormDTO);
return new Result(); return new Result();
} }

30
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsIssueController.java

@ -1,18 +1,14 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.issue.form.IssueJobFromDTO; import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsIssueService; import com.epmet.service.StatsIssueService;
import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.io.Serializable;
/** /**
* @author zhaoqifeng * @author zhaoqifeng
* @dscription * @dscription
@ -25,28 +21,16 @@ public class StatsIssueController {
private StatsIssueService statsIssueService; private StatsIssueService statsIssueService;
/** /**
* 议题统计 * 议题统计 可制定日期和客户id
* @author zhaoqifeng *
* @date 2020/6/22 14:28
* @param * @param
* @return com.epmet.commons.tools.utils.Result * @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("issuestats")
public Result agencyGridIssueStats() {
statsIssueService.agencyGridIssueStats();
return new Result();
}
/**
* 指定日期统计
* @author zhaoqifeng * @author zhaoqifeng
* @date 2020/7/1 15:29 * @date 2020/6/22 14:28
* @param fromDTO
* @return com.epmet.commons.tools.utils.Result
*/ */
@PostMapping("issuestatsofdate") @PostMapping("issuestats")
public Result agencyGridIssueStatsOfDate(@RequestBody IssueJobFromDTO fromDTO) { public Result agencyGridIssueStats(@RequestBody(required = false) StatsFormDTO formDTO) {
statsIssueService.agencyGridIssueStatsOfDate(DateUtils.parse(fromDTO.getDate(), DateUtils.DATE_PATTERN)); statsIssueService.agencyGridIssueStats(formDTO);
return new Result(); return new Result();
} }
} }

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsPublicityController.java

@ -11,8 +11,6 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.concurrent.ExecutorService;
/** /**
* desc:宣传能力controller * desc:宣传能力controller
*/ */
@ -24,8 +22,6 @@ public class StatsPublicityController {
@Autowired @Autowired
private StatsPublicityService statsPublicityService; private StatsPublicityService statsPublicityService;
@Autowired
private ExecutorService executorService;
/** /**
* desc:统计文章总数及在线文章总数 包含 机关 部门 网格 * desc:统计文章总数及在线文章总数 包含 机关 部门 网格

9
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsTopicController.java

@ -1,15 +1,14 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsTopicService; import com.epmet.service.StatsTopicService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
/** /**
* @Description * @Description
* @ClassName StatsTopicController * @ClassName StatsTopicController
@ -24,8 +23,8 @@ public class StatsTopicController {
private StatsTopicService statsTopicService; private StatsTopicService statsTopicService;
@PostMapping("execute") @PostMapping("execute")
public Result execute(@RequestParam(value = "date",required = false) Date date){ public Result execute(@RequestBody StatsFormDTO formDTO) {
statsTopicService.partition(date); statsTopicService.partition(formDTO);
return new Result(); return new Result();
} }
} }

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsUserController.java

@ -1,15 +1,13 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsUserService; import com.epmet.service.StatsUserService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
/** /**
* @Description 用户统计 * @Description 用户统计
* @ClassName StatsUserController * @ClassName StatsUserController
@ -24,8 +22,8 @@ public class StatsUserController {
private StatsUserService statsUserService; private StatsUserService statsUserService;
@RequestMapping("execute") @RequestMapping("execute")
public Result execute(@RequestParam(value = "date",required = false) Date date){ public Result execute(@RequestBody StatsFormDTO formDTO) {
statsUserService.partition(date); statsUserService.partition(formDTO);
return new Result(); return new Result();
} }
} }

18
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactGroupAgencyDailyDao.java

@ -37,31 +37,33 @@ import java.util.List;
public interface FactGroupAgencyDailyDao extends BaseDao<FactGroupAgencyDailyEntity> { public interface FactGroupAgencyDailyDao extends BaseDao<FactGroupAgencyDailyEntity> {
/** /**
* @Description 插入网格小组数据 机关-
* @param agencyList * @param agencyList
* @Description 插入网格小组数据 机关-
* @author zxc * @author zxc
*/ */
void insertGroupAgencyDaily(@Param("agencyList") List<AgencyGroupDailyResultDTO> agencyList); void insertGroupAgencyDaily(@Param("agencyList") List<AgencyGroupDailyResultDTO> agencyList);
/** /**
* @Description 获取 网格小组机关-日统计的最后一天数据
* @param * @param
* @param customerId
* @Description 获取 网格小组机关-日统计的最后一天数据
* @author zxc * @author zxc
*/ */
List<AgencyMonthlyFormDTO> getLastDayAgency(@Param("dateId") String dateId); List<AgencyMonthlyFormDTO> getLastDayAgency(@Param("customerId") String customerId, @Param("dateId") String dateId);
/** /**
* @Description 查询 月的小组增量 * @param customerId
* @param monthId * @param monthId
* @Description 查询 月的小组增量
* @author zxc * @author zxc
*/ */
List<AgencyGroupMonthlyResultDTO> getMonthGroupIncr(@Param("monthId")String monthId); List<AgencyGroupMonthlyResultDTO> getMonthGroupIncr(@Param("customerId") String customerId, @Param("monthId") String monthId);
/** /**
* @Description 删除当天已存在数据
* @param dateId * @param dateId
* @Description 删除当天已存在数据
* @author zxc * @author zxc
*/ */
void deleteInsertAgencyDailyByDateId(@Param("dateId")String dateId,@Param("customerId")String customerId); void deleteInsertAgencyDailyByDateId(@Param("dateId") String dateId, @Param("customerId") String customerId);
} }

17
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsIssueService.java

@ -1,5 +1,7 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.dto.StatsFormDTO;
import java.util.Date; import java.util.Date;
/** /**
@ -10,21 +12,14 @@ import java.util.Date;
public interface StatsIssueService { public interface StatsIssueService {
/** /**
* 机关和网格议题统计 * 机关和网格议题统计
* @author zhaoqifeng *
* @date 2020/6/22 10:58
* @param * @param
* @param formDTO
* @return void * @return void
*/
void agencyGridIssueStats();
/**
* 指定日期议题统计
* @author zhaoqifeng * @author zhaoqifeng
* @date 2020/6/28 11:01 * @date 2020/6/22 10:58
* @param date
* @return void
*/ */
void agencyGridIssueStatsOfDate(Date date); void agencyGridIssueStats(StatsFormDTO formDTO);
/** /**
* 机关下议题日统计 * 机关下议题日统计

8
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsTopicService.java

@ -1,6 +1,6 @@
package com.epmet.service; package com.epmet.service;
import java.util.Date; import com.epmet.dto.StatsFormDTO;
/** /**
* @Description 话题统计Service接口 * @Description 话题统计Service接口
@ -11,11 +11,11 @@ import java.util.Date;
public interface StatsTopicService { public interface StatsTopicService {
/** /**
* @Description 分区统计按照客户Id划分 * @param formDTO 如果目标日期为空则自动计算为T-1天
* @param date 如果目标日期为空则自动计算为T-1天
* @return * @return
* @Description 分区统计按照客户Id划分
* @author wangc * @author wangc
* @date 2020.06.28 14:38 * @date 2020.06.28 14:38
**/ **/
void partition(Date date); void partition(StatsFormDTO formDTO);
} }

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsUserService.java

@ -1,6 +1,6 @@
package com.epmet.service; package com.epmet.service;
import java.util.Date; import com.epmet.dto.StatsFormDTO;
/** /**
* @author wangc * @author wangc
@ -10,11 +10,11 @@ import java.util.Date;
public interface StatsUserService { public interface StatsUserService {
/** /**
* @Description 分区统计按照客户Id划分 * @param formDTO 如果目标日期为空则自动计算为T-1天
* @param date 如果目标日期为空则自动计算为T-1天
* @return * @return
* @Description 分区统计按照客户Id划分
* @author wangc * @author wangc
* @date 2020.06.28 14:38 * @date 2020.06.28 14:38
**/ **/
void partition(Date date); void partition(StatsFormDTO formDTO);
} }

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java

@ -117,6 +117,10 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService {
ScreenUserJoinEntity entity = insertMap.get(gridId); ScreenUserJoinEntity entity = insertMap.get(gridId);
entity.setJoinTotal(issue.getIssueIncr()); entity.setJoinTotal(issue.getIssueIncr());
GridUserCountResultDTO user = userCountMap.get(gridId); GridUserCountResultDTO user = userCountMap.get(gridId);
if (user == null) {
log.warn("gridId:{} is not exist in issue,customerId:{},monthId:{},gridId:{}", JSON.toJSONString(issue), formDTO.getCustomerId(), formDTO.getMonthId(), gridId);
return;
}
//百人人均议题:统计周期内总的议题数/(注册用户数/100) //百人人均议题:统计周期内总的议题数/(注册用户数/100)
log.debug("issue:{}", JSON.toJSONString(issue)); log.debug("issue:{}", JSON.toJSONString(issue));
log.debug("user:{}", JSON.toJSONString(user)); log.debug("user:{}", JSON.toJSONString(user));

106
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java

@ -52,61 +52,73 @@ public class StatsGroupServiceImpl implements StatsGroupService {
private CustomerGridService customerGridService; private CustomerGridService customerGridService;
/** /**
* @Description 统计网格-
* @param * @param
* @Description 统计网格-
* @author zxc * @author zxc
*/ */
@Override @Override
public void groupGridDaily(GroupStatsFormDTO formDTO) { public void groupGridDaily(GroupStatsFormDTO formDTO) {
Integer pageNo = NumConstant.ONE; Integer pageNo = NumConstant.ONE;
Integer pageSize = NumConstant.ONE_HUNDRED; Integer pageSize = NumConstant.ONE_HUNDRED;
List<String> customerIds; List<String> customerIds = new ArrayList<>();
if (StringUtils.isNotBlank(formDTO.getCustomerId())) {
customerIds.add(formDTO.getCustomerId());
} else {
customerIds = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
}
do { do {
customerIds = dimCustomerService.selectCustomerIdPage(pageNo++,pageSize);
DimIdGenerator.DimIdBean dimIdBean = this.getDimIdBean(formDTO); DimIdGenerator.DimIdBean dimIdBean = this.getDimIdBean(formDTO);
if (customerIds.size() != NumConstant.ZERO){ if (customerIds.size() != NumConstant.ZERO) {
customerIds.forEach(customerId -> { customerIds.forEach(customerId -> {
try { try {
List<GridIdListByCustomerResultDTO> gridsInfo = customerGridService.getCustomerGridIdList(customerId, dimIdBean.getDateId()); List<GridIdListByCustomerResultDTO> gridsInfo = customerGridService.getCustomerGridIdList(customerId, dimIdBean.getDateId());
List<GroupGridDailyResultDTO> resultDTOS = groupDataService.groupGridDaily(customerId,dimIdBean,gridsInfo); List<GroupGridDailyResultDTO> resultDTOS = groupDataService.groupGridDaily(customerId, dimIdBean, gridsInfo);
factGroupGridDailyService.statisticsGroupGridDaily(resultDTOS,customerId); factGroupGridDailyService.statisticsGroupGridDaily(resultDTOS, customerId);
} catch (Exception e) { } catch (Exception e) {
log.error(String.format(GroupConstant.STATS_FAILED_GRID_DAILY,customerId,LocalDate.now(),e)); log.error(String.format(GroupConstant.STATS_FAILED_GRID_DAILY, customerId, LocalDate.now(), e));
} }
}); });
} }
}while (customerIds.size() != NumConstant.ZERO && customerIds.size() == pageSize); } while (customerIds.size() != NumConstant.ZERO && customerIds.size() == pageSize);
} }
/** /**
* @Description 统计 小组 有关数据 dim机关- * @Description 统计 小组 有关数据 dim机关-
* @author zxc * @author zxc
*/ */
@Override @Override
public void groupAgencyDaily(GroupStatsFormDTO formDTO) { public void groupAgencyDaily(GroupStatsFormDTO formDTO) {
Integer pageNo = NumConstant.ONE; Integer pageNo = NumConstant.ONE;
Integer pageSize = NumConstant.ONE_HUNDRED; Integer pageSize = NumConstant.ONE_HUNDRED;
List<String> customerIds; List<String> customerIds = new ArrayList<>();
if (StringUtils.isNotBlank(formDTO.getCustomerId())) {
customerIds.add(formDTO.getCustomerId());
} else {
customerIds = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
}
do { do {
customerIds = dimCustomerService.selectCustomerIdPage(pageNo++,pageSize); if (customerIds.size() != NumConstant.ZERO) {
if (customerIds.size() != NumConstant.ZERO){
DimIdGenerator.DimIdBean dimIdBean = this.getDimIdBean(formDTO); DimIdGenerator.DimIdBean dimIdBean = this.getDimIdBean(formDTO);
customerIds.forEach(customerId -> { customerIds.forEach(customerId -> {
try { try {
List<DimAgencyDTO> customerAgencyInfos = dimAgencyService.getAgencyInfoByCustomerId(customerId); List<DimAgencyDTO> customerAgencyInfos = dimAgencyService.getAgencyInfoByCustomerId(customerId);
List<AgencyGroupDailyResultDTO> agencyGroupDaily = this.getAgencyGroupDaily(customerAgencyInfos, dimIdBean, customerId); List<AgencyGroupDailyResultDTO> agencyGroupDaily = this.getAgencyGroupDaily(customerAgencyInfos, dimIdBean, customerId);
factGroupAgencyDailyService.insertGroupAgencyDaily(agencyGroupDaily,customerId); factGroupAgencyDailyService.insertGroupAgencyDaily(agencyGroupDaily, customerId);
} catch (Exception e) { } catch (Exception e) {
log.error(String.format(GroupConstant.STATS_FAILED_AGENCY_DAILY,customerId,LocalDate.now(),e)); log.error(String.format(GroupConstant.STATS_FAILED_AGENCY_DAILY, customerId, LocalDate.now(), e));
} }
}); });
} }
}while (customerIds.size() != NumConstant.ZERO && customerIds.size() == pageSize); } while (customerIds.size() != NumConstant.ZERO && customerIds.size() == pageSize);
} }
/** /**
* @Description 统计 小组 有关数据 dim机关- * @Description 统计 小组 有关数据 dim机关-
* @author zxc String customerId * @author zxc String customerId
*/ */
@Override @Override
@ -114,16 +126,16 @@ public class StatsGroupServiceImpl implements StatsGroupService {
DimIdGenerator.DimIdBean dimIdBean = this.getDimIdBean(formDTO); DimIdGenerator.DimIdBean dimIdBean = this.getDimIdBean(formDTO);
String monthId = dimIdBean.getMonthId(); String monthId = dimIdBean.getMonthId();
String dateId = dimIdBean.getDateId(); String dateId = dimIdBean.getDateId();
List<AgencyMonthlyFormDTO> lastDayAgency = factGroupAgencyDailyService.getLastDayAgency(dateId); List<AgencyMonthlyFormDTO> lastDayAgency = factGroupAgencyDailyService.getLastDayAgency(formDTO.getCustomerId(), dateId);
List<AgencyGroupMonthlyResultDTO> monthGroupIncr = factGroupAgencyDailyService.getMonthGroupIncr(monthId); List<AgencyGroupMonthlyResultDTO> monthGroupIncr = factGroupAgencyDailyService.getMonthGroupIncr(formDTO.getCustomerId(), monthId);
if (monthGroupIncr.size() == NumConstant.ZERO){ if (monthGroupIncr.size() == NumConstant.ZERO) {
lastDayAgency.forEach(agency -> { lastDayAgency.forEach(agency -> {
agency.setGroupIncr(NumConstant.ZERO); agency.setGroupIncr(NumConstant.ZERO);
}); });
}else { } else {
lastDayAgency.forEach(agency -> { lastDayAgency.forEach(agency -> {
monthGroupIncr.forEach(monthIncr -> { monthGroupIncr.forEach(monthIncr -> {
if (agency.getAgencyId().equals(monthIncr.getAgencyId())){ if (agency.getAgencyId().equals(monthIncr.getAgencyId())) {
agency.setGroupIncr(monthIncr.getMonthGroupIncr()); agency.setGroupIncr(monthIncr.getMonthGroupIncr());
} }
}); });
@ -133,14 +145,14 @@ public class StatsGroupServiceImpl implements StatsGroupService {
} }
/** /**
* @Description 网格小组 机关- 数据统计处理
* @param customerAgencyInfos * @param customerAgencyInfos
* @param timeDim * @param timeDim
* @param customerId * @param customerId
* @Description 网格小组 机关- 数据统计处理
* @author zxc * @author zxc
*/ */
public List<AgencyGroupDailyResultDTO> getAgencyGroupDaily(List<DimAgencyDTO> customerAgencyInfos, DimIdGenerator.DimIdBean timeDim,String customerId){ public List<AgencyGroupDailyResultDTO> getAgencyGroupDaily(List<DimAgencyDTO> customerAgencyInfos, DimIdGenerator.DimIdBean timeDim, String customerId) {
if (customerAgencyInfos.size() == NumConstant.ZERO){ if (customerAgencyInfos.size() == NumConstant.ZERO) {
return new ArrayList<>(); return new ArrayList<>();
} }
List<AgencyGroupDailyResultDTO> result = new ArrayList<>(); List<AgencyGroupDailyResultDTO> result = new ArrayList<>();
@ -152,9 +164,9 @@ public class StatsGroupServiceImpl implements StatsGroupService {
agencyResult.setAgencyId(agencyId); agencyResult.setAgencyId(agencyId);
agencyResult.setCustomerId(customerId); agencyResult.setCustomerId(customerId);
agencyResult.setPid(agency.getPid()); agencyResult.setPid(agency.getPid());
BeanUtils.copyProperties(timeDim,agencyResult); BeanUtils.copyProperties(timeDim, agencyResult);
//机关下的所有网格(包括直属网格) //机关下的所有网格(包括直属网格)
List<String> allGrid = this.getAllGrid(agencyId,customerId); List<String> allGrid = this.getAllGrid(agencyId, customerId);
if (allGrid.size() != NumConstant.ZERO) { if (allGrid.size() != NumConstant.ZERO) {
// 1. 机关下有多少网格 (this.getAllGrid拿的是当前机关下所有网格,以下方法是根据“dateId”来拿的,两者过滤) // 1. 机关下有多少网格 (this.getAllGrid拿的是当前机关下所有网格,以下方法是根据“dateId”来拿的,两者过滤)
List<GridIdListByCustomerResultDTO> customerGridIdList = customerGridService.getCustomerGridIdList(customerId, dateId); List<GridIdListByCustomerResultDTO> customerGridIdList = customerGridService.getCustomerGridIdList(customerId, dateId);
@ -246,23 +258,23 @@ public class StatsGroupServiceImpl implements StatsGroupService {
} }
/** /**
* @Description 根据当前机关ID查询出直属网格和所有下级机关的网格
* @param agencyId * @param agencyId
* @Description 根据当前机关ID查询出直属网格和所有下级机关的网格
* @author zxc * @author zxc
*/ */
public List<String> getAllGrid(String agencyId,String customerId){ public List<String> getAllGrid(String agencyId, String customerId) {
List<String> result = new ArrayList<>(); List<String> result = new ArrayList<>();
List<AgencySubTreeDto> allAgency = dimAgencyService.getAllAgency(customerId); List<AgencySubTreeDto> allAgency = dimAgencyService.getAllAgency(customerId);
Map<String,Set<String>> subGridOfAgency = new HashMap<>(); Map<String, Set<String>> subGridOfAgency = new HashMap<>();
allAgency.forEach(agency -> { allAgency.forEach(agency -> {
this.initAgencyGridMap(agency.getAgencyId(),agency,subGridOfAgency); this.initAgencyGridMap(agency.getAgencyId(), agency, subGridOfAgency);
}); });
Set<Map.Entry<String, Set<String>>> entries = subGridOfAgency.entrySet(); Set<Map.Entry<String, Set<String>>> entries = subGridOfAgency.entrySet();
entries.forEach(entry -> { entries.forEach(entry -> {
String key = entry.getKey(); String key = entry.getKey();
Set<String> value = entry.getValue(); Set<String> value = entry.getValue();
if (key.equals(agencyId)){ if (key.equals(agencyId)) {
result.addAll(value); result.addAll(value);
} }
}); });
@ -270,49 +282,49 @@ public class StatsGroupServiceImpl implements StatsGroupService {
} }
/** /**
* @Description 递归获取机关下的网格id包括直属机关
* @param pid * @param pid
* @param agency * @param agency
* @param subGridOfAgency * @param subGridOfAgency
* @Description 递归获取机关下的网格id包括直属机关
* @author zxc * @author zxc
*/ */
void initAgencyGridMap(String pid, AgencySubTreeDto agency, Map<String,Set<String>> subGridOfAgency){ void initAgencyGridMap(String pid, AgencySubTreeDto agency, Map<String, Set<String>> subGridOfAgency) {
//向map中放入数据 //向map中放入数据
if(subGridOfAgency.containsKey(pid)){ if (subGridOfAgency.containsKey(pid)) {
//包含key //包含key
Set<String> grids = subGridOfAgency.get(pid); Set<String> grids = subGridOfAgency.get(pid);
if(null == grids){ if (null == grids) {
grids = new HashSet<>(); grids = new HashSet<>();
subGridOfAgency.put(pid,grids); subGridOfAgency.put(pid, grids);
} }
if(null != agency.getGridIds() && agency.getGridIds().size() > NumConstant.ZERO){ if (null != agency.getGridIds() && agency.getGridIds().size() > NumConstant.ZERO) {
grids.addAll(agency.getGridIds()); grids.addAll(agency.getGridIds());
} }
}else{ } else {
//不包含key //不包含key
Set<String> grids = new HashSet<>(agency.getGridIds()); Set<String> grids = new HashSet<>(agency.getGridIds());
subGridOfAgency.put(pid,grids); subGridOfAgency.put(pid, grids);
} }
//定义递归出口 //定义递归出口
if(StringUtils.equals(ModuleConstant.AGENCY_LEVEL_COMMUNITY,agency.getLevel()) || null == agency.getSubAgencies() || agency.getSubAgencies().size() == NumConstant.ZERO){ if (StringUtils.equals(ModuleConstant.AGENCY_LEVEL_COMMUNITY, agency.getLevel()) || null == agency.getSubAgencies() || agency.getSubAgencies().size() == NumConstant.ZERO) {
return ; return;
} }
//定义递归入口 //定义递归入口
agency.getSubAgencies().forEach(obj -> { agency.getSubAgencies().forEach(obj -> {
initAgencyGridMap(pid,obj,subGridOfAgency); initAgencyGridMap(pid, obj, subGridOfAgency);
}); });
} }
/** /**
* @Description 获取时间维度 dateId--weekId--monthId--quarterId--yearId * @param
* @Description 获取时间维度 dateId--weekId--monthId--quarterId--yearId
* 如果有自定义时间根据自定义时间获取时间维度 * 如果有自定义时间根据自定义时间获取时间维度
* 没有自定义时间默认获取前一天的时间维度 * 没有自定义时间默认获取前一天的时间维度
* @param
* @author zxc * @author zxc
*/ */
public DimIdGenerator.DimIdBean getDimIdBean(GroupStatsFormDTO formDTO){ public DimIdGenerator.DimIdBean getDimIdBean(GroupStatsFormDTO formDTO) {
if (StringUtils.isNotBlank(formDTO.getDate())){ if (StringUtils.isNotBlank(formDTO.getDate())) {
return DimIdGenerator.getDimIdBean(DateUtils.parse(formDTO.getDate(),DateUtils.DATE_PATTERN)); return DimIdGenerator.getDimIdBean(DateUtils.parse(formDTO.getDate(), DateUtils.DATE_PATTERN));
} }
ZoneId zoneId = ZoneId.systemDefault(); ZoneId zoneId = ZoneId.systemDefault();
LocalDate localDate = LocalDate.now().minusDays(NumConstant.ONE); LocalDate localDate = LocalDate.now().minusDays(NumConstant.ONE);

43
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsIssueServiceImpl.java

@ -5,6 +5,7 @@ import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.IssueConstant; import com.epmet.constant.IssueConstant;
import com.epmet.constant.ProjectConstant; import com.epmet.constant.ProjectConstant;
import com.epmet.dto.StatsFormDTO;
import com.epmet.dto.issue.IssueAgencyDTO; import com.epmet.dto.issue.IssueAgencyDTO;
import com.epmet.dto.issue.IssueGridDTO; import com.epmet.dto.issue.IssueGridDTO;
import com.epmet.dto.issue.IssueProjectDTO; import com.epmet.dto.issue.IssueProjectDTO;
@ -23,6 +24,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
@ -57,20 +59,30 @@ public class StatsIssueServiceImpl implements StatsIssueService {
private FactIssueGridMonthlyService factIssueGridMonthlyService; private FactIssueGridMonthlyService factIssueGridMonthlyService;
@Override @Override
public void agencyGridIssueStats() { public void agencyGridIssueStats(StatsFormDTO formDTO) {
int pageNo = 1; int pageNo = 1;
int pageSize = 100; int pageSize = 100;
List<String> customerIdList = null; List<String> customerIdList = null;
do { do {
//获取当前日期前一天 //如果不是空则,获取当前日期前一天
Date date = DateUtils.getBeforeDay(new Date()); Date date = null;
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize); if (!StringUtils.isEmpty(formDTO.getDate())) {
date = DateUtils.stringToDate(formDTO.getDate(), DateUtils.DATE_PATTERN);
} else {
date = DateUtils.getBeforeDay(new Date());
}
if (StringUtils.isEmpty(formDTO.getCustomerId())) {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
} else {
customerIdList = new ArrayList<>();
customerIdList.add(formDTO.getCustomerId());
}
if (!CollectionUtils.isEmpty(customerIdList)) { if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) { for (String customerId : customerIdList) {
//遍历统计每一个客户数据 //遍历统计每一个客户数据
try { try {
customerStats(customerId, date); customerStats(customerId, date);
} catch(Exception e) { } catch (Exception e) {
log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "agencyGridIssueStats", customerId, DateUtils.format(date)), log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "agencyGridIssueStats", customerId, DateUtils.format(date)),
e); e);
} }
@ -79,27 +91,6 @@ public class StatsIssueServiceImpl implements StatsIssueService {
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize); } while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
} }
@Override
public void agencyGridIssueStatsOfDate(Date date) {
int pageNo = 1;
int pageSize = 100;
List<String> customerIdList = null;
do {
//获取当前日期前一天
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
//遍历统计每一个客户数据
try {
customerStats(customerId, date);
} catch(Exception e) {
log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "agencyGridIssueStats", DateUtils.format(date)), e);
}
}
}
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
}
/** /**
* 一个客户一个线程, 分别统计机关日/月数据和网格日/月数据 * 一个客户一个线程, 分别统计机关日/月数据和网格日/月数据
* @author zhaoqifeng * @author zhaoqifeng

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsProjectServiceImpl.java

@ -434,14 +434,12 @@ public class StatsProjectServiceImpl implements StatsProjectService {
} }
//5.2:执行网格月数据统计 //5.2:执行网格月数据统计
//if (Calendar.getInstance().get(Calendar.DATE) == 1) {
try { try {
log.info("StatsProjectServiceImpl.customerGridStats-开始执行机关月统计方法,方法名:gridMonthProjectStats,客户Id:" + customerId); log.info("StatsProjectServiceImpl.customerGridStats-开始执行机关月统计方法,方法名:gridMonthProjectStats,客户Id:" + customerId);
gridMonthProjectStats(customerId, dimId, dimGridList); gridMonthProjectStats(customerId, dimId, dimGridList);
} catch (Exception e) { } catch (Exception e) {
log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "gridMonthProjectStats", customerId, dimId.getMonthId()), e); log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "gridMonthProjectStats", customerId, dimId.getMonthId()), e);
} }
//}
} }
} }

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsPublicityServiceImpl.java

@ -198,7 +198,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
if (null != formDTO && StringUtils.isNotBlank(formDTO.getCustomerId())) { if (null != formDTO && StringUtils.isNotBlank(formDTO.getCustomerId())) {
try { try {
log.info("tagUsedMonthlyStatsjob execute by customerId:{},dateId:{}", formDTO.getCustomerId(), dimIdBean.getDateId()); log.info("tagUsedMonthlyStatsjob execute by customerId:{},monthId:{}", formDTO.getCustomerId(), dimIdBean.getMonthId());
statsTagUsedMonthly(dimIdBean.getMonthId(), formDTO.getCustomerId()); statsTagUsedMonthly(dimIdBean.getMonthId(), formDTO.getCustomerId());
} catch (Exception e) { } catch (Exception e) {
log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "tagUsedMonthlyStatsjob", formDTO.getCustomerId(), dimIdBean.getMonthId()), e); log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "tagUsedMonthlyStatsjob", formDTO.getCustomerId(), dimIdBean.getMonthId()), e);
@ -207,7 +207,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
int pageNo = NumConstant.ONE; int pageNo = NumConstant.ONE;
int pageSize = NumConstant.ONE_HUNDRED; int pageSize = NumConstant.ONE_HUNDRED;
List<String> customerIdList = null; List<String> customerIdList = null;
log.info("tagUsedMonthlyStatsjob execute all customerId,dateId:{}", dimIdBean.getDateId()); log.info("tagUsedMonthlyStatsjob execute all customerId,monthId:{}", dimIdBean.getMonthId());
do { do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize); customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) { if (!CollectionUtils.isEmpty(customerIdList)) {

33
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java

@ -2,8 +2,10 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.ProjectConstant; import com.epmet.constant.ProjectConstant;
import com.epmet.dto.AgencySubTreeDto; import com.epmet.dto.AgencySubTreeDto;
import com.epmet.dto.StatsFormDTO;
import com.epmet.dto.stats.DimTopicStatusDTO; import com.epmet.dto.stats.DimTopicStatusDTO;
import com.epmet.dto.stats.topic.result.TopicStatisticalData; import com.epmet.dto.stats.topic.result.TopicStatisticalData;
import com.epmet.service.StatsTopicService; import com.epmet.service.StatsTopicService;
@ -14,6 +16,7 @@ import com.epmet.service.stats.topic.TopicStatisticalService;
import com.epmet.service.topic.TopicService; import com.epmet.service.topic.TopicService;
import com.epmet.util.DimIdGenerator; import com.epmet.util.DimIdGenerator;
import com.epmet.util.ModuleConstant; import com.epmet.util.ModuleConstant;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -49,27 +52,35 @@ public class StatsTopicServiceImpl implements StatsTopicService {
private TopicStatisticalService topicStatisticalService; private TopicStatisticalService topicStatisticalService;
/** /**
* @Description 分区统计按照客户Id划分 * @param formDTO 如果目标日期为空则自动计算为T-1天
* @param date 如果目标日期为空则自动计算为T-1天
* @return * @return
* @Description 分区统计按照客户Id划分
* @author wangc * @author wangc
* @date 2020.06.28 14:38 * @date 2020.06.28 14:38
**/ **/
@Override @Override
public void partition(Date date) { public void partition(StatsFormDTO formDTO) {
int pageNo = NumConstant.ONE; int pageNo = NumConstant.ONE;
int pageSize = NumConstant.ONE_HUNDRED; int pageSize = NumConstant.ONE_HUNDRED;
List<String> customerIdList = null; List<String> customerIdList = null;
do { Date date = null;
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize); if (StringUtils.isNotBlank(formDTO.getDate())) {
if (!CollectionUtils.isEmpty(customerIdList)) { date = DateUtils.stringToDate(formDTO.getDate(), DateUtils.DATE_PATTERN);
for (String customerId : customerIdList) { }
//遍历统计每一个客户数据 if (StringUtils.isNotBlank(formDTO.getCustomerId())) {
generate(customerId,date); generate(formDTO.getCustomerId(), date);
} else {
do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
//遍历统计每一个客户数据
generate(customerId, date);
}
} }
} } while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize); }
} }

33
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java

@ -2,8 +2,10 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.ProjectConstant; import com.epmet.constant.ProjectConstant;
import com.epmet.dto.AgencySubTreeDto; import com.epmet.dto.AgencySubTreeDto;
import com.epmet.dto.StatsFormDTO;
import com.epmet.dto.stats.user.result.UserStatisticalData; import com.epmet.dto.stats.user.result.UserStatisticalData;
import com.epmet.service.StatsUserService; import com.epmet.service.StatsUserService;
import com.epmet.service.stats.DimAgencyService; import com.epmet.service.stats.DimAgencyService;
@ -12,6 +14,7 @@ import com.epmet.service.stats.user.UserStatisticalService;
import com.epmet.service.user.UserService; import com.epmet.service.user.UserService;
import com.epmet.util.DimIdGenerator; import com.epmet.util.DimIdGenerator;
import com.epmet.util.ModuleConstant; import com.epmet.util.ModuleConstant;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -47,26 +50,34 @@ public class StatsUserServiceImpl implements StatsUserService {
private UserStatisticalService userStatisticalService; private UserStatisticalService userStatisticalService;
/** /**
* @Description 分区统计按照客户Id划分 * @param formDTO 如果目标日期为空则自动计算为T-1天
* @param date 如果目标日期为空则自动计算为T-1天
* @return * @return
* @Description 分区统计按照客户Id划分
* @author wangc * @author wangc
* @date 2020.06.28 14:38 * @date 2020.06.28 14:38
**/ **/
@Override @Override
public void partition(Date date) { public void partition(StatsFormDTO formDTO) {
int pageNo = NumConstant.ONE; int pageNo = NumConstant.ONE;
int pageSize = NumConstant.ONE_HUNDRED; int pageSize = NumConstant.ONE_HUNDRED;
List<String> customerIdList = null; List<String> customerIdList = null;
do { Date date = null;
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize); if (StringUtils.isNotBlank(formDTO.getDate())) {
if (!CollectionUtils.isEmpty(customerIdList)) { date = DateUtils.stringToDate(formDTO.getDate(), DateUtils.DATE_PATTERN);
for (String customerId : customerIdList) { }
//遍历统计每一个客户数据 if (StringUtils.isNotBlank(formDTO.getCustomerId())) {
generate(customerId,date); generate(formDTO.getCustomerId(), date);
} else {
do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
//遍历统计每一个客户数据
generate(customerId, date);
}
} }
} } while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize); }
} }

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactGroupAgencyDailyService.java

@ -104,16 +104,18 @@ public interface FactGroupAgencyDailyService extends BaseService<FactGroupAgency
void insertGroupAgencyDaily(List<AgencyGroupDailyResultDTO> agencyList,String customerId); void insertGroupAgencyDaily(List<AgencyGroupDailyResultDTO> agencyList,String customerId);
/** /**
* @Description 获取 网格小组机关-日统计的最后一天数据
* @param * @param
* @param customerId
* @Description 获取 网格小组机关-日统计的最后一天数据
* @author zxc * @author zxc
*/ */
List<AgencyMonthlyFormDTO> getLastDayAgency(String dateId); List<AgencyMonthlyFormDTO> getLastDayAgency(String customerId, String dateId);
/** /**
* @Description 查询 月的小组增量 * @Description 查询 月的小组增量
* @param customerId
* @param monthId * @param monthId
* @author zxc * @author zxc
*/ */
List<AgencyGroupMonthlyResultDTO> getMonthGroupIncr(String monthId); List<AgencyGroupMonthlyResultDTO> getMonthGroupIncr(String customerId, String monthId);
} }

17
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactGroupAgencyDailyServiceImpl.java

@ -120,25 +120,28 @@ public class FactGroupAgencyDailyServiceImpl extends BaseServiceImpl<FactGroupAg
} }
/** /**
* @Description 获取 网格小组机关-日统计的最后一天数据
* @param * @param
* @param customerId
* @Description 获取 网格小组机关-日统计的最后一天数据
* @author zxc * @author zxc
*/ */
public List<AgencyMonthlyFormDTO> getLastDayAgency(String dateId){ @Override
return baseDao.getLastDayAgency(dateId); public List<AgencyMonthlyFormDTO> getLastDayAgency(String customerId, String dateId) {
return baseDao.getLastDayAgency(customerId, dateId);
} }
/** /**
* @Description 查询 月的小组增量 * @Description 查询 月的小组增量
* @param customerId
* @param monthId * @param monthId
* @author zxc * @author zxc
*/ */
@Override @Override
public List<AgencyGroupMonthlyResultDTO> getMonthGroupIncr(String monthId) { public List<AgencyGroupMonthlyResultDTO> getMonthGroupIncr(String customerId, String monthId) {
if (StringUtils.isBlank(monthId)){ if (StringUtils.isBlank(monthId)) {
return new ArrayList<>(); return new ArrayList<>();
} }
return baseDao.getMonthGroupIncr(monthId); return baseDao.getMonthGroupIncr(customerId, monthId);
} }
} }

1
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java

@ -518,7 +518,6 @@ public class UserServiceImpl implements UserService {
regGridD.setCustomerId(customerId); regGridD.setCustomerId(customerId);
regGridD.setGridId(gridId); regGridD.setGridId(gridId);
regGridD.setCustomerId(customerId);
regGridD.setAgencyId(agencyId);//网格直属得机关 regGridD.setAgencyId(agencyId);//网格直属得机关
regGridD.setDateId(timeDimension.getDateId()); regGridD.setDateId(timeDimension.getDateId());
regGridD.setWeekId(timeDimension.getWeekId()); regGridD.setWeekId(timeDimension.getWeekId());

6
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactGroupAgencyDailyDao.xml

@ -91,6 +91,9 @@
fact_group_agency_daily fact_group_agency_daily
WHERE WHERE
del_flag = '0' del_flag = '0'
<if test="customerId != null and customerId != ''">
AND CUSTOMER_ID = #{customerId,jdbcType=VARCHAR}
</if>
AND date_id = #{dateId} AND date_id = #{dateId}
</select> </select>
@ -103,6 +106,9 @@
fact_group_agency_daily fact_group_agency_daily
WHERE WHERE
del_flag = '0' del_flag = '0'
<if test="customerId != null and customerId != ''">
AND CUSTOMER_ID = #{customerId,jdbcType=VARCHAR}
</if>
AND month_id = #{monthId} AND month_id = #{monthId}
GROUP BY GROUP BY
agency_id agency_id

8
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsIssueService.java

@ -1,6 +1,7 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
/** /**
* @author zhaoqifeng * @author zhaoqifeng
@ -10,10 +11,11 @@ import com.epmet.commons.tools.utils.Result;
public interface StatsIssueService { public interface StatsIssueService {
/** /**
* 议题统计 * 议题统计
* @author zhaoqifeng *
* @date 2020/6/23 14:39
* @param * @param
* @return com.epmet.commons.tools.utils.Result * @return com.epmet.commons.tools.utils.Result
* @author zhaoqifeng
* @date 2020/6/23 14:39
*/ */
Result agencyGridIssueStats(String params); Result agencyGridIssueStats(StatsFormDTO formDTO);
} }

7
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsTopicService.java

@ -1,15 +1,16 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
public interface StatsTopicService { public interface StatsTopicService {
/** /**
* @Description 调用统计服务执行统计 - 话题
* @param * @param
* @return * @return
* @Description 调用统计服务执行统计 - 话题
* @author wangc * @author wangc
* @date 2020.06.29 09:40 * @date 2020.06.29 09:40
**/ **/
Result execTopicStatistical(String date); Result execTopicStatistical(StatsFormDTO formDTO);
} }

7
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsUserService.java

@ -1,15 +1,16 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
public interface StatsUserService { public interface StatsUserService {
/** /**
* @Description 调用统计服务-用户
* @param * @param
* @return * @return
* @Description 调用统计服务-用户
* @author wangc * @author wangc
* @date 2020.06.29 09:39 * @date 2020.06.29 09:39
**/ **/
Result execUserStatistical(String date); Result execUserStatistical(StatsFormDTO formDTO);
} }

14
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsIssueServiceImpl.java

@ -1,10 +1,9 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.issue.form.IssueJobFromDTO; import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsIssueService;
import com.epmet.feign.DataStatisticalOpenFeignClient; import com.epmet.feign.DataStatisticalOpenFeignClient;
import org.apache.commons.lang3.StringUtils; import com.epmet.service.StatsIssueService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -19,12 +18,7 @@ public class StatsIssueServiceImpl implements StatsIssueService {
private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient;
@Override @Override
public Result agencyGridIssueStats(String params) { public Result agencyGridIssueStats(StatsFormDTO formDTO) {
if (StringUtils.isNotBlank(params)) { return dataStatisticalOpenFeignClient.agencyGridIssueStats(formDTO);
IssueJobFromDTO dto = new IssueJobFromDTO();
dto.setDate(params);
return dataStatisticalOpenFeignClient.agencyGridIssueStatsOfDate(dto);
}
return dataStatisticalOpenFeignClient.agencyGridIssueStats();
} }
} }

7
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java

@ -1,6 +1,7 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.feign.DataStatisticalOpenFeignClient; import com.epmet.feign.DataStatisticalOpenFeignClient;
import com.epmet.service.StatsTopicService; import com.epmet.service.StatsTopicService;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -9,7 +10,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
* @Description * @Description
* @ClassName StatsTopicServiceImpl * @ClassName StatsTopicServiceImpl
@ -25,8 +25,7 @@ public class StatsTopicServiceImpl implements StatsTopicService {
private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient;
@Override @Override
public Result execTopicStatistical(String date) { public Result execTopicStatistical(StatsFormDTO formDTO) {
return dataStatisticalOpenFeignClient.execTopicStatistical(formDTO);
return dataStatisticalOpenFeignClient.execTopicStatistical(date);
} }
} }

5
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java

@ -1,6 +1,7 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.feign.DataStatisticalOpenFeignClient; import com.epmet.feign.DataStatisticalOpenFeignClient;
import com.epmet.service.StatsUserService; import com.epmet.service.StatsUserService;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -25,7 +26,7 @@ public class StatsUserServiceImpl implements StatsUserService {
private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient;
@Override @Override
public Result execUserStatistical(String date) { public Result execUserStatistical(StatsFormDTO formDTO) {
return dataStatisticalOpenFeignClient.execUserStatistical(date); return dataStatisticalOpenFeignClient.execUserStatistical(formDTO);
} }
} }

13
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsIssueTask.java

@ -1,8 +1,11 @@
package com.epmet.task; package com.epmet.task;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsIssueService; import com.epmet.service.StatsIssueService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -20,10 +23,14 @@ public class StatsIssueTask implements ITask {
@Override @Override
public void run(String params) { public void run(String params) {
log.info("StatsGroupGridDailyTask定时任务正在执行,参数为:{}", params); log.info("StatsGroupGridDailyTask定时任务正在执行,参数为:{}", params);
Result result = statsIssueService.agencyGridIssueStats(params); StatsFormDTO formDTO = new StatsFormDTO();
if (result.success()){ if (StringUtils.isNotBlank(params)) {
formDTO = JSON.parseObject(params, StatsFormDTO.class);
}
Result result = statsIssueService.agencyGridIssueStats(formDTO);
if (result.success()) {
log.info("StatsGroupGridDailyTask定时任务执行成功"); log.info("StatsGroupGridDailyTask定时任务执行成功");
}else { } else {
log.error("StatsGroupGridDailyTask定时任务执行失败:" + result.getMsg()); log.error("StatsGroupGridDailyTask定时任务执行失败:" + result.getMsg());
} }
} }

13
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsTopicTask.java

@ -1,7 +1,10 @@
package com.epmet.task; package com.epmet.task;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsTopicService; import com.epmet.service.StatsTopicService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -24,10 +27,14 @@ public class StatsTopicTask implements ITask {
@Override @Override
public void run(String params) { public void run(String params) {
logger.info("StatsTopicTask定时任务正在执行,参数为:{}", params); logger.info("StatsTopicTask定时任务正在执行,参数为:{}", params);
Result result = statsTopicService.execTopicStatistical(params); StatsFormDTO statsFormDTO = new StatsFormDTO();
if (result.success()){ if (StringUtils.isNotBlank(params)) {
statsFormDTO = JSON.parseObject(params, StatsFormDTO.class);
}
Result result = statsTopicService.execTopicStatistical(statsFormDTO);
if (result.success()) {
logger.info("StatsTopicTask定时任务执行成功"); logger.info("StatsTopicTask定时任务执行成功");
}else { } else {
logger.error("StatsTopicTask定时任务执行失败:" + result.getMsg()); logger.error("StatsTopicTask定时任务执行失败:" + result.getMsg());
} }
} }

13
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsUserTask.java

@ -1,7 +1,10 @@
package com.epmet.task; package com.epmet.task;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO;
import com.epmet.service.StatsUserService; import com.epmet.service.StatsUserService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -24,10 +27,14 @@ public class StatsUserTask implements ITask {
@Override @Override
public void run(String params) { public void run(String params) {
logger.info("StatsUserTask定时任务正在执行,参数为:{}", params); logger.info("StatsUserTask定时任务正在执行,参数为:{}", params);
Result result = statsUserService.execUserStatistical(params); StatsFormDTO formDTO = new StatsFormDTO();
if (result.success()){ if (StringUtils.isNotBlank(params)) {
formDTO = JSON.parseObject(params, StatsFormDTO.class);
}
Result result = statsUserService.execUserStatistical(formDTO);
if (result.success()) {
logger.info("StatsUserTask定时任务执行成功"); logger.info("StatsUserTask定时任务执行成功");
}else { } else {
logger.error("StatsUserTask定时任务执行失败:" + result.getMsg()); logger.error("StatsUserTask定时任务执行失败:" + result.getMsg());
} }
} }

Loading…
Cancel
Save