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 6ae93559..a4e9b860 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 @@ -356,4 +356,18 @@ public class ReportController { } } + /** + * 项目生产加工周期看板 + * @param + * @return + */ + @GetMapping("/projectPlanningProgress") + public R projectPlanningProgress(String user){ + try { + return R.ok(reportService.projectPlanningProgress(user)); + } catch (Exception e) { + return R.failed(e.getMessage()); + } + } + } 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 6e6cabf8..6c83b2c9 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 @@ -105,6 +105,8 @@ public interface ReportMapper { List> projectScheduleShow(@Param("user") String user); + List> projectPlanningProgress(@Param("user") String user); + /** * 质量返修报表 * @param 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 a72e3ddb..ea8db759 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 @@ -159,4 +159,11 @@ public interface ReportService { * @return */ List> qualityInspectionResponseReport(Map paramMap); + + /** + * 项目生产加工周期看板 + * @param userGroup + * @return + */ + Map projectPlanningProgress(String userGroup); } 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 4873f717..369ef429 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 @@ -1,11 +1,9 @@ package com.foreverwin.mesnac.anomaly.service.impl; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.foreverwin.mesnac.anomaly.dto.IntegrationLogDto; import com.foreverwin.mesnac.anomaly.mapper.ReportMapper; import com.foreverwin.mesnac.anomaly.service.ReportService; -import com.foreverwin.mesnac.anomaly.utils.DateReportUtils; import com.foreverwin.mesnac.common.enums.HandleEnum; import com.foreverwin.mesnac.common.util.DateUtil; import com.foreverwin.mesnac.meapi.mapper.DataFieldListMapper; @@ -676,6 +674,68 @@ public class ReportServiceImpl implements ReportService { return reportMapper.qualityInspectionResponseReport(paramMap); } + /** + * 项目生产加工周期看板 + * @param userGroup + * @return + */ + @Override + public Map projectPlanningProgress(String userGroup) { + List> abnormalQualityList = reportMapper.projectPlanningProgress(userGroup); + Map result = new HashMap<>(); + Map>> workOrderMap = abnormalQualityList.stream() + .collect(Collectors.groupingBy(e -> { + String career =e.get("workOrder"); + try { + if (career.indexOf("硫化") != -1) { + return "硫化"; + }else if (career.indexOf("全钢") != -1) { + return "全钢"; + }else if (career.indexOf("半钢") != -1) { + return "半钢"; + }else if (career.indexOf("鼓") != -1) { + return "鼓"; + }else if (career.indexOf("裁断") != -1) { + return "裁断"; + }else if (career.indexOf("检测") != -1) { + return "检测"; + }else if (career.indexOf("橡塑") != -1) { + return "橡塑"; + } else if (career.indexOf("非公路") != -1) { + return "非公路"; + } else if (career.indexOf("塞班") != -1) { + return "塞班"; + } else { + return "外部"; + } + } catch (Exception exception) { + exception.printStackTrace(); + } + return ""; + })); + + for (String workOrder : workOrderMap.keySet()) { + HashMap resultMap = new HashMap<>(); + ArrayList items = new ArrayList<>(); + ArrayList shopOrderQTYs = new ArrayList<>(); + ArrayList doneQTY = new ArrayList<>(); + ArrayList rate = new ArrayList<>(); + List> maps = workOrderMap.get(workOrder); + maps.forEach(e -> { + items.add(e.get("item")); + shopOrderQTYs.add(e.get("shopOrderQTY")); + doneQTY.add(e.get("doneQTY")); + rate.add(e.get("rate")); + }); + resultMap.put("items",items); + resultMap.put("shopOrderQTY",shopOrderQTYs); + resultMap.put("doneQTY",doneQTY); + resultMap.put("rate",rate); + result.put(workOrder,resultMap); + } + return result; + } + /** * 事业部质量看板数据接口 * @param user diff --git a/anomaly/src/main/resources/mapper/ReportMapper.xml b/anomaly/src/main/resources/mapper/ReportMapper.xml index 09871fd0..59ad2f9f 100644 --- a/anomaly/src/main/resources/mapper/ReportMapper.xml +++ b/anomaly/src/main/resources/mapper/ReportMapper.xml @@ -1397,6 +1397,38 @@ ORDER BY WIP."rate" DESC +