Browse Source

代码暂存

dev_shibei_match
jianjun 5 years ago
parent
commit
99ee7dffb6
  1. 46
      epmet-module/data-statistical/data-statistical-client/src/main/java/feign/DataStatisticalOpenFeignClient.java
  2. 46
      epmet-module/data-statistical/data-statistical-client/src/main/java/feign/impl/DataStatisticalOpenFeignClientFallBack.java
  3. 24
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsPublicityController.java
  4. 3
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactTagUsedAgencyDailyDao.java
  5. 27
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsPublicityService.java
  6. 254
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsPublicityServiceImpl.java
  7. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactTagUsedAgencyDailyService.java
  8. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactTagUsedAgencyDailyServiceImpl.java
  9. 120
      epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/data_statistical.sql
  10. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactTagUsedAgencyDailyDao.xml
  11. 1
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactTagUsedAgencyMonthlyDao.xml
  12. 18
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsPublicityTaskService.java
  13. 4
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java
  14. 45
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsPublicityTaskServiceImpl.java

46
epmet-module/data-statistical/data-statistical-client/src/main/java/feign/StatsPublicityFeignClient.java → epmet-module/data-statistical/data-statistical-client/src/main/java/feign/DataStatisticalOpenFeignClient.java

@ -2,17 +2,19 @@ package feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import feign.impl.StatsPublicityFeignClientFallBack;
import feign.impl.DataStatisticalOpenFeignClientFallBack;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
/**
* @Description 数据-宣传能力 -定时任务
* @Author wangc
* @Date 2020/5/23 13:42
* desc: 数据统计 对外feign client
*
* @return:
* @date: 2020/6/22 17:39
* @author: jianjun liu
*/
@FeignClient(name = ServiceConstant.DATA_STATISTICAL, fallback = StatsPublicityFeignClientFallBack.class)
public interface StatsPublicityFeignClient {
@FeignClient(name = ServiceConstant.DATA_STATISTICAL, fallback = DataStatisticalOpenFeignClientFallBack.class)
public interface DataStatisticalOpenFeignClient {
/**
* desc: 统计文章总数及在线文章总数 包含 机关 部门 网格
@ -34,13 +36,22 @@ public interface StatsPublicityFeignClient {
Result tagUsedDailyStatsjob();
/**
* desc: , 统计发表文章最多的分类 包含 机关 部门 网格
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@PostMapping(value = "data/stats/statspublicity/tagUsedMonthStatsjob")
Result tagUsedMonthStatsjob();
@PostMapping(value = "data/stats/statspublicity/tagUsedMonthlyStatsjob")
Result tagUsedMonthlyStatsjob();
/**
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@PostMapping(value = "data/stats/statspublicity/tagUsedQuarterlyStatsjob")
Result tagUsedQuarterlyStatsjob();
/**
* desc: 统计阅读最多的标签 包含 机关 网格
@ -49,16 +60,25 @@ public interface StatsPublicityFeignClient {
* @author: jianjun liu
*/
@PostMapping(value = "data/stats/statspublicity/tagViewedDailyStatsjob")
Result tagViewedDayStatsjob();
Result tagViewedDailyStatsjob();
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@PostMapping(value = "data/stats/statspublicity/tagViewedMonthlyStatsjob")
Result tagViewedMonthlyStatsjob();
/**
* desc: 统计阅读最多的标签 包含 机关 网格
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@PostMapping(value = "data/stats/statspublicity/tagViewedMonthStatsjob")
Result tagViewedMonthStatsjob();
@PostMapping(value = "data/stats/statspublicity/tagViewedQuarterlyStatsjob")
Result tagViewedQuarterlyStatsjob();
/**
* @Description 统计 网格小组 dim网格-

46
epmet-module/data-statistical/data-statistical-client/src/main/java/feign/impl/StatsPublicityFeignClientFallBack.java → epmet-module/data-statistical/data-statistical-client/src/main/java/feign/impl/DataStatisticalOpenFeignClientFallBack.java

@ -3,7 +3,7 @@ package feign.impl;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import feign.StatsPublicityFeignClient;
import feign.DataStatisticalOpenFeignClient;
import org.springframework.stereotype.Component;
/**
@ -15,7 +15,7 @@ import org.springframework.stereotype.Component;
* email:liujianjun@git.elinkit.com.cn
*/
@Component
public class StatsPublicityFeignClientFallBack implements StatsPublicityFeignClient {
public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOpenFeignClient {
/**
* desc: 统计文章总数及在线文章总数 包含 机关 部门 网格
@ -25,7 +25,7 @@ public class StatsPublicityFeignClientFallBack implements StatsPublicityFeignCli
*/
@Override
public Result articleSummaryDailyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "articleSummaryDailyStatsjob");
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "articleSummaryDailyStatsjob");
}
/**
@ -37,18 +37,29 @@ public class StatsPublicityFeignClientFallBack implements StatsPublicityFeignCli
*/
@Override
public Result tagUsedDailyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "tagUsedDailyStatsjob");
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "tagUsedDailyStatsjob");
}
/**
* desc: , 统计发表文章最多的分类 包含 机关 部门 网格
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagUsedMonthStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "tagUsedMonthStatsjob");
public Result tagUsedMonthlyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "tagUsedMonthlyStatsjob");
}
/**
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagUsedQuarterlyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "tagUsedQuarterlyStatsjob");
}
/**
@ -58,19 +69,30 @@ public class StatsPublicityFeignClientFallBack implements StatsPublicityFeignCli
* @author: jianjun liu
*/
@Override
public Result tagViewedDayStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "tagViewedDayStatsjob");
public Result tagViewedDailyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "tagViewedDailyStatsjob");
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagViewedMonthlyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "tagViewedMonthlyStatsjob");
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagViewedMonthStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "tagViewedMonthStatsjob");
public Result tagViewedQuarterlyStatsjob() {
return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL, "tagViewedQuarterlyStatsjob");
}
@Override

