Browse Source

Merge remote-tracking branch 'remotes/origin/dev_screen_data' into dev

dev_shibei_match
jianjun 5 years ago
parent
commit
c79b746970
  1. 12
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/GridProjectCountRankResultDTO.java
  2. 14
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/GridProjectCountResultDTO.java
  3. 9
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectAvgClosedTimeResultDTO.java
  4. 10
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectCategoryAnalysisResultDTO.java
  5. 23
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectSatisfaction.java
  6. 17
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectSummaryResultDTO.java
  7. 19
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/controller/test/TestController.java
  8. 67
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/KcScreenController.java
  9. 4
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screenkc/ScreenKcProjectCategoryGridDailyDao.java
  10. 10
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screenkc/ScreenKcProjectSummaryGridDailyDao.java
  11. 15
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/KcScreenService.java
  12. 43
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/KcScreenServiceImpl.java
  13. 15
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screenkc/ScreenKcProjectCategoryGridDailyDao.xml
  14. 50
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screenkc/ScreenKcProjectSummaryGridDailyDao.xml
  15. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/IndexCalculateController.java

12
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/GridProjectCountRankResultDTO.java

@ -0,0 +1,12 @@
package com.epmet.dto.result.project;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class GridProjectCountRankResultDTO {
private List<String> gridNameDataList = new ArrayList<>();
private List<Integer> projectCountDataList = new ArrayList<>();
}

14
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/GridProjectCountResultDTO.java

@ -0,0 +1,14 @@
package com.epmet.dto.result.project;
import lombok.Data;
import java.util.List;
@Data
public class GridProjectCountResultDTO {
private String gridId;
private String gridName;
private Integer projectCount;
}

9
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectAvgClosedTimeResultDTO.java

@ -0,0 +1,9 @@
package com.epmet.dto.result.project;
import lombok.Data;
@Data
public class ProjectAvgClosedTimeResultDTO {
private String gridName;
private Integer avgClosedCaseTime;
}

10
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectCategoryAnalysisResultDTO.java

@ -0,0 +1,10 @@
package com.epmet.dto.result.project;
import lombok.Data;
@Data
public class ProjectCategoryAnalysisResultDTO {
private String categoryId;
private String categoryName;
private Integer projectCount;
}

23
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectSatisfaction.java

@ -0,0 +1,23 @@
package com.epmet.dto.result.project;
import lombok.Data;
import java.util.List;
@Data
public class ProjectSatisfaction {
private List<String> xAxis;
private List<Integer> greatSatisDataList;
private List<Integer> goodStatisDataList;
private List<Integer> disStatisDataList;
private String monthId;
private String monthName;
// 满意
private Integer goodSatis;
// 非常满意
private Integer greatSatis;
// 不满意
private Integer disSatis;
}

17
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/project/ProjectSummaryResultDTO.java

@ -0,0 +1,17 @@
package com.epmet.dto.result.project;
import lombok.Data;
@Data
public class ProjectSummaryResultDTO {
private String dateId;
private Integer projectCount;
private Integer processingCount;
private Integer closedCount;
private Integer moveCount;
private Integer closedCaseCount;
private Integer projectViewCount;
private Integer voteCount;
}

19
epmet-module/data-report/data-report-server/src/main/java/com/epmet/controller/test/TestController.java

@ -1,19 +0,0 @@
package com.epmet.controller.test;
import com.epmet.commons.extappauth.annotation.ExternalAppRequestAuth;
import com.epmet.commons.extappauth.bean.ExternalAppRequestParam;
import com.epmet.commons.tools.utils.Result;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("test")
public class TestController {
@ExternalAppRequestAuth
@RequestMapping("/test")
public Result test(ExternalAppRequestParam externalAppRequestParam, String ext) {
return new Result().ok("调用成功,客户信息:"+externalAppRequestParam);
}
}

67
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/KcScreenController.java

