From 355e3b69fda0566339738d28e09131e3194caae8 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Thu, 18 Jan 2024 10:42:29 +0800 Subject: [PATCH 01/10] =?UTF-8?q?=E9=97=AE=E9=A2=98=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E8=A1=A8=E5=A4=B4=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/enums/ProblemPriorityEnum.java | 55 +++++++++++++++++++ .../service/impl/NcrTrackServiceImpl.java | 48 ++++++++++++---- 2 files changed, 91 insertions(+), 12 deletions(-) create mode 100644 jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ProblemPriorityEnum.java diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ProblemPriorityEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ProblemPriorityEnum.java new file mode 100644 index 000000000..c7f4be5a6 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ProblemPriorityEnum.java @@ -0,0 +1,55 @@ +package com.jero.modules.project.enums; + +import com.jero.common.constant.enums.CutEnum; + +import java.util.ArrayList; +import java.util.List; + +/** + * 问题优先级枚举类 + */ +public enum ProblemPriorityEnum { + + LOW("低","Low"), + MIDDLE("中","Middle"), + HIGH("高","High"), + ; + + + String valueCn; + String valueEn; + + private ProblemPriorityEnum(String valueCn, String valueEn) { + this.valueCn = valueCn; + this.valueEn = valueEn; + } + + public String getValueCn() { + return valueCn; + } + + public void setValueCn(String valueCn) { + this.valueCn = valueCn; + } + + public String getValueEn() { + return valueEn; + } + + public void setValueEn(String valueEn) { + this.valueEn = valueEn; + } + + public static List getValueAll(String cut) { + ProblemPriorityEnum[] values = values(); + List result = new ArrayList<>(); + for (ProblemPriorityEnum taskStatusEnum : values) { + if(CutEnum.CN.getValue().equals(cut)){ + result.add(taskStatusEnum.getValueCn()); + }else{ + result.add(taskStatusEnum.getValueEn()); + } + } + return result; + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java index 55def604b..2e3f0e272 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java @@ -22,6 +22,7 @@ import com.jero.modules.project.entity.ProjectTaskInventoryDetailEO; import com.jero.modules.project.enums.ColourEnum; import com.jero.modules.project.enums.ComplianceFlowStatusEnum; import com.jero.modules.project.enums.DataEnum; +import com.jero.modules.project.enums.ProblemPriorityEnum; import com.jero.modules.project.enums.ReviewResultEnum; import com.jero.modules.project.mapper.NcrTrackMapper; import com.jero.modules.project.mapper.ProblemManagementEOMapper; @@ -73,6 +74,7 @@ import java.util.Collections; import java.util.Comparator; import java.util.Date; import java.util.HashSet; +import java.util.LinkedList; import java.util.List; import java.util.Locale; import java.util.Set; @@ -382,7 +384,7 @@ public class NcrTrackServiceImpl extends ServiceImpl //条件查询 trackVOList = parameterQuery(ncrTrackVO, trackVOList); //表头排序 - heartSort(ncrTrackVO, trackVOList,problemPriorityList,ncrTrackVO.getCut()); + trackVOList = heartSort(ncrTrackVO, trackVOList,problemPriorityList,ncrTrackVO.getCut()); if(StringUtils.isBlank(ncrTrackVO.getOrderByField())){ Collections.sort(trackVOList, new Comparator() { @Override @@ -405,9 +407,10 @@ public class NcrTrackServiceImpl extends ServiceImpl return problemManagement; } - private void heartSort(NcrTrackVO ncrTrackVO, List trackVOList,List problemPriorityList,String cut) { + private List heartSort(NcrTrackVO ncrTrackVO, List trackVOList,List problemPriorityList,String cut) { Collator comparator = Collator.getInstance(Locale.CHINESE); if("problemPriority".equals(ncrTrackVO.getOrderByField())){ + List valueList = ProblemPriorityEnum.getValueAll(cut); //优先级数据字典转换 for (NcrTrackVO trackVO : trackVOList) { String problemPriority = trackVO.getProblemPriority(); @@ -422,18 +425,38 @@ public class NcrTrackServiceImpl extends ServiceImpl } } } + List ncrTrackVOList = new LinkedList<>(); + //优先级没有值的数据 + List dataNoList = trackVOList.stream().filter(e -> !valueList.contains(e.getProblemPriorityName())).collect(Collectors.toList()); + if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) { - Collections.sort(trackVOList, (e1, e2) -> { - String e1Field = StringUtils.isNotBlank(e1.getProblemPriorityName()) ? e1.getProblemPriorityName() : ""; - String e2Field = StringUtils.isNotBlank(e2.getProblemPriorityName()) ? e2.getProblemPriorityName() : ""; - return comparator.compare(e1Field, e2Field); - }); + for (String s : valueList) { + List collect = trackVOList.stream().filter(e -> s.equals(e.getProblemPriorityName())).collect(Collectors.toList()); + if(ObjectUtils.isNotEmpty(collect)){ + ncrTrackVOList.addAll(collect); + } + } + if(ObjectUtils.isNotEmpty(dataNoList)){ + ncrTrackVOList.addAll(dataNoList); + } + if(ObjectUtils.isNotEmpty(ncrTrackVOList)){ + trackVOList = ncrTrackVOList; + } + } else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) { - Collections.sort(trackVOList, (e1, e2) -> { - String e1Field = StringUtils.isNotBlank(e1.getProblemPriorityName()) ? e1.getProblemPriorityName() : ""; - String e2Field = StringUtils.isNotBlank(e2.getProblemPriorityName()) ? e2.getProblemPriorityName() : ""; - return comparator.compare(e2Field, e1Field); - }); + for (int i = valueList.size()-1; i >= 0; i--) { + int finalI = i; + List collect = trackVOList.stream().filter(e -> valueList.get(finalI).equals(e.getProblemPriorityName())).collect(Collectors.toList()); + if(ObjectUtils.isNotEmpty(collect)){ + ncrTrackVOList.addAll(collect); + } + } + if(ObjectUtils.isNotEmpty(dataNoList)){ + ncrTrackVOList.addAll(dataNoList); + } + if(ObjectUtils.isNotEmpty(ncrTrackVOList)){ + trackVOList = ncrTrackVOList; + } } } if ("title".equals(ncrTrackVO.getOrderByField())) { @@ -587,6 +610,7 @@ public class NcrTrackServiceImpl extends ServiceImpl }); } } + return trackVOList; } @NotNull From 060c9071efff227b43b509d0792f9ca33fe17737 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Thu, 18 Jan 2024 14:17:27 +0800 Subject: [PATCH 02/10] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AF=A6=E6=83=85-ota?= =?UTF-8?q?=E7=AE=A1=E7=90=86-=E8=BD=AF=E4=BB=B6=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E4=B8=8B=E6=8B=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OtaManageApplyEOController.java | 11 +++- .../ota/service/IOtaManageApplyEOService.java | 2 + .../impl/OtaManageApplyEOServiceImpl.java | 51 +++++++++++++++++++ 3 files changed, 62 insertions(+), 2 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java index 48402b047..c1a3e1d47 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java @@ -293,10 +293,17 @@ public class OtaManageApplyEOController extends JeroController getVdrListByProject(String projectId, String cut) { - List resList = otaManageApplyEOService.getVdrListByProject(projectId, cut); + public Result getVdrListByProjectId(String projectId, String cut) { + List resList = otaManageApplyEOService.getVdrListByProjectId(projectId, cut); return Result.OK("操作成功!", resList); } +// @AutoLog(value = "查询项目涉及的VDR版本") +// @ApiOperation(value = "查询项目涉及的VDR版本", notes = "查询项目涉及的VDR版本") +// @GetMapping(value = "/getVdrListByProject") +// public Result getVdrListByProject(String projectId, String cut) { +// List resList = otaManageApplyEOService.getVdrListByProject(projectId, cut); +// return Result.OK("操作成功!", resList); +// } @AutoLog(value = "通过软件版本和项目ID查询状态") @ApiOperation(value = "通过软件版本和项目ID查询状态", notes = "通过软件版本和项目ID查询状态") diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java index c007e9b14..533e19a85 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java @@ -126,6 +126,8 @@ public interface IOtaManageApplyEOService extends IService { List reject(String ids, String rejectReason,String cut); + List getVdrListByProjectId(String projectId, String cut); + List getVdrListByProject(String projectId, String cut); List> getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut,List projectLibraryBaseList); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java index 2adbbd726..13e1c5ac6 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java @@ -2000,6 +2000,57 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl getVdrListByProjectId(String projectId, String cut) { + ProjectLibraryBase plb = projectLibraryBaseService.selectById(projectId); + String name =""; + if (StringUtils.isNotEmpty(plb.getProjectName()) && plb.getProjectName().equals("FORCE")) { + name = "Force"; + } else { + name = plb.getProjectName(); + } + List projectNameAndTargetMarketList = new ArrayList<>(); + if (StringUtils.isNotEmpty(plb.getTargetMarket())) { + String[] marketStrs = plb.getTargetMarket().split(","); + for (String marketStr : marketStrs) { + if(marketStr.equals("China")){ + projectNameAndTargetMarketList.add(name+" China"); + }else if(marketStr.equals("UK")){ + projectNameAndTargetMarketList.add(name+" RHD"); + }else{ + projectNameAndTargetMarketList.add(name+" "+marketStr); + } + } + } + List otaManageReceiveList = otaManageReceiveService.list(); + List plannedBpLaunchBatchList = new ArrayList<>(); + List otaManageApplyEOList = new ArrayList<>(); + if(ObjectUtils.isNotEmpty(otaManageReceiveList)){ + for (String s : projectNameAndTargetMarketList) { + List collect = otaManageReceiveList.stream() + .filter(e -> StringUtils.isNotBlank(e.getPlannedBpLaunchBatch()) + && StringUtils.isNotBlank(e.getVehicleMatch()) + && e.getVehicleMatch().contains(s)) + .map(OtaManageReceive::getPlannedBpLaunchBatch).distinct().collect(Collectors.toList()); + if(ObjectUtils.isNotEmpty(collect)){ + plannedBpLaunchBatchList.addAll(collect); + } + } + if(ObjectUtils.isNotEmpty(plannedBpLaunchBatchList)){ + Collator comparator = Collator.getInstance(Locale.CHINESE); + //排序 + Collections.sort(plannedBpLaunchBatchList, (e1, e2) -> { + return comparator.compare(e1, e2); + }); + for (String s : plannedBpLaunchBatchList) { + OtaManageApplyEO otaManageApplyEO = new OtaManageApplyEO(); + otaManageApplyEO.setPlannedBpLaunchBatch(s); + otaManageApplyEOList.add(otaManageApplyEO); + } + } + } + return otaManageApplyEOList; + } @Override public List getVdrListByProject(String projectId, String cut) { List receiveList = this.getBaseMapper().getListByProjectId(projectId, ""); From 316ec47c1aeeb8f7e899b6f357463845a5783fce Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Thu, 18 Jan 2024 16:49:30 +0800 Subject: [PATCH 03/10] =?UTF-8?q?OTA-=E7=8A=B6=E6=80=81=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OtaManageApplyEOController.java | 4 +- .../ota/service/IOtaManageApplyEOService.java | 4 +- .../impl/OtaManageApplyEOServiceImpl.java | 145 ++++++++++++++++-- ...PlatformProjectLibraryBaseServiceImpl.java | 2 +- .../project/entity/ProjectLibraryBase.java | 3 + .../impl/ProjectLibraryBaseServiceImpl.java | 25 ++- .../impl/ProjectStatusBoardServiceImpl.java | 2 +- .../components/otastatus.vue | 9 +- .../components/projectStatus.vue | 2 +- 9 files changed, 178 insertions(+), 18 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java index c1a3e1d47..5f29180ea 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java @@ -308,9 +308,9 @@ public class OtaManageApplyEOController extends JeroController getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut) { + public Result getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut,String appliedVehicleProject) { List projectLibraryBaseList = new ArrayList<>(); - List> res = otaManageApplyEOService.getStatisticalStatus(projectId, plannedBpLaunchBatch, cut,projectLibraryBaseList); + List> res = otaManageApplyEOService.getStatisticalStatus(projectId, plannedBpLaunchBatch, cut,projectLibraryBaseList,appliedVehicleProject); if(!res.isEmpty()){ return Result.OK("操作成功!", res.get(0)); }else{ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java index 533e19a85..0f6e70174 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaManageApplyEOService.java @@ -130,7 +130,9 @@ public interface IOtaManageApplyEOService extends IService { List getVdrListByProject(String projectId, String cut); - List> getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut,List projectLibraryBaseList); + List> getStatisticalStatus(String projectId, String plannedBpLaunchBatch, + String cut,List projectLibraryBaseList, + String appliedVehicleProject); ModelAndView otaExportXls(HttpServletRequest request, OtaManageApplyEO otaManageApplyEO); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java index 13e1c5ac6..e01150ccd 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java @@ -792,9 +792,11 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl> getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut, List plbEoList) { + public List> getStatisticalStatus(String projectId, + String plannedBpLaunchBatch, + String cut, + List plbEoList, + String appliedVehicleProject) { List> result = new ArrayList<>(); List projectLibraryBaseList = new ArrayList<>(); if (ObjectUtils.isNotEmpty(plbEoList)) { projectLibraryBaseList = plbEoList.stream().filter(e -> e.getId().equals(projectId)).collect(Collectors.toList()); } - List receiveList = this.getBaseMapper().getListByProjectId(projectId, plannedBpLaunchBatch); +// List receiveList = this.getBaseMapper().getListByProjectId(projectId, plannedBpLaunchBatch); + OtaManageApplyEO otaManageApplyEO = new OtaManageApplyEO(); + otaManageApplyEO.setPlannedBpLaunchBatch(plannedBpLaunchBatch); + otaManageApplyEO.setAppliedVehicleProject(appliedVehicleProject); + List receiveList = getOtaCarPage(otaManageApplyEO,cut); + +// List receiveList = this.getBaseMapper().getListByProjectId(null, plannedBpLaunchBatch); +// receiveList = receiveList.stream() +// .filter(e -> (StringUtils.isNotBlank(e.getProjectVersion()) && projectId.equals(e.getProjectVersion())) +// || (StringUtils.isBlank(e.getProjectVersion()) && "to_be_matched".equals(e.getMatchStatus()))) +// .collect(Collectors.toList()); if (!receiveList.isEmpty()) { List plannedBpLaunchBatchList = receiveList.stream() @@ -2119,7 +2134,9 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl> getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut, List plbEoList) { +// List> result = new ArrayList<>(); +// List projectLibraryBaseList = new ArrayList<>(); +// if (ObjectUtils.isNotEmpty(plbEoList)) { +// projectLibraryBaseList = plbEoList.stream().filter(e -> e.getId().equals(projectId)).collect(Collectors.toList()); +// } +// List receiveList = this.getBaseMapper().getListByProjectId(projectId, plannedBpLaunchBatch); +// +// if (!receiveList.isEmpty()) { +// List plannedBpLaunchBatchList = receiveList.stream() +// .filter(e -> StringUtils.isNotBlank(e.getPlannedBpLaunchBatch())) +// .map(OtaManageApplyEO::getPlannedBpLaunchBatch).distinct().collect(Collectors.toList()); +// +// for (String s : plannedBpLaunchBatchList) { +// List otaManageApplyEOList = receiveList.stream() +// .filter(e -> s.equals(e.getPlannedBpLaunchBatch())).collect(Collectors.toList()); +// +// int total = otaManageApplyEOList.size(); +// //匹配状态 +// int toBeMatched = 0;//待匹配 +// int toBeApproved = 0;//待审批 +// int locked = 0;//锁定 +// int rejected = 0;//退回 +// //认证进度 +// int notStart = 0;//未开始 +// int inProgress = 0;//进行中 +// int testPassed = 0;//实验通过 +// int testFailed = 0;//实验失败 +// int notSubmitted = 0;//部件报告未提交 +// int submitted = 0;//部件报告已提交 +// int stored = 0;//部件报告已入库 +// +// for (OtaManageApplyEO oma : otaManageApplyEOList) { +// if (StringUtils.isBlank(oma.getMatchStatus()) || oma.getMatchStatus().equals(OtaStatusEnum.TO_BE_MATCHED.getKey())) { +// toBeMatched++; +// } else if (oma.getMatchStatus().equals(OtaStatusEnum.TO_BE_APPROVED.getKey())) { +// toBeApproved++; +// } else if (oma.getMatchStatus().equals(OtaStatusEnum.LOCKED.getKey())) { +// locked++; +// } else if (oma.getMatchStatus().equals(OtaStatusEnum.REJECTED.getKey())) { +// rejected++; +// } else { +// toBeMatched++; +// } +// if (StringUtils.isBlank(oma.getAttestationSchedule()) || oma.getAttestationSchedule().equals(CertificationProgressEnum.NOT_START.getValue())) { +// notStart++; +// } else if (oma.getAttestationSchedule().equals(CertificationProgressEnum.IN_PROGRESS.getValue())) { +// inProgress++; +// } else if (oma.getAttestationSchedule().equals(CertificationProgressEnum.TEST_PASSED.getValue())) { +// testPassed++; +// } else if (oma.getAttestationSchedule().equals(CertificationProgressEnum.TEST_FAILED.getValue())) { +// testFailed++; +// } else if (oma.getAttestationSchedule().equals(CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue())) { +// notSubmitted++; +// } else if (oma.getAttestationSchedule().equals(CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue())) { +// submitted++; +// } else if (oma.getAttestationSchedule().equals(CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue())) { +// stored++; +// } else { +// notStart++; +// } +// } +// +// Map statisticalMap = new HashMap<>(); +// statisticalMap.put("plannedBpLaunchBatch", s); +// statisticalMap.put("allCount", total); +// List> matchStatusMapList = new ArrayList<>(); +// matchStatusMapList.add(wrapStatMap("matchStatus", "matchStatusCount", OtaStatusEnum.TO_BE_MATCHED.getKey(), toBeMatched)); +// matchStatusMapList.add(wrapStatMap("matchStatus", "matchStatusCount", OtaStatusEnum.TO_BE_APPROVED.getKey(), toBeApproved)); +// matchStatusMapList.add(wrapStatMap("matchStatus", "matchStatusCount", OtaStatusEnum.LOCKED.getKey(), locked)); +// matchStatusMapList.add(wrapStatMap("matchStatus", "matchStatusCount", OtaStatusEnum.REJECTED.getKey(), rejected)); +// statisticalMap.put("matchStatusMapList", matchStatusMapList); +// +// Map matchStatusMap = new HashMap<>(); +// matchStatusMap.put(OtaStatusEnum.TO_BE_MATCHED.getKey(), toBeMatched); +// matchStatusMap.put(OtaStatusEnum.TO_BE_APPROVED.getKey(), toBeApproved); +// matchStatusMap.put(OtaStatusEnum.LOCKED.getKey(), locked); +// matchStatusMap.put(OtaStatusEnum.REJECTED.getKey(), rejected); +// statisticalMap.put("matchStatusMap", matchStatusMap); +// +// List> attestationScheduleMapList = new ArrayList<>(); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.NOT_START.getValue(), notStart)); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.IN_PROGRESS.getValue(), inProgress)); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.TEST_PASSED.getValue(), testPassed)); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.TEST_FAILED.getValue(), testFailed)); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue(), notSubmitted)); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue(), submitted)); +// attestationScheduleMapList.add(wrapStatMap("attestationSchedule", "attestationScheduleCount", CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue(), stored)); +// statisticalMap.put("attestationScheduleMapList", attestationScheduleMapList); +// +// Map attestationScheduleMap = new HashMap<>(); +// attestationScheduleMap.put(CertificationProgressEnum.NOT_START.getValue().replace(" ", "_"), notStart); +// attestationScheduleMap.put(CertificationProgressEnum.IN_PROGRESS.getValue().replace(" ", "_"), inProgress); +// attestationScheduleMap.put(CertificationProgressEnum.TEST_PASSED.getValue().replace(" ", "_"), testPassed); +// attestationScheduleMap.put(CertificationProgressEnum.TEST_FAILED.getValue().replace(" ", "_"), testFailed); +// attestationScheduleMap.put(CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue().replace(" ", "_"), notSubmitted); +// attestationScheduleMap.put(CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue().replace(" ", "_"), submitted); +// attestationScheduleMap.put(CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue().replace(" ", "_"), stored); +// statisticalMap.put("attestationScheduleMap", attestationScheduleMap); +// +// if (!projectLibraryBaseList.isEmpty()) { +// statisticalMap.put("showName", projectLibraryBaseList.get(0).getShowName()); +// } +// result.add(statisticalMap); +// } +// } +// return result; +// } private Map wrapStatMap(String key, String val, String keyStr, Object valObj) { Map map = new HashMap<>(); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/platform/service/impl/PlatformProjectLibraryBaseServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/platform/service/impl/PlatformProjectLibraryBaseServiceImpl.java index 5e609c9bc..205217c74 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/platform/service/impl/PlatformProjectLibraryBaseServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/platform/service/impl/PlatformProjectLibraryBaseServiceImpl.java @@ -3295,7 +3295,7 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl> mapList = otaManageApplyEOService.getStatisticalStatus(projectLibraryId, null, cut,null); + List> mapList = otaManageApplyEOService.getStatisticalStatus(projectLibraryId, null, cut,null,null); if(ObjectUtils.isNotEmpty(mapList)){ int dataIndex = 2; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java index 7c0f778cc..9b151fa95 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java @@ -269,6 +269,9 @@ public class ProjectLibraryBase implements Comparable { @ApiModelProperty(value = "平台件类型") private String platformType; + @TableField(exist = false) + private String appliedVehicleProject; + @Override public int compareTo(ProjectLibraryBase o) { diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java index 4d275453c..8102deb5f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java @@ -1288,6 +1288,29 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl targetMarketList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); for(ProjectLibraryBase projectLibraryBase: records){ + //setOtaProjectName ota状态统计传参使用 + String projectName = projectLibraryBase.getProjectName(); + if("FORCE".equals(projectName)){ + projectName = "Force"; + } + String market = projectLibraryBase.getTargetMarket(); + List projectNameAndTargetMarketList = new ArrayList<>(); + if(StringUtils.isNotBlank(market)){ + for (String marketStr : market.split(",")) { + if(marketStr.equals("China")){ + projectNameAndTargetMarketList.add(projectName+" China"); + }else if(marketStr.equals("UK")){ + projectNameAndTargetMarketList.add(projectName+" RHD"); + }else{ + projectNameAndTargetMarketList.add(projectName+" "+marketStr); + } + } + } + if(ObjectUtils.isNotEmpty(projectNameAndTargetMarketList)){ + projectLibraryBase.setAppliedVehicleProject(StringUtils.join(projectNameAndTargetMarketList,",")); + } + + //历史数据的主版本没有版本号,所以默认给00 if(StringUtils.isBlank(projectLibraryBase.getParentId()) && StringUtils.isBlank(projectLibraryBase.getProjectVersion())){ projectLibraryBase.setProjectVersion("00"); @@ -4017,7 +4040,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl> mapList = otaManageApplyEOService.getStatisticalStatus(projectLibraryId, null, cut,null); + List> mapList = otaManageApplyEOService.getStatisticalStatus(projectLibraryId, null, cut,null,null); if(ObjectUtils.isNotEmpty(mapList)){ int dataIndex = 2; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java index 022bc4220..516dd0bec 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java @@ -686,7 +686,7 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService for (String projectId : projectIdListTemp) { List> statisticalStatus = otaManageApplyEOService.getStatisticalStatus(projectId, "", - projectLibraryBase.getCut(),plbEoList); + projectLibraryBase.getCut(),plbEoList,null); mapList.addAll(statisticalStatus); } } diff --git a/jero-web/src/views/projectManagement/components/otastatus.vue b/jero-web/src/views/projectManagement/components/otastatus.vue index 96716853a..abad1112d 100644 --- a/jero-web/src/views/projectManagement/components/otastatus.vue +++ b/jero-web/src/views/projectManagement/components/otastatus.vue @@ -105,7 +105,11 @@ idList: { type: Array, default: [] - } + }, + queryForm:{ + type: Object, + default: {} + }, }, data() { return { @@ -149,7 +153,8 @@ getData() { let query = { ...this.queryParam, - projectId:this.$route.query.id + projectId:this.$route.query.id, + appliedVehicleProject:this.queryForm.appliedVehicleProject } getAction('ota/otaManageApplyEO/getStatisticalStatus', query).then((res) => { if (res.success) { diff --git a/jero-web/src/views/projectManagement/components/projectStatus.vue b/jero-web/src/views/projectManagement/components/projectStatus.vue index d1fff51e3..2e2399e69 100644 --- a/jero-web/src/views/projectManagement/components/projectStatus.vue +++ b/jero-web/src/views/projectManagement/components/projectStatus.vue @@ -26,7 +26,7 @@ v-if="activeKey == $t('parameterCollectionProgressManagement')"/> - + Date: Thu, 18 Jan 2024 17:23:24 +0800 Subject: [PATCH 04/10] =?UTF-8?q?Ota=E7=8A=B6=E6=80=81=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/projectManagement/components/ProjectDetails.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jero-web/src/views/projectManagement/components/ProjectDetails.vue b/jero-web/src/views/projectManagement/components/ProjectDetails.vue index 577cbc4b8..5486f3101 100644 --- a/jero-web/src/views/projectManagement/components/ProjectDetails.vue +++ b/jero-web/src/views/projectManagement/components/ProjectDetails.vue @@ -281,7 +281,8 @@ }, stateExportClick() { let query = { - projectLibraryId: this.$route.query.id + projectLibraryId: this.$route.query.id, + appliedVehicleProject:this.queryForm.appliedVehicleProject } downloadFile('/project/projectLibraryBase/exportProjectProgressStatisticsXls', this.queryForm.projectName+'-'+this.queryForm.projectVersion+'-'+this.$t('projectProgressStatistics') + '.xls', query) From 9d195fb59cd7d91a29954126dfb344369ef35cf7 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Thu, 18 Jan 2024 19:14:11 +0800 Subject: [PATCH 05/10] =?UTF-8?q?Ota=E7=8A=B6=E6=80=81=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ota/mapper/OtaManageApplyEOMapper.java | 8 +- .../ota/mapper/xml/OtaManageApplyEOMapper.xml | 35 +++ .../impl/OtaManageApplyEOServiceImpl.java | 212 +++++++++++++++--- .../impl/ProjectLibraryBaseServiceImpl.java | 3 +- 4 files changed, 225 insertions(+), 33 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/OtaManageApplyEOMapper.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/OtaManageApplyEOMapper.java index 6a2513245..cd3b500ab 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/OtaManageApplyEOMapper.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/OtaManageApplyEOMapper.java @@ -1,13 +1,11 @@ package com.jero.modules.ota.mapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.ota.entity.OtaManageApplyEO; import com.jero.modules.ota.entity.OtaManageReceiveNsdpEO; import com.jero.modules.ota.vo.VersionVO; import org.apache.ibatis.annotations.Param; -import com.jero.modules.ota.entity.OtaManageApplyEO; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.pptx4j.pml.STTLTriggerRuntimeNode; import java.util.List; @@ -29,6 +27,8 @@ public interface OtaManageApplyEOMapper extends BaseMapper { */ List getOtaCarPage(@Param("otaManageApplyEO") OtaManageApplyEO otaManageApplyEO); + List getOtaCarInfoList(@Param("otaManageApplyEO") OtaManageApplyEO otaManageApplyEO); + List getByAppliedVehicleProject(@Param("appliedVehicleProject") String appliedVehicleProject); List getOtaCarList(@Param("plannedBpLaunchBatch") String plannedBpLaunchBatch); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/xml/OtaManageApplyEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/xml/OtaManageApplyEOMapper.xml index c5647afc1..22598e9ab 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/xml/OtaManageApplyEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/mapper/xml/OtaManageApplyEOMapper.xml @@ -101,6 +101,41 @@ order by omr.id desc + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java index 040434b6e..0c42935e7 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java @@ -905,7 +905,7 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.isNull(OtaManageReceive::getIsDel); + wrapper.ne(OtaManageReceive::getStatus,OtaHomoImpactEnum.STATUS.getValue()); List otaManageReceiveList = otaManageReceiveService.list(wrapper); List plannedBpLaunchBatchList = new ArrayList<>(); List otaManageApplyEOList = new ArrayList<>(); From 8ada4a67776b9f21ceaed79c38013aa97b7b4822 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Fri, 19 Jan 2024 11:37:23 +0800 Subject: [PATCH 09/10] =?UTF-8?q?Ota=E7=8A=B6=E6=80=81=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OtaManageApplyEOServiceImpl.java | 48 +++++++++++++++---- 1 file changed, 39 insertions(+), 9 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java index 0c42935e7..afa289171 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java @@ -2307,23 +2307,53 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl statisticalMap = new HashMap<>(); From cc0446095af00d3e024e508b22d6460cc03aa22d Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Fri, 19 Jan 2024 15:59:10 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E5=8F=82=E6=95=B0=E9=A1=B9=E6=94=B6?= =?UTF-8?q?=E9=9B=86=E6=B8=85=E5=8D=95--=E8=B4=A3=E4=BB=BB=E9=A2=86?= =?UTF-8?q?=E5=9F=9F=E4=B8=8B=E6=8B=89=E6=90=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ParameterItemCollectionList.vue | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue index cfe6758d6..dd774a8ba 100644 --- a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue +++ b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue @@ -73,6 +73,8 @@ = 0 + }, getcustomizeList(item) { let params = { paramsManifestId: this.$route.query.id,