24
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsPublicityController.java

@ -56,6 +56,17 @@ public class StatsPublicityController {
return new Result<Boolean>().ok(statsPublicityService.tagUsedMonthlyStatsjob(statsDate));
}
/**
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @param statsDate 默认为T-1天如果传 则统计的是statsDate的数据
* @return
*/
@PostMapping(value = "tagUsedQuarterlyStatsjob")
public Result<Boolean> tagUsedQuarterlyStatsjob(Date statsDate) {
return new Result<Boolean>().ok(statsPublicityService.tagUsedQuarterlyStatsjob(statsDate));
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
@ -68,7 +79,7 @@ public class StatsPublicityController {
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @param statsDate 默认为T-1天如果传 则统计的是statsDate的数据
* @return
@ -77,4 +88,15 @@ public class StatsPublicityController {
public Result<Boolean> tagViewedMonthlyStatsjob(Date statsDate) {
return new Result<Boolean>().ok(statsPublicityService.tagViewedMonthlyStatsjob(statsDate));
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @param statsDate 默认为T-1天如果传 则统计的是statsDate的数据
* @return
*/
@PostMapping(value = "tagViewedQuarterlyStatsjob")
public Result<Boolean> tagViewedQuarterlyStatsjob(Date statsDate) {
return new Result<Boolean>().ok(statsPublicityService.tagViewedQuarterlyStatsjob(statsDate));
}
}

3
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactTagUsedAgencyDailyDao.java

@ -19,7 +19,6 @@ package com.epmet.dao.stats;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.stats.FactTagUsedAgencyDailyEntity;
import com.epmet.entity.stats.FactTagUsedGridDailyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -43,5 +42,5 @@ public interface FactTagUsedAgencyDailyDao extends BaseDao<FactTagUsedAgencyDail
* @param monthId
* @return
*/
List<FactTagUsedGridDailyEntity> getTagUsedCountByMonth(@Param("customerId") String customerId, @Param("monthId") String monthId);
List<FactTagUsedAgencyDailyEntity> getTagUsedCountByMonth(@Param("customerId") String customerId, @Param("monthId") String monthId);
}

27
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsPublicityService.java

@ -10,7 +10,6 @@ public interface StatsPublicityService {
* @return: Boolean
* @date: 2020/6/17 16:11
* @author: jianjun liu
* email:liujianjun@git.elinkit.com.cn
*/
Boolean articleSummaryDailyStatsjob(Date statsDate);
@ -20,7 +19,6 @@ public interface StatsPublicityService {
* @return: Boolean
* @date: 2020/6/17 16:11
* @author: jianjun liu
* email:liujianjun@git.elinkit.com.cn
*/
Boolean tagUsedDailyStatsjob(Date statsDate);
@ -31,10 +29,19 @@ public interface StatsPublicityService {
* @return:
* @date: 2020/6/19 18:44
* @author: jianjun liu
* email:liujianjun@git.elinkit.com.cn
*/
Boolean tagUsedMonthlyStatsjob(Date statsDate);
/**
* desc: 按季年统计标签被使用次数
*
* @param statsDate
* @return:
* @date: 2020/6/20 10:44
* @author: jianjun liu
*/
Boolean tagUsedQuarterlyStatsjob(Date statsDate);
/**
* desc: 按日 统计每个标签的阅读数
*
@ -42,18 +49,26 @@ public interface StatsPublicityService {
* @return: Boolean
* @date: 2020/6/20 8:40
* @author: jianjun liu
* email:liujianjun@git.elinkit.com.cn
*/
Boolean tagViewedDailyStatsjob(Date statsDate);
/**
* desc:
* desc: 按月统计标签被查看次数
*
* @param statsDate
* @return:
* @date: 2020/6/20 10:44
* @author: jianjun liu
* email:liujianjun@git.elinkit.com.cn
*/
Boolean tagViewedMonthlyStatsjob(Date statsDate);
/**
* desc: 按季年统计标签被查看次数
*
* @param statsDate
* @return:
* @date: 2020/6/20 10:44
* @author: jianjun liu
*/
Boolean tagViewedQuarterlyStatsjob(Date statsDate);
}

254
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsPublicityServiceImpl.java

@ -13,7 +13,6 @@ import com.epmet.entity.voice.ArticleEntity;
import com.epmet.entity.voice.ArticleTagsEntity;
import com.epmet.service.StatsPublicityService;
import com.epmet.service.stats.*;
import com.epmet.service.voice.ArticlePublishRangeService;
import com.epmet.service.voice.ArticleService;
import com.epmet.service.voice.ArticleTagsService;
import com.epmet.service.voice.ArticleVisitRecordService;
@ -27,7 +26,6 @@ import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
import java.util.stream.Collectors;
@ -44,16 +42,6 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
@Autowired
private DimAgencyService dimAgencyService;
@Autowired
private DimDateService dimDateService;
@Autowired
private DimWeekService dimWeekService;
@Autowired
private DimMonthService dimMonthService;
@Autowired
private DimQuarterService dimQuarterService;
@Autowired
private DimYearService dimYearService;
@Autowired
private DimCustomerService dimCustomerService;
@Autowired
private DimGridService dimGridService;
@ -64,8 +52,6 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
@Autowired
private ArticleService articleService;
@Autowired
private ArticlePublishRangeService articlePublishRangeService;
@Autowired
private ArticleVisitRecordService articleVisitRecordService;
@Autowired
private FactArticlePublishedGridDailyService factArticlePublishedGridDailyService;
@ -134,7 +120,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
Date finalStatsDate = statsDate;
executorService.submit(() -> {
try {
//key:所在机关Id
Map<String, ArticleGridPublishedSummaryDTO> agencySummaryMap = new HashMap<>();
@ -144,7 +130,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
} catch (Exception e) {
log.error("articlePublishedCountDayStats exception", e);
}
});
}
}
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
@ -193,7 +179,6 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
int pageNo = 1;
int pageSize = 100;
List<String> customerIdList = null;
CountDownLatch countDownLatch = new CountDownLatch(1);
do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
@ -201,29 +186,10 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
executorService.submit(() -> {
try {
statsTagUsedMonthly(dimIdBean.getMonthId(), customerId);
countDownLatch.countDown();
} catch (Exception e) {
log.error("statsTagUsedMonthly exception", e);
}
});
executorService.submit(() -> {
try {
countDownLatch.await();
log.debug("start === statsTagUsedQuarterly ");
statsTagUsedQuarterly(dimIdBean.getQuarterId(), customerId);
} catch (Exception e) {
log.error("statsTagUsedQuarterly exception", e);
}
});
executorService.submit(() -> {
try {
countDownLatch.await();
log.debug("start === statsTagUsedQuarterly ");
statsTagUsedYearly(dimIdBean.getYearId(), customerId);
} catch (Exception e) {
log.error("statsTagUsedYearly exception", e);
}
});
}
}
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
@ -272,26 +238,81 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
int pageNo = 1;
int pageSize = 100;
List<String> customerIdList = null;
CountDownLatch countDownLatch = new CountDownLatch(1);
do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
if (!"6c8cfc2c14afeb6d3664b3e283fc9074".equals(customerId)) {
continue;
}
executorService.submit(() -> {
try {
statsTagViewedMonthly(dimIdBean.getMonthId(), customerId);
countDownLatch.countDown();
} catch (Exception e) {
log.error("statsTagViewedMonthly exception", e);
}
});
}
}
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
return true;
}
@Override
public Boolean tagUsedQuarterlyStatsjob(Date statsDate) {
//如果不传时间 则统计数据为今天之前的数据和,否则统计的是截止到传入的日期数据的和
if (statsDate == null) {
//当天的凌晨时间 即为今天之前的数据
statsDate = DateUtils.integrate(new Date(), DateUtils.DATE_PATTERN);
} else {
statsDate = DateUtils.integrate(DateUtils.addDateDays(statsDate, 1), DateUtils.DATE_PATTERN);
}
DimIdGenerator.DimIdBean dimIdBean = DimIdGenerator.getDimIdBean(statsDate);
int pageNo = 1;
int pageSize = 100;
List<String> customerIdList = null;
do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
executorService.submit(() -> {
try {
log.debug("start === statsTagUsedQuarterly ");
statsTagUsedQuarterly(dimIdBean.getQuarterId(), customerId);
} catch (Exception e) {
log.error("statsTagUsedQuarterly exception", e);
}
});
executorService.submit(() -> {
try {
log.debug("start === statsTagUsedQuarterly ");
statsTagUsedYearly(dimIdBean.getYearId(), customerId);
} catch (Exception e) {
log.error("statsTagUsedYearly exception", e);
}
});
}
}
} while (!CollectionUtils.isEmpty(customerIdList) && customerIdList.size() == pageSize);
return true;
}
@Override
public Boolean tagViewedQuarterlyStatsjob(Date statsDate) {
//如果不传时间 则统计数据为今天之前的数据和,否则统计的是截止到传入的日期数据的和
if (statsDate == null) {
//当天的凌晨时间 即为今天之前的数据
statsDate = DateUtils.integrate(new Date(), DateUtils.DATE_PATTERN);
} else {
statsDate = DateUtils.integrate(DateUtils.addDateDays(statsDate, 1), DateUtils.DATE_PATTERN);
}
DimIdGenerator.DimIdBean dimIdBean = DimIdGenerator.getDimIdBean(statsDate);
int pageNo = 1;
int pageSize = 100;
List<String> customerIdList = null;
do {
customerIdList = dimCustomerService.selectCustomerIdPage(pageNo++, pageSize);
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
executorService.submit(() -> {
try {
countDownLatch.await();
log.debug("start === statsTagViewedQuarterly ");
statsTagViewedQuarterly(dimIdBean.getQuarterId(), customerId);
} catch (Exception e) {
@ -300,7 +321,6 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
});
executorService.submit(() -> {
try {
countDownLatch.await();
log.debug("start === statsTagViewedYearly ");
statsTagViewedYearly(dimIdBean.getYearId(), customerId);
} catch (Exception e) {
@ -320,25 +340,27 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
log.warn("publicitySummary getDepartmentListByCustomerId return empty,customerId:{}", customerId);
return;
}
//转换为 需要插入的Entity
Map<String, FactArticlePublishedDepartmentDailyEntity> departmentDailyEntityMap = convertDepartmentDailyEntity(departmentDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllDepartmentPublishedCount(customerId, DateUtils.integrate(statsDate, DateUtils.DATE_PATTERN));
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
FactArticlePublishedDepartmentDailyEntity gridDailyEntities = departmentDailyEntityMap.get(summaryDTO.getPublisherId());
if (gridDailyEntities == null) {
log.error("publicitySummary bizData departmentId:{} not exist in dimDepartment", summaryDTO.getGridId());
continue;
executorService.submit(()->{
//转换为 需要插入的Entity
Map<String, FactArticlePublishedDepartmentDailyEntity> departmentDailyEntityMap = convertDepartmentDailyEntity(departmentDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllDepartmentPublishedCount(customerId, DateUtils.integrate(statsDate, DateUtils.DATE_PATTERN));
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
FactArticlePublishedDepartmentDailyEntity gridDailyEntities = departmentDailyEntityMap.get(summaryDTO.getPublisherId());
if (gridDailyEntities == null) {
log.error("publicitySummary bizData departmentId:{} not exist in dimDepartment", summaryDTO.getGridId());
continue;
}
gridDailyEntities.setArticleTotalCount(summaryDTO.getArticleTotalCount());
gridDailyEntities.setArticlePublishedCount(summaryDTO.getArticlePublishedCount());
//同一个机关下数据累加
buildAgencySummaryData(agencySummaryMap, summaryDTO);
}
gridDailyEntities.setArticleTotalCount(summaryDTO.getArticleTotalCount());
gridDailyEntities.setArticlePublishedCount(summaryDTO.getArticlePublishedCount());
//同一个机关下数据累加
buildAgencySummaryData(agencySummaryMap, summaryDTO);
}
}
boolean b = factArticlePublishedDepartmentDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), departmentDailyEntityMap.values());
boolean b = factArticlePublishedDepartmentDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), departmentDailyEntityMap.values());
});
}
/**
@ -374,33 +396,33 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
* @param agencySummaryMap
*/
private void statsPublishedGridDaily(Date statsDate, DimIdGenerator.DimIdBean dimIdBean, String customerId, Map<String, ArticleGridPublishedSummaryDTO> agencySummaryMap) {
//key:所在机关Id
Map<String, ArticleGridPublishedSummaryDTO> result = new HashMap<>();
//获取所有网格
List<DimGridEntity> gridDTOList = dimGridService.getGridListByCustomerId(customerId);
if (CollectionUtils.isEmpty(gridDTOList)) {
log.warn("publicitySummary getGridListByCustomerId return empty,customerId:{}", customerId);
return;
}
//转换为 需要插入的Entity
Map<String, FactArticlePublishedGridDailyEntity> gridDailyEntityMap = convertGridDailyEntity(gridDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllGridPublishedCount(customerId, statsDate);
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
FactArticlePublishedGridDailyEntity gridDailyEntity = gridDailyEntityMap.get(summaryDTO.getGridId());
if (gridDailyEntity == null) {
log.error("publicitySummary getAllGridPublishedCount gridId:{} not exist in dimGrid", summaryDTO.getGridId());
continue;
executorService.submit(()->{
//转换为 需要插入的Entity
Map<String, FactArticlePublishedGridDailyEntity> gridDailyEntityMap = convertGridDailyEntity(gridDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllGridPublishedCount(customerId, statsDate);
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
FactArticlePublishedGridDailyEntity gridDailyEntity = gridDailyEntityMap.get(summaryDTO.getGridId());
if (gridDailyEntity == null) {
log.error("publicitySummary getAllGridPublishedCount gridId:{} not exist in dimGrid", summaryDTO.getGridId());
continue;
}
gridDailyEntity.setArticleTotalCount(summaryDTO.getArticleTotalCount());
gridDailyEntity.setArticlePublishedCount(summaryDTO.getArticlePublishedCount());
//同一个机关下数据累加
buildAgencySummaryData(agencySummaryMap, summaryDTO);
}
gridDailyEntity.setArticleTotalCount(summaryDTO.getArticleTotalCount());
gridDailyEntity.setArticlePublishedCount(summaryDTO.getArticlePublishedCount());
//同一个机关下数据累加
buildAgencySummaryData(agencySummaryMap, summaryDTO);
}
}
boolean b = factArticlePublishedGridDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), gridDailyEntityMap.values());
boolean b = factArticlePublishedGridDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), gridDailyEntityMap.values());
});
}
private void statsPublishedAgencyDaily(Date statsDate, DimIdGenerator.DimIdBean dimIdBean, String customerId, Map<String, ArticleGridPublishedSummaryDTO> agencySummaryMap) {
@ -410,40 +432,43 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
log.warn("publicitySummary getAgencyListByCustomerId return empty,customerId:{}", customerId);
return;
}
//转换为 需要插入的Entity
Map<String, FactArticlePublishedAgencyDailyEntity> agencyDailyEntityMap = convertAgencyDailyEntity(agencyDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllAgencyPublishedCount(customerId, statsDate);
Map<String, FactArticlePublishedAgencyDailyEntity> haveDataAgencyDailyMap = new HashMap<>();
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
FactArticlePublishedAgencyDailyEntity gridDailyEntities = agencyDailyEntityMap.get(summaryDTO.getPublisherId());
if (gridDailyEntities == null) {
log.error("publicitySummary bizData departmentId:{} not exist in dimDepartment", summaryDTO.getGridId());
continue;
executorService.submit(()->{
//转换为 需要插入的Entity
Map<String, FactArticlePublishedAgencyDailyEntity> agencyDailyEntityMap = convertAgencyDailyEntity(agencyDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllAgencyPublishedCount(customerId, statsDate);
Map<String, FactArticlePublishedAgencyDailyEntity> haveDataAgencyDailyMap = new HashMap<>();
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
FactArticlePublishedAgencyDailyEntity gridDailyEntities = agencyDailyEntityMap.get(summaryDTO.getPublisherId());
if (gridDailyEntities == null) {
log.error("publicitySummary bizData departmentId:{} not exist in dimDepartment", summaryDTO.getGridId());
continue;
}
gridDailyEntities.setArticleTotalCount(summaryDTO.getArticleTotalCount());
gridDailyEntities.setArticlePublishedCount(summaryDTO.getArticlePublishedCount());
//同一个机关下数据累加
buildAgencySummaryData(agencySummaryMap, summaryDTO);
haveDataAgencyDailyMap.put(summaryDTO.getAgencyId(), gridDailyEntities);
}
gridDailyEntities.setArticleTotalCount(summaryDTO.getArticleTotalCount());
gridDailyEntities.setArticlePublishedCount(summaryDTO.getArticlePublishedCount());
//同一个机关下数据累加
buildAgencySummaryData(agencySummaryMap, summaryDTO);
haveDataAgencyDailyMap.put(summaryDTO.getAgencyId(), gridDailyEntities);
}
}
//数据向上级机关添加
if (!CollectionUtils.isEmpty(haveDataAgencyDailyMap)) {
for (Map.Entry<String, FactArticlePublishedAgencyDailyEntity> entry : haveDataAgencyDailyMap.entrySet()) {
String agencyId = entry.getKey();
FactArticlePublishedAgencyDailyEntity summary = entry.getValue();
FactArticlePublishedAgencyDailyEntity dailyEntity = agencyDailyEntityMap.get(agencyId);
if (dailyEntity == null) {
log.error("publicitySummary bizData agencyId:{} not exist in dimAgency", agencyId);
continue;
//数据向上级机关添加
if (!CollectionUtils.isEmpty(haveDataAgencyDailyMap)) {
for (Map.Entry<String, FactArticlePublishedAgencyDailyEntity> entry : haveDataAgencyDailyMap.entrySet()) {
String agencyId = entry.getKey();
FactArticlePublishedAgencyDailyEntity summary = entry.getValue();
FactArticlePublishedAgencyDailyEntity dailyEntity = agencyDailyEntityMap.get(agencyId);
if (dailyEntity == null) {
log.error("publicitySummary bizData agencyId:{} not exist in dimAgency", agencyId);
continue;
}
setPublishedData2ParentAgency(agencyDailyEntityMap, summary, dailyEntity);
}
setPublishedData2ParentAgency(agencyDailyEntityMap, summary, dailyEntity);
}
}
boolean b = factArticlePublishedAgencyDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), agencyDailyEntityMap.values());
boolean b = factArticlePublishedAgencyDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), agencyDailyEntityMap.values());
});
}
/**
@ -502,6 +527,9 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
case ProjectConstant.PUBLISHER_TYPE_DEPT:
convertTagUsedDepartmentDailyEntity(tagUsedDeptDailyMap, articleEntity, tagEntity, dimIdBean);
break;
case ProjectConstant.PUBLISHER_TYPE_AGENCY:
convertTagUsedAgencyDailyEntity(dimAgencyEntity.getPid(), tagUsedAgencyDailyMap, articleEntity, tagEntity, dimIdBean);
break;
}
}
@ -511,7 +539,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
Map<String, FactTagUsedAgencyDailyEntity> finalTagUsedAgencyDailyMap = new HashMap<>();
finalTagUsedAgencyDailyMap.putAll(tagUsedAgencyDailyMap);
for (Map.Entry<String, FactTagUsedAgencyDailyEntity> entry : tagUsedAgencyDailyMap.entrySet()) {
String agencyId = entry.getKey();
String agencyId = entry.getKey().split(StrConstant.UNDER_LINE)[0];
FactTagUsedAgencyDailyEntity currentEntity = entry.getValue();
DimAgencyEntity dimAgencyEntity = dimAgencyEntityMap.get(currentEntity.getAgencyId());
if (dimAgencyEntity == null) {
@ -616,7 +644,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
List<FactTagUsedDepartmentMonthlyEntity> gridMonthlyList = ConvertUtils.sourceToTarget(deptDailyList, FactTagUsedDepartmentMonthlyEntity.class);
factTagUsedDepartmentMonthlyService.deleteAndInsertByMonthId(customerId, monthId, gridMonthlyList);
}
List<FactTagUsedGridDailyEntity> agencyDailyList = factTagUsedAgencyDailyService.getTagUsedCountByMonth(customerId, monthId);
List<FactTagUsedAgencyDailyEntity> agencyDailyList = factTagUsedAgencyDailyService.getTagUsedCountByMonth(customerId, monthId);
if (!CollectionUtils.isEmpty(agencyDailyList)) {
List<FactTagUsedAgencyMonthlyEntity> agencyMonthlyList = ConvertUtils.sourceToTarget(agencyDailyList, FactTagUsedAgencyMonthlyEntity.class);
factTagUsedAgencyMonthlyService.deleteAndInsertByMonthId(customerId, monthId, (agencyMonthlyList));
@ -923,15 +951,15 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
}
private void convertTagUsedAgencyDailyEntity(String pid, Map<String, FactTagUsedAgencyDailyEntity> result, ArticleEntity articleEntity, ArticleTagsEntity tagEntity, DimIdGenerator.DimIdBean dimIdBean) {
String publisherId = articleEntity.getPublisherId();
String agencyId = articleEntity.getOrgId();
String tagId = tagEntity.getTagId();
String key = publisherId.concat(StrConstant.UNDER_LINE).concat(tagId);
String key = agencyId.concat(StrConstant.UNDER_LINE).concat(tagId);
FactTagUsedAgencyDailyEntity entity = result.get(key);
if (entity == null) {
entity = ConvertUtils.sourceToTarget(dimIdBean, FactTagUsedAgencyDailyEntity.class);
entity.setPid(pid);
entity.setCustomerId(articleEntity.getCustomerId());
entity.setAgencyId(publisherId);
entity.setAgencyId(agencyId);
entity.setTagId(tagId);
entity.setTagName(tagEntity.getTagName());
entity.setUsedCount(1);

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactTagUsedAgencyDailyService.java

@ -46,5 +46,5 @@ public interface FactTagUsedAgencyDailyService extends BaseService<FactTagUsedAg
* @param monthId
* @return
*/
List<FactTagUsedGridDailyEntity> getTagUsedCountByMonth(String customerId, String monthId);
List<FactTagUsedAgencyDailyEntity> getTagUsedCountByMonth(String customerId, String monthId);
}

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactTagUsedAgencyDailyServiceImpl.java

