Browse Source

Merge remote-tracking branch 'origin/dev_screen_data_2.0' into dev_temp

master
zxc 5 years ago
parent
commit
c0da3704fd
  1. 1
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/constant/DataSourceConstant.java
  2. 131
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactOriginProjectLogDailyDTO.java
  3. 156
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactOriginProjectMainDailyDTO.java
  4. 18
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/ProjectFormDTO.java
  5. 147
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/issue/IssueDTO.java
  6. 17
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/party/PartyMemberDTO.java
  7. 28
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/ProcessInfoDTO.java
  8. 43
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/ProjectInfoDTO.java
  9. 126
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/topic/ResiTopicDTO.java
  10. 12
      epmet-module/data-statistical/data-statistical-server/pom.xml
  11. 12
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginController.java
  12. 33
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectLogDailyDao.java
  13. 54
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectMainDailyDao.java
  14. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/issue/StatsIssueDao.java
  15. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/partymember/PartyMemberDao.java
  16. 12
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java
  17. 40
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectProcessDao.java
  18. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/topic/TopicDao.java
  19. 99
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactOriginProjectLogDailyEntity.java
  20. 126
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactOriginProjectMainDailyEntity.java
  21. 11
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/Issue/IssueService.java
  22. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/Issue/impl/IssueServiceImpl.java
  23. 95
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectLogDailyService.java
  24. 113
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectMainDailyService.java
  25. 22
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/ProjectExtractService.java
  26. 100
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectLogDailyServiceImpl.java
  27. 109
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectMainDailyServiceImpl.java
  28. 238
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/ProjectExtractServiceImpl.java
  29. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/partymember/PartyMemberService.java
  30. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/partymember/impl/PartyMemberServiceImpl.java
  31. 41
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java
  32. 12
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java
  33. 21
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectProcessServiceImpl.java
  34. 7
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java
  35. 5
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimCustomerPartymemberServiceImpl.java
  36. 9
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/TopicService.java
  37. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java
  38. 28
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml
  39. 49
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml
  40. 23
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/issue/StatsIssueDao.xml
  41. 10
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/partymember/PartyMemberDao.xml
  42. 20
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml
  43. 55
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml
  44. 12
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/topic/TopicDao.xml

1
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/constant/DataSourceConstant.java

@ -13,5 +13,4 @@ public interface DataSourceConstant {
String EPMET_USER = "epmetuser";
String EVALUATION_INDEX = "evaluationIndex";
String PARTY_MEMBER = "partyMember";
}

131
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactOriginProjectLogDailyDTO.java

@ -0,0 +1,131 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dto.extract;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 项目明细_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Data
public class FactOriginProjectLogDailyDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
private String id;
/**
* 客户ID
*/
private String customerId;
/**
* 网格grid,部门department
*/
private String orgType;
/**
* 网格ID
*/
private String orgId;
/**
* 机关ID
*/
private String agencyId;
/**
* 日期ID
*/
private String dateId;
/**
* 月份ID
*/
private String monthId;
/**
* 季度ID
*/
private String quarterId;
/**
* 年度ID
*/
private String yearId;
/**
* 议题ID
*/
private String issueId;
/**
* 操作用户ID
*/
private String operationUserId;
/**
* 动作CODE
*/
private String actionCode;
/**
* 是否主动发起人 1 , 0
*/
private Integer isActive;
/**
* 删除状态0:正常1:删除
*/
private Integer delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

156
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactOriginProjectMainDailyDTO.java

@ -0,0 +1,156 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dto.extract;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 项目主表_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Data
public class FactOriginProjectMainDailyDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 项目ID
*/
private String id;
/**
* 项目的发布日期yyyyMMdd
*/
private String dateId;
/**
* 周ID
*/
private String weekId;
/**
* 月份ID
*/
private String monthId;
/**
* 季度ID
*/
private String quarterId;
/**
* 年度ID
*/
private String yearId;
/**
* 客户ID
*/
private String customerId;
/**
* 转议题用户ID
*/
private String issueCreatorId;
/**
* 转为项目的议题ID
*/
private String issueId;
/**
* 转为议题的话题ID
*/
private String topicId;
/**
* 网格ID
*/
private String gridId;
/**
* 上级ID
*/
private String pid;
/**
* 组织ID网格所属组织ID
*/
private String agencyId;
/**
* 状态
*/
private String projectStatus;
/**
* 创建话题用户的ID
*/
private String topicCreatorId;
/**
* 是否是党员 1:
*/
private String isParty;
/**
* 是否超期 1:
*/
private String isOverdue;
/**
* 办结组织Ids:隔开有可能是社区id可能是网格id无需区分级别在统计时模糊查询
*/
private String finishOrgIds;
/**
* 删除状态0:正常1:删除
*/
private Integer delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

18
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/ProjectFormDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto.extract.form;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/9/17 16:24
*/
@Data
public class ProjectFormDTO implements Serializable {
private static final long serialVersionUID = 5875702013226180335L;
private String customerId;
private Date date;
}

147
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/issue/IssueDTO.java

@ -0,0 +1,147 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dto.issue;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 议题详情表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-05-12
*/
@Data
public class IssueDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 议题ID
*/
private String id;
/**
* 议题状态 表决中voting 已转项目shift_project 已关闭closed
*/
private String issueStatus;
/**
* 来源类型 eg:resi_topic
*/
private String sourceType;
/**
* 来源ID eg:2223232(当SOURCE_TYPE为"resi_topic"这里指话题的ID)
*/
private String sourceId;
/**
* 关闭理由 未关闭时可以为空关闭议题时必填的理由转项目后而且已经结案这个字段不回写
*/
private String closeReason;
/**
* 解决类型 未关闭时可以为空已解决resolved未解决unresolved对应在关闭议题时所选的checkbox转项目后而且已经结案这个字段不回写
*/
private String resolveType;
/**
* 议题名称 最多20字
*/
private String issueTitle;
/**
* 建议 最多1000字
*/
private String suggestion;
/**
* 客户ID
*/
private String customerId;
/**
* 网格ID 居民端议题对应一个网格Id
*/
private String gridId;
/**
* 所属机关 数据权限-非必填11:22:33(agencyId)数据权限控制
*/
private String orgIdPath;
/**
* 组织ID 数据权限-非必填agencyId
*/
private String orgId;
/**
* 表决截止日期
*/
private Date votingDeadline;
/**
* 表决发起日期转议题日期
*/
private Date decidedTime;
/**
* 转项目日期 服务间调用日期一致性
*/
private Date shiftedTime;
/**
* 关闭日期
*/
private Date closedTime;
/**
* 删除标识 0未删除1已删除
*/
private String delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

17
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/party/PartyMemberDTO.java

@ -0,0 +1,17 @@
package com.epmet.dto.party;
import lombok.Data;
import java.io.Serializable;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/9/16 10:50
*/
@Data
public class PartyMemberDTO implements Serializable {
private static final long serialVersionUID = 7326830619481816838L;
private String gridId;
private String userId;
}

