Browse Source

宣传能力统计暂存

dev_shibei_match
jianjun 5 years ago
parent
commit
4ca3633f40
  1. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/constant/ProjectConstant.java
  2. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/voice/ArticleDao.java
  3. 8
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsDemoServiceImpl.java
  4. 23
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsPublicityServiceImpl.java
  5. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactArticlePublishedAgencyDailyServiceImpl.java
  6. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/voice/impl/ArticleServiceImpl.java
  7. 8
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/voice/ArticleDao.xml

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/constant/ProjectConstant.java

@ -33,14 +33,14 @@ public interface ProjectConstant {
/**
* 发布单位类型 机关:agency
*/
String PUBLISH_TYPE_AGENCY = "agency";
String PUBLISHER_TYPE_AGENCY = "agency";
/**
* 发布单位类型 部门department
*/
String PUBLISH_TYPE_DEPT = "department";
String PUBLISHER_TYPE_DEPT = "department";
/**
* 发布单位类型 网格grid
*/
String PUBLISH_TYPE_GRID = "grid";
String PUBLISHER_TYPE_GRID = "grid";
}

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/voice/ArticleDao.java

@ -40,8 +40,8 @@ public interface ArticleDao extends BaseDao<ArticleEntity> {
*
* @param customerId
* @param publishDate
* @param publishType
* @param publisherType
* @return
*/
List<ArticleGridPublishedSummaryDTO> getAllPublishedCount(@Param("customerId") String customerId, @Param("publishDate") Date publishDate, @Param("publishType") String publishType);
List<ArticleGridPublishedSummaryDTO> getAllPublishedCount(@Param("customerId") String customerId, @Param("publishDate") Date publishDate, @Param("publisherType") String publisherType);
}

8
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsDemoServiceImpl.java

