Browse Source

Merge remote-tracking branch 'origin/dev_screen_data_2.0' into dev_screen_data_2.0

dev
wangchao 5 years ago
parent
commit
5a032002e8
  1. 4
      epmet-gateway/src/main/resources/bootstrap.yml
  2. 28
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/fact/FactIndexController.java
  3. 4
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java
  4. 8
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/ScreenUserController.java
  5. 30
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/fact/impl/FactIndexServiceImpl.java
  6. 5
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/result/MaxAndMinBigDecimalResultDTO.java
  7. 11
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java
  8. 13
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java
  9. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ScreenExtractDailyController.java
  10. 9
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java
  11. 3
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/dataToIndex/impl/IndexOriginExtractServiceImpl.java
  12. 69
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java
  13. 26
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenExtractServiceImpl.java
  14. 9
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateCommunityServiceImpl.java
  15. 5
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateDistrictServiceImpl.java
  16. 5
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateStreetServiceImpl.java
  17. 9
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java
  18. 5
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java
  19. 9
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml
  20. 9
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/ScreenExtractTaskService.java
  21. 17
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/ScreenExtractTaskServiceImpl.java
  22. 34
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ScreenExtractMonthlyTask.java

4
epmet-gateway/src/main/resources/bootstrap.yml