28
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/ProcessInfoDTO.java

@ -0,0 +1,28 @@
package com.epmet.dto.project;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/9/16 17:00
*/
@Data
public class ProcessInfoDTO implements Serializable {
private static final long serialVersionUID = 4586424046147127143L;
private String agencyId;
private String projectId;
/**
* 处理结案close退回return部门流转transfer创建项目created
*/
private String operation;
/**
* 负负责人ID
*/
private String staffId;
private Date createdTime;
}

43
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/project/ProjectInfoDTO.java

@ -0,0 +1,43 @@
package com.epmet.dto.project;
import lombok.Data;
import java.io.Serializable;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/9/15 15:51
*/
@Data
public class ProjectInfoDTO implements Serializable {
private static final long serialVersionUID = -143765862167548221L;
/**
* 项目ID
*/
private String id;
/**
* 客户ID
*/
private String customerId;
/**
* 组织ID
*/
private String agencyId;
/**
* 议题ID
*/
private String issueId;
/**
* 状态
*/
private String status;
/**
* 结案状态
*/
private String closedStatus;
/**
* 创建时间
*/
private String createdDate;
}

126
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/topic/ResiTopicDTO.java

@ -0,0 +1,126 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dto.topic;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 话题信息表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-03-31
*/
@Data
public class ResiTopicDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 小组Id关联resi_group的ID
*/
private String groupId;
/**
* 网格ID
*/
private String gridId;
/**
* 话题内容
*/
private String topicContent;
/**
* 话题状态讨论中 - discussing 已屏蔽 - hidden 已关闭 - closed
*/
private String status;
/**
* 是否解决(已解决 resolved未解决 unresolved)
*/
private String closedStatus;
/**
*
*/
private String province;
/**
*
*/
private String city;
/**
*
*/
private String area;
/**
* 地址
*/
private String address;
/**
* 经度
*/
private String longitude;
/**
* 维度
*/
private String dimension;
/**
* 删除标记 0未删除1已删除
*/
private String delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人发布人Id来源于user
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

12
epmet-module/data-statistical/data-statistical-server/pom.xml

@ -87,6 +87,12 @@
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
<exclusions>
<exclusion>
<artifactId>poi-ooxml-schemas</artifactId>
<groupId>org.apache.poi</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
@ -98,6 +104,12 @@
<artifactId>pinyin4j</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>4.3</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>

12
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactOriginController.java

@ -3,7 +3,9 @@ package com.epmet.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.extract.form.ExtractFormDTO;
import com.epmet.dto.extract.form.ProjectFormDTO;
import com.epmet.service.evaluationindex.extract.IssueExtractService;
import com.epmet.service.evaluationindex.extract.ProjectExtractService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import com.epmet.service.evaluationindex.extract.FactOriginTopicMainDailyService;
@ -12,6 +14,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
/**
@ -28,6 +31,8 @@ public class FactOriginController {
private IssueExtractService issueExtractService;
@Autowired
private FactOriginTopicMainDailyService factOriginTopicMainDailyService;
@Autowired
private ProjectExtractService projectExtractService;
/**
* @Description 议题抽取(main)
@ -71,6 +76,9 @@ public class FactOriginController {
return new Result();
}
@PostMapping("project")
public Result projectData(@RequestBody ProjectFormDTO formDTO) {
projectExtractService.saveOriginProjectDaily(formDTO.getCustomerId(), formDTO.getDate());
return new Result();
}
}

33
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectLogDailyDao.java

@ -0,0 +1,33 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dao.evaluationindex.extract;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 项目明细_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Mapper
public interface FactOriginProjectLogDailyDao extends BaseDao<FactOriginProjectLogDailyEntity> {
}

54
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectMainDailyDao.java

@ -0,0 +1,54 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dao.evaluationindex.extract;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.extract.FactOriginProjectMainDailyDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectMainDailyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 项目主表_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Mapper
public interface FactOriginProjectMainDailyDao extends BaseDao<FactOriginProjectMainDailyEntity> {
/**
* 获取客户下项目
* @author zhaoqifeng
* @date 2020/9/17 14:32
* @param customerId
* @return java.util.List<com.epmet.dto.extract.FactOriginProjectMainDailyDTO>
*/
List<FactOriginProjectMainDailyDTO> getProjectByCustomer(@Param("customerId") String customerId);
/**
* 获取未结案的项目
* @author zhaoqifeng
* @date 2020/9/17 14:32
* @param customerId
* @return java.util.List<com.epmet.dto.extract.FactOriginProjectMainDailyDTO>
*/
List<FactOriginProjectMainDailyDTO> getPendingList(@Param("customerId") String customerId);
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/issue/StatsIssueDao.java

@ -4,6 +4,7 @@ import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.extract.result.SatisfactionInfoResultDTO;
import com.epmet.dto.extract.result.IssueProcessInfoResultDTO;
import com.epmet.dto.issue.IssueAgencyDTO;
import com.epmet.dto.issue.IssueDTO;
import com.epmet.dto.issue.IssueGridDTO;
import com.epmet.dto.issue.IssueProjectDTO;
import com.epmet.dto.extract.result.IssueInfoResultDTO;
@ -115,6 +116,15 @@ public interface StatsIssueDao extends BaseDao<IssueEntity> {
*/
List<IssueProjectDTO> selectIssueProjectList(@Param("customerId") String customerId);
/**
* 根据ID获取议题信息
* @author zhaoqifeng
* @date 2020/9/15 16:56
* @param ids
* @return java.util.List<com.epmet.dto.issue.IssueDTO>
*/
List<IssueDTO> selectIssueInfoByIds(@Param("ids") List<String> ids);
/**
* @Description 查询议题信息
* @param customerId

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/partymember/PartyMemberDao.java

@ -7,6 +7,7 @@ import com.epmet.dto.extract.result.SatisfactionInfoResultDTO;
import com.epmet.dto.issue.IssueAgencyDTO;
import com.epmet.dto.issue.IssueGridDTO;
import com.epmet.dto.issue.IssueProjectDTO;
import com.epmet.dto.party.PartyMemberDTO;
import com.epmet.dto.stats.form.DimCustomerPartyMemberFormDTO;
import com.epmet.entity.issue.IssueEntity;
import org.apache.ibatis.annotations.Mapper;
@ -26,4 +27,13 @@ public interface PartyMemberDao{
*/
List<DimCustomerPartyMemberFormDTO> selectPartyMemberInfo(@Param("customerId") String customerId,@Param("dateId") String dateId);
/**
* 获取客户网格下注册党员
* @author zhaoqifeng
* @date 2020/9/16 10:56
* @param customerId
* @return java.util.List<com.epmet.dto.party.PartyMemberDTO>
*/
List<PartyMemberDTO> selectPartyMemberByCustomer(@Param("customerId") String customerId);
}

12
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java

