From 32c368250412ac5b732569c0e9217bffff95929a Mon Sep 17 00:00:00 2001 From: xiejunyu Date: Fri, 20 May 2022 18:08:15 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=BA=93=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProjectLibraryBaseServiceImpl.java | 29 +++++++++++++++---- 1 file changed, 24 insertions(+), 5 deletions(-) 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 8b34e9960..0dd29813c 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 @@ -77,6 +77,8 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl projectNameAndYear = projectNameInfoEOMapper.selectProjectNameAndYear(); -// projectNameAndYear.stream().filter("year_id") + checkExitNameInfo(projectLibraryBase); save(projectLibraryBase); //创建任务计划时间轴 projectTaskPlanningService.setProjectTaskPlanning(projectLibraryBase.getId()); } + /**检查数字平台和车型平台*/ + public void checkExitNameInfo(ProjectLibraryBase projectLibraryBase){ + String projectNameId = projectLibraryBase.getProjectNameId(); + String digitalPlatform = projectLibraryBase.getDigitalPlatform(); + String vehiclePlatform = projectLibraryBase.getVehiclePlatform(); + List projectNameAndYearList = projectNameInfoEOMapper.selectProjectNameAndYear(); + ProjectNameInfoEO projectNameAndYear = projectNameAndYearList.stream().filter(e -> e.getId().equals(projectNameId)).collect(Collectors.toList()).get(0); + //数字平台和车型平台同时和数据库里的一样,不新增,否则新增 + if(!(projectNameAndYear.getDigitalPlatform().equals(digitalPlatform) + && projectNameAndYear.getVehiclePlatform().equals(vehiclePlatform))){ + ProjectNameInfoEO projectNameInfoEO = new ProjectNameInfoEO(); + String nameInfoId = UUID.randomUUID().toString().replace("-", ""); + projectNameInfoEO.setId(nameInfoId); + projectNameInfoEO.setProjectName(projectLibraryBase.getProjectName()); + projectNameInfoEO.setVehiclePlatform(projectLibraryBase.getVehiclePlatform()); + projectNameInfoEO.setDigitalPlatform(projectLibraryBase.getDigitalPlatform()); + projectNameInfoEOService.add(projectNameInfoEO); + } + } /** * 更新 * @@ -117,6 +134,8 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl Date: Fri, 20 May 2022 18:12:14 +0800 Subject: [PATCH 2/5] =?UTF-8?q?der=E6=8F=90=E4=BA=A4=E5=8A=A0=E5=8F=82?= =?UTF-8?q?=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/deliverableStatusEchart.vue | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/jero-web/src/views/projectManagement/components/deliverableStatusEchart.vue b/jero-web/src/views/projectManagement/components/deliverableStatusEchart.vue index f1d9a0b02..04f4dd81b 100644 --- a/jero-web/src/views/projectManagement/components/deliverableStatusEchart.vue +++ b/jero-web/src/views/projectManagement/components/deliverableStatusEchart.vue @@ -149,6 +149,13 @@ status: res.designFlowTaskStatus || res.prehomoFlowTaskStatus || res.verifyFlowTaskStatus }) color.push('#9DB9D4') + } else if (res.designFlowTaskStatus == 'Termination of task' || res.prehomoFlowTaskStatus == 'Termination of task' || res.verifyFlowTaskStatus == 'Termination of task') { + data.push({ + value: res.designFlowTaskStatusCount || res.prehomoFlowTaskStatusCount || res.verifyFlowTaskStatusCount, + name: this.$t('taskTermination'), + status: res.designFlowTaskStatus || res.prehomoFlowTaskStatus || res.verifyFlowTaskStatus + }) + color.push('#E83030') } } ) From 28d800b47ad615a7a3e7941b0fdbe73ec1b266a0 Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Fri, 20 May 2022 18:38:16 +0800 Subject: [PATCH 3/5] update --- .../project/service/impl/ConditionAssessmentEOServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java index c2aa0db29..b47897179 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java @@ -220,7 +220,7 @@ public class ConditionAssessmentEOServiceImpl extends ServiceImpl> result = new ArrayList<>(); if(CollectionUtils.isNotEmpty(projectLawsInventoryIdList)){ List conditionAssessmentList = this.baseMapper.getProjectStatusAssessListByConditionAssessment(projectLawsInventoryIdList, conditionAssessment); - List dutyTerritoryList = conditionAssessmentList.stream().distinct().map(ConditionAssessmentEO::getDutyTerritory).collect(Collectors.toList()); + List dutyTerritoryList = conditionAssessmentList.stream().map(ConditionAssessmentEO::getDutyTerritory).distinct().collect(Collectors.toList()); dutyTerritoryList.forEach(dutyTerritory -> { Map map = new HashMap<>(); From b352fe9490184e6c459356f6b937c6500c590f36 Mon Sep 17 00:00:00 2001 From: xiejunyu Date: Fri, 20 May 2022 18:47:28 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=BA=93=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/entity/ProjectLibraryBase.java | 2 -- .../project/entity/ProjectNameInfoEO.java | 5 +++ .../mapper/ProjectNameInfoEOMapper.java | 2 +- .../impl/ProjectLibraryBaseServiceImpl.java | 35 +++++++++---------- 4 files changed, 22 insertions(+), 22 deletions(-) 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 2550d2f76..46cdba5bb 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 @@ -62,11 +62,9 @@ public class ProjectLibraryBase implements Serializable { private java.lang.String certificationEngineerName; /**车型平台*/ - @TableField(exist = false) private java.lang.String vehiclePlatform; /**数字平台*/ - @TableField(exist = false) private java.lang.String digitalPlatform; /**IPD信息*/ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectNameInfoEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectNameInfoEO.java index 64a35c61c..5d524f6e5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectNameInfoEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectNameInfoEO.java @@ -62,6 +62,11 @@ public class ProjectNameInfoEO implements Serializable { @ApiModelProperty(value = "项目名称") private java.lang.String projectName; + /**年款id*/ + @ApiModelProperty(value = "年款id") + @TableField(exist = false) + private java.lang.String yearId; + /**年款名称*/ @ApiModelProperty(value = "年款名称") @TableField(exist = false) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectNameInfoEOMapper.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectNameInfoEOMapper.java index 90a1c1774..a6678b114 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectNameInfoEOMapper.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectNameInfoEOMapper.java @@ -13,7 +13,7 @@ import java.util.List; * @Version: V1.0 */ public interface ProjectNameInfoEOMapper extends BaseMapper { - @Select("select pni.id,pni.project_name,pnyi.id as year_id,pyni.year_name,pni.vehicle_platform,pni.digital_platform\n" + + @Select("select pni.id,pni.project_name,pyni.id as year_id,pyni.year_name,pni.vehicle_platform,pni.digital_platform\n" + "from project_name_info as pni\n" + "left join project_year_name_info as pyni on pni.id=pyni.project_name_id;") List selectProjectNameAndYear(); 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 0dd29813c..fc564f4eb 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 @@ -10,7 +10,6 @@ import com.jero.common.system.vo.LoginUser; import com.jero.modules.project.entity.ConditionAssessmentEO; import com.jero.modules.project.entity.ProjectLawsInventoryEO; import com.jero.modules.project.entity.ProjectLibraryBase; -import com.jero.modules.project.entity.ProjectNameInfoEO; import com.jero.modules.project.enums.*; import com.jero.modules.project.mapper.ProjectLawsInventoryEOMapper; import com.jero.modules.project.mapper.ProjectLibraryBaseMapper; @@ -96,30 +95,28 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl projectNameAndYearList = projectNameInfoEOMapper.selectProjectNameAndYear(); - ProjectNameInfoEO projectNameAndYear = projectNameAndYearList.stream().filter(e -> e.getId().equals(projectNameId)).collect(Collectors.toList()).get(0); - //数字平台和车型平台同时和数据库里的一样,不新增,否则新增 - if(!(projectNameAndYear.getDigitalPlatform().equals(digitalPlatform) - && projectNameAndYear.getVehiclePlatform().equals(vehiclePlatform))){ - ProjectNameInfoEO projectNameInfoEO = new ProjectNameInfoEO(); - String nameInfoId = UUID.randomUUID().toString().replace("-", ""); - projectNameInfoEO.setId(nameInfoId); - projectNameInfoEO.setProjectName(projectLibraryBase.getProjectName()); - projectNameInfoEO.setVehiclePlatform(projectLibraryBase.getVehiclePlatform()); - projectNameInfoEO.setDigitalPlatform(projectLibraryBase.getDigitalPlatform()); - projectNameInfoEOService.add(projectNameInfoEO); + String yearNameId = projectLibraryBase.getYearNameId(); + String targetMarket = projectLibraryBase.getTargetMarket(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("project_name_id",projectNameId).eq("year_name_id",yearNameId).eq("target_market",targetMarket); + Integer count = projectLibraryBaseMapper.selectCount(queryWrapper); + if (count > 0) { + if(CutEnum.CN.getValue().equals(projectLibraryBase.getCut())) { + throw new JeroBootException("已存在车型名称,年款号,目标市场均同的数据"); + }else{ + throw new JeroBootException("There are data with the same model name, model number and target market."); + } } } /** @@ -135,7 +132,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl Date: Sun, 22 May 2022 23:40:37 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=90=8C=E6=AD=A5space=E5=AE=9A=E6=97=B6?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProjectNameInfoEOController.java | 12 +- .../service/IProjectNameInfoEOService.java | 2 +- .../impl/ProjectNameInfoEOServiceImpl.java | 16 +- .../modules/space/job/SpaceJobHandler.java | 305 ++++++++++++++++++ .../space/service/SpaceServiceImpl.java | 9 - 5 files changed, 316 insertions(+), 28 deletions(-) create mode 100644 jero-boot/jero-boot-modules/src/main/java/com/jero/modules/space/job/SpaceJobHandler.java diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectNameInfoEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectNameInfoEOController.java index 098f5ef40..6697e9093 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectNameInfoEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectNameInfoEOController.java @@ -173,10 +173,10 @@ public class ProjectNameInfoEOController extends JeroController { - void getSpaceInfo(String cut); + //void getSpaceInfo(String cut); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectNameInfoEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectNameInfoEOServiceImpl.java index 2165d6493..9f2777a40 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectNameInfoEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectNameInfoEOServiceImpl.java @@ -1,23 +1,15 @@ package com.jero.modules.project.service.impl; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.jero.common.constant.enums.CutEnum; -import com.jero.common.exception.JeroBootException; import com.jero.modules.project.entity.ProjectNameInfoEO; -import com.jero.modules.project.entity.ProjectYearNameInfoEO; import com.jero.modules.project.mapper.ProjectNameInfoEOMapper; import com.jero.modules.project.service.IProjectNameInfoEOService; import com.jero.modules.space.service.SpaceServiceImpl; -import com.jero.modules.system.util.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; -import java.util.UUID; /** * @Description: 项目名信息表 @@ -106,14 +98,14 @@ public class ProjectNameInfoEOServiceImpl extends ServiceImpl nameInfoEOQueryWrapper = new QueryWrapper<>(); + nameInfoEOQueryWrapper.eq("project_name",modelName) + .eq("vehicle_platform",hardwarePltName) + .eq("digital_platform",softwarePltName); + Integer nameInfoEOSameCount = projectNameInfoEOMapper.selectCount(nameInfoEOQueryWrapper); + + if(nameInfoEOSameCount == 0) {//没有重复的,保存 + String nameInfoId = UUID.randomUUID().toString().replace("-", ""); + + ProjectNameInfoEO projectNameInfoEO = new ProjectNameInfoEO(); + projectNameInfoEO.setId(nameInfoId); + projectNameInfoEO.setProjectName(modelName); + projectNameInfoEO.setVehiclePlatform(hardwarePltName); + projectNameInfoEO.setDigitalPlatform(softwarePltName); + //保存 + projectNameInfoEOService.save(projectNameInfoEO); + + + for (int j = 0; j < modelYearInfoJson.size(); j++) { + JSONObject modelYearInfo = modelYearInfoJson.getJSONObject(j); + String yearName = modelYearInfo.getString("yearName"); + + ProjectYearNameInfoEO projectYearNameInfoEO = new ProjectYearNameInfoEO(); + projectYearNameInfoEO.setProjectNameId(nameInfoId); + projectYearNameInfoEO.setYearName(yearName); + //保存 + projectYearNameInfoEOService.save(projectYearNameInfoEO); + } + }else {//有重复的,校验年款 + List projectNameInfoDataList = projectNameInfoEOService.list(nameInfoEOQueryWrapper); + String nameInfoId = projectNameInfoDataList.stream().map(e -> e.getId()).collect(Collectors.toList()).get(0); + List yearNameInfoEOList = new ArrayList<>(); + for (int j = 0; j < modelYearInfoJson.size(); j++) { + JSONObject modelYearInfo = modelYearInfoJson.getJSONObject(j); + String yearName = modelYearInfo.getString("yearName"); + ProjectYearNameInfoEO projectYearNameInfoEO = new ProjectYearNameInfoEO(); + projectYearNameInfoEO.setProjectNameId(nameInfoId); + projectYearNameInfoEO.setYearName(yearName); + yearNameInfoEOList.add(projectYearNameInfoEO); + } + + //同步过来的数据里的年款 + List yearNameList = yearNameInfoEOList.stream().filter(e -> e.getProjectNameId().equals(nameInfoId)).map(e -> e.getYearName()).collect(Collectors.toList()); + + //查数据里的年款 + QueryWrapper yearNameInfoEOQueryWrapper = new QueryWrapper<>(); + yearNameInfoEOQueryWrapper.eq("project_name_id",nameInfoId); + List yearNameInfoDataList = projectYearNameInfoEOService.list(yearNameInfoEOQueryWrapper); + List yearNameDataList = yearNameInfoDataList.stream().filter(e -> e.getProjectNameId().equals(nameInfoId)).map(e -> e.getYearName()).collect(Collectors.toList()); + + //获得不同年款 + yearNameList.remove(yearNameDataList); + + if(yearNameList.size()>0){//存在不同年款 + List diffYearNameList = new ArrayList<>(); + for (ProjectYearNameInfoEO projectYearNameInfoEO: yearNameInfoEOList) { + if(! yearNameList.contains(projectYearNameInfoEO.getYearName())) { + diffYearNameList.add(projectYearNameInfoEO); + } + } + projectYearNameInfoEOService.saveBatch(yearNameInfoDataList); + } + } +// if(CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("从Space获取项目名称相关数据,成功保存"); +// }else{ +// throw new JeroBootException("Get the data related to the project name from Space and save it successfully."); +// } + } + }else{ +// if(CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("从Space获取项目名称相关数据为空"); +// }else{ +// throw new JeroBootException("Data related to obtaining project name from Space is empty."); +// } + } + } catch (Exception e) { + e.printStackTrace(); + } + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/space/service/SpaceServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/space/service/SpaceServiceImpl.java index ad3b26f61..df0f01d13 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/space/service/SpaceServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/space/service/SpaceServiceImpl.java @@ -77,21 +77,12 @@ public class SpaceServiceImpl implements ISpaceService { String sign = sign(paramMap,appSecret);//签名字符串 paramMap.put("sign",sign);//签名字符串 -// paramMap.put("appId", appId);//在Program Space中注册的appId -// paramMap.put("bizData", "{\"module\":\"GRP\"}");//业务参数 -// paramMap.put("timestamp", "1652965354000");//请求时间 -// -//// String sign = sign(paramMap,appSecret);//签名字符串 -// paramMap.put("sign","148EF05BAB45F6D1213DA506D1D04E1B");//签名字符串 - -// String response = HttpUtil.post(domainUrl, paramMap); String response = HttpRequest.post(domainUrl) .header("Content-Type", "application/x-www-form-urlencoded") .form(paramMap)//表单内容 .timeout(20000)//超时,毫秒 .execute().body(); -// String response = HttpRequestUtil.getResponseOfPOST(domainUrl, headerMap, null); return response; }