@ -56,7 +56,7 @@ public class FactTagUsedAgencyDailyServiceImpl extends BaseServiceImpl<FactTagUs
}
@Override
public List<FactTagUsedGridDailyEntity> getTagUsedCountByMonth(String customerId, String monthId) {
public List<FactTagUsedAgencyDailyEntity> getTagUsedCountByMonth(String customerId, String monthId) {
if (StringUtils.isBlank(customerId) || StringUtils.isBlank(monthId)){
throw new RenException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(),EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getMsg());
}

120
epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/data_statistical.sql

@ -3,17 +3,17 @@
/*
Navicat Premium Data Transfer
Source Server : localhost
Source Server : 亿
Source Server Type : MySQL
Source Server Version : 50720
Source Host : localhost:3306
Source Schema : pd
Source Server Version : 50728
Source Host : 192.168.1.130:3306
Source Schema : epmet_data_statistical
Target Server Type : MySQL
Target Server Version : 50720
Target Server Version : 50728
File Encoding : 65001
Date: 16/06/2020 18:04:53
Date: 22/06/2020 16:40:46
*/
SET NAMES utf8mb4;
@ -44,10 +44,6 @@ CREATE TABLE `fact_article_published_agency_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章发布数量【机关】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_article_published_agency_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_article_published_department_daily
-- ----------------------------
@ -73,10 +69,6 @@ CREATE TABLE `fact_article_published_department_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章发布数量【部门】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_article_published_department_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_article_published_grid_daily
-- ----------------------------
@ -102,10 +94,6 @@ CREATE TABLE `fact_article_published_grid_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章发布数量【网格】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_article_published_grid_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_agency_daily
-- ----------------------------
@ -132,10 +120,6 @@ CREATE TABLE `fact_tag_used_agency_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【机关】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_agency_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_agency_monthly
-- ----------------------------
@ -149,6 +133,8 @@ CREATE TABLE `fact_tag_used_agency_monthly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`USED_COUNT` int(11) NULL DEFAULT NULL COMMENT '标签使用次数 标签的使用次数',
`MONTH_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '月份ID 月份ID eg:202006 = 2020年6月、202007 = 2020年7月',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -158,10 +144,6 @@ CREATE TABLE `fact_tag_used_agency_monthly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【机关】月统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_agency_monthly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_agency_quarterly
-- ----------------------------
@ -175,6 +157,7 @@ CREATE TABLE `fact_tag_used_agency_quarterly` (
`TAG_NAME` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`USED_COUNT` int(11) NULL DEFAULT NULL COMMENT '标签使用次数 标签的使用次数',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -184,10 +167,6 @@ CREATE TABLE `fact_tag_used_agency_quarterly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【机关】季度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_agency_quarterly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_agency_yearly
-- ----------------------------
@ -210,10 +189,6 @@ CREATE TABLE `fact_tag_used_agency_yearly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【机关】年度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_agency_yearly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_department_daily
-- ----------------------------
@ -241,10 +216,6 @@ CREATE TABLE `fact_tag_used_department_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【部门】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_department_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_department_monthly
-- ----------------------------
@ -258,6 +229,8 @@ CREATE TABLE `fact_tag_used_department_monthly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`USED_COUNT` int(11) NULL DEFAULT NULL COMMENT '标签使用次数 标签的使用次数',
`MONTH_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '月份ID 月份ID eg:202006 = 2020年6月、202007 = 2020年7月',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -267,10 +240,6 @@ CREATE TABLE `fact_tag_used_department_monthly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【部门】月统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_department_monthly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_department_quarterly
-- ----------------------------
@ -284,6 +253,7 @@ CREATE TABLE `fact_tag_used_department_quarterly` (
`TAG_NAME` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`USED_COUNT` int(11) NULL DEFAULT NULL COMMENT '标签使用次数 标签的使用次数',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -293,10 +263,6 @@ CREATE TABLE `fact_tag_used_department_quarterly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【部门】季度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_department_quarterly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_department_yearly
-- ----------------------------
@ -319,10 +285,6 @@ CREATE TABLE `fact_tag_used_department_yearly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【部门】年度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_department_yearly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_grid_daily
-- ----------------------------
@ -349,10 +311,6 @@ CREATE TABLE `fact_tag_used_grid_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【网格】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_grid_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_grid_monthly
-- ----------------------------
@ -366,6 +324,8 @@ CREATE TABLE `fact_tag_used_grid_monthly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`USED_COUNT` int(11) NULL DEFAULT NULL COMMENT '标签使用次数 标签的使用次数',
`MONTH_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '月份ID 月份ID eg:2020-06 = 2020年6月、2020-07 = 2020年7月',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -375,10 +335,6 @@ CREATE TABLE `fact_tag_used_grid_monthly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【网格】月统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_grid_monthly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_grid_quarterly
-- ----------------------------
@ -392,6 +348,7 @@ CREATE TABLE `fact_tag_used_grid_quarterly` (
`TAG_NAME` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`USED_COUNT` int(11) NULL DEFAULT NULL COMMENT '标签使用次数 标签的使用次数',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -401,10 +358,6 @@ CREATE TABLE `fact_tag_used_grid_quarterly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【网格】季度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_grid_quarterly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_used_grid_yearly
-- ----------------------------
@ -427,10 +380,6 @@ CREATE TABLE `fact_tag_used_grid_yearly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '标签【网格】年度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_used_grid_yearly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_agency_daily
-- ----------------------------
@ -457,10 +406,6 @@ CREATE TABLE `fact_tag_viewed_agency_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【机关】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_agency_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_agency_monthly
-- ----------------------------
@ -474,6 +419,8 @@ CREATE TABLE `fact_tag_viewed_agency_monthly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`TAG_READ_COUNT` int(11) NULL DEFAULT NULL COMMENT '文章引用标签阅读数 文章引用标签阅读数',
`MONTH_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '月份ID 月份ID eg:2020-06 = 2020年6月、2020-07 = 2020年7月',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -483,10 +430,6 @@ CREATE TABLE `fact_tag_viewed_agency_monthly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【机关】月统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_agency_monthly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_agency_quarterly
-- ----------------------------
@ -500,6 +443,7 @@ CREATE TABLE `fact_tag_viewed_agency_quarterly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`TAG_READ_COUNT` int(11) NULL DEFAULT NULL COMMENT '文章引用标签阅读数 文章引用标签阅读数',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -509,10 +453,6 @@ CREATE TABLE `fact_tag_viewed_agency_quarterly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【机关】季度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_agency_quarterly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_agency_yearly
-- ----------------------------
@ -535,10 +475,6 @@ CREATE TABLE `fact_tag_viewed_agency_yearly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【机关】年度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_agency_yearly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_grid_daily
-- ----------------------------
@ -565,10 +501,6 @@ CREATE TABLE `fact_tag_viewed_grid_daily` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【网格】日统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_grid_daily
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_grid_monthly
-- ----------------------------
@ -582,6 +514,8 @@ CREATE TABLE `fact_tag_viewed_grid_monthly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`TAG_READ_COUNT` int(11) NULL DEFAULT NULL COMMENT '文章引用标签阅读数 文章引用标签阅读数',
`MONTH_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '月份ID 月份ID eg:2020-06 = 2020年6月、2020-07 = 2020年7月',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -591,10 +525,6 @@ CREATE TABLE `fact_tag_viewed_grid_monthly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【网格】月统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_grid_monthly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_grid_quarterly
-- ----------------------------
@ -608,6 +538,7 @@ CREATE TABLE `fact_tag_viewed_grid_quarterly` (
`TAG_NAME` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标签名称 标签名称',
`TAG_READ_COUNT` int(11) NULL DEFAULT NULL COMMENT '文章引用标签阅读数 文章引用标签阅读数',
`QUARTER_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '季度ID 季度ID eg:2020Q1 = 2020年第一季度、2020Q2 = 2020年第二季度、2020Q3 = 2020年第三季度、2020Q4 = 2020年第四季度',
`YEAR_ID` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '年度ID 年度ID eg:2020 = 2020年、2021 = 2021年',
`DEL_FLAG` int(11) NULL DEFAULT 0 COMMENT '删除状态',
`REVISION` int(11) NULL DEFAULT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@ -617,10 +548,6 @@ CREATE TABLE `fact_tag_viewed_grid_quarterly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【网格】季度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_grid_quarterly
-- ----------------------------
-- ----------------------------
-- Table structure for fact_tag_viewed_grid_yearly
-- ----------------------------
@ -643,8 +570,5 @@ CREATE TABLE `fact_tag_viewed_grid_yearly` (
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '文章引用标签阅读数量【网格】年度统计表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of fact_tag_viewed_grid_yearly
-- ----------------------------
SET FOREIGN_KEY_CHECKS = 1;

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactTagUsedAgencyDailyDao.xml

@ -6,7 +6,7 @@
<delete id="deleteByDateId">
DELETE FROM fact_tag_used_agency_daily WHERE CUSTOMER_ID = #{customerId,jdbcType=VARCHAR} AND DATE_ID = #{dateId,jdbcType=VARCHAR}
</delete>
<select id="getTagUsedCountByMonth" resultType="com.epmet.entity.stats.FactTagUsedGridDailyEntity">
<select id="getTagUsedCountByMonth" resultType="com.epmet.entity.stats.FactTagUsedAgencyDailyEntity">
SELECT
CUSTOMER_ID,
PID,

1
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactTagUsedAgencyMonthlyDao.xml

@ -28,6 +28,7 @@
<select id="getTagUsedCountByQuarterId" resultType="com.epmet.entity.stats.FactTagUsedAgencyMonthlyEntity">
SELECT
CUSTOMER_ID,
PID,
AGENCY_ID,
TAG_ID,
TAG_NAME,

18
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsPublicityTaskService.java

@ -30,13 +30,21 @@ public interface StatsPublicityTaskService {
Result tagUsedDailyStatsjob();
/**
* desc: , 统计发表文章最多的分类 包含 机关 部门 网格
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
Result tagUsedMonthlyStatsjob();
/**
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
Result tagUsedQuarterlyStatsjob();
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
@ -53,4 +61,12 @@ public interface StatsPublicityTaskService {
*/
Result tagViewedMonthlyStatsjob();
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
Result tagViewedQuarterlyStatsjob();
}

4
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsGroupServiceImpl.java

@ -2,7 +2,7 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result;
import com.epmet.service.StatsGroupService;
import feign.StatsPublicityFeignClient;
import feign.DataStatisticalOpenFeignClient;
import org.springframework.beans.factory.annotation.Autowired;
/**
@ -12,7 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired;
public class StatsGroupServiceImpl implements StatsGroupService {
@Autowired
private StatsPublicityFeignClient statsPublicityFeignClient;
private DataStatisticalOpenFeignClient statsPublicityFeignClient;
@Override
public Result groupGridDaily() {

45
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsPublicityTaskServiceImpl.java

@ -2,20 +2,17 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result;
import com.epmet.service.StatsPublicityTaskService;
import feign.StatsPublicityFeignClient;
import feign.DataStatisticalOpenFeignClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @Description
* @ClassName IssueVotingDailyStatisticalTaskServiceImpl
* @Auth wangc
* @Date 2020-05-25 09:24
* desc数据统计 任务服务类
*/
@Service
public class StatsPublicityTaskServiceImpl implements StatsPublicityTaskService {
@Autowired
private StatsPublicityFeignClient statsPublicityFeignClient;
private DataStatisticalOpenFeignClient dataStatsOpenFeignClient;
/**
* desc: 统计文章总数及在线文章总数 包含 机关 部门 网格
@ -25,7 +22,7 @@ public class StatsPublicityTaskServiceImpl implements StatsPublicityTaskService
*/
@Override
public Result articleSummaryDailyStatsjob() {
return statsPublicityFeignClient.articleSummaryDailyStatsjob();
return dataStatsOpenFeignClient.articleSummaryDailyStatsjob();
}
/**
@ -37,18 +34,29 @@ public class StatsPublicityTaskServiceImpl implements StatsPublicityTaskService
*/
@Override
public Result tagUsedDailyStatsjob() {
return statsPublicityFeignClient.tagUsedDailyStatsjob();
return dataStatsOpenFeignClient.tagUsedDailyStatsjob();
}
/**
* desc: , 统计发表文章最多的分类 包含 机关 部门 网格
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagUsedMonthlyStatsjob() {
return statsPublicityFeignClient.tagUsedMonthStatsjob();
return dataStatsOpenFeignClient.tagUsedMonthlyStatsjob();
}
/**
* desc: 统计发表文章最多的分类 包含 机关 部门 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagUsedQuarterlyStatsjob() {
return dataStatsOpenFeignClient.tagUsedQuarterlyStatsjob();
}
/**
@ -59,17 +67,28 @@ public class StatsPublicityTaskServiceImpl implements StatsPublicityTaskService
*/
@Override
public Result tagViewedDailyStatsjob() {
return statsPublicityFeignClient.tagViewedDayStatsjob();
return dataStatsOpenFeignClient.tagViewedDailyStatsjob();
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagViewedMonthlyStatsjob() {
return statsPublicityFeignClient.tagViewedMonthStatsjob();
return dataStatsOpenFeignClient.tagViewedMonthlyStatsjob();
}
/**
* desc: 统计阅读最多的标签 包含 机关 网格
*
* @date: 2020/6/22 9:09
* @author: jianjun liu
*/
@Override
public Result tagViewedQuarterlyStatsjob() {
return dataStatsOpenFeignClient.tagViewedQuarterlyStatsjob();
}
}

Loading…
Cancel
Save