@ -6,6 +6,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.datareport.service.evaluationindex.screen.KcScreenService;
import com.epmet.dto.result.issue.IssueGridTotalRankDTO;
import com.epmet.dto.result.project.*;
import com.epmet.evaluationindex.screen.dto.form.GroupTopicShiftIssueRatioRankFormDTO;
import com.epmet.evaluationindex.screen.dto.form.GroupUserCountRankFormDTO;
import com.epmet.evaluationindex.screen.dto.form.HeartVolunteerrankFormDTO;
@ -219,5 +220,71 @@ public class KcScreenController {
return new Result<List<GroupTopicShiftIssueRatioRankResultDTO>>().ok(kcScreenService.groupTopicShiftIssueRatioRank(formDTO));
}
/**
* 项目各类总数汇总
* @param externalAppRequestParam
* @return
*/
@ExternalAppRequestAuth
@PostMapping("project/summary")
public Result<ProjectSummaryResultDTO> getProjectSummary(ExternalAppRequestParam externalAppRequestParam){
//String customerId = "2fe0065f70ca0e23ce4c26fca5f1d933";
String customerId = externalAppRequestParam.getCustomerId();
return new Result<ProjectSummaryResultDTO>().ok(kcScreenService.getProjectSummary(customerId));
}
/**
* 项目分析-网格下项目数量排名
* @param externalAppRequestParam
* @return
*/
@ExternalAppRequestAuth
@PostMapping("project/gridcountrank")
public Result<GridProjectCountRankResultDTO> getProjectGridCountRank(ExternalAppRequestParam externalAppRequestParam){
//String customerId = "2fe0065f70ca0e23ce4c26fca5f1d933";
String customerId = externalAppRequestParam.getCustomerId();
return new Result<GridProjectCountRankResultDTO>().ok(kcScreenService.getGridProjectCountRank(customerId));
}
/**
* 项目分析-项目类别
* @param externalAppRequestParam
* @return
*/
@ExternalAppRequestAuth
@PostMapping("project/categoryanalysis")
public Result<List<ProjectCategoryAnalysisResultDTO>> getProjectCategoryAnalysis(ExternalAppRequestParam externalAppRequestParam){
//String customerId = "2fe0065f70ca0e23ce4c26fca5f1d933";
String customerId = externalAppRequestParam.getCustomerId();
return new Result<List<ProjectCategoryAnalysisResultDTO>>().ok(kcScreenService.getProjectCategoryAnalysis(customerId));
}
/**
* 网格项目平均结案时间
* @param externalAppRequestParam
* @return
*/
@ExternalAppRequestAuth
@PostMapping("project/avgclosedtimeanalysis")
public Result<List<ProjectAvgClosedTimeResultDTO>> getGridProjectAvgClosedTimeAnalysis(ExternalAppRequestParam externalAppRequestParam){
//String customerId = "2fe0065f70ca0e23ce4c26fca5f1d933";
String customerId = externalAppRequestParam.getCustomerId();
return new Result<List<ProjectAvgClosedTimeResultDTO>>().ok(kcScreenService.getGridProjectAvgClosedTimeAnalysis(customerId));
}
/**
* 项目分析-居民满意度
* @param externalAppRequestParam
* @return
*/
//@ExternalAppRequestAuth
@PostMapping("project/statis")
public Result<ProjectSatisfaction> getProjectSatisfactionAnalyze(ExternalAppRequestParam externalAppRequestParam){
String customerId = "2fe0065f70ca0e23ce4c26fca5f1d933";
//String customerId = externalAppRequestParam.getCustomerId();
return new Result<ProjectSatisfaction>().ok(kcScreenService.getProjectSatisfactionAnalyze(customerId));
}
}

4
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screenkc/ScreenKcProjectCategoryGridDailyDao.java

@ -17,8 +17,11 @@
package com.epmet.datareport.dao.evaluationindex.screenkc;
import com.epmet.dto.result.project.ProjectCategoryAnalysisResultDTO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* KC-项目按分类统计上报总数(先根据customerId+dateId删除)
*
@ -28,4 +31,5 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ScreenKcProjectCategoryGridDailyDao {
List<ProjectCategoryAnalysisResultDTO> listProjectCountGroupByCategory(String customerId);
}

10
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screenkc/ScreenKcProjectSummaryGridDailyDao.java

@ -17,8 +17,13 @@
package com.epmet.datareport.dao.evaluationindex.screenkc;
import com.epmet.dto.result.project.GridProjectCountResultDTO;
import com.epmet.dto.result.project.ProjectAvgClosedTimeResultDTO;
import com.epmet.dto.result.project.ProjectSummaryResultDTO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* KC-项目分析(各类总数先根据customerId+dateId删除后插入)
*
@ -28,4 +33,9 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ScreenKcProjectSummaryGridDailyDao {
List<GridProjectCountResultDTO> getGridProjectCountRank(String customerId);
ProjectSummaryResultDTO getProjectSummary(String customerId);
List<ProjectAvgClosedTimeResultDTO> getGridProjectAvgClosedTimeAnalysis(String customerId);
}

15
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/KcScreenService.java

