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 360cb3c71a..93d81104d5 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.*; import com.epmet.dto.group.form.GroupStatsFormDTO; +import com.epmet.dto.group.form.GroupTotalFormDTO; import com.epmet.dto.screen.form.InitCustomerIndexForm; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; import com.epmet.feign.impl.DataStatisticalOpenFeignClientFallBack; @@ -266,4 +267,11 @@ public interface DataStatisticalOpenFeignClient { */ @PostMapping("/data/stats/bizData/stats/daily") Result exeStatsDaily(@RequestBody BizDataFormDTO formDTO); + + /** + * @dscription 小组总数日统计和热议话题日统计任务 + * @author sun + */ + @PostMapping("/data/stats/statsgroup/groupandhottopic") + Result groupAndHotTopicTask(@RequestBody GroupTotalFormDTO formDTO); } 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 e15214e9d7..7bf37b9ce7 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.*; import com.epmet.dto.group.form.GroupStatsFormDTO; +import com.epmet.dto.group.form.GroupTotalFormDTO; import com.epmet.dto.screen.form.InitCustomerIndexForm; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; import com.epmet.feign.DataStatisticalOpenFeignClient; @@ -259,4 +260,9 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp public Result exeStatsDaily(BizDataFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "exeStatsDaily", formDTO); } + + @Override + public Result groupAndHotTopicTask(GroupTotalFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "groupAndHotTopic", formDTO); + } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsGroupController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsGroupController.java index 9896ae6290..baa6fb21d2 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsGroupController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsGroupController.java @@ -1,10 +1,15 @@ package com.epmet.controller; +import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.StatsFormDTO; import com.epmet.dto.group.form.GroupStatsFormDTO; import com.epmet.dto.group.form.GroupTotalFormDTO; +import com.epmet.dto.stats.topic.form.TopicStatusFormDTO; import com.epmet.service.StatsGroupService; +import com.epmet.service.StatsTopicService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -18,9 +23,11 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("statsgroup") public class StatsGroupController { - + Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private StatsGroupService statsGroupService; + @Autowired + private StatsTopicService statsTopicService; /** * 网格数、小组数、网格下所有组内人数(不去重) @@ -81,5 +88,39 @@ public class StatsGroupController { return new Result(); } + /** + * @dscription 小组总数日统计和热议话题日统计任务 + * @author sun + */ + @PostMapping("/groupandhottopic") + public Result groupAndHotTopic(GroupTotalFormDTO formDTO) { + try { + statsGroupService.gridGroupTotal(formDTO); + logger.info("小组总数-网格日统计任务成功"); + } catch (Exception e) { + logger.error("小组总数-网格日统计任务:", e); + } + try { + statsGroupService.agencyGroupTotal(formDTO); + logger.info("小组总数-机关日统计任务成功"); + } catch (Exception e) { + logger.error("小组总数-机关日统计任务失败:", e); + } + TopicStatusFormDTO topic = ConvertUtils.sourceToTarget(formDTO, TopicStatusFormDTO.class); + try { + statsTopicService.gridTopicStatus(topic); + logger.info("热议中话题-网格日统计任务成功"); + } catch (Exception e) { + logger.error("热议中话题-网格日统计任务失败:", e); + } + try { + statsTopicService.agencyTopicStatus(topic); + logger.info("热议中话题-机关日统计任务成功"); + } catch (Exception e) { + logger.error("热议中话题-机关日统计任务失败:", e); + } + 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 7f20601afa..649391be59 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 @@ -237,7 +237,7 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { } }); - //网格、组织小组总数日统计 + /* //网格、组织小组总数日统计 threadPool.submit(() -> { GroupTotalFormDTO formDTO = new GroupTotalFormDTO(); formDTO.setCustomerId(param.getCustomerId()); @@ -295,7 +295,7 @@ public class FactOriginExtractServiceImpl implements FactOriginExtractService { log.error("热议中话题-机关日统计计算错误,参数:" + JSON.toJSONString(formDTO), e); } } - }); + });*/ submitProjectRelationData(param, finalDaysBetween); } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsGroupService.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsGroupService.java index 84013b997d..94a2595331 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsGroupService.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsGroupService.java @@ -1,6 +1,7 @@ package com.epmet.service; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.group.form.GroupTotalFormDTO; /** * @Author zxc @@ -29,4 +30,9 @@ public interface StatsGroupService { */ Result groupAgencyMonthly(String date); + /** + * @dscription 小组总数日统计和热议话题日统计任务 + * @author sun + */ + Result groupAndHotTopicTask(GroupTotalFormDTO formDTO); } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java index 669a97a60c..290c04733e 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.service.impl; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.group.form.GroupStatsFormDTO; +import com.epmet.dto.group.form.GroupTotalFormDTO; import com.epmet.service.StatsGroupService; import com.epmet.feign.DataStatisticalOpenFeignClient; import org.springframework.beans.factory.annotation.Autowired; @@ -37,4 +38,13 @@ public class StatsGroupServiceImpl implements StatsGroupService { formDTO.setDate(date); return statsPublicityFeignClient.groupAgencyMonthly(formDTO); } + + /** + * @dscription 小组总数日统计和热议话题日统计任务 + * @author sun + */ + @Override + public Result groupAndHotTopicTask(GroupTotalFormDTO formDTO) { + return statsPublicityFeignClient.groupAndHotTopicTask(formDTO); + } } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/GroupAndHotTopicTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/GroupAndHotTopicTask.java new file mode 100644 index 0000000000..cfba46d52f --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/GroupAndHotTopicTask.java @@ -0,0 +1,40 @@ +package com.epmet.task; + +import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.extract.form.ExtractOriginFormDTO; +import com.epmet.dto.group.form.GroupTotalFormDTO; +import com.epmet.service.DimInitService; +import com.epmet.service.StatsGroupService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @dscription 小组总数日统计和热议话题日统计任务【因任务中用到了其他日统计表数据,需要在那些日统计任务之后单独执行】 + * 每天凌晨三点执行【0 0 3 * * ?】 + * @author sun + */ +@Slf4j +@Component("groupAndHotTopicTask") +public class GroupAndHotTopicTask implements ITask { + + @Autowired + private StatsGroupService statsGroupService; + + @Override + public void run(String params) { + log.debug("groupAndHotTopicTask定时任务正在执行,参数为:{}", params); + GroupTotalFormDTO formDTO = new GroupTotalFormDTO(); + if (StringUtils.isNotBlank(params)) { + formDTO = JSON.parseObject(params, GroupTotalFormDTO.class); + } + Result result = statsGroupService.groupAndHotTopicTask(formDTO); + if (result.success()){ + log.debug("groupAndHotTopicTask定时任务正在执行定时任务执行成功"); + }else { + log.debug("groupAndHotTopicTask定时任务正在执行定时任务执行失败:" + result.getMsg()); + } + } +}