From 51fc695173406476f29c28b874d50d1c103e2172 Mon Sep 17 00:00:00 2001 From: wxz Date: Tue, 16 May 2023 19:39:42 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix:=E3=80=90=E7=81=B5=E5=B1=B1=E5=A4=A7?= =?UTF-8?q?=E5=B1=8F=E3=80=91=E4=BB=A3=E5=8A=9E=E6=9C=8D=E5=8A=A1=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E5=88=86=E6=9E=90=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/impl/LingShanAgentServiceServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java index 7f96edbca9..95d4b4e254 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java @@ -563,7 +563,7 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ return cateogries.stream().map(c -> { LingshanAgentServiceRecordEntity data = categoryAndData.get(c.getId()); - return new ScreenAgentServiceCategoryAnalysisRstDTO(c.getCategoryName(), data.getQty()); + return new ScreenAgentServiceCategoryAnalysisRstDTO(c.getCategoryName(), data == null ? 0 : data.getQty()); }).collect(Collectors.toList()); } From 1d90fde163fd0db3381ac22734db399cef7fa335 Mon Sep 17 00:00:00 2001 From: wxz Date: Tue, 16 May 2023 20:27:55 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8A=9E=E7=BB=93?= =?UTF-8?q?=E7=8E=87=E6=95=B0=E5=80=BC=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AgentServiceTrendAnalysisRstDTO.java | 8 +++---- .../dao/LingshanAgentServiceRecordDao.java | 13 ++++++++++++ .../impl/LingShanAgentServiceServiceImpl.java | 21 +++++++++++++++---- .../mapper/LingshanAgentServiceRecordDao.xml | 11 ++++++++++ 4 files changed, 45 insertions(+), 8 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java index effdcdb01f..f4d0b3e96b 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java @@ -34,14 +34,14 @@ public class AgentServiceTrendAnalysisRstDTO { // private List data; - public static class DataObj { + public static class DataObj { private String name; - private Integer value; + private T value; public DataObj() { } - public DataObj(String name, Integer value) { + public DataObj(String name, T value) { this.name = name; this.value = value; } @@ -50,7 +50,7 @@ public class AgentServiceTrendAnalysisRstDTO { return name; } - public Integer getValue() { + public T getValue() { return value; } } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java index 9ff7596263..84de811f72 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java @@ -6,6 +6,7 @@ import com.epmet.entity.LingshanAgentServiceRecordEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.List; import java.util.Set; @@ -26,4 +27,16 @@ public interface LingshanAgentServiceRecordDao extends BaseDao screenAgentListAndServiceQty(@Param("agentIds") Set agentIds); + + /** + * @Description: 办结率 + * @param timeStart: + * @param timeEnd: + * @Return java.lang.Double + * @Author: wangxianzhang + * @Date: 2023/5/16 8:17 PM + */ + Double calculateClosedRatio(@Param("timeStart") Date timeStart, + @Param("timeEnd") Date timeEnd, + @Param("orgIdPath") String orgIdPath); } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java index 95d4b4e254..bb9c85c2d7 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java @@ -570,6 +570,16 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ @Override public List serviceTrendAnalysis(String orgType, String orgId) { + String orgIdPath; + + if (OrgInfoConstant.AGENCY.equals(orgType)) { + AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(orgId); + orgIdPath = PidUtils.convertPid2OrgIdPath(agencyInfo.getId(), agencyInfo.getPids()); + } else { + GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(orgId); + orgIdPath = PidUtils.convertPid2OrgIdPath(gridInfo.getId(), gridInfo.getPids()); + } + // 计算得到时间列表 Map dateCatelogue = generateTimeCatelogue(); @@ -582,18 +592,21 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ // 1.受理数 // 受理数,使用processTime计算,processTime可用于表示受理时间和驳回时间。要查询受理数,要查询状态为已受理和已结案两种状态,使用processTime+processStatus结合查询 LambdaQueryWrapper rq = new LambdaQueryWrapper<>(); + rq.likeRight(LingshanAgentServiceRecordEntity::getOrgIdPath, orgIdPath); rq.ge(LingshanAgentServiceRecordEntity::getProcessTime, timeStart); rq.le(LingshanAgentServiceRecordEntity::getProcessTime, timeEnd); rq.in(LingshanAgentServiceRecordEntity::getProcessStatus, LingShanAgentServiceProcessStatusEnum.ACCEPTED.getStatusCode(), LingShanAgentServiceProcessStatusEnum.CLOSED.getStatusCode()); Integer acceptCount = agentServiceRecordDao.selectCount(rq); - // 2.办结率 todo + // 2.办结率 + // 本月办结的服务/本月提交的服务 + Double closedRatio = agentServiceRecordDao.calculateClosedRatio(timeStart, timeEnd, orgIdPath); // 3.组合数据 ArrayList dataList = new ArrayList<>(); - dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj("受理数", acceptCount)); - dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj("办结率", 0)); + dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj<>("受理数", acceptCount)); + dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj<>("办结率", closedRatio)); AgentServiceTrendAnalysisRstDTO rd = new AgentServiceTrendAnalysisRstDTO(monthName, dataList); return rd; }).collect(Collectors.toList()); @@ -607,7 +620,7 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ * @Date: 2023/5/16 1:53 PM */ public Map generateTimeCatelogue() { - Date startDate = DateUtils.addDateMonths(new Date(), -11); + Date startDate = DateUtils.addDateMonths(new Date(), -12); HashMap rm = new LinkedHashMap<>(); for (int c = 1; c <= 12; c++) { diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml index c995f3532d..cea5229e87 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml @@ -58,5 +58,16 @@ group by r.AGENT_ID, r.GRID_ID + + + \ No newline at end of file