@ -2,6 +2,7 @@ package com.epmet.datareport.service.evaluationindex.screen;
import com.epmet.commons.extappauth.bean.ExternalAppRequestParam;
import com.epmet.dto.result.issue.*;
import com.epmet.dto.result.project.*;
import com.epmet.evaluationindex.screen.dto.form.GroupTopicShiftIssueRatioRankFormDTO;
import com.epmet.evaluationindex.screen.dto.form.GroupUserCountRankFormDTO;
import com.epmet.evaluationindex.screen.dto.form.HeartVolunteerrankFormDTO;
@ -98,4 +99,18 @@ public interface KcScreenService {
* @author sun
*/
List<GroupTopicShiftIssueRatioRankResultDTO> groupTopicShiftIssueRatioRank(GroupTopicShiftIssueRatioRankFormDTO formDTO);
/**
* 项目各类总数
* @param customerId
* @return
*/
ProjectSummaryResultDTO getProjectSummary(String customerId);
GridProjectCountRankResultDTO getGridProjectCountRank(String customerId);
List<ProjectCategoryAnalysisResultDTO> getProjectCategoryAnalysis(String customerId);
List<ProjectAvgClosedTimeResultDTO> getGridProjectAvgClosedTimeAnalysis(String customerId);
ProjectSatisfaction getProjectSatisfactionAnalyze(String customerId);
}

43
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/KcScreenServiceImpl.java