@ -1,9 +1,7 @@
package com.epmet.service.impl;
import com.epmet.dto.AgencySubTreeDto;
import com.epmet.entity.issue.IssueEntity;
import com.epmet.entity.org.CustomerAgencyEntity;
import com.epmet.service.Issue.DemoIssueService;
import com.epmet.service.StatsDemoService;
import com.epmet.service.org.DemoGovOrgService;
import com.epmet.service.stats.DemoDataStatsService;
@ -23,8 +21,8 @@ public class StatsDemoServiceImpl implements StatsDemoService {
@Autowired
private DemoGovOrgService demoGovOrgService;
@Autowired
private DemoIssueService demoIssueService;
// @Autowired
// private DemoIssueService demoIssueService;
@Autowired
private DemoDataStatsService demoDataStatsService;
@ -32,7 +30,7 @@ public class StatsDemoServiceImpl implements StatsDemoService {
@Override
public void testList() {
List<CustomerAgencyEntity> agencies = demoGovOrgService.listAllEntities();
List<IssueEntity> issues = demoIssueService.listAllEntities();
//List<IssueEntity> issues = demoIssueService.listAllEntities();
System.out.println(666);
}

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

@ -67,8 +67,12 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
@Override
public Boolean publicitySummary(Date statsDate) {
//如果不传时间 则统计数据为今天之前的数据和,否则统计的是截止到传入的日期数据的和
if (statsDate == null) {
statsDate = DateUtils.addDateDays(new Date(), -1);
//当天的凌晨时间 即为今天之前的数据
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;
@ -190,7 +194,7 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
//转换为 需要插入的Entity
Map<String, FactArticlePublishedAgencyDailyEntity> agencyDailyEntityMap = convertAgencyDailyEntity(agencyDTOList, dimIdBean);
//获取当天的业务数据
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllAgencyPublishedCount(customerId,DateUtils.integrate(statsDate,DateUtils.DATE_PATTERN));
List<ArticleGridPublishedSummaryDTO> publishedArticleCount = articleService.getAllAgencyPublishedCount(customerId,statsDate);
if (!CollectionUtils.isEmpty(publishedArticleCount)) {
for (ArticleGridPublishedSummaryDTO summaryDTO : publishedArticleCount) {
@ -215,21 +219,24 @@ public class StatsPublicityServiceImpl implements StatsPublicityService {
log.error("publicitySummary bizData agencyId:{} not exist in dimAgency", agencyId);
continue;
}
setData2ParentAgency(agencySummaryMap, summary);
setData2ParentAgency(agencyDailyEntityMap,summary, dailyEntity);
}
}
boolean b = factArticlePublishedAgencyDailyService.deleteAndInsertBatch(customerId, dimIdBean.getDateId(), agencyDailyEntityMap.values());
}
private void setData2ParentAgency(Map<String, ArticleGridPublishedSummaryDTO> agencySummaryMap, ArticleGridPublishedSummaryDTO summary) {
private void setData2ParentAgency(Map<String, FactArticlePublishedAgencyDailyEntity> agencyDailyEntityMap, ArticleGridPublishedSummaryDTO agencySummary, FactArticlePublishedAgencyDailyEntity summary) {
String pid = summary.getPid();
ArticleGridPublishedSummaryDTO parentAgency = agencySummaryMap.get(pid);
parentAgency.setArticleTotalCount(parentAgency.getArticleTotalCount()+summary.getArticleTotalCount());
parentAgency.setArticlePublishedCount(parentAgency.getArticlePublishedCount()+summary.getArticlePublishedCount());
FactArticlePublishedAgencyDailyEntity parentAgency = agencyDailyEntityMap.get(pid);
if (parentAgency == null){
return;
}
parentAgency.setArticleTotalCount(parentAgency.getArticleTotalCount()+agencySummary.getArticleTotalCount());
parentAgency.setArticlePublishedCount(parentAgency.getArticlePublishedCount()+agencySummary.getArticlePublishedCount());
pid = parentAgency.getPid();
if (!NumConstant.ZERO_STR.equals(pid)){
setData2ParentAgency(agencySummaryMap,parentAgency);
setData2ParentAgency(agencyDailyEntityMap, agencySummary,parentAgency);
}
}

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

@ -23,6 +23,7 @@ import com.epmet.entity.stats.FactArticlePublishedAgencyDailyEntity;
import com.epmet.service.stats.FactArticlePublishedAgencyDailyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
@ -38,6 +39,7 @@ public class FactArticlePublishedAgencyDailyServiceImpl extends BaseServiceImpl<
@Override
@Transactional(rollbackFor = Exception.class)
public boolean deleteAndInsertBatch(String customerId, String dateId, Collection<FactArticlePublishedAgencyDailyEntity> values) {
int i = baseDao.deleteByDateId(customerId, dateId);
log.debug("deleteAndInsertBatch delete customerId:{},rows:{}", customerId,i);

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/voice/impl/ArticleServiceImpl.java

@ -48,7 +48,7 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
if (StringUtils.isBlank(customerId) || publishDate == null){
throw new RenException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(),EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getMsg());
}
return baseDao.getAllPublishedCount(customerId,publishDate, ProjectConstant.PUBLISH_TYPE_DEPT);
return baseDao.getAllPublishedCount(customerId,publishDate, ProjectConstant.PUBLISHER_TYPE_DEPT);
}
@Override
@ -56,7 +56,7 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
if (StringUtils.isBlank(customerId) || publishDate == null){
throw new RenException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(),EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getMsg());
}
return baseDao.getAllPublishedCount(customerId,publishDate, ProjectConstant.PUBLISH_TYPE_AGENCY);
return baseDao.getAllPublishedCount(customerId,publishDate, ProjectConstant.PUBLISHER_TYPE_AGENCY);
}
@Override
@ -64,6 +64,6 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
if (StringUtils.isBlank(customerId) || publishDate == null){
throw new RenException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode(),EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getMsg());
}
return baseDao.getAllPublishedCount(customerId,publishDate, ProjectConstant.PUBLISH_TYPE_GRID);
return baseDao.getAllPublishedCount(customerId,publishDate, ProjectConstant.PUBLISHER_TYPE_GRID);
}
}

8
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/voice/ArticleDao.xml

@ -34,14 +34,14 @@
ORG_ID AS agencyId,
PUBLISHER_ID,
count(ID) articleTotalCount,
sum( CASE PUBLISH_STATUS WHEN 'published' THEN 1 ELSE 0 END ) articlePublishedCount
sum( CASE STATUS_FLAG WHEN 'published' THEN 1 ELSE 0 END ) articlePublishedCount
FROM
article_publish_range
article
WHERE
DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId,jdbcType=VARCHAR}
AND PUBLISH_TYPE = #{publishType,jdbcType=VARCHAR}
AND PUBLISH_DATE <![CDATA[ <#{publishType,jdbcType=TIMESTAMP}]]>
AND PUBLISHER_TYPE = #{publisherType,jdbcType=VARCHAR}
AND PUBLISH_DATE <![CDATA[ <#{publishDate,jdbcType=TIMESTAMP}]]>
GROUP BY
CUSTOMER_ID,
PUBLISHER_ID

Loading…
Cancel
Save