@ -18,8 +18,10 @@
package com.epmet.dao.project;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.project.ProjectAgencyDTO;
import com.epmet.dto.project.ProjectGridDTO;
import com.epmet.dto.project.ProjectInfoDTO;
import com.epmet.entity.project.ProjectEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -82,4 +84,14 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
* @return java.util.List<com.epmet.dto.project.ProjectGridDTO>
*/
List<ProjectGridDTO> selectGridClosedProjectInc(@Param("customerId") String customerId, @Param("date") String date);
/**
* 获取项目信息
* @author zhaoqifeng
* @date 2020/9/15 16:13
* @param customerId
* @param date
* @return java.util.List<com.epmet.dto.project.ProjectInfoDTO>
*/
List<ProjectDTO> selectProjectInfo(@Param("customerId") String customerId, @Param("date") String date);
}

40
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectProcessDao.java

@ -18,6 +18,7 @@
package com.epmet.dao.project;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.project.ProcessInfoDTO;
import com.epmet.entity.project.ProjectEntity;
import com.epmet.entity.project.ProjectProcessEntity;
import org.apache.ibatis.annotations.Mapper;
@ -41,4 +42,43 @@ public interface ProjectProcessDao extends BaseDao<ProjectProcessEntity> {
**/
List<ProjectProcessEntity> selectProcessList(ProjectEntity projectEntity);
/**
* 根据客户查询项目处理进展
* @author zhaoqifeng
* @date 2020/9/16 15:18
* @param customerId
* @param date
* @return java.util.List<com.epmet.entity.project.ProjectProcessEntity>
*/
List<ProcessInfoDTO> selectProcessListByCustomer(@Param("customerId") String customerId, @Param("date") String date);
/**
* 查询各个节点的受理人
* @author zhaoqifeng
* @date 2020/9/17 10:54
* @param customerId
* @param date
* @return java.util.List<com.epmet.dto.project.ProcessInfoDTO>
*/
List<ProcessInfoDTO> selectProcessStaffByCustomer(@Param("customerId") String customerId, @Param("date") String date);
/**
* 获取满意度评价记录
* @author zhaoqifeng
* @date 2020/9/17 14:44
* @param customerId
* @param date
* @return java.util.List<com.epmet.dto.project.ProcessInfoDTO>
*/
List<ProcessInfoDTO> selectSatisfactionRecordByCustomer(@Param("customerId") String customerId, @Param("date") String date);
/**
* 获取已结案的项目列表
* @author zhaoqifeng
* @date 2020/9/17 14:44
* @param customerId
* @param date
* @return java.util.List<java.lang.String>
*/
List<ProjectProcessEntity> selectClosedProjectList(@Param("customerId") String customerId, @Param("date") String date);
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/topic/TopicDao.java

@ -7,6 +7,7 @@ package com.epmet.dao.topic;
* @since v1.0.0 2020-05-11
*/
import com.epmet.dto.topic.ResiTopicDTO;
import com.epmet.dto.extract.result.TopicInfoResultDTO;
import com.epmet.dto.topic.TopicOriginInfoDTO;
import com.epmet.dto.topic.result.ResiGroupTopicResultDTO;
@ -59,6 +60,15 @@ public interface TopicDao {
**/
List<ResiTopicOperationResultDTO> selectTopicOperationRecordBetweenTimeRange(@Param("startDate")Date startDate, @Param("endDate")Date endDate);
/**
* 根据ids获取话题信息
* @author zhaoqifeng
* @date 2020/9/15 17:33
* @param ids
* @return java.util.List<com.epmet.dto.topic.ResiTopicDTO>
*/
List<ResiTopicDTO> selectTopicByIds(@Param("ids") List<String> ids);
/**
* @Description 查询话题创建者信息
* @param topicIds

99
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactOriginProjectLogDailyEntity.java

@ -0,0 +1,99 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.entity.evaluationindex.extract;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 项目明细_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("fact_origin_project_log_daily")
public class FactOriginProjectLogDailyEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户ID
*/
private String customerId;
/**
* 网格grid,部门department
*/
private String orgType;
/**
* 网格ID
*/
private String orgId;
/**
* 机关ID
*/
private String agencyId;
/**
* 日期ID
*/
private String dateId;
/**
* 月份ID
*/
private String monthId;
/**
* 季度ID
*/
private String quarterId;
/**
* 年度ID
*/
private String yearId;
/**
* 议题ID
*/
private String projectId;
/**
* 操作用户ID
*/
private String operationUserId;
/**
* 动作CODE
*/
private String actionCode;
/**
* 是否主动发起人 1 , 0
*/
private Integer isActive;
}

126
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactOriginProjectMainDailyEntity.java

@ -0,0 +1,126 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.entity.evaluationindex.extract;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 项目主表_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("fact_origin_project_main_daily")
public class FactOriginProjectMainDailyEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 项目的发布日期yyyyMMdd
*/
private String dateId;
/**
* 周ID
*/
private String weekId;
/**
* 月份ID
*/
private String monthId;
/**
* 季度ID
*/
private String quarterId;
/**
* 年度ID
*/
private String yearId;
/**
* 客户ID
*/
private String customerId;
/**
* 转议题用户ID
*/
private String issueCreatorId;
/**
* 转为项目的议题ID
*/
private String issueId;
/**
* 转为议题的话题ID
*/
private String topicId;
/**
* 网格ID
*/
private String gridId;
/**
* 上级ID
*/
private String pid;
/**
* 组织ID网格所属组织ID
*/
private String agencyId;
/**
* 状态
*/
private String projectStatus;
/**
* 创建话题用户的ID
*/
private String topicCreatorId;
/**
* 是否是党员 1:
*/
private String isParty;
/**
* 是否超期 1:
*/
private String isOverdue;
/**
* 办结组织Ids:隔开有可能是社区id可能是网格id无需区分级别在统计时模糊查询
*/
private String finishOrgIds;
}

11
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/Issue/IssueService.java