@ -8,6 +8,7 @@ import com.epmet.datareport.dao.evaluationindex.screenkc.*;
import com.epmet.datareport.service.evaluationindex.screen.KcScreenService;
import com.epmet.datareport.utils.DateUtils;
import com.epmet.dto.result.issue.*;
import com.epmet.dto.result.project.*;
import com.epmet.evaluationindex.screen.dto.form.GroupTopicShiftIssueRatioRankFormDTO;
import com.epmet.evaluationindex.screen.dto.form.GroupUserCountRankFormDTO;
import com.epmet.evaluationindex.screen.dto.form.HeartVolunteerrankFormDTO;
@ -15,8 +16,6 @@ import com.epmet.evaluationindex.screen.dto.result.*;
import com.epmet.evaluationindex.screen.dto.result.HomepageSummaryResultDTO;
import com.epmet.dto.result.issue.KcIssueSummary;
import com.epmet.dto.result.issue.KcPartiTrendResultDTO;
import com.epmet.evaluationindex.screen.dto.form.HeartVolunteerrankFormDTO;
import com.epmet.evaluationindex.screen.dto.result.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -63,6 +62,15 @@ public class KcScreenServiceImpl implements KcScreenService {
@Autowired
private ScreenKcGroupDetailGridDailyDao screenKcGroupDetailGridDailyDao;
@Autowired
private ScreenKcProjectSummaryGridDailyDao screenKcProjectSummaryGridDailyDao;
@Autowired
private ScreenKcProjectCategoryGridDailyDao screenKcProjectCategoryGridDailyDao;
@Autowired
private ScreenKcProjectSummaryGridDailyDao projectSummaryGridDailyDao;
/**
* @param externalAppRequestParam
* @Description 首页-平台各类总数
@ -284,4 +292,35 @@ public class KcScreenServiceImpl implements KcScreenService {
return list;
}
@Override
public ProjectSummaryResultDTO getProjectSummary(String customerId) {
return projectSummaryGridDailyDao.getProjectSummary(customerId);
}
@Override
public GridProjectCountRankResultDTO getGridProjectCountRank(String customerId) {
List<GridProjectCountResultDTO> gridCounts = screenKcProjectSummaryGridDailyDao.getGridProjectCountRank(customerId);
GridProjectCountRankResultDTO rankResult = new GridProjectCountRankResultDTO();
gridCounts.stream().forEach(gc -> {
rankResult.getGridNameDataList().add(gc.getGridName());
rankResult.getProjectCountDataList().add(gc.getProjectCount());
});
return rankResult;
}
@Override
public List<ProjectCategoryAnalysisResultDTO> getProjectCategoryAnalysis(String customerId) {
return screenKcProjectCategoryGridDailyDao.listProjectCountGroupByCategory(customerId);
}
@Override
public List<ProjectAvgClosedTimeResultDTO> getGridProjectAvgClosedTimeAnalysis(String customerId) {
return screenKcProjectSummaryGridDailyDao.getGridProjectAvgClosedTimeAnalysis(customerId);
}
@Override
public ProjectSatisfaction getProjectSatisfactionAnalyze(String customerId) {
return null;
}
}

15
epmet-module/data-report/data-report-server/src/main/resources/mapper/screenkc/ScreenKcProjectCategoryGridDailyDao.xml

@ -4,4 +4,19 @@
<mapper namespace="com.epmet.datareport.dao.evaluationindex.screenkc.ScreenKcProjectCategoryGridDailyDao">
<select id="listProjectCountGroupByCategory"
resultType="com.epmet.dto.result.project.ProjectCategoryAnalysisResultDTO">
select CATEGORY_ID categoryId,
CATEGORY_NAME categoryName,
sum(pcd.PROJECT_COUNT) projectCount
from screen_kc_project_category_grid_daily pcd
inner join (
select t.CUSTOMER_ID, max(DATE_ID) MAX_DATE_ID
from screen_kc_project_category_grid_daily t
where CUSTOMER_ID = #{customerId}
) latest on (pcd.CUSTOMER_ID = latest.CUSTOMER_ID and pcd.DATE_ID = latest.MAX_DATE_ID)
where pcd.DEL_FLAG = 0
group by CATEGORY_ID
order by projectCount desc;
</select>
</mapper>

50
epmet-module/data-report/data-report-server/src/main/resources/mapper/screenkc/ScreenKcProjectSummaryGridDailyDao.xml

@ -3,4 +3,54 @@
<mapper namespace="com.epmet.datareport.dao.evaluationindex.screenkc.ScreenKcProjectSummaryGridDailyDao">
<!--项目各类总数-->
<select id="getProjectSummary" resultType="com.epmet.dto.result.project.ProjectSummaryResultDTO">
select SUM(PROJECT_COUNT) projectCount,
SUM(PROCESSING_COUNT) processingCount,
SUM(CLOSED_COUNT) closedCount,
SUM(MOVE_COUNT) moveCount,
SUM(CLOSED_CASE_COUNT) closedCaseCount,
SUM(PROJECT_VIEW_COUNT) projectViewCount,
SUM(VOTE_COUNT) voteCount,
DATE_ID dateId
from screen_kc_project_summary_grid_daily psd
inner join (
select CUSTOMER_ID, max(DATE_ID) MAX_DATE_ID
from screen_kc_project_summary_grid_daily
where CUSTOMER_ID = #{customerId}
) latest on (psd.CUSTOMER_ID = latest.CUSTOMER_ID and psd.DATE_ID = latest.MAX_DATE_ID)
where DEL_FLAG = 0
</select>
<!--网格议题数量排名-->
<select id="getGridProjectCountRank" resultType="com.epmet.dto.result.project.GridProjectCountResultDTO">
select
psd.GRID_ID gridId,
psd.GRID_NAME gridName,
psd.PROJECT_COUNT projectCount
from screen_kc_project_summary_grid_daily psd
inner join (
select CUSTOMER_ID, max(DATE_ID) MAX_DATE_ID
from screen_kc_project_summary_grid_daily
where CUSTOMER_ID = #{customerId}
) latest on (psd.CUSTOMER_ID = latest.CUSTOMER_ID and psd.DATE_ID = latest.MAX_DATE_ID)
where DEL_FLAG = 0
order by psd.PROJECT_COUNT desc
</select>
<!--网格的项目平均结案时间分析-->
<select id="getGridProjectAvgClosedTimeAnalysis"
resultType="com.epmet.dto.result.project.ProjectAvgClosedTimeResultDTO">
select pcd.GRID_ID gridId,
pcd.GRID_NAME gridName,
pcd.AVG_CLOSED_CASE_TIME avgClosedCaseTime
from screen_kc_project_summary_grid_daily pcd
inner join (
select t.CUSTOMER_ID, max(DATE_ID) MAX_DATE_ID
from screen_kc_project_summary_grid_daily t
where CUSTOMER_ID = #{customerId}
) latest on (pcd.CUSTOMER_ID = latest.CUSTOMER_ID and pcd.DATE_ID = latest.MAX_DATE_ID)
where pcd.DEL_FLAG = 0
order by avgClosedCaseTime asc
</select>
</mapper>

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/IndexCalculateController.java

@ -175,7 +175,7 @@ public class IndexCalculateController {
* @param form
* @return
*/
@ExternalAppRequestAuth
//@ExternalAppRequestAuth
@PostMapping("stopcalculate")
public Result stopcalculate(@RequestBody CalculateCommonFormDTO form) {
ValidatorUtils.validateEntity(form);

Loading…
Cancel
Save