diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index 750440f69f..8bf6af5abd 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -440,9 +440,7 @@ epmet: # 外部应用认证,使用AccessToken等头进行认证 externalAuthUrls: - - /data/report/test/test - - /data/report/screen/** - - /data/report/kcscreen/** + - /data/report/** - /epmetuser/customerstaff/customerlist swaggerUrls: diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/fact/FactIndexController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/fact/FactIndexController.java index fbf0e78748..5780a6e4c3 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/fact/FactIndexController.java +++ b/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; /** - * @param tokenDTO + * @param formDTO * @Description 能力指数 * @author sun */ @PostMapping("index/ablityindex") - public Result> ablityIndex(@LoginUser TokenDto tokenDTO, @RequestBody AblityIndexFormDTO formDTO) { + public Result> ablityIndex(@RequestBody AblityIndexFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, AblityIndexFormDTO.AddUserInternalGroup.class); return new Result>().ok(factIndexService.ablityIndex(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 按月份查询各项能力分数 * @author sun */ @PostMapping("index/scorelist") - public Result> scoreList(@LoginUser TokenDto tokenDTO, @RequestBody ScoreListFormDTO formDTO) { + public Result> scoreList(@RequestBody ScoreListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, ScoreListFormDTO.AddUserInternalGroup.class); return new Result>().ok(factIndexService.scoreList(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 按月份查询各项能力最近12个月得分 * @author sun */ @PostMapping("index/monthscorelist") - public Result> monthScoreList(@LoginUser TokenDto tokenDTO, @RequestBody MonthScoreListFormDTO formDTO) { + public Result> monthScoreList(@RequestBody MonthScoreListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, MonthScoreListFormDTO.AddUserInternalGroup.class); return new Result>().ok(factIndexService.monthScoreList(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 按月查询各项指标数据 * @author sun */ @PostMapping("index/ablitylist") - public Result> ablityList(@LoginUser TokenDto tokenDTO, @RequestBody AblityListFormDTO formDTO) { + public Result> ablityList(@RequestBody AblityListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, AblityListFormDTO.AddUserInternalGroup.class); return new Result>().ok(factIndexService.ablityList(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 按月查询各项指标最近12个月数据 * @author sun */ @PostMapping("index/monthablitylist") - public Result> monthAblityList(@LoginUser TokenDto tokenDTO, @RequestBody MonthAblityListFormDTO formDTO) { + public Result> monthAblityList(@RequestBody MonthAblityListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, MonthAblityListFormDTO.AddUserInternalGroup.class); return new Result>().ok(factIndexService.monthAblityList(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 同级对比各项数据查询 * @author sun */ @PostMapping("index/peercomparison") - public Result> peerComparison(@LoginUser TokenDto tokenDTO, @RequestBody PeerComparisonFormDTO formDTO) { + public Result> peerComparison(@RequestBody PeerComparisonFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, PeerComparisonFormDTO.AddUserInternalGroup.class); return new Result>().ok(factIndexService.peerComparison(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 是否根组织 * @author sun */ @PostMapping("index/rootagency") - public Result rootAgency(@LoginUser TokenDto tokenDTO, @RequestBody RootAgencyFormDTO formDTO) { + public Result rootAgency(@RequestBody RootAgencyFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, RootAgencyFormDTO.AddUserInternalGroup.class); return new Result().ok(factIndexService.rootAgency(formDTO)); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java index 98e2207514..79b839ea10 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java +++ b/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 组织月度指数得分 * @author sun */ @PostMapping("month/indexscore") - public Result indexScore(@LoginUser TokenDto tokenDTO, @RequestBody IndexScoreFormDTO formDTO) { + public Result indexScore(@RequestBody IndexScoreFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, IndexScoreFormDTO.AddUserInternalGroup.class); return new Result().ok(indexService.indexScore(formDTO)); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/ScreenUserController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/ScreenUserController.java index bc6997d45f..84d586306f 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/ScreenUserController.java +++ b/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; /** - * @param tokenDTO + * @param formDTO * @Description 热心市民积分排行列表 * @author sun */ @PostMapping("userpointrank") - public Result> userPointRank(@LoginUser TokenDto tokenDTO, @RequestBody UserPointRankFormDTO formDTO) { + public Result> userPointRank(@RequestBody UserPointRankFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, UserPointRankFormDTO.AddUserInternalGroup.class); return new Result>().ok(screenUserService.userPointRank(formDTO)); } /** - * @param tokenDTO + * @param formDTO * @Description 党员(指标得分)排行 * @author sun */ @PostMapping("partindexscroerank") - public Result> partIndexScroeRank(@LoginUser TokenDto tokenDTO, @RequestBody PartIndexScroeRankFormDTO formDTO) { + public Result> partIndexScroeRank(@RequestBody PartIndexScroeRankFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO, PartIndexScroeRankFormDTO.AddUserInternalGroup.class); return new Result>().ok(screenUserService.partIndexScroeRank(formDTO)); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/fact/impl/FactIndexServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/fact/impl/FactIndexServiceImpl.java index 68b3fd1f60..24efaa35c1 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/fact/impl/FactIndexServiceImpl.java +++ b/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.SimpleDateFormat; import java.util.*; +import java.util.regex.Pattern; /** * 数据改版api @@ -447,6 +448,9 @@ public class FactIndexServiceImpl implements FactIndexService { * @author sun */ public String getDate(String newDate) { + if (!validDateEffecitive(newDate)) { + throw new RenException(String.format("monthId格式错误,monthId:%s", newDate)); + } String date = ""; SimpleDateFormat sdf = new SimpleDateFormat("yyyymm"); try { @@ -460,6 +464,32 @@ public class FactIndexServiceImpl implements FactIndexService { 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 * @Description 同级对比各项数据查询 diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/result/MaxAndMinBigDecimalResultDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/result/MaxAndMinBigDecimalResultDTO.java index aa9f471405..d5ca95dab8 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/result/MaxAndMinBigDecimalResultDTO.java +++ b/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; +import com.epmet.commons.tools.constant.NumConstant; import lombok.Data; import java.io.Serializable; @@ -18,4 +19,8 @@ public class MaxAndMinBigDecimalResultDTO implements Serializable { private BigDecimal max; + public MaxAndMinBigDecimalResultDTO() { + this.min = new BigDecimal(NumConstant.ZERO); + this.max = new BigDecimal(NumConstant.ZERO); + } } diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java index 166ffc241d..5020fd3c63 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java +++ b/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.extract.form.ExtractIndexFormDTO; 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.issue.form.IssueJobFromDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; @@ -229,4 +230,14 @@ public interface DataStatisticalOpenFeignClient { */ @PostMapping(value = "/data/stats/screenextract/extractdailyall") 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); } diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java index 4e7611762d..344f0ff7a1 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java +++ b/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.extract.form.ExtractIndexFormDTO; 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.issue.form.IssueJobFromDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; @@ -217,4 +218,16 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp public Result extractDailyAll(ExtractOriginFormDTO 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); + } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ScreenExtractDailyController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ScreenExtractDailyController.java index c83a07427d..133dc09f8c 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ScreenExtractDailyController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ScreenExtractDailyController.java @@ -39,7 +39,7 @@ public class ScreenExtractDailyController { * @author zxc * @date 2020/9/24 10:15 上午 */ - @PostMapping("extractmonthlyyall") + @PostMapping("extractmonthlyall") public Result screenExtractMonthly(@RequestBody ExtractScreenFormDTO formDTO) { screenExtractService.extractMonthlyAll(formDTO); return new Result(); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java index d676531771..df6da92b0b 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java +++ b/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 { * @return java.util.List */ List 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); } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/dataToIndex/impl/IndexOriginExtractServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/dataToIndex/impl/IndexOriginExtractServiceImpl.java index 23a4de5128..60d592a1b6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/dataToIndex/impl/IndexOriginExtractServiceImpl.java +++ b/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.util.CollectionUtils; +import java.time.LocalDate; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -52,7 +53,7 @@ public class IndexOriginExtractServiceImpl implements IndexOriginExtractService String monthId = formDTO.getMonthId(); String customerId = formDTO.getCustomerId(); 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 customerIds = new ArrayList<>(); if (StringUtils.isNotBlank(customerId)) { diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java index a9552ed3b8..3753b69c31 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java +++ b/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; 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.DateUtils; import com.epmet.commons.tools.utils.Result; @@ -71,6 +72,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { @Autowired private FactOriginProjectOrgPeriodDailyDao factOriginProjectOrgPeriodDailyDao; + private final static String ONE_DAY = "<1"; + @Override public void saveOriginProjectDaily(ExtractOriginFormDTO extractOriginFormDTO) { String dateString = extractOriginFormDTO.getDateId(); @@ -80,7 +83,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { List closedList = projectProcessService.getClosedProjectList(customerId, dateString); List pendingList = factOriginProjectMainDailyService.getPendingList(customerId); List finishOrgList = projectProcessService.getFinishOrg(customerId, dateString); - if (null != closedList && !closedList.isEmpty()) { + if (CollectionUtils.isEmpty(closedList)) { List closeProjects = pendingList.stream().flatMap(pending -> closedList.stream().filter(closed -> pending.getId().equals(closed.getProjectId())).map(process -> { FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity(); @@ -92,9 +95,9 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { return entity; })).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 -> { - String[] orgIds = dto.getPIdPath().split(":"); + String[] orgIds = dto.getPIdPath().split(StrConstant.COLON); if (orgIds.length > NumConstant.ONE) { close.setFinishOrgIds(orgIds[orgIds.length - 1]); } else { @@ -109,7 +112,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { } //获取项目信息 List projectList = projectService.getProjectInfo(customerId, dateString); - if (null != projectList && !projectList.isEmpty()) { + if (CollectionUtils.isEmpty(projectList)) { //提取议题ID List issueIds = projectList.stream().map(ProjectDTO::getOriginId).collect(Collectors.toList()); //获取议题信息 @@ -139,7 +142,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { entity.setCreatedTime(project.getCreatedTime()); entity.setUpdatedTime(project.getUpdatedTime()); entity.setPids(project.getOrgIdPath()); - String[] pIds = project.getOrgIdPath().split(":"); + String[] pIds = project.getOrgIdPath().split(StrConstant.COLON); if (pIds.length > 1) { entity.setPid(pIds[pIds.length - 2]); } else if(pIds.length == 1){ @@ -163,7 +166,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { entity.setIsParty(NumConstant.ONE_STR); })); 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) { entity.setFinishOrgIds(orgIds[orgIds.length - 1]); } else { @@ -179,7 +182,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { final List mainList = list; //节点发起人 List processList = projectProcessService.getProcessListByCustomer(customerId, dateString); - if (null != processList && !processList.isEmpty()) { + if (CollectionUtils.isEmpty(processList)) { List logList = processList.stream().map(process -> { //获取日期相关维度 DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(process.getCreatedTime()); @@ -204,15 +207,15 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { entity.setOrgId(process.getGridId()); entity.setPid(process.getAgencyId()); }else{ - if(!process.getPids().contains(":")){ + if(!process.getPids().contains(StrConstant.COLON)){ entity.setPids(""); entity.setPid(NumConstant.ZERO_STR); }else{ - String[] orgArray = process.getPids().split(":"); - if(null != orgArray && orgArray.length > NumConstant.ONE){ + String[] orgArray = process.getPids().split(StrConstant.COLON); + if(orgArray.length > NumConstant.ONE){ entity.setPid(orgArray[orgArray.length - NumConstant.TWO]); String path = process.getPids().replaceAll(process.getAgencyId(),""); - if(path.endsWith(":")){ + if(path.endsWith(StrConstant.COLON)){ path =path.substring(NumConstant.ZERO,path.length() - NumConstant.ONE); } entity.setPids(path); @@ -283,15 +286,15 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { entity.setOrgId(process.getGridId()); entity.setPid(process.getAgencyId()); }else{ - if(!process.getPids().contains(":")){ + if(!process.getPids().contains(StrConstant.COLON)){ entity.setPids(""); entity.setPid(NumConstant.ZERO_STR); }else{ - String[] orgArray = process.getPids().split(":"); - if(null != orgArray && orgArray.length > NumConstant.ONE){ + String[] orgArray = process.getPids().split(StrConstant.COLON); + if(orgArray.length > NumConstant.ONE){ entity.setPid(orgArray[orgArray.length - NumConstant.TWO]); String path = process.getPids().replaceAll(process.getAgencyId(),""); - if(path.endsWith(":")){ + if(path.endsWith(StrConstant.COLON)){ path =path.substring(NumConstant.ZERO,path.length() - NumConstant.ONE); } entity.setPids(path); @@ -322,7 +325,7 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { @Override public void extractProjectPeriodData(ExtractOriginFormDTO param) { int trace = factOriginProjectOrgPeriodDailyDao.selectIfExisted(param.getCustomerId()); - Boolean isFirst = trace <= NumConstant.ZERO ? true : false; + Boolean isFirst = trace <= NumConstant.ZERO; if (StringUtils.isBlank(param.getDateId())) { Date yesterday = new Date(System.currentTimeMillis() - 1000 * 60 * 60 * 24); SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); @@ -345,23 +348,23 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { }else{ dest.setOrgType("agency"); dest.setPids(""); - String[] array = original.getOrgIdPath().split(":"); - if(null == array || array.length <= NumConstant.ZERO){ + String[] array = original.getOrgIdPath().split(StrConstant.COLON); + if(array.length <= NumConstant.ZERO){ 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); } - 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.setPids(original.getOrgIdPath().replace(original.getOrgId(),"")); } 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)); } - while(dest.getPids().startsWith(":")){ - dest.setPids(dest.getPids().replaceFirst(":","")); + while(dest.getPids().startsWith(StrConstant.COLON)){ + dest.setPids(dest.getPids().replaceFirst(StrConstant.COLON,"")); } } dest.setPids(dest.getPids().replaceAll(" ","")); @@ -400,13 +403,29 @@ public class ProjectExtractServiceImpl implements ProjectExtractService { list.add(workDayFormDTO); Result> detentionDays = epmetCommonServiceOpenFeignClient.detentionDays(list); String days = detentionDays.getData().get(NumConstant.ZERO).getDetentionDays(); - if (("<1").equals(days)) { - result = 1; + if (ONE_DAY.equals(days)) { + result = NumConstant.ONE; } else { result = Integer.parseInt(days); } 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; + } + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenExtractServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenExtractServiceImpl.java index acbb43dcbf..a427a49925 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenExtractServiceImpl.java +++ b/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.dto.extract.form.ExtractOriginFormDTO; import com.epmet.dto.extract.form.ExtractScreenFormDTO; -import com.epmet.service.evaluationindex.extract.toscreen.PartyBaseInfoService; -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.evaluationindex.extract.toscreen.*; import com.epmet.service.stats.DimCustomerService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -35,6 +32,12 @@ public class ScreenExtractServiceImpl implements ScreenExtractService { private PioneerDataExtractService pioneerDataExtractService; @Autowired private PublicPartExtractService publicPartExtractService; + @Autowired + private OrgRankExtractService orgRankExtractService; + @Autowired + private GovernRankDataExtractService governRankDataExtractService; + @Autowired + private PublicPartiTotalDataExtractService publicPartiTotalDataExtractService; /** * @param extractOriginFormDTO @@ -107,10 +110,14 @@ public class ScreenExtractServiceImpl implements ScreenExtractService { * @date 2020/9/24 10:16 上午 */ public void extractDaily(String customerId, String dateId) { -// partyBaseInfoService.statsPartyMemberBaseInfoToScreen(customerId,dateId); + //党员基本情况 + partyBaseInfoService.statsPartyMemberBaseInfoToScreen(customerId,dateId); + //先锋模范 pioneerDataExtractService.extractGridPioneerData(customerId, dateId); pioneerDataExtractService.extractCommunityPioneerData(customerId, dateId); pioneerDataExtractService.extractExceptCommunityPioneerData(customerId, dateId); + //公众参与排行(注册人数、参与人数、话题数、议题数、项目数) + publicPartiTotalDataExtractService.extractPublicPartiTotalData(customerId,dateId); } /** @@ -123,6 +130,15 @@ public class ScreenExtractServiceImpl implements ScreenExtractService { formDTO.setCustomerId(customerId); formDTO.setMonthId(monthId); + //基层治理-公众参与screen_user_join 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); } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateCommunityServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateCommunityServiceImpl.java index 5d9523550c..e327b30fab 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateCommunityServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateCommunityServiceImpl.java @@ -224,27 +224,28 @@ public class IndexCalculateCommunityServiceImpl implements IndexCalculateCommuni // 社区名义发文数量 List> publishArticleCountList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId,IndexCalConstant.COMMUNITY_LEVEL); if (CollectionUtils.isEmpty(publishArticleCountList)) { - log.error(IndexCalConstant.COMMUNITY_PUBLISH_ARTICLE_LIST_NULL); - } - String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); - if (StringUtils.isEmpty(fieldNameByIndexCode)) { - log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); - return; + log.warn(IndexCalConstant.COMMUNITY_PUBLISH_ARTICLE_LIST_NULL); } else { - List decimalList = publishArticleCountList.stream().map(m -> new BigDecimal(m.get(fieldNameByIndexCode).toString())).collect(Collectors.toList()); - MaxAndMinBigDecimalResultDTO maxAndMinBigDecimal = this.getMaxAndMinBigDecimal(decimalList); - List>> publishArticleList = ListUtils.partition(publishArticleCountList, IndexCalConstant.PAGE_SIZE); - publishArticleList.forEach(publish -> { - ScoreCalculator sc1 = new BigDecimalScoreCalculator(maxAndMinBigDecimal.getMin(), maxAndMinBigDecimal.getMax(), ScoreConstants.MIN_SCORE, ScoreConstants.MAX_SCORE, Correlation.getCorrelation(detail.getCorrelation())); - List index1SampleValues = new ArrayList<>(); - publish.forEach(c -> { - pid.put(c.get(IndexCalConstant.AGENCY_ID).toString(), c.get(IndexCalConstant.PARENT_ID).toString()); - SampleValue s = new SampleValue((String) c.get(IndexCalConstant.AGENCY_ID), new BigDecimal(String.valueOf(c.get(fieldNameByIndexCode)))); - index1SampleValues.add(s); + String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); + if (StringUtils.isEmpty(fieldNameByIndexCode)) { + log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); + return; + } else { + List decimalList = publishArticleCountList.stream().map(m -> new BigDecimal(m.get(fieldNameByIndexCode).toString())).collect(Collectors.toList()); + MaxAndMinBigDecimalResultDTO maxAndMinBigDecimal = this.getMaxAndMinBigDecimal(decimalList); + List>> publishArticleList = ListUtils.partition(publishArticleCountList, IndexCalConstant.PAGE_SIZE); + publishArticleList.forEach(publish -> { + ScoreCalculator sc1 = new BigDecimalScoreCalculator(maxAndMinBigDecimal.getMin(), maxAndMinBigDecimal.getMax(), ScoreConstants.MIN_SCORE, ScoreConstants.MAX_SCORE, Correlation.getCorrelation(detail.getCorrelation())); + List index1SampleValues = new ArrayList<>(); + publish.forEach(c -> { + pid.put(c.get(IndexCalConstant.AGENCY_ID).toString(), c.get(IndexCalConstant.PARENT_ID).toString()); + SampleValue s = new SampleValue((String) c.get(IndexCalConstant.AGENCY_ID), new BigDecimal(String.valueOf(c.get(fieldNameByIndexCode)))); + index1SampleValues.add(s); + }); + IndexInputVO index1VO = new IndexInputVO(detail.getIndexCode(), detail.getAllParentIndexCode(), index1SampleValues, detail.getThreshold(), detail.getWeight(), IndexCodeEnum.isAvgIndex(detail.getIndexCode()), sc1); + indexInputVOS.add(index1VO); }); - IndexInputVO index1VO = new IndexInputVO(detail.getIndexCode(), detail.getAllParentIndexCode(), index1SampleValues, detail.getThreshold(), detail.getWeight(), IndexCodeEnum.isAvgIndex(detail.getIndexCode()), sc1); - indexInputVOS.add(index1VO); - }); + } } } }); @@ -451,11 +452,13 @@ public class IndexCalculateCommunityServiceImpl implements IndexCalculateCommuni * @date 2020/8/27 1:30 下午 */ public MaxAndMinBigDecimalResultDTO getMaxAndMinBigDecimal(List list) { - BigDecimal max = Collections.max(list); - BigDecimal min = Collections.min(list); MaxAndMinBigDecimalResultDTO result = new MaxAndMinBigDecimalResultDTO(); - result.setMax(max); - result.setMin(min); + if(!CollectionUtils.isEmpty(list)) { + BigDecimal max = Collections.max(list); + BigDecimal min = Collections.min(list); + result.setMax(max); + result.setMin(min); + } return result; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateDistrictServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateDistrictServiceImpl.java index 80163e8646..4f522f80e7 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateDistrictServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateDistrictServiceImpl.java @@ -222,27 +222,28 @@ public class IndexCalculateDistrictServiceImpl implements IndexCalculateDistrict // 区名义发文数量 List> publishArticleCountList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId,IndexCalConstant.DISTRICT_LEVEL); if (CollectionUtils.isEmpty(publishArticleCountList)) { - log.error(IndexCalConstant.DISTRICT_PUBLISH_ARTICLE_LIST_NULL); - } - String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); - if (StringUtils.isEmpty(fieldNameByIndexCode)) { - log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); - return; - } else{ - List decimalList = publishArticleCountList.stream().map(m -> new BigDecimal(m.get(fieldNameByIndexCode).toString())).collect(Collectors.toList()); - MaxAndMinBigDecimalResultDTO maxAndMinBigDecimal = this.getMaxAndMinBigDecimal(decimalList); - List>> publishArticleList = ListUtils.partition(publishArticleCountList, IndexCalConstant.PAGE_SIZE); - publishArticleList.forEach(publish -> { - ScoreCalculator sc1 = new BigDecimalScoreCalculator(maxAndMinBigDecimal.getMin(), maxAndMinBigDecimal.getMax(), ScoreConstants.MIN_SCORE, ScoreConstants.MAX_SCORE, Correlation.getCorrelation(detail.getCorrelation())); - List index1SampleValues = new ArrayList<>(); - publish.forEach(c -> { - pid.put(c.get(IndexCalConstant.AGENCY_ID).toString(), c.get(IndexCalConstant.PARENT_ID).toString()); - SampleValue s = new SampleValue((String) c.get(IndexCalConstant.AGENCY_ID), new BigDecimal(String.valueOf(c.get(fieldNameByIndexCode)))); - index1SampleValues.add(s); + log.warn(IndexCalConstant.DISTRICT_PUBLISH_ARTICLE_LIST_NULL); + } else { + String fieldNameByIndexCode = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); + if (StringUtils.isEmpty(fieldNameByIndexCode)) { + log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); + return; + } else { + List decimalList = publishArticleCountList.stream().map(m -> new BigDecimal(m.get(fieldNameByIndexCode).toString())).collect(Collectors.toList()); + MaxAndMinBigDecimalResultDTO maxAndMinBigDecimal = this.getMaxAndMinBigDecimal(decimalList); + List>> publishArticleList = ListUtils.partition(publishArticleCountList, IndexCalConstant.PAGE_SIZE); + publishArticleList.forEach(publish -> { + ScoreCalculator sc1 = new BigDecimalScoreCalculator(maxAndMinBigDecimal.getMin(), maxAndMinBigDecimal.getMax(), ScoreConstants.MIN_SCORE, ScoreConstants.MAX_SCORE, Correlation.getCorrelation(detail.getCorrelation())); + List index1SampleValues = new ArrayList<>(); + publish.forEach(c -> { + pid.put(c.get(IndexCalConstant.AGENCY_ID).toString(), c.get(IndexCalConstant.PARENT_ID).toString()); + SampleValue s = new SampleValue((String) c.get(IndexCalConstant.AGENCY_ID), new BigDecimal(String.valueOf(c.get(fieldNameByIndexCode)))); + index1SampleValues.add(s); + }); + IndexInputVO index1VO = new IndexInputVO(detail.getIndexCode(), detail.getAllParentIndexCode(), index1SampleValues, detail.getThreshold(), detail.getWeight(), IndexCodeEnum.isAvgIndex(detail.getIndexCode()), sc1); + indexInputVOS.add(index1VO); }); - IndexInputVO index1VO = new IndexInputVO(detail.getIndexCode(), detail.getAllParentIndexCode(), index1SampleValues, detail.getThreshold(), detail.getWeight(), IndexCodeEnum.isAvgIndex(detail.getIndexCode()), sc1); - indexInputVOS.add(index1VO); - }); + } } } }); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateStreetServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateStreetServiceImpl.java index 88d329ca6b..b33ef6f2c3 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateStreetServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateStreetServiceImpl.java @@ -226,26 +226,27 @@ public class IndexCalculateStreetServiceImpl implements IndexCalculateStreetServ // 街道名义发文数量 List> mapList = factIndexPartyAblityOrgMonthlyDao.selectPublishArticleCountMap(customerId, monthId, IndexCalConstant.STREET_LEVEL); if (CollectionUtils.isEmpty(mapList)) { - log.error(IndexCalConstant.STREET_PUBLISH_ARTICLE_LIST_NULL); - } - String fieldName = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); - if (StringUtils.isEmpty(fieldName)) { - log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); - return; - }else{ - MaxAndMinBigDecimalResultDTO maxAndMinBigDecimal = this.getMaxAndMinBigDecimal(mapList.stream().map(m -> new BigDecimal(m.get(fieldName).toString())).collect(Collectors.toList())); - List>> publishArticleList = ListUtils.partition(mapList, IndexCalConstant.PAGE_SIZE); - publishArticleList.forEach(publish -> { - ScoreCalculator sc1 = new BigDecimalScoreCalculator(maxAndMinBigDecimal.getMin(), maxAndMinBigDecimal.getMax(), ScoreConstants.MIN_SCORE, ScoreConstants.MAX_SCORE, Correlation.getCorrelation(detail.getCorrelation())); - List index1SampleValues = new ArrayList<>(); - publish.forEach(c -> { - pid.put(c.get(IndexCalConstant.AGENCY_ID).toString(), c.get(IndexCalConstant.PARENT_ID).toString()); - SampleValue s = new SampleValue((String) c.get(IndexCalConstant.AGENCY_ID), new BigDecimal(String.valueOf(c.get(fieldName)))); - index1SampleValues.add(s); + log.warn(IndexCalConstant.STREET_PUBLISH_ARTICLE_LIST_NULL); + } else { + String fieldName = indexCodeFieldReService.getFieldNameByIndexCode(detail.getIndexCode()); + if (StringUtils.isEmpty(fieldName)) { + log.error(String.format(IndexCalConstant.INDEX_CODE_NULL, detail.getIndexCode())); + return; + } else { + MaxAndMinBigDecimalResultDTO maxAndMinBigDecimal = this.getMaxAndMinBigDecimal(mapList.stream().map(m -> new BigDecimal(m.get(fieldName).toString())).collect(Collectors.toList())); + List>> publishArticleList = ListUtils.partition(mapList, IndexCalConstant.PAGE_SIZE); + publishArticleList.forEach(publish -> { + ScoreCalculator sc1 = new BigDecimalScoreCalculator(maxAndMinBigDecimal.getMin(), maxAndMinBigDecimal.getMax(), ScoreConstants.MIN_SCORE, ScoreConstants.MAX_SCORE, Correlation.getCorrelation(detail.getCorrelation())); + List index1SampleValues = new ArrayList<>(); + publish.forEach(c -> { + pid.put(c.get(IndexCalConstant.AGENCY_ID).toString(), c.get(IndexCalConstant.PARENT_ID).toString()); + SampleValue s = new SampleValue((String) c.get(IndexCalConstant.AGENCY_ID), new BigDecimal(String.valueOf(c.get(fieldName)))); + index1SampleValues.add(s); + }); + IndexInputVO index1VO = new IndexInputVO(detail.getIndexCode(), detail.getAllParentIndexCode(), index1SampleValues, detail.getThreshold(), detail.getWeight(), IndexCodeEnum.isAvgIndex(detail.getIndexCode()), sc1); + indexInputVOS.add(index1VO); }); - IndexInputVO index1VO = new IndexInputVO(detail.getIndexCode(), detail.getAllParentIndexCode(), index1SampleValues, detail.getThreshold(), detail.getWeight(), IndexCodeEnum.isAvgIndex(detail.getIndexCode()), sc1); - indexInputVOS.add(index1VO); - }); + } } } }); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java index de95867ded..0b0692ba21 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java +++ b/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 { * @return java.util.List */ List getProjectInfo(String customerId, String date); + + /** + * 获取用户可滞留天数 + * @author zhaoqifeng + * @date 2020/9/28 10:15 + * @param customerId + * @return java.lang.String + */ + String getParameterValueByKey(String customerId); } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java index d1f5e88b1d..fa22e2090e 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java +++ b/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 + \ No newline at end of file diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/ScreenExtractTaskService.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/ScreenExtractTaskService.java index 5e144642ed..25a4244301 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/ScreenExtractTaskService.java +++ b/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 { + 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); } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/ScreenExtractTaskServiceImpl.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/ScreenExtractTaskServiceImpl.java index 963045ec79..698a3ec7b3 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/ScreenExtractTaskServiceImpl.java +++ b/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.epmet.commons.tools.utils.Result; import com.epmet.dto.extract.form.ExtractOriginFormDTO; +import com.epmet.dto.extract.form.ExtractScreenFormDTO; import com.epmet.feign.DataStatisticalOpenFeignClient; import com.epmet.service.ScreenExtractTaskService; import lombok.extern.slf4j.Slf4j; @@ -30,4 +31,20 @@ public class ScreenExtractTaskServiceImpl implements ScreenExtractTaskService { } 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); + } } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ScreenExtractMonthlyTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ScreenExtractMonthlyTask.java new file mode 100644 index 0000000000..9e4cc24222 --- /dev/null +++ b/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()); + } + } +}