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 67ea1d9e..d1756f23 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 @@ -166,12 +166,16 @@ public interface ReportMapper { LinkedHashMap sixShopOrderQTY(String workCenter); + LinkedHashMap sixWorkCenterHoursQTY(String workCenter); + List> nearFifteenDayRate(String workCenter); List> departmentForNonconformity(String workCenter); List> workingHoursEachWorkshop(String workCenter); + List> workingHoursYearContrast(String workCenter); + List> workshopDeliveryRateList(String workCenter); List> NCTop5RateList(String workCenter); @@ -315,4 +319,7 @@ public interface ReportMapper { * @return */ List> projectScheduleReportBoard(Map paramMap); + + List> totalWorkingHoursCompletedThisYear(String workCenter); + } 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 ba9d00eb..e4373c2b 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 @@ -1465,6 +1465,23 @@ public class ReportServiceImpl implements ReportService { public Map workHoursBoard(String workCenter) { HashMap result = new HashMap<>(); + LinkedHashMap sixMap = reportMapper.sixWorkCenterHoursQTY(workCenter); + ArrayList sixList = new ArrayList<>(); + for (String key : sixMap.keySet()) { + sixList.add(Float.valueOf(String.valueOf(sixMap.get(key)))); + } + result.put("sixList",sixList); + + List> thisYearMapList = reportMapper.totalWorkingHoursCompletedThisYear(workCenter); + ArrayList monthYearList = new ArrayList<>(); + ArrayList workHorsList = new ArrayList<>(); + for (Map map : thisYearMapList) { + monthYearList.add(map.get("MONTH_MONTH")); + workHorsList.add(Float.valueOf(String.valueOf(map.get("QTY")))); + } + result.put("monthYearList",monthYearList); + result.put("workHorsList",workHorsList); + //各车间总工时完成情况(单轴多折线图) List> WorkshopList = reportMapper.workingHoursEachWorkshop(workCenter); List monthOldList = WorkshopList.stream().map(e -> { return e.get("MONTH"); }) @@ -1504,6 +1521,30 @@ public class ReportServiceImpl implements ReportService { dutyCauseMap.put("causeTypeDescription",nameList); dutyCauseMap.put("distributionMapList",nameAndValueList); result.put("dutyCause",dutyCauseMap); + + //年度对比图(单轴多折线图) + List> contrastList = reportMapper.workingHoursYearContrast(workCenter); + List yearOldList = contrastList.stream().map(e -> { return e.get("M_MONTH"); }) + .distinct().sorted().collect(Collectors.toList()); + ArrayList yearList = new ArrayList<>(); + yearList.addAll(yearOldList); + + Map>> contrastMap = contrastList.stream(). + collect(Collectors.groupingBy(e -> e.get("CON_YEAR"))); + ArrayList> contrastMapValueList = new ArrayList<>(); + for (String description : contrastMap.keySet()) { + List> maps = contrastMap.get(description); + HashMap map = new HashMap<>(); + ArrayList QTYList = new ArrayList<>(); + maps.forEach(e -> { + QTYList.add(Float.valueOf(String.valueOf(e.get("QTY")))); + }); + map.put("name",description); + map.put("value",QTYList); + contrastMapValueList.add(map); + } + result.put("yearList",yearList); + result.put("contrastMapValueList",contrastMapValueList); return result; } @@ -1929,7 +1970,7 @@ public class ReportServiceImpl implements ReportService { List dateList = new ArrayList<>(); //获取近半年月份 Calendar calendar = Calendar.getInstance(); - calendar.set(Calendar.MONTH,calendar.get(Calendar.MONTH) - 5); + calendar.set(Calendar.MONTH,calendar.get(Calendar.MONTH) - 6); for (int i = 6 ; i > 0; i--) { calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + 1); dateList.add(calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) == 0 ? 12 : calendar.get(Calendar.MONTH) < 10 ? "0" + calendar.get(Calendar.MONTH) : calendar.get(Calendar.MONTH))); diff --git a/anomaly/src/main/resources/mapper/ReportMapper.xml b/anomaly/src/main/resources/mapper/ReportMapper.xml index c8a7c477..7b1bcc59 100644 --- a/anomaly/src/main/resources/mapper/ReportMapper.xml +++ b/anomaly/src/main/resources/mapper/ReportMapper.xml @@ -3226,6 +3226,67 @@ SELECT zab.CREATED_DATE_TIME, AND V."workOrder" like '%${user}%' + + + \ No newline at end of file