springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/AnalyticStatisticsController.java
@@ -171,7 +171,7 @@ List<AnalyticStatisticsTwoVo> analyticStatisticsTwoVos =complaintService.analyticStatisticsTwo(query.getTime(),complaints,simpleDateFormat); // 第三部分数据 List<AnalyticStatisticsThreeVo> analyticStatisticsThreeVos =complaintService.analyticStatisticsThree(query,complaints); List<AnalyticStatisticsThreeVo> analyticStatisticsThreeVos =complaintService.analyticStatisticsThree(query.getRank(), complaints); // 第四部分数据 AnalyticStatisticsFourVo analyticStatisticsFourVos =complaintService.analyticStatisticsFour(complaints); springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/controller/StaticsController.java
@@ -8,7 +8,9 @@ import com.panzhihua.sangeshenbian.model.entity.ComAct; import com.panzhihua.sangeshenbian.model.query.AnalyticStatisticsQuery; import com.panzhihua.sangeshenbian.model.query.AppStaticsQuery; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsFourVo; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsOneVo; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsThreeVo; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsTwoVo; import com.panzhihua.sangeshenbian.model.vo.RegionVO; import com.panzhihua.sangeshenbian.service.IdentityInformationService; @@ -56,4 +58,16 @@ LoginUserInfoVO loginUserInfo = getLoginUserInfo(); return R.ok(staticsService.queryStaticsPartTwo(query,loginUserInfo)); } @PostMapping("/part-three") @ApiOperation("获取统计分析-第三部分(问题类型排名)") public R<List<AnalyticStatisticsThreeVo>> queryStaticsPartThree(@RequestBody AppStaticsQuery query) { LoginUserInfoVO loginUserInfo = getLoginUserInfo(); return R.ok(staticsService.queryStaticsPartThree(query,loginUserInfo)); } @PostMapping("/part-four") @ApiOperation("获取统计分析-第四部分(评价占比)") public R<AnalyticStatisticsFourVo> queryStaticsPartFour(@RequestBody AppStaticsQuery query) { LoginUserInfoVO loginUserInfo = getLoginUserInfo(); return R.ok(staticsService.queryStaticsPartFour(query,loginUserInfo)); } } springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IComplaintService.java
@@ -196,13 +196,15 @@ List<AnalyticStatisticsTwoVo> analyticStatisticsTwo(String time, List<Complaint> complaints, SimpleDateFormat simpleDateFormat); /**+ /** * + * 数据统计第三部分 * @param query * * @param rank * @param complaints * @return */ List<AnalyticStatisticsThreeVo> analyticStatisticsThree(@Valid AnalyticStatisticsQuery query, List<Complaint> complaints); List<AnalyticStatisticsThreeVo> analyticStatisticsThree(Integer rank, List<Complaint> complaints); /** * 数据统计第四部分 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ComplaintServiceImpl.java
@@ -1617,7 +1617,7 @@ } @Override public List<AnalyticStatisticsThreeVo> analyticStatisticsThree(AnalyticStatisticsQuery query, List<Complaint> complaints) { public List<AnalyticStatisticsThreeVo> analyticStatisticsThree(Integer rank, List<Complaint> complaints) { Map<String, List<Complaint>> groupedByProblemType = complaints.stream() .collect(Collectors.groupingBy(Complaint::getProblemType)); List<AnalyticStatisticsThreeVo> analyticStatisticsThreeVos = groupedByProblemType.entrySet().stream() @@ -1629,11 +1629,11 @@ }) .collect(Collectors.toList()); analyticStatisticsThreeVos = analyticStatisticsThreeVos.stream().sorted(Comparator.comparing(AnalyticStatisticsThreeVo::getAllTotal).reversed()).collect(Collectors.toList()); if (query.getRank() == null) { if (rank == null) { return analyticStatisticsThreeVos; } else if (query.getRank() == 5) { } else if (rank == 5) { return analyticStatisticsThreeVos.stream().limit(5).collect(Collectors.toList()); } else if (query.getRank() == 10) { } else if (rank == 10) { return analyticStatisticsThreeVos.stream().limit(10).collect(Collectors.toList()); } return Collections.emptyList(); springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/StaticsService.java
@@ -1,20 +1,17 @@ package com.panzhihua.sangeshenbian.service.impl; import cn.hutool.core.date.DateUtil; import com.beust.jcommander.internal.Lists; import com.fasterxml.jackson.databind.ser.std.ObjectArraySerializer; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.utlis.DateUtils; import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.sangeshenbian.dao.SystemUserMapper; import com.panzhihua.sangeshenbian.model.entity.ComAct; import com.panzhihua.sangeshenbian.model.entity.ComStreet; import com.panzhihua.sangeshenbian.model.entity.Complaint; import com.panzhihua.sangeshenbian.model.entity.PartyMember; import com.panzhihua.sangeshenbian.model.entity.SystemUserLevel; import com.panzhihua.sangeshenbian.model.query.AppStaticsQuery; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsFourVo; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsOneVo; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsThreeVo; import com.panzhihua.sangeshenbian.model.vo.AnalyticStatisticsTwoVo; import com.panzhihua.sangeshenbian.model.vo.RegionVO; import com.panzhihua.sangeshenbian.service.IBcRegionService; @@ -28,7 +25,6 @@ import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.List; @@ -146,6 +142,12 @@ return complaintService.analyticStatisticsOne(null, complaints, simpleDateFormat); } /** *获取统计分析-第二部分(诉求单量统计柱状图) * @param query * @param loginUserInfo * @return */ public List<AnalyticStatisticsTwoVo> queryStaticsPartTwo(AppStaticsQuery query, LoginUserInfoVO loginUserInfo) { List<Complaint> complaints = complaintService.queryCompliantList(query,loginUserInfo); //时间范围 @@ -172,4 +174,25 @@ return complaintService.analyticStatisticsTwo(time, complaints, simpleDateFormat); } /** *获取统计分析-第三部分(问题类型排名) * @param query * @param loginUserInfo * @return */ public List<AnalyticStatisticsThreeVo> queryStaticsPartThree(AppStaticsQuery query, LoginUserInfoVO loginUserInfo) { List<Complaint> complaints = complaintService.queryCompliantList(query,loginUserInfo); return complaintService.analyticStatisticsThree(query.getRank(), complaints); } /** * 获取统计分析-第四部分(评价占比) * @param query * @param loginUserInfo * @return */ public AnalyticStatisticsFourVo queryStaticsPartFour(AppStaticsQuery query, LoginUserInfoVO loginUserInfo) { List<Complaint> complaints = complaintService.queryCompliantList(query,loginUserInfo); return complaintService.analyticStatisticsFour(complaints); } }