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 2edd55c10..2654ccc75 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 @@ -153,6 +153,7 @@ oma.attestation_schedule, oma.project_version, pni.project_name car, + oma.vehicle_type, pyni.year_name FROM project_library_base plb 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 6dae49913..857172ece 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 @@ -1303,61 +1303,91 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl getVersionInfo(String vdr, String car, String cut) { - //认证进度数据字典 certification_progress - List regionDictList = sysDictItemServiceImpl.selectItemsByDictCode("certification_progress"); - - List regionList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); - - List versionVOList = this.getBaseMapper().getVersionInfo(vdr); List result = new LinkedList<>(); - if (!versionVOList.isEmpty()) { - List oneList = versionVOList.stream().filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList()); - List twoList = versionVOList.stream().filter(e -> StringUtils.isNotBlank(e.getParentId())).collect(Collectors.toList()); + OtaManageReceive omr = otaManageReceiveService.getById(vdr); + //获取到版本号,然后获取所有车型 + String plannedBpLaunchBatch = omr.getPlannedBpLaunchBatch(); + if (StringUtils.isNotEmpty(plannedBpLaunchBatch)) { + List dataList = otaManageReceiveNsdpService.getListByReleaseName(plannedBpLaunchBatch); + //车型 + Set vehicleSet = new HashSet<>(); + for (OtaManageReceiveNsdp omrn : dataList) { + String appliedVehicleProject = omrn.getVehicle(); + if (StringUtils.isNotEmpty(appliedVehicleProject)) { + for (String s : appliedVehicleProject.split(",")) { + String[] split = s.split(" "); + if (split.length == 3) { + vehicleSet.add(split[0] + " " + split[2]); + } + } + } + } - for (VersionVO versionVO : oneList) { - result.add(versionVO); - List collect = twoList.stream().filter(e -> versionVO.getProjectId().equals(e.getParentId())).collect(Collectors.toList()); - Collections.sort(collect, new Comparator() { - @Override - public int compare(VersionVO o1, VersionVO o2) { - return Integer.valueOf(o1.getVersionNumber()).compareTo(Integer.valueOf(o2.getVersionNumber())); + //认证进度数据字典 certification_progress + List regionDictList = sysDictItemServiceImpl.selectItemsByDictCode("certification_progress"); + + List regionList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); + + List versionVOList = this.getBaseMapper().getVersionInfo(vdr); + if (!versionVOList.isEmpty()) { + List oneList = versionVOList.stream().filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList()); + List twoList = versionVOList.stream().filter(e -> StringUtils.isNotBlank(e.getParentId())).collect(Collectors.toList()); + + for (VersionVO versionVO : oneList) { + result.add(versionVO); + List collect = twoList.stream().filter(e -> versionVO.getProjectId().equals(e.getParentId())).collect(Collectors.toList()); + Collections.sort(collect, new Comparator() { + @Override + public int compare(VersionVO o1, VersionVO o2) { + return Integer.valueOf(o1.getVersionNumber()).compareTo(Integer.valueOf(o2.getVersionNumber())); + } + }); + result.addAll(collect); + } + for (VersionVO versionVO : result) { + String market = versionVO.getMarket(); + List list = new LinkedList<>(); + for (String s : market.split(",")) { + List collect = regionList.stream().filter(e -> e.getValue().equals(s)).collect(Collectors.toList()); + if (!collect.isEmpty()) { + list.add(collect.get(0).getTextEn()); + } } - }); - result.addAll(collect); - } - for (VersionVO versionVO : result) { - String market = versionVO.getMarket(); - List list = new LinkedList<>(); - for (String s : market.split(",")) { - List collect = regionList.stream().filter(e -> e.getValue().equals(s)).collect(Collectors.toList()); - if (!collect.isEmpty()) { - list.add(collect.get(0).getTextEn()); + if (!list.isEmpty()) { + market = StringUtils.join(list, ","); } - } - if (!list.isEmpty()) { - market = StringUtils.join(list, ","); - } - if (StringUtils.isBlank(versionVO.getProjectVersion())) { - versionVO.setVersionName(versionVO.getCar() + "-" + market); - } else { - versionVO.setVersionName(versionVO.getCar() + "-" + versionVO.getYearName() + "-" + market + "-" + versionVO.getVersionNumber()); - } - //认证进度 - if (StringUtils.isNotBlank(versionVO.getAttestationSchedule())) { - List collect = regionDictList.stream() - .filter(e -> e.getItemValue().equals(versionVO.getAttestationSchedule())).collect(Collectors.toList()); - if (CutEnum.CN.getValue().equals(cut)) { - versionVO.setAttestationSchedule(collect.get(0).getItemText()); + if (StringUtils.isBlank(versionVO.getProjectVersion())) { + versionVO.setVersionName(versionVO.getCar() + "-" + market); } else { - versionVO.setAttestationSchedule(collect.get(0).getEnName()); + versionVO.setVersionName(versionVO.getCar() + "-" + versionVO.getYearName() + "-" + market + "-" + versionVO.getVersionNumber()); + } + //认证进度 + if (StringUtils.isNotBlank(versionVO.getAttestationSchedule())) { + List collect = regionDictList.stream() + .filter(e -> e.getItemValue().equals(versionVO.getAttestationSchedule())).collect(Collectors.toList()); + if (CutEnum.CN.getValue().equals(cut)) { + versionVO.setAttestationSchedule(collect.get(0).getItemText()); + } else { + versionVO.setAttestationSchedule(collect.get(0).getEnName()); + } } } } - } - if (result.isEmpty()) { - VersionVO versionVO = new VersionVO(); - versionVO.setVersionName(car); - result.add(versionVO); + for (String vehicleStr : vehicleSet) { + boolean flag = false; + for (VersionVO ver : result) { + if(ver.getVehicleType().equals(vehicleStr)){ + flag = true; + break; + } + } + if(!flag){ + VersionVO versionVO = new VersionVO(); + versionVO.setVersionName(vehicleStr); + versionVO.setVehicleType(vehicleStr); + result.add(versionVO); + } + } } return result; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/VersionVO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/VersionVO.java index e8bf7f9bc..b53a538ad 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/VersionVO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/VersionVO.java @@ -62,6 +62,9 @@ public class VersionVO { private String versionName; @ApiModelProperty(value = "项目版本-id") - private java.lang.String projectVersion; + private String projectVersion; + + @ApiModelProperty(value = "适用车型") + private String vehicleType; }