@ -440,9 +440,7 @@ epmet:
# 外部应用认证,使用AccessToken等头进行认证 # 外部应用认证,使用AccessToken等头进行认证
externalAuthUrls: externalAuthUrls:
- /data/report/test/test - /data/report/**
- /data/report/screen/**
- /data/report/kcscreen/**
- /epmetuser/customerstaff/customerlist - /epmetuser/customerstaff/customerlist
swaggerUrls: swaggerUrls:

28
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/fact/FactIndexController.java

@ -28,78 +28,78 @@ public class FactIndexController {
private FactIndexService factIndexService; private FactIndexService factIndexService;
/** /**
* @param tokenDTO * @param formDTO
* @Description 能力指数 * @Description 能力指数
* @author sun * @author sun
*/ */
@PostMapping("index/ablityindex") @PostMapping("index/ablityindex")
public Result<List<AblityIndexResultDTO>> ablityIndex(@LoginUser TokenDto tokenDTO, @RequestBody AblityIndexFormDTO formDTO) { public Result<List<AblityIndexResultDTO>> ablityIndex(@RequestBody AblityIndexFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, AblityIndexFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AblityIndexFormDTO.AddUserInternalGroup.class);
return new Result<List<AblityIndexResultDTO>>().ok(factIndexService.ablityIndex(formDTO)); return new Result<List<AblityIndexResultDTO>>().ok(factIndexService.ablityIndex(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 按月份查询各项能力分数 * @Description 按月份查询各项能力分数
* @author sun * @author sun
*/ */
@PostMapping("index/scorelist") @PostMapping("index/scorelist")
public Result<List<ScoreListResultDTO>> scoreList(@LoginUser TokenDto tokenDTO, @RequestBody ScoreListFormDTO formDTO) { public Result<List<ScoreListResultDTO>> scoreList(@RequestBody ScoreListFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, ScoreListFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, ScoreListFormDTO.AddUserInternalGroup.class);
return new Result<List<ScoreListResultDTO>>().ok(factIndexService.scoreList(formDTO)); return new Result<List<ScoreListResultDTO>>().ok(factIndexService.scoreList(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 按月份查询各项能力最近12个月得分 * @Description 按月份查询各项能力最近12个月得分
* @author sun * @author sun
*/ */
@PostMapping("index/monthscorelist") @PostMapping("index/monthscorelist")
public Result<List<MonthScoreListResultDTO>> monthScoreList(@LoginUser TokenDto tokenDTO, @RequestBody MonthScoreListFormDTO formDTO) { public Result<List<MonthScoreListResultDTO>> monthScoreList(@RequestBody MonthScoreListFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, MonthScoreListFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, MonthScoreListFormDTO.AddUserInternalGroup.class);
return new Result<List<MonthScoreListResultDTO>>().ok(factIndexService.monthScoreList(formDTO)); return new Result<List<MonthScoreListResultDTO>>().ok(factIndexService.monthScoreList(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 按月查询各项指标数据 * @Description 按月查询各项指标数据
* @author sun * @author sun
*/ */
@PostMapping("index/ablitylist") @PostMapping("index/ablitylist")
public Result<List<AblityListResultDTO>> ablityList(@LoginUser TokenDto tokenDTO, @RequestBody AblityListFormDTO formDTO) { public Result<List<AblityListResultDTO>> ablityList(@RequestBody AblityListFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, AblityListFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AblityListFormDTO.AddUserInternalGroup.class);
return new Result<List<AblityListResultDTO>>().ok(factIndexService.ablityList(formDTO)); return new Result<List<AblityListResultDTO>>().ok(factIndexService.ablityList(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 按月查询各项指标最近12个月数据 * @Description 按月查询各项指标最近12个月数据
* @author sun * @author sun
*/ */
@PostMapping("index/monthablitylist") @PostMapping("index/monthablitylist")
public Result<List<MonthAblityListResultDTO>> monthAblityList(@LoginUser TokenDto tokenDTO, @RequestBody MonthAblityListFormDTO formDTO) { public Result<List<MonthAblityListResultDTO>> monthAblityList(@RequestBody MonthAblityListFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, MonthAblityListFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, MonthAblityListFormDTO.AddUserInternalGroup.class);
return new Result<List<MonthAblityListResultDTO>>().ok(factIndexService.monthAblityList(formDTO)); return new Result<List<MonthAblityListResultDTO>>().ok(factIndexService.monthAblityList(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 同级对比各项数据查询 * @Description 同级对比各项数据查询
* @author sun * @author sun
*/ */
@PostMapping("index/peercomparison") @PostMapping("index/peercomparison")
public Result<List<PeerComparisonResultDTO>> peerComparison(@LoginUser TokenDto tokenDTO, @RequestBody PeerComparisonFormDTO formDTO) { public Result<List<PeerComparisonResultDTO>> peerComparison(@RequestBody PeerComparisonFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, PeerComparisonFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, PeerComparisonFormDTO.AddUserInternalGroup.class);
return new Result<List<PeerComparisonResultDTO>>().ok(factIndexService.peerComparison(formDTO)); return new Result<List<PeerComparisonResultDTO>>().ok(factIndexService.peerComparison(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 是否根组织 * @Description 是否根组织
* @author sun * @author sun
*/ */
@PostMapping("index/rootagency") @PostMapping("index/rootagency")
public Result<RootAgencyResultDTO> rootAgency(@LoginUser TokenDto tokenDTO, @RequestBody RootAgencyFormDTO formDTO) { public Result<RootAgencyResultDTO> rootAgency(@RequestBody RootAgencyFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, RootAgencyFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, RootAgencyFormDTO.AddUserInternalGroup.class);
return new Result<RootAgencyResultDTO>().ok(factIndexService.rootAgency(formDTO)); return new Result<RootAgencyResultDTO>().ok(factIndexService.rootAgency(formDTO));
} }

4
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java

@ -103,12 +103,12 @@ public class IndexController {
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 组织月度指数得分 * @Description 组织月度指数得分
* @author sun * @author sun
*/ */
@PostMapping("month/indexscore") @PostMapping("month/indexscore")
public Result<IndexScoreResultDTO> indexScore(@LoginUser TokenDto tokenDTO, @RequestBody IndexScoreFormDTO formDTO) { public Result<IndexScoreResultDTO> indexScore(@RequestBody IndexScoreFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, IndexScoreFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, IndexScoreFormDTO.AddUserInternalGroup.class);
return new Result<IndexScoreResultDTO>().ok(indexService.indexScore(formDTO)); return new Result<IndexScoreResultDTO>().ok(indexService.indexScore(formDTO));
} }

8
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/ScreenUserController.java

@ -30,23 +30,23 @@ public class ScreenUserController {
private ScreenUserService screenUserService; private ScreenUserService screenUserService;
/** /**
* @param tokenDTO * @param formDTO
* @Description 热心市民积分排行列表 * @Description 热心市民积分排行列表
* @author sun * @author sun
*/ */
@PostMapping("userpointrank") @PostMapping("userpointrank")
public Result<List<UserPointRankListResultDTO>> userPointRank(@LoginUser TokenDto tokenDTO, @RequestBody UserPointRankFormDTO formDTO) { public Result<List<UserPointRankListResultDTO>> userPointRank(@RequestBody UserPointRankFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, UserPointRankFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, UserPointRankFormDTO.AddUserInternalGroup.class);
return new Result<List<UserPointRankListResultDTO>>().ok(screenUserService.userPointRank(formDTO)); return new Result<List<UserPointRankListResultDTO>>().ok(screenUserService.userPointRank(formDTO));
} }
/** /**
* @param tokenDTO * @param formDTO
* @Description 党员指标得分排行 * @Description 党员指标得分排行
* @author sun * @author sun
*/ */
@PostMapping("partindexscroerank") @PostMapping("partindexscroerank")
public Result<List<PartIndexScroeRankResultDTO>> partIndexScroeRank(@LoginUser TokenDto tokenDTO, @RequestBody PartIndexScroeRankFormDTO formDTO) { public Result<List<PartIndexScroeRankResultDTO>> partIndexScroeRank(@RequestBody PartIndexScroeRankFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, PartIndexScroeRankFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, PartIndexScroeRankFormDTO.AddUserInternalGroup.class);
return new Result<List<PartIndexScroeRankResultDTO>>().ok(screenUserService.partIndexScroeRank(formDTO)); return new Result<List<PartIndexScroeRankResultDTO>>().ok(screenUserService.partIndexScroeRank(formDTO));
} }

30
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/fact/impl/FactIndexServiceImpl.java

@ -19,6 +19,7 @@ import java.text.NumberFormat;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.regex.Pattern;
/** /**
* 数据改版api * 数据改版api
@ -447,6 +448,9 @@ public class FactIndexServiceImpl implements FactIndexService {
* @author sun * @author sun
*/ */
public String getDate(String newDate) { public String getDate(String newDate) {
if (!validDateEffecitive(newDate)) {
throw new RenException(String.format("monthId格式错误,monthId:%s", newDate));
}
String date = ""; String date = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyymm"); SimpleDateFormat sdf = new SimpleDateFormat("yyyymm");
try { try {
@ -460,6 +464,32 @@ public class FactIndexServiceImpl implements FactIndexService {
return date; return date;
} }
/**
* @param newDate
* @Description 校验日期格式是否正确
* @author sun
*/
public boolean validDateEffecitive(String newDate) {
//yyyy-MM-dd格式
//String DATE_REGEX = "^([1-9]\\d{3}-)(([0]{0,1}[1-9]-)|([1][0-2]-))(([0-3]{0,1}[0-9]))$";
//yyyymm格式
String DATE_REGEX = "^([1-9]\\d{3})(([0]{0,1}[1-9])|([1][0-2]))$";
boolean matches = Pattern.matches(DATE_REGEX, newDate);
if (!matches) {
return matches;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyymm");
//设置日期格式转的严谨性
sdf.setLenient(false);
try {
sdf.parse(newDate);
} catch (ParseException e) {
e.printStackTrace();
return false;
}
return matches;
}
/** /**
* @param formDTO * @param formDTO
* @Description 同级对比各项数据查询 * @Description 同级对比各项数据查询

5
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/result/MaxAndMinBigDecimalResultDTO.java

@ -1,5 +1,6 @@
package com.epmet.dto.screen.result; package com.epmet.dto.screen.result;
import com.epmet.commons.tools.constant.NumConstant;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ -18,4 +19,8 @@ public class MaxAndMinBigDecimalResultDTO implements Serializable {
private BigDecimal max; private BigDecimal max;
public MaxAndMinBigDecimalResultDTO() {
this.min = new BigDecimal(NumConstant.ZERO);
this.max = new BigDecimal(NumConstant.ZERO);
}
} }

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

@ -5,6 +5,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO; import com.epmet.dto.StatsFormDTO;
import com.epmet.dto.extract.form.ExtractIndexFormDTO; 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.group.form.GroupStatsFormDTO; import com.epmet.dto.group.form.GroupStatsFormDTO;
import com.epmet.dto.issue.form.IssueJobFromDTO; import com.epmet.dto.issue.form.IssueJobFromDTO;
import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO;
@ -229,4 +230,14 @@ public interface DataStatisticalOpenFeignClient {
*/ */
@PostMapping(value = "/data/stats/screenextract/extractdailyall") @PostMapping(value = "/data/stats/screenextract/extractdailyall")
Result extractDailyAll(@RequestBody(required = false) ExtractOriginFormDTO extractOriginFormDTO); Result extractDailyAll(@RequestBody(required = false) ExtractOriginFormDTO extractOriginFormDTO);
/**
* @return com.epmet.commons.tools.utils.Result
* @param extractScreenFormDTO
* @author yinzuomei
* @description
* @Date 2020/9/28 11:05
**/
@PostMapping("/data/stats/screenextract/extractmonthlyall")
Result extractMonthlyAll(ExtractScreenFormDTO extractScreenFormDTO);
} }

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

@ -6,6 +6,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.StatsFormDTO; import com.epmet.dto.StatsFormDTO;
import com.epmet.dto.extract.form.ExtractIndexFormDTO; 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.group.form.GroupStatsFormDTO; import com.epmet.dto.group.form.GroupStatsFormDTO;
import com.epmet.dto.issue.form.IssueJobFromDTO; import com.epmet.dto.issue.form.IssueJobFromDTO;
import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO;
@ -217,4 +218,16 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp
public Result extractDailyAll(ExtractOriginFormDTO extractOriginFormDTO) { public Result extractDailyAll(ExtractOriginFormDTO extractOriginFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "extractDailyAll", extractOriginFormDTO); return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "extractDailyAll", extractOriginFormDTO);
} }
/**
* @param extractScreenFormDTO
* @return com.epmet.commons.tools.utils.Result
* @author yinzuomei
* @description
* @Date 2020/9/28 11:05
**/
@Override
public Result extractMonthlyAll(ExtractScreenFormDTO extractScreenFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "screenExtractMonthly", extractScreenFormDTO);
}
} }

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ScreenExtractDailyController.java

@ -39,7 +39,7 @@ public class ScreenExtractDailyController {
* @author zxc * @author zxc
* @date 2020/9/24 10:15 上午 * @date 2020/9/24 10:15 上午
*/ */
@PostMapping("extractmonthlyyall") @PostMapping("extractmonthlyall")
public Result screenExtractMonthly(@RequestBody ExtractScreenFormDTO formDTO) { public Result screenExtractMonthly(@RequestBody ExtractScreenFormDTO formDTO) {
screenExtractService.extractMonthlyAll(formDTO); screenExtractService.extractMonthlyAll(formDTO);
return new Result(); return new Result();

9
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java

@ -94,4 +94,13 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
* @return java.util.List<com.epmet.dto.project.ProjectInfoDTO> * @return java.util.List<com.epmet.dto.project.ProjectInfoDTO>
*/ */
List<ProjectDTO> selectProjectInfo(@Param("customerId") String customerId, @Param("date") String date); List<ProjectDTO> selectProjectInfo(@Param("customerId") String customerId, @Param("date") String date);
/**
* 获取用户可滞留天数
* @author zhaoqifeng
* @date 2020/9/28 10:16
* @param customerId
* @return java.lang.String
*/
String selectParameterValueByKey(@Param("customerId") String customerId);
} }

3
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/dataToIndex/impl/IndexOriginExtractServiceImpl.java

@ -14,6 +14,7 @@ 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 java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -52,7 +53,7 @@ public class IndexOriginExtractServiceImpl implements IndexOriginExtractService
String monthId = formDTO.getMonthId(); String monthId = formDTO.getMonthId();
String customerId = formDTO.getCustomerId(); String customerId = formDTO.getCustomerId();
if (StringUtils.isBlank(monthId)) { if (StringUtils.isBlank(monthId)) {
monthId = DimIdGenerator.getDateDimId(DateUtils.addDateMonths(new Date(), -1)); monthId = LocalDate.now().minusMonths(NumConstant.ONE).toString().replace("-","").substring(NumConstant.ZERO,NumConstant.SIX);
} }
List<String> customerIds = new ArrayList<>(); List<String> customerIds = new ArrayList<>();
if (StringUtils.isNotBlank(customerId)) { if (StringUtils.isNotBlank(customerId)) {

69
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java

@ -1,6 +1,7 @@
package com.epmet.service.evaluationindex.extract.todata.impl; package com.epmet.service.evaluationindex.extract.todata.impl;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
@ -71,6 +72,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
@Autowired @Autowired
private FactOriginProjectOrgPeriodDailyDao factOriginProjectOrgPeriodDailyDao; private FactOriginProjectOrgPeriodDailyDao factOriginProjectOrgPeriodDailyDao;
private final static String ONE_DAY = "<1";
@Override @Override
public void saveOriginProjectDaily(ExtractOriginFormDTO extractOriginFormDTO) { public void saveOriginProjectDaily(ExtractOriginFormDTO extractOriginFormDTO) {
String dateString = extractOriginFormDTO.getDateId(); String dateString = extractOriginFormDTO.getDateId();
@ -80,7 +83,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
List<ProjectProcessEntity> closedList = projectProcessService.getClosedProjectList(customerId, dateString); List<ProjectProcessEntity> closedList = projectProcessService.getClosedProjectList(customerId, dateString);
List<FactOriginProjectMainDailyDTO> pendingList = factOriginProjectMainDailyService.getPendingList(customerId); List<FactOriginProjectMainDailyDTO> pendingList = factOriginProjectMainDailyService.getPendingList(customerId);
List<FinishOrgDTO> finishOrgList = projectProcessService.getFinishOrg(customerId, dateString); List<FinishOrgDTO> finishOrgList = projectProcessService.getFinishOrg(customerId, dateString);
if (null != closedList && !closedList.isEmpty()) { if (CollectionUtils.isEmpty(closedList)) {
List<FactOriginProjectMainDailyEntity> closeProjects = List<FactOriginProjectMainDailyEntity> closeProjects =
pendingList.stream().flatMap(pending -> closedList.stream().filter(closed -> pending.getId().equals(closed.getProjectId())).map(process -> { pendingList.stream().flatMap(pending -> closedList.stream().filter(closed -> pending.getId().equals(closed.getProjectId())).map(process -> {
FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity(); FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity();
@ -92,9 +95,9 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
return entity; return entity;
})).collect(Collectors.toList()); })).collect(Collectors.toList());
if (null != finishOrgList && !finishOrgList.isEmpty()) { if (CollectionUtils.isEmpty(finishOrgList)) {
closeProjects.forEach(close -> finishOrgList.stream().filter(finish -> close.getId().equals(finish.getProjectId())).forEach(dto -> { closeProjects.forEach(close -> finishOrgList.stream().filter(finish -> close.getId().equals(finish.getProjectId())).forEach(dto -> {
String[] orgIds = dto.getPIdPath().split(":"); String[] orgIds = dto.getPIdPath().split(StrConstant.COLON);
if (orgIds.length > NumConstant.ONE) { if (orgIds.length > NumConstant.ONE) {
close.setFinishOrgIds(orgIds[orgIds.length - 1]); close.setFinishOrgIds(orgIds[orgIds.length - 1]);
} else { } else {
@ -109,7 +112,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
} }
//获取项目信息 //获取项目信息
List<ProjectDTO> projectList = projectService.getProjectInfo(customerId, dateString); List<ProjectDTO> projectList = projectService.getProjectInfo(customerId, dateString);
if (null != projectList && !projectList.isEmpty()) { if (CollectionUtils.isEmpty(projectList)) {
//提取议题ID //提取议题ID
List<String> issueIds = projectList.stream().map(ProjectDTO::getOriginId).collect(Collectors.toList()); List<String> issueIds = projectList.stream().map(ProjectDTO::getOriginId).collect(Collectors.toList());
//获取议题信息 //获取议题信息
@ -139,7 +142,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setCreatedTime(project.getCreatedTime()); entity.setCreatedTime(project.getCreatedTime());
entity.setUpdatedTime(project.getUpdatedTime()); entity.setUpdatedTime(project.getUpdatedTime());
entity.setPids(project.getOrgIdPath()); entity.setPids(project.getOrgIdPath());
String[] pIds = project.getOrgIdPath().split(":"); String[] pIds = project.getOrgIdPath().split(StrConstant.COLON);
if (pIds.length > 1) { if (pIds.length > 1) {
entity.setPid(pIds[pIds.length - 2]); entity.setPid(pIds[pIds.length - 2]);
} else if(pIds.length == 1){ } else if(pIds.length == 1){
@ -163,7 +166,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setIsParty(NumConstant.ONE_STR); entity.setIsParty(NumConstant.ONE_STR);
})); }));
list.forEach(entity -> finishOrgList.stream().filter(finish -> entity.getId().equals(finish.getProjectId())).forEach(dto -> { list.forEach(entity -> finishOrgList.stream().filter(finish -> entity.getId().equals(finish.getProjectId())).forEach(dto -> {
String[] orgIds = dto.getPIdPath().split(":"); String[] orgIds = dto.getPIdPath().split(StrConstant.COLON);
if (orgIds.length > NumConstant.ONE) { if (orgIds.length > NumConstant.ONE) {
entity.setFinishOrgIds(orgIds[orgIds.length - 1]); entity.setFinishOrgIds(orgIds[orgIds.length - 1]);
} else { } else {
@ -179,7 +182,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
final List<FactOriginProjectMainDailyEntity> mainList = list; final List<FactOriginProjectMainDailyEntity> mainList = list;
//节点发起人 //节点发起人
List<ProcessInfoDTO> processList = projectProcessService.getProcessListByCustomer(customerId, dateString); List<ProcessInfoDTO> processList = projectProcessService.getProcessListByCustomer(customerId, dateString);
if (null != processList && !processList.isEmpty()) { if (CollectionUtils.isEmpty(processList)) {
List<FactOriginProjectLogDailyEntity> logList = processList.stream().map(process -> { List<FactOriginProjectLogDailyEntity> logList = processList.stream().map(process -> {
//获取日期相关维度 //获取日期相关维度
DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(process.getCreatedTime()); DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(process.getCreatedTime());
@ -204,15 +207,15 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setOrgId(process.getGridId()); entity.setOrgId(process.getGridId());
entity.setPid(process.getAgencyId()); entity.setPid(process.getAgencyId());
}else{ }else{
if(!process.getPids().contains(":")){ if(!process.getPids().contains(StrConstant.COLON)){
entity.setPids(""); entity.setPids("");
entity.setPid(NumConstant.ZERO_STR); entity.setPid(NumConstant.ZERO_STR);
}else{ }else{
String[] orgArray = process.getPids().split(":"); String[] orgArray = process.getPids().split(StrConstant.COLON);
if(null != orgArray && orgArray.length > NumConstant.ONE){ if(orgArray.length > NumConstant.ONE){
entity.setPid(orgArray[orgArray.length - NumConstant.TWO]); entity.setPid(orgArray[orgArray.length - NumConstant.TWO]);
String path = process.getPids().replaceAll(process.getAgencyId(),""); String path = process.getPids().replaceAll(process.getAgencyId(),"");
if(path.endsWith(":")){ if(path.endsWith(StrConstant.COLON)){
path =path.substring(NumConstant.ZERO,path.length() - NumConstant.ONE); path =path.substring(NumConstant.ZERO,path.length() - NumConstant.ONE);
} }
entity.setPids(path); entity.setPids(path);
@ -283,15 +286,15 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setOrgId(process.getGridId()); entity.setOrgId(process.getGridId());
entity.setPid(process.getAgencyId()); entity.setPid(process.getAgencyId());
}else{ }else{
if(!process.getPids().contains(":")){ if(!process.getPids().contains(StrConstant.COLON)){
entity.setPids(""); entity.setPids("");
entity.setPid(NumConstant.ZERO_STR); entity.setPid(NumConstant.ZERO_STR);
}else{ }else{
String[] orgArray = process.getPids().split(":"); String[] orgArray = process.getPids().split(StrConstant.COLON);
if(null != orgArray && orgArray.length > NumConstant.ONE){ if(orgArray.length > NumConstant.ONE){
entity.setPid(orgArray[orgArray.length - NumConstant.TWO]); entity.setPid(orgArray[orgArray.length - NumConstant.TWO]);
String path = process.getPids().replaceAll(process.getAgencyId(),""); String path = process.getPids().replaceAll(process.getAgencyId(),"");
if(path.endsWith(":")){ if(path.endsWith(StrConstant.COLON)){
path =path.substring(NumConstant.ZERO,path.length() - NumConstant.ONE); path =path.substring(NumConstant.ZERO,path.length() - NumConstant.ONE);
} }
entity.setPids(path); entity.setPids(path);
@ -322,7 +325,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
@Override @Override
public void extractProjectPeriodData(ExtractOriginFormDTO param) { public void extractProjectPeriodData(ExtractOriginFormDTO param) {
int trace = factOriginProjectOrgPeriodDailyDao.selectIfExisted(param.getCustomerId()); int trace = factOriginProjectOrgPeriodDailyDao.selectIfExisted(param.getCustomerId());
Boolean isFirst = trace <= NumConstant.ZERO ? true : false; Boolean isFirst = trace <= NumConstant.ZERO;
if (StringUtils.isBlank(param.getDateId())) { if (StringUtils.isBlank(param.getDateId())) {
Date yesterday = new Date(System.currentTimeMillis() - 1000 * 60 * 60 * 24); Date yesterday = new Date(System.currentTimeMillis() - 1000 * 60 * 60 * 24);
SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD);
@ -345,23 +348,23 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
}else{ }else{
dest.setOrgType("agency"); dest.setOrgType("agency");
dest.setPids(""); dest.setPids("");
String[] array = original.getOrgIdPath().split(":"); String[] array = original.getOrgIdPath().split(StrConstant.COLON);
if(null == array || array.length <= NumConstant.ZERO){ if(array.length <= NumConstant.ZERO){
dest.setPid(NumConstant.ZERO_STR); dest.setPid(NumConstant.ZERO_STR);
} }
if(array[NumConstant.ZERO] == original.getOrgId() && array.length == NumConstant.ONE){ if(array[NumConstant.ZERO].equals(original.getOrgId()) && array.length == NumConstant.ONE){
dest.setPid(NumConstant.ZERO_STR); dest.setPid(NumConstant.ZERO_STR);
} }
if(array.length > NumConstant.ONE && original.getOrgId() == array[array.length - NumConstant.ONE]){ if(array.length > NumConstant.ONE && original.getOrgId().equals(array[array.length - NumConstant.ONE])){
dest.setPid(array[array.length - NumConstant.TWO]); dest.setPid(array[array.length - NumConstant.TWO]);
dest.setPids(original.getOrgIdPath().replace(original.getOrgId(),"")); dest.setPids(original.getOrgIdPath().replace(original.getOrgId(),""));
} }
if(StringUtils.isNotBlank(dest.getPids())){ if(StringUtils.isNotBlank(dest.getPids())){
while(dest.getPids().endsWith(":")){ while(dest.getPids().endsWith(StrConstant.COLON)){
dest.setPids(dest.getPids().substring(NumConstant.ZERO,dest.getPids().length() - NumConstant.ONE)); dest.setPids(dest.getPids().substring(NumConstant.ZERO,dest.getPids().length() - NumConstant.ONE));
} }
while(dest.getPids().startsWith(":")){ while(dest.getPids().startsWith(StrConstant.COLON)){
dest.setPids(dest.getPids().replaceFirst(":","")); dest.setPids(dest.getPids().replaceFirst(StrConstant.COLON,""));
} }
} }
dest.setPids(dest.getPids().replaceAll(" ","")); dest.setPids(dest.getPids().replaceAll(" ",""));
@ -400,13 +403,29 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
list.add(workDayFormDTO); list.add(workDayFormDTO);
Result<List<WorkDayResultDTO>> detentionDays = epmetCommonServiceOpenFeignClient.detentionDays(list); Result<List<WorkDayResultDTO>> detentionDays = epmetCommonServiceOpenFeignClient.detentionDays(list);
String days = detentionDays.getData().get(NumConstant.ZERO).getDetentionDays(); String days = detentionDays.getData().get(NumConstant.ZERO).getDetentionDays();
if (("<1").equals(days)) { if (ONE_DAY.equals(days)) {
result = 1; result = NumConstant.ONE;
} else { } else {
result = Integer.parseInt(days); result = Integer.parseInt(days);
} }
return result; return result;
} }
/**
* 客户配置的可滞留时间没有的话默认5天
* @author zhaoqifeng
* @date 2020/9/28 10:27
* @param customerId
* @return java.lang.Integer
*/
private Integer getDays(String customerId) {
String value = projectService.getParameterValueByKey(customerId);
Integer days = NumConstant.FIVE;
if (StringUtils.isNotBlank(value)) {
days = Integer.valueOf(value);
}
return days;
}
} }

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

@ -4,10 +4,7 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.DateUtils;
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.service.evaluationindex.extract.toscreen.PartyBaseInfoService; import com.epmet.service.evaluationindex.extract.toscreen.*;
import com.epmet.service.evaluationindex.extract.toscreen.PioneerDataExtractService;
import com.epmet.service.evaluationindex.extract.toscreen.PublicPartExtractService;
import com.epmet.service.evaluationindex.extract.toscreen.ScreenExtractService;
import com.epmet.service.stats.DimCustomerService; import com.epmet.service.stats.DimCustomerService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@ -35,6 +32,12 @@ public class ScreenExtractServiceImpl implements ScreenExtractService {
private PioneerDataExtractService pioneerDataExtractService; private PioneerDataExtractService pioneerDataExtractService;
@Autowired @Autowired
private PublicPartExtractService publicPartExtractService; private PublicPartExtractService publicPartExtractService;
@Autowired
private OrgRankExtractService orgRankExtractService;
@Autowired
private GovernRankDataExtractService governRankDataExtractService;
@Autowired
private PublicPartiTotalDataExtractService publicPartiTotalDataExtractService;
/** /**
* @param extractOriginFormDTO * @param extractOriginFormDTO
@ -107,10 +110,14 @@ public class ScreenExtractServiceImpl implements ScreenExtractService {
* @date 2020/9/24 10:16 上午 * @date 2020/9/24 10:16 上午
*/ */
public void extractDaily(String customerId, String dateId) { public void extractDaily(String customerId, String dateId) {
// partyBaseInfoService.statsPartyMemberBaseInfoToScreen(customerId,dateId); //党员基本情况
partyBaseInfoService.statsPartyMemberBaseInfoToScreen(customerId,dateId);
//先锋模范
pioneerDataExtractService.extractGridPioneerData(customerId, dateId); pioneerDataExtractService.extractGridPioneerData(customerId, dateId);
pioneerDataExtractService.extractCommunityPioneerData(customerId, dateId); pioneerDataExtractService.extractCommunityPioneerData(customerId, dateId);
pioneerDataExtractService.extractExceptCommunityPioneerData(customerId, dateId); pioneerDataExtractService.extractExceptCommunityPioneerData(customerId, dateId);
//公众参与排行(注册人数、参与人数、话题数、议题数、项目数)
publicPartiTotalDataExtractService.extractPublicPartiTotalData(customerId,dateId);
} }
/** /**
@ -123,6 +130,15 @@ public class ScreenExtractServiceImpl implements ScreenExtractService {
formDTO.setCustomerId(customerId); formDTO.setCustomerId(customerId);
formDTO.setMonthId(monthId); formDTO.setMonthId(monthId);
//基层治理-公众参与screen_user_join
publicPartExtractService.extractTotalDataMonthly(formDTO); publicPartExtractService.extractTotalDataMonthly(formDTO);
//治理能力排行
governRankDataExtractService.extractGridData(customerId, monthId);
governRankDataExtractService.extractCommunityData(customerId, monthId);
governRankDataExtractService.extractStreetData(customerId, monthId);
//先进排行
orgRankExtractService.extractGridData(customerId, monthId);
orgRankExtractService.extractCommunityData(customerId, monthId);
orgRankExtractService.extractStreetData(customerId, monthId);
} }
} }

9
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateCommunityServiceImpl.java

@ -224,8 +224,8 @@ public class IndexCalculateCommunityServiceImpl implements IndexCalculateCommuni
// 社区名义发文数量 // 社区名义发文数量
List<Map<String, Object>> publishArticleCountList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId,IndexCalConstant.COMMUNITY_LEVEL); List<Map<String, Object>> publishArticleCountList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId,IndexCalConstant.COMMUNITY_LEVEL);
if (CollectionUtils.isEmpty(publishArticleCountList)) { if (CollectionUtils.isEmpty(publishArticleCountList)) {
log.error(IndexCalConstant.COMMUNITY_PUBLISH_ARTICLE_LIST_NULL); log.warn(IndexCalConstant.COMMUNITY_PUBLISH_ARTICLE_LIST_NULL);
} } else {
String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode());
if (StringUtils.isEmpty(fieldNameByIndexCode)) { if (StringUtils.isEmpty(fieldNameByIndexCode)) {
log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode()));
@ -247,6 +247,7 @@ public class IndexCalculateCommunityServiceImpl implements IndexCalculateCommuni
}); });
} }
} }
}
}); });
BatchScoreCalculator batchScoreCalculator = new BatchScoreCalculator(); BatchScoreCalculator batchScoreCalculator = new BatchScoreCalculator();
log.info("communityPartyCalculate getScoreCountOfSampleId param:{}", JSON.toJSONString(indexInputVOS)); log.info("communityPartyCalculate getScoreCountOfSampleId param:{}", JSON.toJSONString(indexInputVOS));
@ -451,11 +452,13 @@ public class IndexCalculateCommunityServiceImpl implements IndexCalculateCommuni
* @date 2020/8/27 1:30 下午 * @date 2020/8/27 1:30 下午
*/ */
public MaxAndMinBigDecimalResultDTO getMaxAndMinBigDecimal(List<BigDecimal> list) { public MaxAndMinBigDecimalResultDTO getMaxAndMinBigDecimal(List<BigDecimal> list) {
MaxAndMinBigDecimalResultDTO result = new MaxAndMinBigDecimalResultDTO();
if(!CollectionUtils.isEmpty(list)) {
BigDecimal max = Collections.max(list); BigDecimal max = Collections.max(list);
BigDecimal min = Collections.min(list); BigDecimal min = Collections.min(list);
MaxAndMinBigDecimalResultDTO result = new MaxAndMinBigDecimalResultDTO();
result.setMax(max); result.setMax(max);
result.setMin(min); result.setMin(min);
}
return result; return result;
} }

5
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateDistrictServiceImpl.java

@ -222,8 +222,8 @@ public class IndexCalculateDistrictServiceImpl implements IndexCalculateDistrict
// 区名义发文数量 // 区名义发文数量
List<Map<String, Object>> publishArticleCountList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId,IndexCalConstant.DISTRICT_LEVEL); List<Map<String, Object>> publishArticleCountList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId,IndexCalConstant.DISTRICT_LEVEL);
if (CollectionUtils.isEmpty(publishArticleCountList)) { if (CollectionUtils.isEmpty(publishArticleCountList)) {
log.error(IndexCalConstant.DISTRICT_PUBLISH_ARTICLE_LIST_NULL); log.warn(IndexCalConstant.DISTRICT_PUBLISH_ARTICLE_LIST_NULL);
} } else {
String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode());
if (StringUtils.isEmpty(fieldNameByIndexCode)) { if (StringUtils.isEmpty(fieldNameByIndexCode)) {
log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode()));
@ -245,6 +245,7 @@ public class IndexCalculateDistrictServiceImpl implements IndexCalculateDistrict
}); });
} }
} }
}
}); });
BatchScoreCalculator batchScoreCalculator = new BatchScoreCalculator(); BatchScoreCalculator batchScoreCalculator = new BatchScoreCalculator();
HashMap<String, CalculateResult> scoreTotalOfSampleId = batchScoreCalculator.getScoreTotalOfSampleId(indexInputVOS); HashMap<String, CalculateResult> scoreTotalOfSampleId = batchScoreCalculator.getScoreTotalOfSampleId(indexInputVOS);

5
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateStreetServiceImpl.java

@ -226,8 +226,8 @@ public class IndexCalculateStreetServiceImpl implements IndexCalculateStreetServ
// 街道名义发文数量 // 街道名义发文数量
List<Map<String, Object>> mapList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId, IndexCalConstant.STREET_LEVEL); List<Map<String, Object>> mapList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId, IndexCalConstant.STREET_LEVEL);
if (CollectionUtils.isEmpty(mapList)) { if (CollectionUtils.isEmpty(mapList)) {
log.error(IndexCalConstant.STREET_PUBLISH_ARTICLE_LIST_NULL); log.warn(IndexCalConstant.STREET_PUBLISH_ARTICLE_LIST_NULL);
} } else {
String fieldName = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); String fieldName = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode());
if (StringUtils.isEmpty(fieldName)) { if (StringUtils.isEmpty(fieldName)) {
log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode()));
@ -248,6 +248,7 @@ public class IndexCalculateStreetServiceImpl implements IndexCalculateStreetServ
}); });
} }
} }
}
}); });
BatchScoreCalculator batchScoreCalculator = new BatchScoreCalculator(); BatchScoreCalculator batchScoreCalculator = new BatchScoreCalculator();
HashMap<String, CalculateResult> scoreTotalOfSampleId = batchScoreCalculator.getScoreTotalOfSampleId(indexInputVOS); HashMap<String, CalculateResult> scoreTotalOfSampleId = batchScoreCalculator.getScoreTotalOfSampleId(indexInputVOS);

9
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java

@ -90,4 +90,13 @@ public interface ProjectService extends BaseService<ProjectEntity> {
* @return java.util.List<com.epmet.dto.project.ProjectInfoDTO> * @return java.util.List<com.epmet.dto.project.ProjectInfoDTO>
*/ */
List<ProjectDTO> getProjectInfo(String customerId, String date); List<ProjectDTO> getProjectInfo(String customerId, String date);
/**
* 获取用户可滞留天数
* @author zhaoqifeng
* @date 2020/9/28 10:15
* @param customerId
* @return java.lang.String
*/
String getParameterValueByKey(String customerId);
} }

5
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java

@ -77,4 +77,9 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
return baseDao.selectProjectInfo(customerId, date); return baseDao.selectProjectInfo(customerId, date);
} }
@Override
public String getParameterValueByKey(String customerId) {
return baseDao.selectParameterValueByKey(customerId);
}
} }

9
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml

@ -96,5 +96,14 @@
AND DATE_FORMAT(CREATED_TIME, '%Y%m%d') = #{date} AND DATE_FORMAT(CREATED_TIME, '%Y%m%d') = #{date}
</if> </if>
</select> </select>
<select id="selectParameterValueByKey" resultType="java.lang.String">
select
PARAMETER_VALUE
from
customer_project_parameter
where DEL_FLAG = '0'
and CUSTOMER_ID = #{customerId}
and PARAMETER_KEY ='detention_days'
</select>
</mapper> </mapper>

9
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/ScreenExtractTaskService.java

@ -8,6 +8,15 @@ import com.epmet.commons.tools.utils.Result;
*/ */
public interface ScreenExtractTaskService { public interface ScreenExtractTaskService {
Result screenExtractDaily(String params); Result screenExtractDaily(String params);
/**
* @return com.epmet.commons.tools.utils.Result
* @param params
* @author yinzuomei
* @description 大屏数据抽取-按月统计
* @Date 2020/9/28 10:49
**/
Result screenExtractMonthly(String params);
} }

17
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/ScreenExtractTaskServiceImpl.java

@ -3,6 +3,7 @@ package com.epmet.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.dto.extract.form.ExtractOriginFormDTO;
import com.epmet.dto.extract.form.ExtractScreenFormDTO;
import com.epmet.feign.DataStatisticalOpenFeignClient; import com.epmet.feign.DataStatisticalOpenFeignClient;
import com.epmet.service.ScreenExtractTaskService; import com.epmet.service.ScreenExtractTaskService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -30,4 +31,20 @@ public class ScreenExtractTaskServiceImpl implements ScreenExtractTaskService {
} }
return dataStatisticalOpenFeignClient.extractDailyAll(extractOriginFormDTO); return dataStatisticalOpenFeignClient.extractDailyAll(extractOriginFormDTO);
} }
/**
* @param params
* @return com.epmet.commons.tools.utils.Result
* @author yinzuomei
* @description 大屏数据抽取-按月统计
* @Date 2020/9/28 10:49
**/
@Override
public Result screenExtractMonthly(String params) {
ExtractScreenFormDTO extractScreenFormDTO=new ExtractScreenFormDTO();
if(StringUtils.isNotBlank(params)){
extractScreenFormDTO=JSON.parseObject(params,ExtractScreenFormDTO.class);
}
return dataStatisticalOpenFeignClient.extractMonthlyAll(extractScreenFormDTO);
}
} }

34
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ScreenExtractMonthlyTask.java

@ -0,0 +1,34 @@
package com.epmet.task;
import com.epmet.commons.tools.utils.Result;
import com.epmet.service.ScreenExtractTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 大屏数据抽取-按月统计
*
* @author yinzuomei@elink-cn.com
* @date 2020/9/28 10:39
*/
@Component("screenExtractMonthlyTask")
public class ScreenExtractMonthlyTask implements ITask{
@Autowired
private ScreenExtractTaskService screenExtractTaskService;
private Logger logger = LoggerFactory.getLogger(getClass());
@Override
public void run(String params) {
logger.info("ScreenExtractMonthlyTask定时任务正在执行,参数为:{}", params);
Result result = screenExtractTaskService.screenExtractMonthly(params);
if (result.success()){
logger.info("ScreenExtractMonthlyTask定时任务执行成功");
}else {
logger.error("ScreenExtractMonthlyTask定时任务执行失败:" + result.getMsg());
}
}
}
Loading…
Cancel
Save