From 44df0c59bb40e5559897db25f436aaf0f27720de Mon Sep 17 00:00:00 2001 From: yinq <1345442242@qq.com> Date: Mon, 12 Dec 2022 16:56:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8B=E4=B8=9A=E9=83=A8=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E8=BF=9B=E5=BA=A6=E6=98=8E=E7=BB=86=E7=9C=8B=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anomaly/controller/ReportController.java | 16 ++++++++ .../mesnac/anomaly/mapper/ReportMapper.java | 7 ++++ .../mesnac/anomaly/service/ReportService.java | 6 +++ .../service/impl/ReportServiceImpl.java | 41 +++++++++++++++++++ .../main/resources/mapper/ReportMapper.xml | 12 ++++++ 5 files changed, 82 insertions(+) diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/ReportController.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/ReportController.java index 54f5b955..fae4cd63 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/ReportController.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/ReportController.java @@ -212,6 +212,22 @@ public class ReportController { return R.failed(e.getMessage()); } } + + /** + * 事业部项目进度明细看板 + * @param paramMap + * @return + */ + @GetMapping("/projectScheduleReportBoard") + public R projectScheduleReportBoard(@RequestParam(required = false) Map paramMap){ + try{ + Map result = reportService.projectScheduleReportBoard(paramMap); + return R.ok(result); + }catch (Exception e){ + return R.failed(e.getMessage()); + } + } + /** * 查找用户用户组 * @param paramMap diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/ReportMapper.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/ReportMapper.java index 9fefcca0..2f6e06c7 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/ReportMapper.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/ReportMapper.java @@ -304,4 +304,11 @@ public interface ReportMapper { * @return */ List> loadRatePreviousCompletedReport(Map paramMap); + + /** + * 事业部项目进度明细看板 + * @param paramMap + * @return + */ + List> projectScheduleReportBoard(Map paramMap); } diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/ReportService.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/ReportService.java index 8c43fe4c..bf283295 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/ReportService.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/ReportService.java @@ -307,4 +307,10 @@ public interface ReportService { */ List> loadRatePreviousCompletedReport(Map paramMap); + /** + * 事业部项目进度明细看板 + * @param paramMap + * @return + */ + Map projectScheduleReportBoard(Map paramMap); } diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/ReportServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/ReportServiceImpl.java index 3ba4264f..b2ccf95a 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/ReportServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/ReportServiceImpl.java @@ -1680,6 +1680,47 @@ public class ReportServiceImpl implements ReportService { return resultList; } + /** + * 事业部项目进度明细看板 + * @param paramMap + * @return + */ + @Override + public Map projectScheduleReportBoard(Map paramMap) { + HashMap result = new HashMap<>(); + String user = null; + if (paramMap.containsKey("career")){ + user = String.valueOf(paramMap.get("career")); + } + result.put("career", user); + List> projectScheduleList = reportMapper.projectScheduleShow(user); + + //项目进度圆圈circle + ArrayList> projectCircleList = new ArrayList<>(); + Map>> itemNMap = projectScheduleList.stream().collect(Collectors.groupingBy(e -> e.get("item"))); + for (String items : itemNMap.keySet()) { + List> maps = itemNMap.get(items); + String name = items; + Float rate = 0.00f; + Float projectRate = 0.00f; + for (Map map : maps) { + rate += Float.valueOf(map.get("rate")); + projectRate += Float.valueOf(map.get("planRate")); + } + HashMap objectObjectHashMap = new HashMap<>(); + objectObjectHashMap.put("name",name); + objectObjectHashMap.put("rate",String.valueOf(rate / maps.size())); + objectObjectHashMap.put("projectRate",String.valueOf(projectRate / maps.size())); + projectCircleList.add(objectObjectHashMap); + } + result.put("projectCircleList",projectCircleList); + if (paramMap.containsKey("item")){ + List> maps = reportMapper.projectScheduleReportBoard(paramMap); + result.put("oldData", maps); + } + return result; + } + /** * 工时统计报表 * @param paramMap diff --git a/anomaly/src/main/resources/mapper/ReportMapper.xml b/anomaly/src/main/resources/mapper/ReportMapper.xml index e71b5dc9..f18847e6 100644 --- a/anomaly/src/main/resources/mapper/ReportMapper.xml +++ b/anomaly/src/main/resources/mapper/ReportMapper.xml @@ -3188,6 +3188,18 @@ SELECT zab.CREATED_DATE_TIME, + \ No newline at end of file