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; }