@ -3,6 +3,7 @@ package com.epmet.service.Issue;
import com.epmet.dto.extract.result.SatisfactionInfoResultDTO;
import com.epmet.dto.extract.result.IssueProcessInfoResultDTO;
import com.epmet.dto.issue.IssueAgencyDTO;
import com.epmet.dto.issue.IssueDTO;
import com.epmet.dto.issue.IssueGridDTO;
import com.epmet.dto.issue.IssueProjectDTO;
import com.epmet.dto.extract.result.IssueInfoResultDTO;
@ -113,6 +114,16 @@ public interface IssueService {
*/
List<IssueProjectDTO> getIssueProjectList(String customerId);
/**
* 根据ID获取议题信息
* @author zhaoqifeng
* @date 2020/9/15 16:56
* @param ids
* @return java.util.List<com.epmet.dto.issue.IssueDTO>
*/
List<IssueDTO> getIssueInfoByIds(List<String> ids);
/**
* @Description 查询议题信息
* @param customerId

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/Issue/impl/IssueServiceImpl.java

@ -6,6 +6,7 @@ import com.epmet.dao.issue.StatsIssueDao;
import com.epmet.dto.extract.result.SatisfactionInfoResultDTO;
import com.epmet.dto.extract.result.IssueProcessInfoResultDTO;
import com.epmet.dto.issue.IssueAgencyDTO;
import com.epmet.dto.issue.IssueDTO;
import com.epmet.dto.issue.IssueGridDTO;
import com.epmet.dto.issue.IssueProjectDTO;
import com.epmet.dto.extract.result.IssueInfoResultDTO;
@ -84,6 +85,11 @@ public class IssueServiceImpl implements IssueService {
return statsIssueDao.selectIssueProjectList(customerId);
}
@Override
public List<IssueDTO> getIssueInfoByIds(List<String> ids) {
return statsIssueDao.selectIssueInfoByIds(ids);
}
/**
* @Description 查询议题信息
* @param customerId

95
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectLogDailyService.java

@ -0,0 +1,95 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.service.evaluationindex.extract;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.extract.FactOriginProjectLogDailyDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity;
import java.util.List;
import java.util.Map;
/**
* 项目明细_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
public interface FactOriginProjectLogDailyService extends BaseService<FactOriginProjectLogDailyEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<FactOriginProjectLogDailyDTO>
* @author generator
* @date 2020-09-16
*/
PageData<FactOriginProjectLogDailyDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<FactOriginProjectLogDailyDTO>
* @author generator
* @date 2020-09-16
*/
List<FactOriginProjectLogDailyDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return FactOriginProjectLogDailyDTO
* @author generator
* @date 2020-09-16
*/
FactOriginProjectLogDailyDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2020-09-16
*/
void save(FactOriginProjectLogDailyDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2020-09-16
*/
void update(FactOriginProjectLogDailyDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2020-09-16
*/
void delete(String[] ids);
}

113
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectMainDailyService.java

@ -0,0 +1,113 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.service.evaluationindex.extract;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.extract.FactOriginProjectMainDailyDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectMainDailyEntity;
import java.util.List;
import java.util.Map;
/**
* 项目主表_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
public interface FactOriginProjectMainDailyService extends BaseService<FactOriginProjectMainDailyEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<FactOriginProjectMainDailyDTO>
* @author generator
* @date 2020-09-16
*/
PageData<FactOriginProjectMainDailyDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<FactOriginProjectMainDailyDTO>
* @author generator
* @date 2020-09-16
*/
List<FactOriginProjectMainDailyDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return FactOriginProjectMainDailyDTO
* @author generator
* @date 2020-09-16
*/
FactOriginProjectMainDailyDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2020-09-16
*/
void save(FactOriginProjectMainDailyDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2020-09-16
*/
void update(FactOriginProjectMainDailyDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2020-09-16
*/
void delete(String[] ids);
/**
* 获取客户下项目
* @author zhaoqifeng
* @date 2020/9/17 14:29
* @param customerId
* @return java.util.List<com.epmet.dto.extract.FactOriginProjectMainDailyDTO>
*/
List<FactOriginProjectMainDailyDTO> getProjectByCustomer(String customerId);
/**
* 获取未结案的项目
* @author zhaoqifeng
* @date 2020/9/17 14:30
* @param customerId
* @return java.util.List<com.epmet.dto.extract.FactOriginProjectMainDailyDTO>
*/
List<FactOriginProjectMainDailyDTO> getPendingList(String customerId);
}

22
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/ProjectExtractService.java

@ -0,0 +1,22 @@
package com.epmet.service.evaluationindex.extract;
import java.util.Date;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/9/15 14:00
*/
public interface ProjectExtractService {
/**
* 项目主表明细日统计
* @author zhaoqifeng
* @date 2020/9/15 14:38
* @param customerId
* @param date
* @return
*/
void saveOriginProjectDaily(String customerId, Date date);
}

100
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectLogDailyServiceImpl.java

@ -0,0 +1,100 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.service.evaluationindex.extract.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.evaluationindex.extract.FactOriginProjectLogDailyDao;
import com.epmet.dto.extract.FactOriginProjectLogDailyDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity;
import com.epmet.service.evaluationindex.extract.FactOriginProjectLogDailyService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 项目明细_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Service
public class FactOriginProjectLogDailyServiceImpl extends BaseServiceImpl<FactOriginProjectLogDailyDao, FactOriginProjectLogDailyEntity> implements FactOriginProjectLogDailyService {
@Override
public PageData<FactOriginProjectLogDailyDTO> page(Map<String, Object> params) {
IPage<FactOriginProjectLogDailyEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, FactOriginProjectLogDailyDTO.class);
}
@Override
public List<FactOriginProjectLogDailyDTO> list(Map<String, Object> params) {
List<FactOriginProjectLogDailyEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, FactOriginProjectLogDailyDTO.class);
}
private QueryWrapper<FactOriginProjectLogDailyEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<FactOriginProjectLogDailyEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public FactOriginProjectLogDailyDTO get(String id) {
FactOriginProjectLogDailyEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, FactOriginProjectLogDailyDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(FactOriginProjectLogDailyDTO dto) {
FactOriginProjectLogDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactOriginProjectLogDailyEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(FactOriginProjectLogDailyDTO dto) {
FactOriginProjectLogDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactOriginProjectLogDailyEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

109
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectMainDailyServiceImpl.java

@ -0,0 +1,109 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.service.evaluationindex.extract.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.evaluationindex.extract.FactOriginProjectMainDailyDao;
import com.epmet.dto.extract.FactOriginProjectMainDailyDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectMainDailyEntity;
import com.epmet.service.evaluationindex.extract.FactOriginProjectMainDailyService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 项目主表_日统计
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-16
*/
@Service
public class FactOriginProjectMainDailyServiceImpl extends BaseServiceImpl<FactOriginProjectMainDailyDao, FactOriginProjectMainDailyEntity> implements FactOriginProjectMainDailyService {
@Override
public PageData<FactOriginProjectMainDailyDTO> page(Map<String, Object> params) {
IPage<FactOriginProjectMainDailyEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, FactOriginProjectMainDailyDTO.class);
}
@Override
public List<FactOriginProjectMainDailyDTO> list(Map<String, Object> params) {
List<FactOriginProjectMainDailyEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, FactOriginProjectMainDailyDTO.class);
}
private QueryWrapper<FactOriginProjectMainDailyEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<FactOriginProjectMainDailyEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public FactOriginProjectMainDailyDTO get(String id) {
FactOriginProjectMainDailyEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, FactOriginProjectMainDailyDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(FactOriginProjectMainDailyDTO dto) {
FactOriginProjectMainDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactOriginProjectMainDailyEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(FactOriginProjectMainDailyDTO dto) {
FactOriginProjectMainDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactOriginProjectMainDailyEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public List<FactOriginProjectMainDailyDTO> getProjectByCustomer(String customerId) {
return baseDao.getProjectByCustomer(customerId);
}
@Override
public List<FactOriginProjectMainDailyDTO> getPendingList(String customerId) {
return baseDao.getPendingList(customerId);
}
}

238
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/ProjectExtractServiceImpl.java

@ -0,0 +1,238 @@
package com.epmet.service.evaluationindex.extract.impl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.extract.FactOriginProjectMainDailyDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.issue.IssueDTO;
import com.epmet.dto.party.PartyMemberDTO;
import com.epmet.dto.project.ProcessInfoDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import com.epmet.dto.topic.ResiTopicDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectMainDailyEntity;
import com.epmet.entity.project.ProjectProcessEntity;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.service.Issue.IssueService;
import com.epmet.service.evaluationindex.extract.FactOriginProjectLogDailyService;
import com.epmet.service.evaluationindex.extract.FactOriginProjectMainDailyService;
import com.epmet.service.evaluationindex.extract.ProjectExtractService;
import com.epmet.service.partymember.PartyMemberService;
import com.epmet.service.project.ProjectProcessService;
import com.epmet.service.project.ProjectService;
import com.epmet.service.topic.TopicService;
import com.epmet.util.DimIdGenerator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/9/15 14:00
*/
@Service
public class ProjectExtractServiceImpl implements ProjectExtractService {
@Autowired
private ProjectService projectService;
@Autowired
private IssueService issueService;
@Autowired
private TopicService topicService;
@Autowired
private PartyMemberService partyMemberService;
@Autowired
private FactOriginProjectLogDailyService factOriginProjectLogDailyService;
@Autowired
private FactOriginProjectMainDailyService factOriginProjectMainDailyService;
@Autowired
private ProjectProcessService projectProcessService;
@Autowired
private EpmetCommonServiceOpenFeignClient epmetCommonServiceOpenFeignClient;
@Override
public void saveOriginProjectDaily(String customerId, Date date) {
String dateString = null;
if (null != date) {
dateString = DateUtils.format(date);
}
//获取已关闭项目列表
List<ProjectProcessEntity> closedList = projectProcessService.getClosedProjectList(customerId, dateString);
List<FactOriginProjectMainDailyDTO> pendingList = factOriginProjectMainDailyService.getPendingList(customerId);
List<FactOriginProjectMainDailyEntity> closeProjects =
pendingList.stream().flatMap(pending -> closedList.stream().filter(closed -> pending.getId().equals(closed.getProjectId())).map(process -> {
FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity();
entity.setId(process.getId());
entity.setProjectStatus("close");
entity.setCreatedTime(DateUtils.stringToDate(pending.getDateId(), DateUtils.DATE_PATTERN_YYYYMMDD));
entity.setUpdatedTime(process.getUpdatedTime());
return entity;
})).collect(Collectors.toList());
//更新状态
if (null != closeProjects && !closeProjects.isEmpty()) {
factOriginProjectMainDailyService.updateBatchById(closeProjects);
}
//获取项目信息
List<ProjectDTO> projectList = projectService.getProjectInfo(customerId, dateString);
if (null != projectList && !projectList.isEmpty()) {
//提取议题ID
List<String> issueIds = projectList.stream().map(ProjectDTO::getOriginId).collect(Collectors.toList());
//获取议题信息
List<IssueDTO> issueList = issueService.getIssueInfoByIds(issueIds);
//提取话题ID
List<String> topicIds = issueList.stream().map(IssueDTO::getSourceId).collect(Collectors.toList());
//获取话题信息
List<ResiTopicDTO> topicList = topicService.getTopicByIds(topicIds);
//获取网格认证党员
List<PartyMemberDTO> partyMemberList = partyMemberService.getPartyMemberByCustomer(customerId);
//生成DTO
List<FactOriginProjectMainDailyEntity> list = projectList.stream().map(project -> {
//获取日期相关维度
DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(project.getCreatedTime());
FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity();
entity.setId(project.getId());
entity.setAgencyId(project.getAgencyId());
entity.setCustomerId(customerId);
entity.setYearId(dimId.getYearId());
entity.setQuarterId(dimId.getQuarterId());
entity.setMonthId(dimId.getMonthId());
entity.setWeekId(dimId.getWeekId());
entity.setDateId(dimId.getDateId());
entity.setIssueId(project.getOriginId());
entity.setProjectStatus(project.getStatus());
entity.setCreatedTime(project.getCreatedTime());
entity.setUpdatedTime(project.getUpdatedTime());
String[] pIds = project.getOrgIdPath().split(":");
if (pIds.length > 1) {
entity.setPid(pIds[pIds.length - 2]);
} else {
entity.setPid(pIds[0]);
}
entity.setIsParty(NumConstant.ZERO_STR);
entity.setIsOverdue(NumConstant.ZERO_STR);
return entity;
}).collect(Collectors.toList());
list.forEach(entity -> issueList.stream().filter(issueDTO -> issueDTO.getId().equals(entity.getIssueId())).forEach(issue -> {
entity.setIssueCreatorId(issue.getCreatedBy());
entity.setTopicId(issue.getSourceId());
}));
list.forEach(entity -> topicList.stream().filter(topicDTO -> topicDTO.getId().equals(entity.getTopicId())).forEach(topic -> {
entity.setTopicCreatorId(topic.getCreatedBy());
entity.setGridId(topic.getGridId());
}));
list.forEach(entity -> partyMemberList.stream().filter(partyMemberDTO -> partyMemberDTO.getGridId().equals(entity.getGridId()) && partyMemberDTO.getUserId().equals(entity.getTopicCreatorId())).forEach(partyMember -> {
entity.setIsParty(NumConstant.ONE_STR);
}));
//插入数据
factOriginProjectMainDailyService.insertBatch(list);
}
//节点发起人
List<ProcessInfoDTO> processList = projectProcessService.getProcessListByCustomer(customerId, dateString);
if (null != processList && !processList.isEmpty()) {
List<FactOriginProjectLogDailyEntity> logList = processList.stream().map(process -> {
//获取日期相关维度
DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(process.getCreatedTime());
FactOriginProjectLogDailyEntity entity = new FactOriginProjectLogDailyEntity();
entity.setCustomerId(customerId);
entity.setAgencyId(process.getAgencyId());
entity.setYearId(dimId.getYearId());
entity.setQuarterId(dimId.getQuarterId());
entity.setMonthId(dimId.getMonthId());
entity.setDateId(dimId.getDateId());
entity.setProjectId(process.getProjectId());
entity.setOperationUserId(process.getStaffId());
entity.setActionCode(process.getOperation());
entity.setIsActive(NumConstant.ONE);
entity.setOrgType("grid");
return entity;
}).collect(Collectors.toList());
//节点接收人
List<ProcessInfoDTO> processStaffList = projectProcessService.getProcessStaffByCustomer(customerId, dateString);
logList.addAll(processStaffList.stream().map(process -> {
//获取日期相关维度
DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(process.getCreatedTime());
FactOriginProjectLogDailyEntity entity = new FactOriginProjectLogDailyEntity();
entity.setCustomerId(customerId);
entity.setAgencyId(process.getAgencyId());
entity.setYearId(dimId.getYearId());
entity.setQuarterId(dimId.getQuarterId());
entity.setMonthId(dimId.getMonthId());
entity.setDateId(dimId.getDateId());
entity.setProjectId(process.getProjectId());
entity.setOperationUserId(process.getStaffId());
entity.setActionCode(process.getOperation());
entity.setIsActive(NumConstant.ZERO);
entity.setOrgType("grid");
return entity;
}).collect(Collectors.toList()));
//项目评论人
List<ProcessInfoDTO> satisfactionRecordList = projectProcessService.getSatisfactionRecord(customerId, dateString);
logList.addAll(satisfactionRecordList.stream().map(process -> {
//获取日期相关维度
DimIdGenerator.DimIdBean dimId = DimIdGenerator.getDimIdBean(process.getCreatedTime());
FactOriginProjectLogDailyEntity entity = new FactOriginProjectLogDailyEntity();
entity.setCustomerId(customerId);
entity.setAgencyId(process.getAgencyId());
entity.setYearId(dimId.getYearId());
entity.setQuarterId(dimId.getQuarterId());
entity.setMonthId(dimId.getMonthId());
entity.setDateId(dimId.getDateId());
entity.setProjectId(process.getProjectId());
entity.setOperationUserId(process.getStaffId());
entity.setActionCode(process.getOperation());
entity.setIsActive(NumConstant.ONE);
entity.setOrgType("grid");
return entity;
}).collect(Collectors.toList()));
List<FactOriginProjectMainDailyDTO> projectMainList = factOriginProjectMainDailyService.getProjectByCustomer(customerId);
logList.forEach(log -> projectMainList.stream().filter(project -> log.getProjectId().equals(project.getId())).forEach(main -> {
log.setOrgId(main.getGridId());
}));
factOriginProjectLogDailyService.insertBatch(logList);
}
}
/**
* 工作日计算
* @author zhaoqifeng
* @date 2020/9/17 17:02
* @param id
* @param startDate
* @param endDate
* @return java.lang.Integer
*/
private Integer getDetentionDays(String id, Date startDate, Date endDate) {
int result;
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
List<WorkDayFormDTO> list = new ArrayList<>();
WorkDayFormDTO workDayFormDTO = new WorkDayFormDTO();
workDayFormDTO.setId(id);
workDayFormDTO.setStartDate(format.format(startDate));
workDayFormDTO.setEndDate(format.format(endDate));
list.add(workDayFormDTO);
Result<List<WorkDayResultDTO>> detentionDays = epmetCommonServiceOpenFeignClient.detentionDays(list);
String days = detentionDays.getData().get(NumConstant.ZERO).getDetentionDays();
if (("<1").equals(days)) {
result = 1;
} else {
result = Integer.parseInt(days);
}
return result;
}
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/partymember/PartyMemberService.java

@ -1,5 +1,6 @@
package com.epmet.service.partymember;
import com.epmet.dto.party.PartyMemberDTO;
import com.epmet.dto.stats.form.DimCustomerPartyMemberFormDTO;
import java.util.List;
@ -19,4 +20,13 @@ public interface PartyMemberService {
*/
List<DimCustomerPartyMemberFormDTO> selectPartyMemberInfo(String customerId, String dateId);
/**
* 获取客户网格下注册党员
* @author zhaoqifeng
* @date 2020/9/16 10:51
* @param customerId
* @return java.util.List<com.epmet.dto.party.PartyMemberDTO>
*/
List<PartyMemberDTO> getPartyMemberByCustomer(String customerId);
}

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/partymember/impl/PartyMemberServiceImpl.java

@ -3,6 +3,7 @@ package com.epmet.service.partymember.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.partymember.PartyMemberDao;
import com.epmet.dto.party.PartyMemberDTO;
import com.epmet.dto.stats.form.DimCustomerPartyMemberFormDTO;
import com.epmet.service.partymember.PartyMemberService;
import lombok.extern.slf4j.Slf4j;
@ -35,4 +36,9 @@ public class PartyMemberServiceImpl implements PartyMemberService {
return partyMemberDao.selectPartyMemberInfo(customerId, dateId);
}
@Override
public List<PartyMemberDTO> getPartyMemberByCustomer(String customerId) {
return partyMemberDao.selectPartyMemberByCustomer(customerId);
}
}

41
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java

@ -18,6 +18,7 @@
package com.epmet.service.project;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.project.ProcessInfoDTO;
import com.epmet.entity.project.ProjectEntity;
import com.epmet.entity.project.ProjectProcessEntity;
@ -37,4 +38,44 @@ public interface ProjectProcessService extends BaseService<ProjectProcessEntity>
* @Description 查询客户项目处理进展表中是创建项目和结案两种进展的有效数据(创建日期截取yyyy-mm-dd格式字段值)
**/
List<ProjectProcessEntity> getProcessList(ProjectEntity projectEntity);
/**
* 根据客户查询项目处理进展
* @author zhaoqifeng
* @date 2020/9/16 15:42
* @param customerId
* @param date
* @return java.util.List<com.epmet.entity.project.ProjectProcessEntity>
*/
List<ProcessInfoDTO> getProcessListByCustomer(String customerId, String date);
/**
* 查询各个节点的受理人
* @author zhaoqifeng
* @date 2020/9/17 10:53
* @param customerId
* @param date
* @return java.util.List<com.epmet.dto.project.ProcessInfoDTO>
*/
List<ProcessInfoDTO> getProcessStaffByCustomer(String customerId, String date);
/**
* 获取满意度评价记录
* @author zhaoqifeng
* @date 2020/9/17 13:59
* @param customerId
* @param date
* @return java.util.List<com.epmet.dto.project.ProcessInfoDTO>
*/
List<ProcessInfoDTO> getSatisfactionRecord(String customerId, String date);
/**
* 获取已结案的项目列表
* @author zhaoqifeng
* @date 2020/9/17 14:43
* @param customerId
* @param date
* @return java.util.List<java.lang.String>
*/
List<ProjectProcessEntity> getClosedProjectList(String customerId, String date);
}

12
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java

@ -18,8 +18,10 @@
package com.epmet.service.project;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.project.ProjectAgencyDTO;
import com.epmet.dto.project.ProjectGridDTO;
import com.epmet.dto.project.ProjectInfoDTO;
import com.epmet.entity.project.ProjectEntity;
import java.util.List;
@ -78,4 +80,14 @@ public interface ProjectService extends BaseService<ProjectEntity> {
* @return java.util.List<com.epmet.dto.project.ProjectGridDTO>
*/
List<ProjectGridDTO> getGridClosedProjectInc(String customerId, String date);
/**
* 获取项目信息
* @author zhaoqifeng
* @date 2020/9/15 16:09
* @param customerId
* @param date
* @return java.util.List<com.epmet.dto.project.ProjectInfoDTO>
*/
List<ProjectDTO> getProjectInfo(String customerId, String date);
}

21
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectProcessServiceImpl.java

@ -21,6 +21,7 @@ import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.project.ProjectProcessDao;
import com.epmet.dto.project.ProcessInfoDTO;
import com.epmet.entity.project.ProjectEntity;
import com.epmet.entity.project.ProjectProcessEntity;
import com.epmet.service.project.ProjectProcessService;
@ -47,4 +48,24 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessDao
public List<ProjectProcessEntity> getProcessList(ProjectEntity projectEntity) {
return baseDao.selectProcessList(projectEntity);
}
@Override
public List<ProcessInfoDTO> getProcessListByCustomer(String customerId, String date) {
return baseDao.selectProcessListByCustomer(customerId, date);
}
@Override
public List<ProcessInfoDTO> getProcessStaffByCustomer(String customerId, String date) {
return baseDao.selectProcessStaffByCustomer(customerId, date);
}
@Override
public List<ProcessInfoDTO> getSatisfactionRecord(String customerId, String date) {
return baseDao.selectSatisfactionRecordByCustomer(customerId, date);
}
@Override
public List<ProjectProcessEntity> getClosedProjectList(String customerId, String date) {
return baseDao.selectClosedProjectList(customerId, date);
}
}

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

@ -21,8 +21,10 @@ import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.project.ProjectDao;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.project.ProjectAgencyDTO;
import com.epmet.dto.project.ProjectGridDTO;
import com.epmet.dto.project.ProjectInfoDTO;
import com.epmet.entity.project.ProjectEntity;
import com.epmet.service.project.ProjectService;
import org.springframework.beans.factory.annotation.Autowired;
@ -70,4 +72,9 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
return baseDao.selectGridClosedProjectInc(customerId, date);
}
@Override
public List<ProjectDTO> getProjectInfo(String customerId, String date) {
return baseDao.selectProjectInfo(customerId, date);
}
}

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

@ -37,6 +37,7 @@ import com.epmet.service.partymember.PartyMemberService;
import com.epmet.service.stats.DimCustomerPartymemberService;
import com.epmet.service.stats.DimCustomerService;
import com.epmet.service.stats.DimGridService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -56,6 +57,7 @@ import java.util.stream.Collectors;
* @since v1.0.0 2020-09-17
*/
@Service
@Slf4j
public class DimCustomerPartymemberServiceImpl extends BaseServiceImpl<DimCustomerPartymemberDao, DimCustomerPartymemberEntity> implements DimCustomerPartymemberService {
@Autowired
@ -136,7 +138,8 @@ public class DimCustomerPartymemberServiceImpl extends BaseServiceImpl<DimCustom
String dateId = customerIdAndDateIdFormDTO.getDateId();
List<DimCustomerPartyMemberFormDTO> partyMemberList = partyMemberService.selectPartyMemberInfo(customerId, dateId);
if (CollectionUtils.isEmpty(partyMemberList)){
throw new RenException(String.format(StatsConstant.PARTY_INFO_LIST,customerId));
log.error(String.format(StatsConstant.PARTY_INFO_LIST,customerId));
return;
}
List<String> gridIds = partyMemberList.stream().map(party -> party.getGridId()).distinct().collect(Collectors.toList());
List<GridBelongAgencyResultDTO> agencyInfos = dimGridService.selectGridBelongAgencyInfo(gridIds);

9
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/TopicService.java

@ -4,6 +4,7 @@ import com.epmet.dto.AgencySubTreeDto;
import com.epmet.dto.extract.result.TopicInfoResultDTO;
import com.epmet.dto.stats.DimTopicStatusDTO;
import com.epmet.dto.stats.topic.result.TopicStatisticalData;
import com.epmet.dto.topic.ResiTopicDTO;
import com.epmet.dto.topic.TopicOriginInfoDTO;
import com.epmet.util.DimIdGenerator;
@ -27,6 +28,14 @@ public interface TopicService {
**/
TopicStatisticalData compute(List<AgencySubTreeDto> agencies, Date targetDate, DimIdGenerator.DimIdBean timeDimension, String customerId, List<DimTopicStatusDTO> statusDimension);
/**
* 根据ids获取话题信息
* @author zhaoqifeng
* @date 2020/9/15 17:52
* @param ids
* @return java.util.List<com.epmet.dto.topic.ResiTopicDTO>
*/
List<ResiTopicDTO> getTopicByIds(List<String> ids);
/**
* @return java.util.List<com.epmet.dto.topic.TopicOriginInfoDTO>
* @param customerId

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

@ -11,6 +11,7 @@ import com.epmet.dto.stats.topic.*;
import com.epmet.dto.stats.topic.result.GridTopicData;
import com.epmet.dto.stats.topic.result.GroupTopicData;
import com.epmet.dto.stats.topic.result.TopicStatisticalData;
import com.epmet.dto.topic.ResiTopicDTO;
import com.epmet.dto.topic.TopicOriginInfoDTO;
import com.epmet.dto.topic.result.ResiGroupTopicResultDTO;
import com.epmet.dto.topic.result.ResiTopicOperationResultDTO;
@ -96,6 +97,11 @@ public class TopicServiceImpl implements TopicService {
}
@Override
public List<ResiTopicDTO> getTopicByIds(List<String> ids) {
return topicDao.selectTopicByIds(ids);
}
/**
* @Description 查询话题创建者信息

28
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dao.evaluationindex.extract.FactOriginProjectLogDailyDao">
<resultMap type="com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity" id="factOriginProjectLogDailyMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="gridId" column="GRID_ID"/>
<result property="agencyId" column="AGENCY_ID"/>
<result property="dateId" column="DATE_ID"/>
<result property="monthId" column="MONTH_ID"/>
<result property="quarterId" column="QUARTER_ID"/>
<result property="yearId" column="YEAR_ID"/>
<result property="issueId" column="ISSUE_ID"/>
<result property="operationUserId" column="OPERATION_USER_ID"/>
<result property="actionCode" column="ACTION_CODE"/>
<result property="isParty" column="IS_PARTY"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>

49
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dao.evaluationindex.extract.FactOriginProjectMainDailyDao">
<resultMap type="com.epmet.entity.evaluationindex.extract.FactOriginProjectMainDailyEntity" id="factOriginProjectMainDailyMap">
<result property="id" column="ID"/>
<result property="dateId" column="DATE_ID"/>
<result property="weekId" column="WEEK_ID"/>
<result property="monthId" column="MONTH_ID"/>
<result property="quarterId" column="QUARTER_ID"/>
<result property="yearId" column="YEAR_ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="issueCreatorId" column="ISSUE_CREATOR_ID"/>
<result property="issueId" column="ISSUE_ID"/>
<result property="topicId" column="TOPIC_ID"/>
<result property="gridId" column="GRID_ID"/>
<result property="pid" column="PID"/>
<result property="agencyId" column="AGENCY_ID"/>
<result property="projectStatus" column="PROJECT_STATUS"/>
<result property="topicCreatorId" column="TOPIC_CREATOR_ID"/>
<result property="isParty" column="IS_PARTY"/>
<result property="isOverdue" column="IS_OVERDUE"/>
<result property="finishOrgIds" column="FINISH_ORG_IDS"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
<select id="getProjectByCustomer" resultType="com.epmet.dto.extract.FactOriginProjectMainDailyDTO">
SELECT
ID,
GRID_ID
FROM fact_origin_project_main_daily
WHERE CUSTOMER_ID = #{customerId}
</select>
<select id="getPendingList" resultType="com.epmet.dto.extract.FactOriginProjectMainDailyDTO">
SELECT
ID,
DATE_ID
FROM fact_origin_project_main_daily
WHERE CUSTOMER_ID = #{customerId}
AND PROJECT_STATUS = 'pending'
</select>
</mapper>

23
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/issue/StatsIssueDao.xml

@ -181,6 +181,29 @@
AND i.customer_id = #{customerId}
<![CDATA[AND DATE_FORMAT(ipr.created_time, "%Y-%m-%d") <= DATE_FORMAT(#{createdTime}, "%Y-%m-%d")]]>
</select>
<select id="selectIssueInfoByIds" resultType="com.epmet.dto.issue.IssueDTO" parameterType="java.util.List">
SELECT
ID,
ISSUE_STATUS,
SOURCE_TYPE,
SOURCE_ID,
CLOSE_REASON,
RESOLVE_TYPE,
ISSUE_TITLE,
CUSTOMER_ID,
GRID_ID,
ORG_ID_PATH,
ORG_ID,
CREATED_BY
FROM
issue
WHERE
DEL_FLAG = '0'
AND SOURCE_TYPE = 'resi_topic'
<foreach collection="ids" item="item" open="AND( " separator=" OR " index="index" close=")">
ID = #{item}
</foreach>
</select>
<!-- 查询议题信息【根据客户,dateId 】 -->
<select id="selectIssueInfo" resultType="com.epmet.dto.extract.result.IssueInfoResultDTO">

10
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/partymember/PartyMemberDao.xml

@ -19,4 +19,14 @@
AND CUSTOMER_ID = #{customerId}
AND DATE_FORMAT( UPDATED_TIME, '%Y%m%d' ) = #{dateId}
</select>
<select id="selectPartyMemberByCustomer" resultType="com.epmet.dto.party.PartyMemberDTO">
SELECT GRID_ID,
USER_ID
FROM
partymember_register_relation
WHERE
CUSTOMER_ID = #{customerId}
AND (FIRST_REGISTER = 1 OR REGISTER = 1)
</select>
</mapper>

20
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml

@ -76,5 +76,25 @@
AND CUSTOMER_ID = #{customerId}
AND DATE_FORMAT(UPDATED_TIME, '%Y-%m-%d') = #{date}
</select>
<select id="selectProjectInfo" resultType="com.epmet.dto.ProjectDTO">
SELECT
ID,
CUSTOMER_ID,
AGENCY_ID,
ORIGIN_ID,
STATUS,
CLOSED_STATUS,
ORG_ID_PATH,
CREATED_TIME,
UPDATED_TIME
FROM project
WHERE
DEL_FLAG = '0'
AND ORIGIN = 'issue'
AND CUSTOMER_ID = #{customerId}
<if test="date != null and date.trim() != ''">
AND DATE_FORMAT(CREATED_TIME, '%Y-%m-%d') = #{date}
</if>
</select>
</mapper>

55
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml

@ -19,5 +19,60 @@
<![CDATA[AND DATE_FORMAT(pro.created_time, "%Y-%m-%d") <= DATE_FORMAT(#{createdTime}, "%Y-%m-%d")]]>
ORDER BY pro.project_id,pro.CREATED_TIME ASC
</select>
<select id="selectProcessListByCustomer" resultType="com.epmet.dto.project.ProcessInfoDTO">
SELECT
p.AGENCY_ID,
pp.PROJECT_ID,
pp.OPERATION,
pp.STAFF_ID,
pp.CREATED_TIME
FROM project_process pp
INNER JOIN project p ON pp.PROJECT_ID = p.ID
WHERE p.CUSTOMER_ID = #{customerId}
<if test="date != null and date.trim() != ''">
AND DATE_FORMAT(pp.CREATED_TIME, '%Y-%m-%d') = #{date}
</if>
</select>
<select id="selectProcessStaffByCustomer" resultType="com.epmet.dto.project.ProcessInfoDTO">
SELECT
p.AGENCY_ID,
pp.PROJECT_ID,
pp.OPERATION,
ps.STAFF_ID,
pp.CREATED_TIME
FROM project_staff ps
INNER JOIN project_process pp ON ps.PROCESS_ID = pp.ID
INNER JOIN project p ON pp.PROJECT_ID = p.ID
WHERE p.CUSTOMER_ID = #{customerId}
<if test="date != null and date.trim() != ''">
AND DATE_FORMAT(pp.CREATED_TIME, '%Y-%m-%d') = #{date}
</if>
</select>
<select id="selectSatisfactionRecordByCustomer" resultType="com.epmet.dto.project.ProcessInfoDTO">
SELECT
p.AGENCY_ID,
psd.PROJECT_ID,
psd.SATISFACTION AS "operation",
psd.CREATED_BY AS "staffId",
psd.CREATED_TIME
FROM project_satisfaction_detail psd
INNER JOIN project p ON psd.PROJECT_ID = p.ID
WHERE p.CUSTOMER_ID = #{customerId}
<if test="date != null and date.trim() != ''">
AND DATE_FORMAT(psd.CREATED_TIME, '%Y-%m-%d') = #{date}
</if>
</select>
<select id="selectClosedProjectList" resultType="com.epmet.entity.project.ProjectProcessEntity">
SELECT
pp.PROJECT_ID,
pp.CREATED_TIME
FROM project_process pp
INNER JOIN project p ON pp.PROJECT_ID = p.ID
WHERE p.CUSTOMER_ID = #{customerId}
AND pp.OPERATION = 'close'
<if test="date != null and date.trim() != ''">
AND DATE_FORMAT(pp.CREATED_TIME, '%Y-%m-%d') = #{date}
</if>
</select>
</mapper>

12
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/topic/TopicDao.xml

@ -128,6 +128,18 @@
order by TOPIC_ID
</select>
<select id="selectTopicByIds" resultType="com.epmet.dto.topic.ResiTopicDTO" parameterType="java.util.List">
SELECT
rt.ID,
rg.GRID_ID,
rt.CREATED_BY
FROM resi_topic rt
LEFT JOIN resi_group rg ON rg.ID = rt.GROUP_ID
WHERE 1=1
<foreach collection="ids" item="item" open="AND( " separator=" OR " index="index" close=")">
rt.ID = #{item}
</foreach>
</select>
<!-- 查询话题创建者信息 -->
<select id="selectTopicInfo" resultType="com.epmet.dto.extract.result.TopicInfoResultDTO">

Loading…
Cancel
Save