Browse Source

Merge remote-tracking branch 'origin/dev_data_stats' into dev_data_stats

dev_shibei_match
yinzuomei 5 years ago
parent
commit
b80b37bb06
  1. 2
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/group/constant/GroupConstant.java
  2. 2
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/constant/ProjectConstant.java
  3. 2
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/constant/TopicConstant.java
  4. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/controller/project/ProjectController.java
  5. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java
  6. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java
  7. 24
      epmet-module/data-report/data-report-server/src/main/resources/mapper/topic/TopicDao.xml
  8. 7
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsProjectServiceImpl.java
  9. 1
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java
  10. 5
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java
  11. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/LastExecRecordServiceImpl.java
  12. 1
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java
  13. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java
  14. 399
      epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/data_statistical.sql

2
epmet-module/data-report/data-report-client/src/main/java/com/epmet/group/constant/GroupConstant.java

@ -7,6 +7,6 @@ package com.epmet.group.constant;
public interface GroupConstant {
String MONTH = "month";
String DATE = "date";
String DATE = "day";
}

2
epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/constant/ProjectConstant.java

@ -6,7 +6,7 @@ package com.epmet.project.constant;
**/
public interface ProjectConstant {
String DATE = "date";
String DAY = "day";
String MONTH = "month";
/**

2
epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/constant/TopicConstant.java

@ -26,5 +26,5 @@ public interface TopicConstant {
String SHIFTED = "已转议题";
String MONTH = "month";
String DATE = "date";
String DATE = "day";
}

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/controller/project/ProjectController.java

@ -72,7 +72,7 @@ public class ProjectController {
@PostMapping("incrtrend")
public Result<List<ProjectIncrTrendResultDTO>> incrTrend(@LoginUser TokenDto tokenDto, @RequestBody ProjectIncrTrendFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, ProjectIncrTrendFormDTO.ProjectIncr.class);
if (!ProjectConstant.DATE.equals(formDTO.getType()) && !ProjectConstant.MONTH.equals(formDTO.getType())) {
if (!ProjectConstant.DAY.equals(formDTO.getType()) && !ProjectConstant.MONTH.equals(formDTO.getType())) {
throw new RenException(ProjectConstant.TYPE_EXCEPTION);
}
return new Result<List<ProjectIncrTrendResultDTO>>().ok(projectService.getProjectIncrTrend(tokenDto, formDTO));

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java

@ -133,7 +133,7 @@ public class ProjectServiceImpl implements ProjectService {
String agencyId = getLoginUserDetails(tokenDto);
//2:查询机关过去九十天日统计数据(sql降序取前九十条)
if (ProjectConstant.DATE.equals(formDTO.getType())) {
if (ProjectConstant.DAY.equals(formDTO.getType())) {
resultList = projectDao.selectIncrTrendDaily(agencyId);
}

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java

@ -160,7 +160,7 @@ public class TopicServiceImpl implements TopicService {
TopicShiftedCountResultDTO shiftedCount = topicDao.getShiftedCount(agencyId);
Integer collect = topicSummaryInfo.stream().collect(Collectors.summingInt(TopicSummaryInfoResultDTO::getValue));
String ratio;
ratio = collect == NumConstant.ZERO ? NumConstant.ZERO + TopicConstant.RATIO : (shiftedCount.getShiftedIssueCount() / collect) * NumConstant.ONE_HUNDRED + TopicConstant.RATIO;
ratio = collect == NumConstant.ZERO ? NumConstant.ZERO + TopicConstant.RATIO : ((float)shiftedCount.getShiftedIssueCount() / (float)collect) * NumConstant.ONE_HUNDRED + TopicConstant.RATIO;
TopicSummaryInfoResultDTO result = new TopicSummaryInfoResultDTO();
result.setName(TopicConstant.SHIFTED);
result.setRatio(ratio);

24
epmet-module/data-report/data-report-server/src/main/resources/mapper/topic/TopicDao.xml

@ -13,10 +13,9 @@
WHERE
del_flag = '0'
AND agency_id = #{agencyId}
GROUP BY
topic_status_id
ORDER BY
date_id DESC
LIMIT 3
</select>
<!--获取机关下已转议题数量-->
@ -42,16 +41,15 @@
WHEN topic_status_id = 'hidden' THEN '已屏蔽'
WHEN topic_status_id = 'closed' THEN '已关闭'
ELSE '无' END) AS name,
CONCAT(topic_proportion,'%') AS ratio
CONCAT(topic_proportion * 100,'%') AS ratio
FROM
fact_topic_status_agency_daily
WHERE
del_flag = '0'
AND agency_id = #{agencyId}
GROUP BY
topic_status_id
ORDER BY
date_id DESC
LIMIT 3
</select>
<!--根据当前机关判断是否有下级机关-->
@ -80,10 +78,7 @@
LEFT JOIN dim_agency da ON da.id = ftsad.agency_id AND da.del_flag = '0'
WHERE
ftsad.del_flag = '0'
GROUP BY
ftsad.topic_status_id
ORDER BY
ftsad.date_id DESC
AND ftsad.date_id = (SELECT MAX(date_id) AS dateId FROM fact_topic_status_agency_daily WHERE del_flag = '0')
</select>
<!--获取最后一天的所有话题已转议题数据-->
@ -98,8 +93,7 @@
LEFT JOIN dim_agency da ON da.id = ftiad.agency_id AND da.del_flag = '0'
WHERE
ftiad.del_flag = '0'
GROUP BY ftiad.agency_id
ORDER BY ftiad.date_id DESC
AND ftiad.date_id = (SELECT MAX(date_id) AS dateId FROM fact_topic_issue_agency_daily WHERE del_flag = '0')
</select>
<!--校验机关下是否存在直属网格-->
@ -128,10 +122,7 @@
LEFT JOIN dim_grid dg ON dg.id = ftsad.grid_id AND dg.del_flag = '0'
WHERE
ftsad.del_flag = '0'
GROUP BY
ftsad.topic_status_id
ORDER BY
ftsad.date_id DESC
AND ftsad.date_id = (SELECT MAX(date_id) AS dateId FROM fact_topic_status_grid_daily WHERE del_flag = '0')
</select>
<!--获取最后一天的所有话题已转议题数据-->
@ -146,8 +137,7 @@
LEFT JOIN dim_grid da ON da.id = ftiad.grid_id AND da.del_flag = '0'
WHERE
ftiad.del_flag = '0'
GROUP BY ftiad.grid_id
ORDER BY ftiad.date_id DESC
AND ftiad.date_id = (SELECT MAX(date_id) AS dateId FROM fact_topic_issue_grid_daily WHERE del_flag = '0')
</select>
<!--话题日增长-->

7
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsProjectServiceImpl.java

@ -71,6 +71,7 @@ public class StatsProjectServiceImpl implements StatsProjectService {
if (!CollectionUtils.isEmpty(customerIdList)) {
for (String customerId : customerIdList) {
try {
log.debug("for循环统计机关-项目-日月数据,当前统计的客户Id:" + customerId);
//遍历统计每一个客户数据
customerAgencyStats(customerId);
} catch (Exception e) {
@ -92,11 +93,13 @@ public class StatsProjectServiceImpl implements StatsProjectService {
DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(date);
//2:根据客户Id查询机关维度表数据
log.debug("StatsProjectServiceImpl.customerAgencyStats-根据客户Id查询机关维度数据,当前客户Id:" + customerId);
DimAgencyDTO dimAgencyDTO = new DimAgencyDTO();
dimAgencyDTO.setCustomerId(customerId);
List<DimAgencyDTO> dimAgencyList = dimAgencyService.getDimAgencyList(dimAgencyDTO);
//3:根据客户Id查询项目业务表已结案数据(查询传入日期及之前的数据)
log.debug("StatsProjectServiceImpl.customerAgencyStats-根据客户Id查询项目业务表结案数据,当前客户Id:"+customerId);
ProjectEntity projectEntity = new ProjectEntity();
projectEntity.setCustomerId(customerId);
projectEntity.setCreatedTime(date);
@ -104,15 +107,18 @@ public class StatsProjectServiceImpl implements StatsProjectService {
List<ProjectEntity> projectList = projectService.getProjectList(projectEntity);
//4:查询项目处理进展表中有效数据(创建日期截取yyyy-mm-dd格式字段值)(查询传入日期及之前的数据)
log.debug("StatsProjectServiceImpl.customerAgencyStats-根据客户Id查询项目进展表业务数据,当前客户Id:"+customerId);
List<ProjectProcessEntity> processList = projectProcessService.getProcessList(projectEntity);
//5:机关层级日月统计
if (null != dimAgencyList && dimAgencyList.size() > NumConstant.ZERO) {
//5.1:执行机关日数据统计
log.debug("StatsProjectServiceImpl.customerAgencyStats-开始执行机关日统计方法,方法名:agencyDateProjectStats,客户Id:"+customerId);
agencyDateProjectStats(customerId, dimId, dimAgencyList, projectList, processList);
//5.2:执行机关月数据统计
//if (Calendar.getInstance().get(Calendar.DATE) == 1) {
log.debug("StatsProjectServiceImpl.customerAgencyStats-开始执行机关月统计方法,方法名:agencyMonthProjectStats,客户Id:"+customerId);
agencyMonthProjectStats(customerId, dimId, dimAgencyList);
//}
}
@ -392,6 +398,7 @@ public class StatsProjectServiceImpl implements StatsProjectService {
}
}
/**
* @param customerId
* @return

1
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java

@ -64,6 +64,7 @@ public class StatsTopicServiceImpl implements StatsTopicService {
//1.初始化时间参数
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.add(Calendar.DATE, NumConstant.ONE_NEG);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);

5
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java

@ -61,7 +61,8 @@ public class StatsUserServiceImpl implements StatsUserService {
//1.初始化时间参数
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
//获取今日的零点
//获取当日的零点
calendar.add(Calendar.DATE, NumConstant.ONE_NEG);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
@ -71,7 +72,7 @@ public class StatsUserServiceImpl implements StatsUserService {
//3.初始化机关维度
List<AgencySubTreeDto> agencies = dimAgencyService.getAllAgency(customerId);
List<AgencySubTreeDto> topAgencies = dimAgencyService.getTopAgency(customerId);
//List<AgencySubTreeDto> topAgencies = dimAgencyService.getTopAgency(customerId);
//4.计算机关统计数据、生成唯一性统计数据
UserStatisticalData agencyData = userService.traverseAgencyUser(agencies,date,timeDimension);

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

@ -25,9 +25,7 @@ public class LastExecRecordServiceImpl implements LastExecRecordService {
*/
@Override
public LastExecRecordEntity createLastExecRecord(String statsSubject) {
Date now = new Date();
LastExecRecordEntity entity = new LastExecRecordEntity();
entity.setExecTime(now);
entity.setSubject(statsSubject);
entity.setCreatedBy(RobotConstant.DIMENSION_ROBOT);
entity.setUpdatedBy(RobotConstant.DIMENSION_ROBOT);

1
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java

@ -169,6 +169,7 @@ public class TopicServiceImpl implements TopicService {
Boolean isMonthEnd = false;
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
//前一天
calendar.add(Calendar.DATE, NumConstant.ONE_NEG);
Date targetDateCheck = null == targetDate ? calendar.getTime() : targetDate;

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java

@ -284,8 +284,8 @@ public class UserServiceImpl implements UserService {
partiAgencyD.setWarmIncr(warmPartiData.getIncr());
partiAgencyD.setPartymemberIncr(partyPartiData.getIncr());
partiAgencyD.setResiProportion(new BigDecimal(NumConstant.ONE));
partiAgencyD.setPartymemberProportion(null == partiData.getTotal() || partiData.getTotal() == NumConstant.ZERO ? BigDecimal.ZERO : new BigDecimal(numberFormat.format((float)partyPartiData.getTotal()/(float)partiData.getIncr() )));
partiAgencyD.setWarmHeartedProportion(null == partiData.getTotal() || partiData.getTotal() == NumConstant.ZERO ? BigDecimal.ZERO : new BigDecimal(numberFormat.format((float)warmPartiData.getTotal()/(float)partiData.getIncr() )));
partiAgencyD.setPartymemberProportion(null == partiData.getTotal() || partiData.getTotal() == NumConstant.ZERO ? BigDecimal.ZERO : new BigDecimal(numberFormat.format((float)partyPartiData.getTotal()/(float)partiData.getTotal() )));
partiAgencyD.setWarmHeartedProportion(null == partiData.getTotal() || partiData.getTotal() == NumConstant.ZERO ? BigDecimal.ZERO : new BigDecimal(numberFormat.format((float)warmPartiData.getTotal()/(float)partiData.getTotal() )));
partiAgencyD.setCreatedBy(ModuleConstant.CREATED_BY_STATISTICAL_ROBOT);
if(null != dataPacket.getPartiAgencyDailyList()){

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

@ -572,5 +572,404 @@ 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;
-- ----------------------------
-- Table structure for fact_group_agency_monthly
-- ----------------------------
DROP TABLE IF EXISTS fact_group_agency_monthly;;/*SkipError*/
CREATE TABLE `fact_group_agency_monthly` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`PID` varchar(64) DEFAULT NULL COMMENT '父级机关ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '统计月份ID 关联月份dim表',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '统计季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '统计年份ID',
`GRID_TOTAL` int(11) DEFAULT NULL COMMENT '网格数 截至到月末的机关下网格数',
`GROUP_TOTAL` int(11) DEFAULT NULL COMMENT '小组数 截止到月末的新增数(该月内所有的新增数字之和)',
`GROUP_MEMBER_TOTAL` int(11) DEFAULT NULL COMMENT '机关下网格组内总人数 不去重',
`GROUP_MEMBER_AVG_COUNT` int(11) DEFAULT NULL COMMENT '小组平均人数 月末一天的平均数',
`GROUP_MEDIAN` int(11) DEFAULT NULL COMMENT '小组中位数 月末一天的中位数(人)',
`GROUP_INCR` int(11) DEFAULT NULL COMMENT '小组增量',
`GROUP_MEMBER_MAX_COUNT` int(11) DEFAULT NULL COMMENT '小组成员最大数',
`MAX_MEMBER_GROUP_ID` varchar(32) DEFAULT NULL COMMENT '成员最多小组ID',
`GROUP_MEMBER_MIN_COUNT` int(11) DEFAULT NULL COMMENT '小组成员最小数',
`MIN_MEMBER_GROUP_ID` varchar(32) DEFAULT NULL COMMENT '成员最少小组ID',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识 未删除:0,已删除:1',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='组-机关月统计数据';
-- ----------------------------
-- Table structure for fact_group_grid_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_group_grid_daily;;/*SkipError*/
CREATE TABLE `fact_group_grid_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机构ID 关联机关dim表',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '统计日期 关联日期dim表',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月份ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`GRID_TOTAL` int(11) DEFAULT '0' COMMENT '网格数 当前网格下的网格数',
`GROUP_TOTAL` int(11) DEFAULT '0' COMMENT '小组数',
`GROUP_MEMBER_TOTAL` int(11) DEFAULT '0' COMMENT '网格下所有组内总人数 不去重',
`GROUP_MEMBER_AVG_COUNT` int(11) DEFAULT '0' COMMENT '小组平均人数',
`GROUP_MEDIAN` int(11) DEFAULT '0' COMMENT '小组中位数 截至统计日期,小组人数依次由小到大排开取中位数',
`GROUP_INCR` int(11) DEFAULT '0' COMMENT '小组增量',
`GROUP_MEMBER_MAX_COUNT` int(11) DEFAULT NULL COMMENT '小组成员最大数',
`MAX_MEMBER_GROUP_ID` varchar(32) DEFAULT NULL COMMENT '最多成员小组ID',
`GROUP_MEMBER_MIN_COUNT` int(11) DEFAULT NULL COMMENT '小组成员最小数',
`MIN_MEMBER_GROUP_ID` varchar(32) DEFAULT NULL COMMENT '最少成员小组ID',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识 未删除:0,已删除:1',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='组-网格日统计数据';
-- ----------------------------
-- Table structure for fact_group_agency_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_group_agency_daily;;/*SkipError*/
CREATE TABLE `fact_group_agency_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(32) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机构ID',
`PID` varchar(64) DEFAULT NULL COMMENT '父级机关ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '统计日期 关联日期dim表',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`GRID_TOTAL` int(11) DEFAULT '0' COMMENT '网格总数 截至统计日期',
`GROUP_TOTAL_COUNT` int(11) DEFAULT '0' COMMENT '网格小组数(包含所有下级机关的网格小组) 截至统计日期',
`GROUP_MEMBER_TOTAL_COUNT` int(11) DEFAULT '0' COMMENT '机关下网格小组人数总计 不去重',
`GROUP_MEMBER_AVG_COUNT` int(11) DEFAULT '0' COMMENT '小组平均人数 截至统计日期',
`GROUP_MEDIAN` int(11) DEFAULT '0' COMMENT '小组中位数 截至统计日期,小组人数依次由小到大排开取中位数',
`GROUP_INCR` int(11) DEFAULT '0' COMMENT '当天小组增量',
`GROUP_MEMBER_MAX_COUNT` varchar(32) DEFAULT NULL COMMENT '小组最大成员数',
`MAX_MEMBER_GROUP_ID` varchar(32) DEFAULT NULL COMMENT '最多成员小组ID',
`GROUP_MEMBER_MIN_COUNT` varchar(32) DEFAULT NULL COMMENT '小组最小成员数',
`MIN_MEMBER_GROUP_ID` varchar(32) DEFAULT NULL COMMENT '最少成员小组ID',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识 未删除:0,已删除:1',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='组-机关日统计数据';
-- ----------------------------
-- Table structure for fact_topic_status_agency_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_status_agency_daily;;/*SkipError*/
CREATE TABLE `fact_topic_status_agency_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机构ID 关联机关dm表',
`PID` varchar(64) NOT NULL COMMENT '父级机关ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '统计日期 关联日期dm表',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`TOPIC_STATUS_ID` varchar(32) NOT NULL COMMENT '话题状态ID 关联dim_topic_status表\n讨论中 discussing\n已屏蔽 hidden\n已关闭 closed\n已转项目 shift_project',
`TOPIC_COUNT` int(11) NOT NULL DEFAULT '0' COMMENT '话题数量 指定状态的话题数量',
`TOPIC_PROPORTION` decimal(4,2) NOT NULL COMMENT '话题状态百分比 指定状态话题数/话题总数\n总数在topic_total_agency_daily中',
`TOPIC_INCREMENT` int(11) NOT NULL DEFAULT '0' COMMENT '话题增量 单位时间内的状态话题的增加数',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='状态话题-机关日统计数据表';
-- ----------------------------
-- Table structure for fact_topic_status_agency_monthly
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_status_agency_monthly;;/*SkipError*/
CREATE TABLE `fact_topic_status_agency_monthly` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机构ID 关联机关dm表',
`PID` varchar(64) DEFAULT NULL COMMENT '父级机关ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '统计月份 关联月度dm表',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID 关联季度dm表',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID 关联年度dm表',
`TOPIC_STATUS_ID` varchar(32) NOT NULL COMMENT '话题状态 讨论中 discussing\n已屏蔽 hidden\n已关闭 closed\n已转项目 shift_project',
`TOPIC_COUNT` int(11) NOT NULL DEFAULT '0' COMMENT '话题数量',
`TOPIC_PROPORTION` decimal(4,2) NOT NULL COMMENT '话题状态占比 月末一天 \n指定状态话题数/话题总数\n总数在topic_total_agency_daily中',
`TOPIC_INCR` int(11) NOT NULL DEFAULT '0' COMMENT '话题增量 单位时间内的话题状态增加数',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='状态话题-机关月统计数据表';
-- ----------------------------
-- Table structure for fact_topic_status_grid_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_status_grid_daily;;/*SkipError*/
CREATE TABLE `fact_topic_status_grid_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格ID 关联网格dm表',
`DATE_ID` varchar(32) NOT NULL COMMENT '日期ID',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`TOPIC_STATUS_ID` varchar(32) DEFAULT NULL COMMENT '话题状态ID 讨论中 discussing\n已屏蔽 hidden\n已关闭 closed\n已转项目 shift_project',
`TOPIC_COUNT` int(11) DEFAULT '0' COMMENT '话题数量',
`TOPIC_PROPORTION` decimal(4,2) DEFAULT NULL COMMENT '话题状态占比 指定状态话题数/话题总数\n总数在topic_total_grid_daily中',
`TOPIC_INCREMENT` int(11) DEFAULT '0' COMMENT '话题增量',
`DEL_FLAG` varchar(32) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='状态话题-网格日统计数据表';
-- ----------------------------
-- Table structure for fact_topic_total_agency_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_total_agency_daily;;/*SkipError*/
CREATE TABLE `fact_topic_total_agency_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`PID` varchar(64) DEFAULT NULL COMMENT '父级机关ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '统计日期 关联日期dm表',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`TOPIC_TOTAL` int(11) DEFAULT '0' COMMENT '话题总数',
`TOPIC_INCR` int(11) DEFAULT '0' COMMENT '话题增量',
`HIDDEN_TOTAL_COUNT` int(11) DEFAULT '0' COMMENT '屏蔽话题数',
`ISSUE_TOTAL_COUNT` int(11) DEFAULT '0' COMMENT '已转议题数',
`DEL_FLAG` varchar(32) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='话题总数-机关日统计表';
-- ----------------------------
-- Table structure for fact_topic_total_grid_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_total_grid_daily;;/*SkipError*/
CREATE TABLE `fact_topic_total_grid_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) DEFAULT NULL COMMENT '机关ID',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '统计日期 关联日期dm表',
`WEEK_ID` varchar(32) DEFAULT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) DEFAULT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) DEFAULT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) DEFAULT NULL COMMENT '年ID',
`TOPIC_TOTAL` int(11) DEFAULT NULL COMMENT '话题总量',
`TOPIC_INCR` int(11) DEFAULT NULL COMMENT '话题增量',
`HIDDEN_TOTAL_COUNT` int(11) DEFAULT NULL COMMENT '屏蔽话题数量',
`ISSUE_TOTAL_COUNT` int(11) DEFAULT NULL COMMENT '已转议题数量',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL DEFAULT '0' COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL DEFAULT '0' COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='话题总数-网格日统计表';
-- ----------------------------
-- Table structure for fact_topic_issue_agency_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_issue_agency_daily;;/*SkipError*/
CREATE TABLE `fact_topic_issue_agency_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL DEFAULT '' COMMENT '客户Id',
`PID` varchar(64) DEFAULT NULL COMMENT '父级机关ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '日期ID',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`ISSUE_TOTAL` int(11) DEFAULT '0' COMMENT '已转议题数量',
`ISSUE_INCR` int(11) DEFAULT '0' COMMENT '已转议题当日增量',
`DEL_FLAG` varchar(32) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='转议题话题-机关日统计数据表';
-- ----------------------------
-- Table structure for fact_topic_issue_agency_monthly
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_issue_agency_monthly;;/*SkipError*/
CREATE TABLE `fact_topic_issue_agency_monthly` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`PID` varchar(64) DEFAULT NULL COMMENT '父级ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`ISSUE_TOTAL` int(11) DEFAULT '0' COMMENT '已转议题总量',
`ISSUE_INCR` int(11) DEFAULT '0' COMMENT '已转议题增量',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='转议题话题-机关月统计表';
-- ----------------------------
-- Table structure for fact_topic_issue_grid_daily
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_issue_grid_daily;;/*SkipError*/
CREATE TABLE `fact_topic_issue_grid_daily` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格ID',
`DATE_ID` varchar(32) NOT NULL COMMENT '日期ID',
`WEEK_ID` varchar(32) NOT NULL COMMENT '周ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`ISSUE_INCR` int(11) DEFAULT '0' COMMENT '新增转议题数',
`ISSUE_TOTAL` int(11) DEFAULT '0' COMMENT '转议题总数',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`,`CUSTOMER_ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='转议题话题-网格日统计表';
-- ----------------------------
-- Table structure for fact_topic_issue_grid_monthly
-- ----------------------------
DROP TABLE IF EXISTS fact_topic_issue_grid_monthly;;/*SkipError*/
CREATE TABLE `fact_topic_issue_grid_monthly` (
`ID` varchar(64) NOT NULL COMMENT '唯一标识',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
`AGENCY_ID` varchar(64) NOT NULL COMMENT '机关ID',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格ID',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月ID',
`QUARTER_ID` varchar(32) NOT NULL COMMENT '季度ID',
`YEAR_ID` varchar(32) NOT NULL COMMENT '年ID',
`ISSUE_INCR` int(11) NOT NULL DEFAULT '0' COMMENT '已转议题增量',
`ISSUE_TOTAL` int(11) NOT NULL DEFAULT '0' COMMENT '已转议题总量',
`DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='转议题话题-网格月统计表';
-- ----------------------------
-- Table structure for dim_topic_status
-- ----------------------------
DROP TABLE IF EXISTS dim_topic_status;;/*SkipError*/
CREATE TABLE dim_topic_status(
ID VARCHAR(32) NOT NULL COMMENT '唯一标识 话题状态ID"discussing"、"hidden"、"closed"' ,
STATUS_DESC VARCHAR(32) NOT NULL COMMENT '状态描述 讨论中 已屏蔽 已关闭' ,
DEL_FLAG VARCHAR(32) NOT NULL DEFAULT 0 COMMENT '删除标识' ,
REVISION INT NOT NULL DEFAULT 0 COMMENT '乐观锁' ,
CREATED_BY VARCHAR(32) NOT NULL COMMENT '创建人' ,
CREATED_TIME DATETIME NOT NULL COMMENT '创建时间' ,
UPDATED_BY VARCHAR(32) NOT NULL COMMENT '更新人' ,
UPDATED_TIME DATETIME NOT NULL COMMENT '更新时间' ,
PRIMARY KEY (ID)
) COMMENT = '话题状态维度表 ';;
ALTER TABLE dim_topic_status COMMENT '话题状态维度表';;
SET FOREIGN_KEY_CHECKS = 1;

Loading…
Cancel
Save