From 83fd8e075ff9e3dacace96cdfe6e5d4e61cda03a Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Mon, 28 Sep 2020 14:22:10 +0800 Subject: [PATCH] =?UTF-8?q?factorigin/extractall=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FactOriginExtractController.java | 1 + .../impl/FactOriginExtractServiceImpl.java | 104 ++++++++++++++---- .../impl/ScreenExtractServiceImpl.java | 6 +- 3 files changed, 84 insertions(+), 27 deletions(-) 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/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..e26a10abe6 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); }