diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/result/ProjectLatestOperationResultDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/result/ProjectLatestOperationResultDTO.java new file mode 100644 index 0000000000..12750903d1 --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/result/ProjectLatestOperationResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.project.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 项目最近进展结果DTO + * @ClassName ProjectLatestOperationResultDTO + * @Auth wangc + * @Date 2020-09-28 14:19 + */ +@Data +public class ProjectLatestOperationResultDTO implements Serializable { + private static final long serialVersionUID = 3295536551300176323L; + + private String projectId; + + private String operationName; +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java index ea3cdfbc53..ad2c65e67d 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java @@ -36,6 +36,7 @@ import com.epmet.service.evaluationindex.extract.dataToIndex.IndexCollCommunityS import com.epmet.service.evaluationindex.extract.dataToIndex.IndexCollStreetService; import com.epmet.service.evaluationindex.extract.todata.FactOriginProjectLogDailyService; import com.epmet.service.evaluationindex.extract.todata.FactOriginTopicMainDailyService; +import com.epmet.service.evaluationindex.extract.todata.GroupExtractService; import com.epmet.service.evaluationindex.extract.toscreen.*; import com.epmet.service.evaluationindex.indexcal.*; import com.epmet.service.stats.DimAgencyService; @@ -106,6 +107,8 @@ public class DemoController { @Autowired private GovernRankDataExtractService governRankDataExtractService; @Autowired + private GroupExtractService groupExtractService; + @Autowired private OrgRankExtractService orgRankExtractService; @GetMapping("testAlarm") @@ -708,5 +711,12 @@ public class DemoController { orgRankExtractService.extractStreetData(formDTO.getCustomerId(), formDTO.getDateId()); return new Result(); } + @PostMapping("extractgroup") + public Result extractGroup(@RequestBody ExtractOriginFormDTO param){ + + groupExtractService.extractGroupData(param); + return new Result(); + } + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginExtractController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginExtractController.java index 643a909604..9610137079 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginExtractController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginExtractController.java @@ -53,6 +53,7 @@ public class FactOriginExtractController { } else { factOriginExtractService.extractAll(extractOriginFormDTO); } + factOriginExtractService.extractAll(extractOriginFormDTO); return new Result(); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginExtractServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginExtractServiceImpl.java index 381f6d230d..a54d995f8f 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginExtractServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginExtractServiceImpl.java @@ -45,15 +45,17 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { @Override public void extractAll(ExtractOriginFormDTO extractOriginFormDTO) { - String dateId = extractOriginFormDTO.getDateId(); String customerId = extractOriginFormDTO.getCustomerId(); - if (StringUtils.isBlank(dateId)) { - dateId = DimIdGenerator.getDateDimId(DateUtils.addDateDays(new Date(), -1)); + if (StringUtils.isBlank(extractOriginFormDTO.getStartDate())||StringUtils.isBlank(extractOriginFormDTO.getEndDate())) { + //如果没有设置开始日期、结束日期,默认查询昨天 + extractOriginFormDTO.setDateId(DimIdGenerator.getDateDimId(DateUtils.addDateDays(new Date(), -1))); } List customerIds = new ArrayList<>(); if (StringUtils.isNotBlank(customerId)) { + //指定某个客户 customerIds.add(customerId); } else { + //查询全部客户 int pageNo = NumConstant.ONE; int pageSize = NumConstant.ONE_HUNDRED; customerIds = dimCustomerService.selectCustomerIdPage(pageNo, pageSize); @@ -62,12 +64,12 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { return; } } - - String finalDateId = dateId; customerIds.forEach(cId -> { ExtractOriginFormDTO param = new ExtractOriginFormDTO(); param.setCustomerId(cId); - param.setDateId(finalDateId); + param.setDateId(extractOriginFormDTO.getDateId()); + param.setStartDate(extractOriginFormDTO.getStartDate()); + param.setEndDate(extractOriginFormDTO.getEndDate()); log.debug("extractAll param:{}", JSON.toJSONString(param)); submitJob(param); }); @@ -76,33 +78,87 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { private void submitJob(ExtractOriginFormDTO param) { threadPool.submit(() -> { - try { - groupExtractService.extractGroupData(param); - } catch (Exception e) { - log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); + if(StringUtils.isNotBlank(param.getDateId())){ + try { + groupExtractService.extractGroupData(param); + } catch (Exception e) { + log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); + } + }else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ + try{ + List daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); + for (int i = 0; i < daysBetween.size(); i++) { + String dateDimId = daysBetween.get(i); + param.setDateId(dateDimId); + groupExtractService.extractGroupData(param); + } + }catch(Exception e){ + log.error("抽取【小组数据】发生异常,参数:" + JSON.toJSONString(param), e); + } } }); threadPool.submit(() -> { - try { - factOriginTopicMainDailyService.topicCleaning(param); - } catch (Exception e) { - log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); + if(StringUtils.isNotBlank(param.getDateId())){ + try { + factOriginTopicMainDailyService.topicCleaning(param); + } catch (Exception e) { + log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); + } + }else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ + try { + List daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); + for (int i = 0; i < daysBetween.size(); i++) { + String dateDimId = daysBetween.get(i); + param.setDateId(dateDimId); + factOriginTopicMainDailyService.topicCleaning(param); + } + } catch (Exception e) { + log.error("抽取【话题数据】发生异常,参数:" + JSON.toJSONString(param), e); + } } }); threadPool.submit(() -> { - try { - issueExtractService.issueExtractMain(param); - issueExtractService.issueExtractLog(param); - } catch (Exception e) { - log.error("抽取【议题数据】发生异常,参数:" + JSON.toJSONString(param), e); + if(StringUtils.isNotBlank(param.getDateId())){ + try { + issueExtractService.issueExtractMain(param); + issueExtractService.issueExtractLog(param); + } catch (Exception e) { + log.error("抽取【议题数据】发生异常,参数:" + JSON.toJSONString(param), e); + } + }else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ + try { + List daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); + for (int i = 0; i < daysBetween.size(); i++) { + String dateDimId = daysBetween.get(i); + param.setDateId(dateDimId); + issueExtractService.issueExtractMain(param); + issueExtractService.issueExtractLog(param); + } + } catch (Exception e) { + log.error("抽取【议题数据】发生异常,参数:" + JSON.toJSONString(param), e); + } } }); threadPool.submit(() -> { - try { - projectExtractService.saveOriginProjectDaily(param); - projectExtractService.extractProjectPeriodData(param); - } catch (Exception e) { - log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); + if(StringUtils.isNotBlank(param.getDateId())){ + try { + projectExtractService.saveOriginProjectDaily(param); + projectExtractService.extractProjectPeriodData(param); + } catch (Exception e) { + log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); + } + }else if(StringUtils.isNotBlank(param.getStartDate()) && StringUtils.isNotBlank(param.getEndDate())){ + try { + List daysBetween = DateUtils.getDaysBetween(param.getStartDate(), param.getEndDate()); + for (int i = 0; i < daysBetween.size(); i++) { + String dateDimId = daysBetween.get(i); + param.setDateId(dateDimId); + projectExtractService.saveOriginProjectDaily(param); + projectExtractService.extractProjectPeriodData(param); + } + } catch (Exception e) { + log.error("抽取【项目数据】发生异常,参数:" + JSON.toJSONString(param), e); + } } }); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/GroupExtractServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/GroupExtractServiceImpl.java index 30f19a5c7c..6087d86e34 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/GroupExtractServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/GroupExtractServiceImpl.java @@ -145,8 +145,8 @@ public class GroupExtractServiceImpl implements GroupExtractService { factOriginGroupMainDailyService.insertExtractedData( count <= NumConstant.ZERO ? true : false, - param.getDateId(), param.getCustomerId(), + param.getDateId(), originGroupData, memberList ); 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 a427a49925..5712789d6c 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 @@ -110,13 +110,13 @@ public class ScreenExtractServiceImpl implements ScreenExtractService { * @date 2020/9/24 10:16 上午 */ public void extractDaily(String customerId, String dateId) { - //党员基本情况 + //党员基本情况screen_cpc_base_data partyBaseInfoService.statsPartyMemberBaseInfoToScreen(customerId,dateId); - //先锋模范 + //先锋模范screen_pioneer_data pioneerDataExtractService.extractGridPioneerData(customerId, dateId); pioneerDataExtractService.extractCommunityPioneerData(customerId, dateId); pioneerDataExtractService.extractExceptCommunityPioneerData(customerId, dateId); - //公众参与排行(注册人数、参与人数、话题数、议题数、项目数) + //公众参与排行(注册人数、参与人数、话题数、议题数、项目数)screen_public_parti_total_data publicPartiTotalDataExtractService.extractPublicPartiTotalData(customerId,dateId); } @@ -132,11 +132,11 @@ public class ScreenExtractServiceImpl implements ScreenExtractService { //基层治理-公众参与screen_user_join publicPartExtractService.extractTotalDataMonthly(formDTO); - //治理能力排行 + //治理能力排行screen_govern_rank_data governRankDataExtractService.extractGridData(customerId, monthId); governRankDataExtractService.extractCommunityData(customerId, monthId); governRankDataExtractService.extractStreetData(customerId, monthId); - //先进排行 + //先进排行 screen_org_rank_data 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/extract/toscreen/impl/ScreenGrassrootsGovernDataAbsorptionServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenGrassrootsGovernDataAbsorptionServiceImpl.java index 3377539339..51b10a31f3 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenGrassrootsGovernDataAbsorptionServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenGrassrootsGovernDataAbsorptionServiceImpl.java @@ -128,12 +128,14 @@ public class ScreenGrassrootsGovernDataAbsorptionServiceImpl implements ScreenGr DifficultyIfExistedResultDTO existedMap = screenDifficultyDataService.selectExistedInfo(param.getCustomerId()); //查询数据 List difficulties = factOriginProjectMainDailyService.getDifficultyBaseInfo(param.getCustomerId(),existedMap.getClosedIds()); + if(existedMap.isIfExisted()){ //查询全部项目的图片 }else{ //查询增量项目的图片 List newProjectIds = factOriginProjectMainDailyService.getNewProjectId(param.getCustomerId(),param.getDateId()); + } } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenDifficultyDataService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenDifficultyDataService.java index f2779698f1..eb390bd434 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenDifficultyDataService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenDifficultyDataService.java @@ -44,11 +44,11 @@ public interface ScreenDifficultyDataService extends BaseService difficulty, List img); + void dataClean(List difficulties, List imgs); } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java index fd34a6376c..6692edb144 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java @@ -53,7 +53,7 @@ public class ScreenDifficultyDataServiceImpl extends BaseServiceImpl difficulty,List img) { + public void dataClean(List difficulties,List imgs) { } } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java index b6b0f70269..882263f938 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java @@ -101,4 +101,6 @@ public interface ProjectProcessService extends BaseService * @return java.util.List */ List getFinishOrg(String customerId, String date); + + } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml index 4ac0b21fb5..ed36efbeed 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml @@ -188,4 +188,9 @@ GROUP BY PROJECT_ID ) b ON a.PROJECT_ID = b.PROJECT_ID + + + \ No newline at end of file