Browse Source

项目主表网格相关sql修改,主表数据提取修改

dev_shibei_match
zhaoqifeng 4 years ago
parent
commit
1372bffd2f
  1. 10
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactOriginProjectMainDailyDTO.java
  2. 3
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/constant/ProjectConstant.java
  3. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactOriginProjectMainDailyEntity.java
  4. 49
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java
  5. 5
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectCategoryDailyDao.xml
  6. 1
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml
  7. 10
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml
  8. 4
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml

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

@ -103,6 +103,16 @@ public class FactOriginProjectMainDailyDTO implements Serializable {
*/ */
private String agencyId; private String agencyId;
/**
* 来源议题issue
*/
private String origin;
/**
* 来源ID
*/
private String originId;
/** /**
* 状态 * 状态
*/ */

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

@ -64,4 +64,7 @@ public interface ProjectConstant {
String XIA_JI = "xiaji"; String XIA_JI = "xiaji";
String GRID_ID = "GRID_ID"; String GRID_ID = "GRID_ID";
String AGENCY_ID = "AGENCY_ID"; String AGENCY_ID = "AGENCY_ID";
String ISSUE = "issue";
} }

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

@ -103,6 +103,16 @@ public class FactOriginProjectMainDailyEntity extends BaseEpmetEntity {
*/ */
private String agencyId; private String agencyId;
/**
* 来源议题issue
*/
private String origin;
/**
* 来源ID
*/
private String originId;
/** /**
* 状态 * 状态
*/ */

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

@ -128,7 +128,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
factOriginProjectMainDailyService.deleteByDate(customerId, dateString); factOriginProjectMainDailyService.deleteByDate(customerId, dateString);
if (!CollectionUtils.isEmpty(projectList)) { if (!CollectionUtils.isEmpty(projectList)) {
//提取议题ID //提取议题ID
List<String> issueIds = projectList.stream().map(ProjectDTO::getOriginId).collect(Collectors.toList()); List<String> issueIds =
projectList.stream().filter(item -> ProjectConstant.ISSUE.equals(item.getOrigin())).map(ProjectDTO::getOriginId).collect(Collectors.toList());
//获取议题信息 //获取议题信息
List<IssueDTO> issueList = issueService.getIssueInfoByIds(issueIds); List<IssueDTO> issueList = issueService.getIssueInfoByIds(issueIds);
//提取话题ID //提取话题ID
@ -144,18 +145,28 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity(); FactOriginProjectMainDailyEntity entity = new FactOriginProjectMainDailyEntity();
entity.setId(project.getId()); entity.setId(project.getId());
entity.setAgencyId(project.getAgencyId()); entity.setAgencyId(project.getAgencyId());
entity.setOrigin(project.getOrigin());
entity.setOriginId(project.getOriginId());
entity.setCustomerId(customerId); entity.setCustomerId(customerId);
entity.setYearId(dimId.getYearId()); entity.setYearId(dimId.getYearId());
entity.setQuarterId(dimId.getQuarterId()); entity.setQuarterId(dimId.getQuarterId());
entity.setMonthId(dimId.getMonthId()); entity.setMonthId(dimId.getMonthId());
entity.setWeekId(dimId.getWeekId()); entity.setWeekId(dimId.getWeekId());
entity.setDateId(dimId.getDateId()); entity.setDateId(dimId.getDateId());
entity.setIssueId(project.getOriginId()); if (ProjectConstant.ISSUE.equals(project.getOrigin())) {
entity.setIssueId(project.getOriginId());
} else {
entity.setIssueId("");
}
entity.setProjectStatus(project.getStatus()); entity.setProjectStatus(project.getStatus());
entity.setIsResolved(project.getClosedStatus()); entity.setIsResolved(project.getClosedStatus());
entity.setCreatedTime(project.getCreatedTime()); entity.setCreatedTime(project.getCreatedTime());
entity.setUpdatedTime(project.getUpdatedTime()); entity.setUpdatedTime(project.getUpdatedTime());
entity.setPids(project.getOrgIdPath()); entity.setPids(project.getOrgIdPath());
entity.setIssueCreatorId("");
entity.setTopicId("");
entity.setTopicCreatorId("");
entity.setGridId("");
String[] pIds = project.getOrgIdPath().split(StrConstant.COLON); String[] pIds = project.getOrgIdPath().split(StrConstant.COLON);
if (pIds.length > 1) { if (pIds.length > 1) {
entity.setPid(pIds[pIds.length - 2]); entity.setPid(pIds[pIds.length - 2]);
@ -168,17 +179,23 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setIsOverdue(NumConstant.ZERO_STR); entity.setIsOverdue(NumConstant.ZERO_STR);
return entity; return entity;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
list.forEach(entity -> issueList.stream().filter(issueDTO -> issueDTO.getId().equals(entity.getIssueId())).forEach(issue -> { if (CollectionUtils.isNotEmpty(issueList)) {
entity.setIssueCreatorId(issue.getCreatedBy()); list.forEach(entity -> issueList.stream().filter(issueDTO -> issueDTO.getId().equals(entity.getIssueId())).forEach(issue -> {
entity.setTopicId(issue.getSourceId()); 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()); if (CollectionUtils.isNotEmpty(topicList)) {
})); list.forEach(entity -> topicList.stream().filter(topicDTO -> topicDTO.getId().equals(entity.getTopicId())).forEach(topic -> {
list.forEach(entity -> partyMemberList.stream().filter(partyMemberDTO -> partyMemberDTO.getGridId().equals(entity.getGridId()) && partyMemberDTO.getUserId().equals(entity.getTopicCreatorId())).forEach(partyMember -> { entity.setTopicCreatorId(topic.getCreatedBy());
entity.setIsParty(NumConstant.ONE_STR); entity.setGridId(topic.getGridId());
})); }));
}
if (CollectionUtils.isNotEmpty(partyMemberList)) {
list.forEach(entity -> partyMemberList.stream().filter(partyMemberDTO -> partyMemberDTO.getGridId().equals(entity.getGridId()) && partyMemberDTO.getUserId().equals(entity.getTopicCreatorId())).forEach(partyMember -> {
entity.setIsParty(NumConstant.ONE_STR);
}));
}
list.forEach(entity -> finishOrgList.stream().filter(finish -> entity.getId().equals(finish.getProjectId())).forEach(dto -> { list.forEach(entity -> finishOrgList.stream().filter(finish -> entity.getId().equals(finish.getProjectId())).forEach(dto -> {
String[] orgIds = dto.getPIdPath().split(StrConstant.COLON); String[] orgIds = dto.getPIdPath().split(StrConstant.COLON);
String org = ""; String org = "";
@ -228,6 +245,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setOrgId(process.getGridId()); entity.setOrgId(process.getGridId());
entity.setPid(process.getAgencyId()); entity.setPid(process.getAgencyId());
}else{ }else{
entity.setOrgType(OrgTypeConstant.AGENCY);
entity.setOrgId(process.getAgencyId());
if(!process.getPids().contains(StrConstant.COLON)){ if(!process.getPids().contains(StrConstant.COLON)){
entity.setPids(""); entity.setPids("");
entity.setPid(NumConstant.ZERO_STR); entity.setPid(NumConstant.ZERO_STR);
@ -278,6 +297,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setOrgId(process.getGridId()); entity.setOrgId(process.getGridId());
entity.setPid(process.getAgencyId()); entity.setPid(process.getAgencyId());
} else { } else {
entity.setOrgType(OrgTypeConstant.AGENCY);
entity.setOrgId(process.getAgencyId());
if (!process.getPids().contains(StrConstant.COLON)) { if (!process.getPids().contains(StrConstant.COLON)) {
entity.setPids(""); entity.setPids("");
entity.setPid(NumConstant.ZERO_STR); entity.setPid(NumConstant.ZERO_STR);
@ -358,6 +379,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setOrgId(process.getGridId()); entity.setOrgId(process.getGridId());
entity.setPid(process.getAgencyId()); entity.setPid(process.getAgencyId());
}else{ }else{
entity.setOrgType(OrgTypeConstant.AGENCY);
entity.setOrgId(process.getAgencyId());
if(!process.getPids().contains(StrConstant.COLON)){ if(!process.getPids().contains(StrConstant.COLON)){
entity.setPids(""); entity.setPids("");
entity.setPid(NumConstant.ZERO_STR); entity.setPid(NumConstant.ZERO_STR);

5
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectCategoryDailyDao.xml

@ -27,11 +27,12 @@
count(1)as projectTotal count(1)as projectTotal
FROM FROM
fact_origin_project_category_daily c fact_origin_project_category_daily c
LEFT JOIN fact_origin_project_main_daily p ON ( c.PROJECT_Id = p.id and p.del_flag='0') LEFT JOIN fact_origin_project_main_daily p ON ( c.PROJECT_Id = p.id and p.del_flag='0' AND p.GRID_ID != '')
WHERE WHERE
c.DEL_FLAG = '0' c.DEL_FLAG = '0'
AND c.CUSTOMER_ID = #{customerId} AND c.CUSTOMER_ID = #{customerId}
AND c.`LEVEL` = '2' AND c.`LEVEL` = '2'
GROUP BY GROUP BY
c.CUSTOMER_ID, c.CUSTOMER_ID,
c.CATEGORY_CODE, c.CATEGORY_CODE,
@ -50,7 +51,7 @@
count(distinct c.project_id)as projectTotal count(distinct c.project_id)as projectTotal
FROM FROM
fact_origin_project_category_daily c fact_origin_project_category_daily c
LEFT JOIN fact_origin_project_main_daily p ON ( c.PROJECT_Id = p.id and p.del_flag='0') LEFT JOIN fact_origin_project_main_daily p ON ( c.PROJECT_Id = p.id and p.del_flag='0' AND p.GRID_ID != '')
WHERE WHERE
c.DEL_FLAG = '0' c.DEL_FLAG = '0'
AND c.CUSTOMER_ID = #{customerId} AND c.CUSTOMER_ID = #{customerId}

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

@ -388,6 +388,7 @@
WHERE fm.CUSTOMER_ID = #{customerId} WHERE fm.CUSTOMER_ID = #{customerId}
AND fm.MONTH_ID = #{monthId} AND fm.MONTH_ID = #{monthId}
AND fm.PROJECT_STATUS = 'closed' AND fm.PROJECT_STATUS = 'closed'
AND fm.GRID_ID != ''
) a ) a
GROUP BY GROUP BY
GRID_ID GRID_ID

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

@ -97,6 +97,7 @@
fact_origin_project_main_daily fact_origin_project_main_daily
WHERE WHERE
DEL_FLAG = 0 DEL_FLAG = 0
AND GRID_ID != ''
AND PROJECT_STATUS = #{status} AND PROJECT_STATUS = #{status}
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId} AND MONTH_ID = #{monthId}
@ -121,6 +122,7 @@
fact_origin_project_main_daily t1 fact_origin_project_main_daily t1
WHERE WHERE
t1.DEL_FLAG = '0' t1.DEL_FLAG = '0'
AND t1.TOPIC_CREATOR_ID != ''
AND t1.CUSTOMER_ID = #{customerId} AND t1.CUSTOMER_ID = #{customerId}
AND t1.MONTH_ID = #{monthId} AND t1.MONTH_ID = #{monthId}
AND ISNULL(T1.TOPIC_CREATOR_ID)=0 AND ISNULL(T1.TOPIC_CREATOR_ID)=0
@ -269,6 +271,7 @@
fact_origin_project_main_daily fm fact_origin_project_main_daily fm
WHERE WHERE
fm.PROJECT_STATUS = 'close' fm.PROJECT_STATUS = 'close'
AND fm.GRID_ID != ''
AND fm.CUSTOMER_ID = #{customerId} AND fm.CUSTOMER_ID = #{customerId}
AND fm.MONTH_ID = #{monthId} AND fm.MONTH_ID = #{monthId}
GROUP BY GROUP BY
@ -281,6 +284,7 @@
fact_origin_project_main_daily fm fact_origin_project_main_daily fm
WHERE WHERE
fm.PROJECT_STATUS = 'close' fm.PROJECT_STATUS = 'close'
AND fm.GRID_ID != ''
AND fm.CUSTOMER_ID = #{customerId} AND fm.CUSTOMER_ID = #{customerId}
AND fm.MONTH_ID = #{monthId} AND fm.MONTH_ID = #{monthId}
AND fm.IS_RESOLVED = 'resolved' AND fm.IS_RESOLVED = 'resolved'
@ -297,6 +301,7 @@
1=1 1=1
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId} AND MONTH_ID = #{monthId}
AND GRID_ID != ''
GROUP BY GRID_ID GROUP BY GRID_ID
</select> </select>
<select id="getOrgProjectCount" resultType="com.epmet.dto.extract.result.OrgStatisticsResultDTO"> <select id="getOrgProjectCount" resultType="com.epmet.dto.extract.result.OrgStatisticsResultDTO">
@ -455,6 +460,7 @@
FROM fact_origin_project_main_daily FROM fact_origin_project_main_daily
WHERE DEL_FLAG = 0 WHERE DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND GRID_ID != ''
<if test="dateId != null and dateId != '' "> <if test="dateId != null and dateId != '' ">
AND DATE_ID <![CDATA[ <= ]]> #{dateId} AND DATE_ID <![CDATA[ <= ]]> #{dateId}
</if> </if>
@ -475,6 +481,7 @@
AND DATE_ID <![CDATA[ <= ]]> #{dateId} AND DATE_ID <![CDATA[ <= ]]> #{dateId}
AND PROJECT_STATUS = 'closed' AND PROJECT_STATUS = 'closed'
AND IS_RESOLVED = 'resolved' AND IS_RESOLVED = 'resolved'
AND GRID_ID != ''
GROUP BY GRID_ID GROUP BY GRID_ID
</select> </select>
@ -506,6 +513,7 @@
WHERE DEL_FLAG = 0 WHERE DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId} AND MONTH_ID = #{monthId}
AND GRID_ID != ''
GROUP BY GRID_ID GROUP BY GRID_ID
</select> </select>
@ -518,6 +526,7 @@
WHERE DEL_FLAG = 0 WHERE DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND MONTH_ID <![CDATA[ <= ]]> #{monthId} AND MONTH_ID <![CDATA[ <= ]]> #{monthId}
AND GRID_ID != ''
<if test="status == 'unClosed' "> <if test="status == 'unClosed' ">
AND PROJECT_STATUS != 'closed' AND PROJECT_STATUS != 'closed'
</if> </if>
@ -538,6 +547,7 @@
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId} AND MONTH_ID = #{monthId}
AND PROJECT_STATUS = 'closed' AND PROJECT_STATUS = 'closed'
AND GRID_ID != ''
GROUP BY GRID_ID GROUP BY GRID_ID
</select> </select>

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

@ -24,7 +24,6 @@
FROM project FROM project
WHERE WHERE
DEL_FLAG = '0' DEL_FLAG = '0'
AND ORIGIN = 'issue'
AND STATUS = 'closed' AND STATUS = 'closed'
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND DATE_FORMAT(UPDATED_TIME, '%Y-%m-%d') <![CDATA[ <= ]]> #{date} AND DATE_FORMAT(UPDATED_TIME, '%Y-%m-%d') <![CDATA[ <= ]]> #{date}
@ -41,7 +40,6 @@
FROM project FROM project
WHERE WHERE
DEL_FLAG = '0' DEL_FLAG = '0'
AND ORIGIN = 'issue'
AND STATUS = 'closed' AND STATUS = 'closed'
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
AND DATE_FORMAT(UPDATED_TIME, '%Y-%m-%d') = #{date} AND DATE_FORMAT(UPDATED_TIME, '%Y-%m-%d') = #{date}
@ -81,6 +79,7 @@
ID, ID,
CUSTOMER_ID, CUSTOMER_ID,
AGENCY_ID, AGENCY_ID,
ORIGIN,
ORIGIN_ID, ORIGIN_ID,
STATUS, STATUS,
CLOSED_STATUS, CLOSED_STATUS,
@ -90,7 +89,6 @@
FROM project FROM project
WHERE WHERE
DEL_FLAG = '0' DEL_FLAG = '0'
AND ORIGIN = 'issue'
AND CUSTOMER_ID = #{customerId} AND CUSTOMER_ID = #{customerId}
<if test="date != null and date.trim() != ''"> <if test="date != null and date.trim() != ''">
AND DATE_FORMAT(CREATED_TIME, '%Y%m%d') = #{date} AND DATE_FORMAT(CREATED_TIME, '%Y%m%d') = #{date}

Loading…
Cancel
Save