From fb3a31be9a74f0ed9915d66580c4ad98f13cc585 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Tue, 7 May 2024 13:37:50 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=AA=8C=E8=AF=81=E9=9B=B6=E9=83=A8?= =?UTF-8?q?=E4=BB=B6=E6=98=AF=E5=90=A6=E5=8F=AF=E4=BB=A5=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BD=BF=E7=94=A8PDM=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E7=9A=84=E6=8F=90=E7=A4=BA=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/LawsBindPartController.java | 6 +- .../service/impl/LawsBindPartServiceImpl.java | 20 +- .../docking/srms/service/SrmsApiService.java | 2 +- .../srms/service/impl/SrmsApiServiceImpl.java | 420 +++++++++--------- 4 files changed, 230 insertions(+), 218 deletions(-) diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/controller/LawsBindPartController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/controller/LawsBindPartController.java index 1c465e27..5ee00296 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/controller/LawsBindPartController.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/controller/LawsBindPartController.java @@ -59,8 +59,10 @@ public class LawsBindPartController { @AutoLog(value = "绑定零部件-是否显示使用绑定关系") @ApiOperation(value="绑定零部件-是否显示使用绑定关系", notes="绑定零部件-是否显示使用绑定关系") @GetMapping(value = "/isShowUseBindRelation") - public Result isShowUseBindRelation(LawsBindPart lawsBindPart) { - return Result.OK(lawsBindPartService.isShowUseBindRelation(lawsBindPart)); + public Result isShowUseBindRelation(LawsBindPart lawsBindPart) { + LawsBindPart showUseBindRelation = lawsBindPartService.isShowUseBindRelation(lawsBindPart); + + return Result.OK(); } @AutoLog(value = "绑定零部件-使用绑定关系") diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/service/impl/LawsBindPartServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/service/impl/LawsBindPartServiceImpl.java index abb954af..b833dada 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/service/impl/LawsBindPartServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/bindPart/service/impl/LawsBindPartServiceImpl.java @@ -95,11 +95,12 @@ public class LawsBindPartServiceImpl extends ServiceImpl getByToken(JSONObject json) { try { - ByTokenRequests byTokenRequests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS)),ByTokenRequests.class); + ByTokenRequests byTokenRequests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS)), ByTokenRequests.class); // 验证数据必填项 - if(StringUtils.isAllBlank(byTokenRequests.getUsername()) + if (StringUtils.isAllBlank(byTokenRequests.getUsername()) || StringUtils.isBlank(byTokenRequests.getAppkey()) - || StringUtils.isBlank(byTokenRequests.getSecret())){ + || StringUtils.isBlank(byTokenRequests.getSecret())) { return Result.error(ADD_NOT_NULL); } LambdaQueryWrapper queryLawsSysApiInfo = new LambdaQueryWrapper<>(); - queryLawsSysApiInfo.eq(LawsSysApiInfo::getAppKey,byTokenRequests.getAppkey()); - queryLawsSysApiInfo.eq(LawsSysApiInfo::getSecret,byTokenRequests.getSecret()); - LawsSysApiInfo lawsSysApiInfo = lawsSysApiInfoService.getOne(queryLawsSysApiInfo,false); - if(Objects.isNull(lawsSysApiInfo)){ - return Result.error(403,SYS_ERR); + queryLawsSysApiInfo.eq(LawsSysApiInfo::getAppKey, byTokenRequests.getAppkey()); + queryLawsSysApiInfo.eq(LawsSysApiInfo::getSecret, byTokenRequests.getSecret()); + LawsSysApiInfo lawsSysApiInfo = lawsSysApiInfoService.getOne(queryLawsSysApiInfo, false); + if (Objects.isNull(lawsSysApiInfo)) { + return Result.error(403, SYS_ERR); } Result re; // E彩通访问,使用默认账户 - if(Objects.equals(ettonSysCode,lawsSysApiInfo.getSysCode())){ + if (Objects.equals(ettonSysCode, lawsSysApiInfo.getSysCode())) { re = loginService.srmsByToken(ettonSysUser); String token = re.getResult().get("token").toString(); String tokenKey = byTokenRequests.getUsername() + token; - redisUtil.set(tokenKey,token,3600); - }else{ + redisUtil.set(tokenKey, token, 3600); + } else { re = loginService.srmsByToken(byTokenRequests.getUsername()); } return re; - }catch (Exception e){ - log.error("获取token异常:",e); + } catch (Exception e) { + log.error("获取token异常:", e); return Result.error("操作失败"); } } @@ -201,16 +199,16 @@ public class SrmsApiServiceImpl implements SrmsApiService { log.info(PRINT_TOKEN + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); - if(!tokenOK){ - return Result.error(403,SYS_ERR); + if (!tokenOK) { + return Result.error(403, SYS_ERR); } } catch (Exception ignored) { - return Result.error(403,SYS_ERR); + return Result.error(403, SYS_ERR); } JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); // 零部件-分类内部码(精准查询) String partCategoryNum = getStr(requests, "partCategoryNum"); - if(StringUtils.isBlank(partCategoryNum)){ + if (StringUtils.isBlank(partCategoryNum)) { return Result.error("零部件-分类内部码不能为空"); } try { @@ -230,63 +228,63 @@ public class SrmsApiServiceImpl implements SrmsApiService { standardVO.setStandardState(standardState); // 是否存在拆分信息,默认false; true-是,false-否 setHasSplit(requests, standardVO); - List listByFileRows = getByFileRows(partCategoryNum, standardVO,token); + List listByFileRows = getByFileRows(partCategoryNum, standardVO, token); return Result.OK(listByFileRows); - }catch (Exception e){ - log.error("标准法规文档查询异常:",e); + } catch (Exception e) { + log.error("标准法规文档查询异常:", e); return Result.error("操作失败" + e.getMessage()); } } @Nullable - private List getByFileRows(String partCategoryNum, StandardVO standardVO,String token) { + private List getByFileRows(String partCategoryNum, StandardVO standardVO, String token) { List listByFileRows = lawsStandardMapper.getStandard(standardVO); - if(CollectionUtils.isEmpty(listByFileRows)) { + if (CollectionUtils.isEmpty(listByFileRows)) { return listByFileRows; } List listFileId = listByFileRows.stream().map(ByFileRows::getId).collect(Collectors.toList()); LambdaQueryWrapper queryOssFile = new LambdaQueryWrapper<>(); - queryOssFile.in(OSSFile::getStandardId,listFileId); - queryOssFile.eq(OSSFile::getStandardFileType,PUBLISH_OF_ORIGINAL); + queryOssFile.in(OSSFile::getStandardId, listFileId); + queryOssFile.eq(OSSFile::getStandardFileType, PUBLISH_OF_ORIGINAL); queryOssFile.orderByDesc(OSSFile::getCreateTime); List listOssFile = ossFileService.list(queryOssFile); // 查询零件名称 LambdaQueryWrapper queryPartName = new LambdaQueryWrapper<>(); - queryPartName.eq(PartName::getCode,partCategoryNum); - PartName partName = partNameService.getOne(queryPartName,false); + queryPartName.eq(PartName::getCode, partCategoryNum); + PartName partName = partNameService.getOne(queryPartName, false); for (ByFileRows byFileRows : listByFileRows) { byFileRows.setPartCategoryNum(partCategoryNum); - if(!Objects.isNull(partName)){ + if (!Objects.isNull(partName)) { byFileRows.setPartCategoryName(partName.getName()); } byFileRows.setStandardState_dictText(sysBaseAPI.translateDict("standard_state", byFileRows.getStandardState())); - if(!CollectionUtils.isEmpty(listOssFile)){ - List listFile = listOssFile.stream().filter(o-> Objects.equals(o.getStandardId(),byFileRows.getId())).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(listFile)){ + if (!CollectionUtils.isEmpty(listOssFile)) { + List listFile = listOssFile.stream().filter(o -> Objects.equals(o.getStandardId(), byFileRows.getId())).collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(listFile)) { listFile = listFile.stream().sorted(Comparator.comparing(OSSFile::getCreateTime).reversed()).collect(Collectors.toList()); - byFileRows.setStandardUrl(getUrl(listFile.get(0),token)); + byFileRows.setStandardUrl(getUrl(listFile.get(0), token)); } } LambdaQueryWrapper querySarFileSplitInfoEo = new LambdaQueryWrapper<>(); - querySarFileSplitInfoEo.eq(SarFileSplitInfoEO::getStandardId,byFileRows.getId()); + querySarFileSplitInfoEo.eq(SarFileSplitInfoEO::getStandardId, byFileRows.getId()); querySarFileSplitInfoEo.isNull(SarFileSplitInfoEO::getPublishBeforeId); - querySarFileSplitInfoEo.eq(SarFileSplitInfoEO::getFileType,PUBLISH_OF_ORIGINAL); - SarFileSplitInfoEO sarFileSplitInfoEo = sarFileSplitInfoService.getOne(querySarFileSplitInfoEo,false); + querySarFileSplitInfoEo.eq(SarFileSplitInfoEO::getFileType, PUBLISH_OF_ORIGINAL); + SarFileSplitInfoEO sarFileSplitInfoEo = sarFileSplitInfoService.getOne(querySarFileSplitInfoEo, false); addSarFileSplitInfoEO(byFileRows, sarFileSplitInfoEo); } return listByFileRows; } private void addSarFileSplitInfoEO(ByFileRows byFileRows, SarFileSplitInfoEO sarFileSplitInfoEo) { - if(!Objects.isNull(sarFileSplitInfoEo)){ + if (!Objects.isNull(sarFileSplitInfoEo)) { SarFileSplitMenuEOPage page = new SarFileSplitMenuEOPage(); page.setValidFlag("0"); page.setOrderBy("display_seq asc"); page.setInfoId(sarFileSplitInfoEo.getId()); List getList = sarFileSplitMenuEOService.queryByApiList(page); - if(!CollectionUtils.isEmpty(getList)){ + if (!CollectionUtils.isEmpty(getList)) { List listSarFileSplitMenu = new ArrayList<>(); for (SarFileSplitMenuEO sarFileSplitMenuEo : getList) { SarFileSplitMenu sarFileSplitMenu = new SarFileSplitMenu(); @@ -297,14 +295,14 @@ public class SrmsApiServiceImpl implements SrmsApiService { listSarFileSplitMenu.add(sarFileSplitMenu); } SplitResult splitResult = new SplitResult(); - if(!CollectionUtils.isEmpty(listSarFileSplitMenu)){ + if (!CollectionUtils.isEmpty(listSarFileSplitMenu)) { List listIds = listSarFileSplitMenu.stream().map(SarFileSplitMenu::getId).collect(Collectors.toList()); LambdaQueryWrapper queryLawsDocumentSplit = new LambdaQueryWrapper<>(); - queryLawsDocumentSplit.in(LawsDocumentSplit::getMenuId,listIds); - queryLawsDocumentSplit.eq(LawsDocumentSplit::getDelFlag,"0"); + queryLawsDocumentSplit.in(LawsDocumentSplit::getMenuId, listIds); + queryLawsDocumentSplit.eq(LawsDocumentSplit::getDelFlag, "0"); List listLawsDocumentSplit = lawsDocumentSplitMapper.selectList(queryLawsDocumentSplit); - if(!CollectionUtils.isEmpty(listLawsDocumentSplit)){ - List listDocumentSplitDetail = JSON.parseArray(JSON.toJSONString(listLawsDocumentSplit),DocumentSplitDetail.class); + if (!CollectionUtils.isEmpty(listLawsDocumentSplit)) { + List listDocumentSplitDetail = JSON.parseArray(JSON.toJSONString(listLawsDocumentSplit), DocumentSplitDetail.class); splitResult.setDocumentSplitDetail(listDocumentSplitDetail); } @@ -320,11 +318,11 @@ public class SrmsApiServiceImpl implements SrmsApiService { } private void setHasSplit(JSONObject requests, StandardVO standardVO) { - if(!Objects.isNull(requests.get("hasSplit"))){ + if (!Objects.isNull(requests.get("hasSplit"))) { boolean hasSplit = Boolean.parseBoolean(requests.get("hasSplit").toString()); - if(hasSplit){ + if (hasSplit) { standardVO.setHasSplit("1"); - }else{ + } else { standardVO.setHasSplit("2"); } } @@ -348,26 +346,26 @@ public class SrmsApiServiceImpl implements SrmsApiService { log.info(PRINT_TOKEN + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); - if(!tokenOK){ - return Result.error(403,SYS_ERR); + if (!tokenOK) { + return Result.error(403, SYS_ERR); } } catch (Exception ignored) { - return Result.error(403,SYS_ERR); + return Result.error(403, SYS_ERR); } JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); JSONArray rows = JSON.parseArray(JSON.toJSONString(requests.get("Rows"))); - if(CollectionUtils.isEmpty(rows)){ + if (CollectionUtils.isEmpty(rows)) { return Result.error(ADD_NOT_NULL); } List listProductDesign = new ArrayList<>(); String queryLabels = "queryLabels"; for (Object request : rows) { JSONObject js = JSON.parseObject(JSON.toJSONString(request)); - if(!js.containsKey("ID") || !js.containsKey(STANDARD_NUMBER) || !js.containsKey(queryLabels)){ + if (!js.containsKey("ID") || !js.containsKey(STANDARD_NUMBER) || !js.containsKey(queryLabels)) { return Result.error(ADD_NOT_NULL); } - if(StringUtils.isBlank(js.getString("ID")) || StringUtils.isBlank(js.getString(STANDARD_NUMBER)) - || StringUtils.isBlank(js.getString(queryLabels))){ + if (StringUtils.isBlank(js.getString("ID")) || StringUtils.isBlank(js.getString(STANDARD_NUMBER)) + || StringUtils.isBlank(js.getString(queryLabels))) { return Result.error(ADD_NOT_NULL); } ProductDesign productDesign = new ProductDesign(); @@ -379,20 +377,20 @@ public class SrmsApiServiceImpl implements SrmsApiService { try { List listObj = new ArrayList<>(); for (ProductDesign productDesign : listProductDesign) { - List> list = lawsStandardMapper.getStandardByProductDesign(productDesign.getStandardNumber(),productDesign.getQueryLabels()); + List> list = lawsStandardMapper.getStandardByProductDesign(productDesign.getStandardNumber(), productDesign.getQueryLabels()); for (Map stringStringMap : list) { JSONObject obj = new JSONObject(); - obj.put("ID",productDesign.getId()); - obj.put(queryLabels,productDesign.getQueryLabels()); - obj.put("itemContent",stringStringMap.get("item_content")); - obj.put(STANDARD_NUMBER,stringStringMap.get("standard_number")); + obj.put("ID", productDesign.getId()); + obj.put(queryLabels, productDesign.getQueryLabels()); + obj.put("itemContent", stringStringMap.get("item_content")); + obj.put(STANDARD_NUMBER, stringStringMap.get("standard_number")); listObj.add(obj); } } return Result.OK(listObj); - }catch (Exception e){ - log.error("设计导航-产品设计条款查询异常:",e); + } catch (Exception e) { + log.error("设计导航-产品设计条款查询异常:", e); return Result.error("操作失败" + e.getMessage()); } } @@ -405,36 +403,36 @@ public class SrmsApiServiceImpl implements SrmsApiService { log.info(PRINT_TOKEN + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); - if(!tokenOK){ - return Result.error(403,SYS_ERR); + if (!tokenOK) { + return Result.error(403, SYS_ERR); } } catch (Exception ignored) { - return Result.error(403,SYS_ERR); + return Result.error(403, SYS_ERR); } JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); String nodeName = ""; - if(!Objects.isNull(requests) && requests.containsKey("nodeName")){ + if (!Objects.isNull(requests) && requests.containsKey("nodeName")) { nodeName = requests.get("nodeName").toString(); } try { List listStandardTreeAll = new ArrayList<>(); // 国内标准 List listDomestic = lawsTreeNodeService.queryTreeNodeList(TableNameEnum.DOMESTIC_REGULATIONS.getValue(), nodeName, "1"); - getStandardTree(listStandardTreeAll, listDomestic,nodeName); + getStandardTree(listStandardTreeAll, listDomestic, nodeName); // 海外标准 List listForeign = lawsTreeNodeService.queryTreeNodeList(TableNameEnum.FOREIGN_REGULATIONS.getValue(), nodeName, "1"); - getStandardTree(listStandardTreeAll, listForeign,nodeName); + getStandardTree(listStandardTreeAll, listForeign, nodeName); // 企业标准 List listEnterprise = lawsTreeNodeService.queryTreeNodeList(TableNameEnum.ENTERPRISE_STANDARDS.getValue(), nodeName, "1"); - getStandardTree(listStandardTreeAll, listEnterprise,nodeName); + getStandardTree(listStandardTreeAll, listEnterprise, nodeName); return Result.OK(listStandardTreeAll); - }catch (Exception e){ - log.error("获取所有体系数据异常:",e); + } catch (Exception e) { + log.error("获取所有体系数据异常:", e); return Result.error("操作失败" + e.getMessage()); } } - private void getStandardTree(List listStandardTreeAll, List listEnterprise,String nodeName) { + private void getStandardTree(List listStandardTreeAll, List listEnterprise, String nodeName) { if (CollectionUtils.isEmpty(listEnterprise)) { return; } @@ -450,18 +448,18 @@ public class SrmsApiServiceImpl implements SrmsApiService { standardTree.setChildren(sub); } } - if(!StringUtils.isBlank(nodeName)){ - if(!CollectionUtils.isEmpty(lawsTreeNodeModel.getChildren()) || lawsTreeNodeModel.getNodeName().contains(nodeName)){ + if (!StringUtils.isBlank(nodeName)) { + if (!CollectionUtils.isEmpty(lawsTreeNodeModel.getChildren()) || lawsTreeNodeModel.getNodeName().contains(nodeName)) { listStandardTreeAll.add(standardTree); } - }else{ + } else { listStandardTreeAll.add(standardTree); } } } - private List getTree(List listEnterprise){ - if(CollectionUtils.isEmpty(listEnterprise)){ + private List getTree(List listEnterprise) { + if (CollectionUtils.isEmpty(listEnterprise)) { return Collections.emptyList(); } List list = new ArrayList<>(); @@ -470,9 +468,9 @@ public class SrmsApiServiceImpl implements SrmsApiService { obj.setNodeCode(treeNodeModel.getNodeCode()); obj.setNodeName(treeNodeModel.getNodeName()); List listSub = treeNodeModel.getChildren(); - if(!CollectionUtils.isEmpty(listSub)){ + if (!CollectionUtils.isEmpty(listSub)) { List listStandardTree = getTree(listSub); - if(!CollectionUtils.isEmpty(listStandardTree)){ + if (!CollectionUtils.isEmpty(listStandardTree)) { obj.setChildren(listStandardTree); } } @@ -489,38 +487,38 @@ public class SrmsApiServiceImpl implements SrmsApiService { log.info(PRINT_TOKEN + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); - if(!tokenOK){ - return Result.error(403,SYS_ERR); + if (!tokenOK) { + return Result.error(403, SYS_ERR); } } catch (Exception ignored) { - return Result.error(403,SYS_ERR); + return Result.error(403, SYS_ERR); } JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); - if(Objects.isNull(requests)){ + if (Objects.isNull(requests)) { return Result.error(ADD_NOT_NULL); } String pageNoKey = "pageNo"; String pageSizeKey = "pageSize"; - if(!requests.containsKey(pageNoKey) || !requests.containsKey(pageSizeKey) ){ + if (!requests.containsKey(pageNoKey) || !requests.containsKey(pageSizeKey)) { return Result.error(ADD_NOT_NULL); } try { Long.parseLong(requests.get(pageNoKey).toString()); Long.parseLong(requests.get(pageSizeKey).toString()); - }catch (Exception e){ + } catch (Exception e) { return Result.error(ADD_NOT_NULL); } QueryWrapper queryStandardPageVO = new QueryWrapper<>(); setQuery(requests, queryStandardPageVO); String columnKey = "column"; - if(requests.containsKey(columnKey) && !StringUtils.isBlank(requests.get(columnKey).toString())){ + if (requests.containsKey(columnKey) && !StringUtils.isBlank(requests.get(columnKey).toString())) { String[] column = requests.get(columnKey).toString().split(","); String[] order = null; String orderKey = "order"; - if(requests.containsKey(orderKey) && StringUtils.isBlank(requests.get(orderKey).toString())){ + if (requests.containsKey(orderKey) && StringUtils.isBlank(requests.get(orderKey).toString())) { order = requests.get(orderKey).toString().split(","); - if(column.length != order.length){ + if (column.length != order.length) { return Result.error("排序参数异常"); } } @@ -528,74 +526,74 @@ public class SrmsApiServiceImpl implements SrmsApiService { } Page page = new Page<>(Long.parseLong(requests.get(pageNoKey).toString()), Long.parseLong(requests.get(pageSizeKey).toString())); - IPage pageList = lawsStandardMapper.getByLawsStandardPage(page,queryStandardPageVO); - getListStandardPageVO(pageList,token); + IPage pageList = lawsStandardMapper.getByLawsStandardPage(page, queryStandardPageVO); + getListStandardPageVO(pageList, token); return Result.OK(pageList); } private void setQuery(JSONObject requests, QueryWrapper queryStandardPageVO) { - queryStandardPageVO.eq("'1'","1"); + queryStandardPageVO.eq("'1'", "1"); String nodeCodeKey = "nodeCode"; - if(requests.containsKey(nodeCodeKey) && !StringUtils.isEmpty(requests.get(nodeCodeKey).toString())){ + if (requests.containsKey(nodeCodeKey) && !StringUtils.isEmpty(requests.get(nodeCodeKey).toString())) { String nodeCode = requests.get(nodeCodeKey).toString(); - queryStandardPageVO.eq(!StringUtils.isEmpty(nodeCode),"l.node_code",nodeCode); + queryStandardPageVO.eq(!StringUtils.isEmpty(nodeCode), "l.node_code", nodeCode); } - if(requests.containsKey(STANDARD_NUMBER) && !StringUtils.isEmpty(requests.get(STANDARD_NUMBER).toString())){ + if (requests.containsKey(STANDARD_NUMBER) && !StringUtils.isEmpty(requests.get(STANDARD_NUMBER).toString())) { String standardNumber = requests.get(STANDARD_NUMBER).toString(); - queryStandardPageVO.like("standard_number",standardNumber); + queryStandardPageVO.like("standard_number", standardNumber); } - if(requests.containsKey(STANDARD_NAME) && !StringUtils.isEmpty(requests.get(STANDARD_NAME).toString())){ + if (requests.containsKey(STANDARD_NAME) && !StringUtils.isEmpty(requests.get(STANDARD_NAME).toString())) { String standardName = requests.get(STANDARD_NAME).toString(); - queryStandardPageVO.like("standard_name",standardName); + queryStandardPageVO.like("standard_name", standardName); } } private void setOrder(QueryWrapper queryStandardPageVO, String[] column, String[] order) { for (int i = 0; i < column.length; i++) { String c = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, column[i]); - if(Objects.isNull(order)){ + if (Objects.isNull(order)) { queryStandardPageVO.orderByDesc(c); - }else{ - if(Objects.equals(order[i],"asc") || Objects.equals(order[i],"ASC")){ + } else { + if (Objects.equals(order[i], "asc") || Objects.equals(order[i], "ASC")) { queryStandardPageVO.orderByAsc(c); - }else{ + } else { queryStandardPageVO.orderByDesc(c); } } } } - private void getListStandardPageVO(IPage pageList,String token) { + private void getListStandardPageVO(IPage pageList, String token) { List listStandardPageVO = pageList.getRecords(); - if(CollectionUtils.isEmpty(listStandardPageVO)){ + if (CollectionUtils.isEmpty(listStandardPageVO)) { return; } List listFileId = listStandardPageVO.stream().map(StandardPageVO::getId).collect(Collectors.toList()); QueryWrapper queryOssFile = new QueryWrapper<>(); - queryOssFile.eq("lower(right(url, 4))",".pdf"); - queryOssFile.lambda().in(OSSFile::getStandardId,listFileId); - queryOssFile.lambda().eq(OSSFile::getStandardFileType,PUBLISH_OF_ORIGINAL); + queryOssFile.eq("lower(right(url, 4))", ".pdf"); + queryOssFile.lambda().in(OSSFile::getStandardId, listFileId); + queryOssFile.lambda().eq(OSSFile::getStandardFileType, PUBLISH_OF_ORIGINAL); queryOssFile.lambda().orderByDesc(OSSFile::getCreateTime); List listOssFile = ossFileService.list(queryOssFile); - List listStandardPageVOPartName = listStandardPageVO.stream().filter(o->!StringUtils.isBlank(o.getPartCategoryNum())).collect(Collectors.toList()); + List listStandardPageVOPartName = listStandardPageVO.stream().filter(o -> !StringUtils.isBlank(o.getPartCategoryNum())).collect(Collectors.toList()); List listPartName = getPartNames(listStandardPageVOPartName); for (StandardPageVO standardPageVO : listStandardPageVO) { standardPageVO.setStandardState_dictText(sysBaseAPI.translateDict("standard_state", standardPageVO.getStandardState())); - if(!CollectionUtils.isEmpty(listOssFile)){ - List listOssFileOne = listOssFile.stream().filter(o-> Objects.equals(o.getStandardId(),standardPageVO.getId())).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(listOssFileOne)){ + if (!CollectionUtils.isEmpty(listOssFile)) { + List listOssFileOne = listOssFile.stream().filter(o -> Objects.equals(o.getStandardId(), standardPageVO.getId())).collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(listOssFileOne)) { listOssFileOne = listOssFileOne.stream().sorted(Comparator.comparing(OSSFile::getCreateTime).reversed()).collect(Collectors.toList()); - standardPageVO.setStandardUrl(getUrl(listOssFileOne.get(0),token)); + standardPageVO.setStandardUrl(getUrl(listOssFileOne.get(0), token)); } } // 零件号查询 - if(!CollectionUtils.isEmpty(listPartName) && !StringUtils.isBlank(standardPageVO.getPartCategoryNum())){ - List listPartNameNew = listPartName.stream().filter(o->Arrays.asList(standardPageVO.getPartCategoryNum().split(",")).contains(o.getCode())).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(listPartNameNew)){ + if (!CollectionUtils.isEmpty(listPartName) && !StringUtils.isBlank(standardPageVO.getPartCategoryNum())) { + List listPartNameNew = listPartName.stream().filter(o -> Arrays.asList(standardPageVO.getPartCategoryNum().split(",")).contains(o.getCode())).collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(listPartNameNew)) { List listName = listPartNameNew.stream().map(PartName::getName).collect(Collectors.toList()); - standardPageVO.setPartCategoryName(String.join(",",listName)); + standardPageVO.setPartCategoryName(String.join(",", listName)); } } } @@ -603,37 +601,37 @@ public class SrmsApiServiceImpl implements SrmsApiService { private List getPartNames(List listStandardPageVOPartName) { List listPartName = new ArrayList<>(); - if(!CollectionUtils.isEmpty(listStandardPageVOPartName)){ + if (!CollectionUtils.isEmpty(listStandardPageVOPartName)) { List listPartCategoryNum = listStandardPageVOPartName.stream().map(StandardPageVO::getPartCategoryNum).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(listPartCategoryNum)){ + if (!CollectionUtils.isEmpty(listPartCategoryNum)) { // 零件号查询 LambdaQueryWrapper queryPartName = new LambdaQueryWrapper<>(); - queryPartName.in(PartName::getCode, Arrays.stream(String.join(",",listPartCategoryNum).split(",")).collect(Collectors.toList()).stream().distinct().collect(Collectors.toList())); + queryPartName.in(PartName::getCode, Arrays.stream(String.join(",", listPartCategoryNum).split(",")).collect(Collectors.toList()).stream().distinct().collect(Collectors.toList())); listPartName = partNameService.list(queryPartName); } } return listPartName; } - private String getUrl(OSSFile ossFile,String token){ + private String getUrl(OSSFile ossFile, String token) { String url = ""; - try{ - if(ossFile.getFileName().toUpperCase().lastIndexOf(".PDF") > 0){ + try { + if (ossFile.getFileName().toUpperCase().lastIndexOf(".PDF") > 0) { // 拼接url pdf预览 - String back = backUrlPdf.replace("{id}",ossFile.getId()).replace("{token}",token); - url = fontUrlPdf.replace("{back_url_pdf}", URLEncoder.encode(back, StandardCharsets.UTF_8.name())); - }else{ + String back = backUrlPdf.replace("{id}", ossFile.getId()).replace("{token}", token); + url = fontUrlPdf.replace("{back_url_pdf}", URLEncoder.encode(back, StandardCharsets.UTF_8.name())); + } else { LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String mark = loginUser.getUsername() + loginUser.getRealname() + LocalDateTime.now(); - String markMd5 = MD5Util.MD5Encode(mark + otherMd5Mark,null); - String backOther = backUrlOther.replace("{id}",ossFile.getId()).replace("{token}",token) - .replace("{file_name}",ossFile.getFileName()); - url = fontUrlOther.replace("{back_url_other}",URLEncoder.encode(Base64.getEncoder().encodeToString(backOther.getBytes(StandardCharsets.UTF_8)), StandardCharsets.UTF_8.name())) - .replace("{mark}",URLEncoder.encode(mark, StandardCharsets.UTF_8.name())) - .replace("{mark_md5}",markMd5); + String markMd5 = MD5Util.MD5Encode(mark + otherMd5Mark, null); + String backOther = backUrlOther.replace("{id}", ossFile.getId()).replace("{token}", token) + .replace("{file_name}", ossFile.getFileName()); + url = fontUrlOther.replace("{back_url_other}", URLEncoder.encode(Base64.getEncoder().encodeToString(backOther.getBytes(StandardCharsets.UTF_8)), StandardCharsets.UTF_8.name())) + .replace("{mark}", URLEncoder.encode(mark, StandardCharsets.UTF_8.name())) + .replace("{mark_md5}", markMd5); } - }catch (Exception e){ - log.error("拼接url异常",e); + } catch (Exception e) { + log.error("拼接url异常", e); } return url; } @@ -643,18 +641,18 @@ public class SrmsApiServiceImpl implements SrmsApiService { try { JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); JSONArray rows = JSON.parseArray(JSON.toJSONString(requests.get("Rows"))); - if(CollectionUtils.isEmpty(rows)){ + if (CollectionUtils.isEmpty(rows)) { return Result.error(ADD_NOT_NULL); } List listPartName = new ArrayList<>(); for (Object request : rows) { JSONObject js = JSON.parseObject(JSON.toJSONString(request)); - if(!js.containsKey(PART_CATEGORY_NUM) || !js.containsKey(PART_CATEGORY_NAME) || !js.containsKey(PARENT_NUM)){ + if (!js.containsKey(PART_CATEGORY_NUM) || !js.containsKey(PART_CATEGORY_NAME) || !js.containsKey(PARENT_NUM)) { return Result.error(ADD_NOT_NULL); } - if(StringUtils.isBlank(js.getString(PART_CATEGORY_NUM)) + if (StringUtils.isBlank(js.getString(PART_CATEGORY_NUM)) || StringUtils.isBlank(js.getString(PART_CATEGORY_NAME)) - || StringUtils.isBlank(js.getString(PARENT_NUM))){ + || StringUtils.isBlank(js.getString(PARENT_NUM))) { return Result.error(ADD_NOT_NULL); } PartName partName = new PartName(); @@ -666,10 +664,10 @@ public class SrmsApiServiceImpl implements SrmsApiService { partName.setRemark3(js.getString("Remark3")); listPartName.add(partName); } - if(!CollectionUtils.isEmpty(listPartName)){ + if (!CollectionUtils.isEmpty(listPartName)) { // 清空数据 LambdaUpdateWrapper updatePartName = new LambdaUpdateWrapper<>(); - updatePartName.eq(PartName::getDelFlag,"0"); + updatePartName.eq(PartName::getDelFlag, "0"); partNameService.remove(updatePartName); // 保存数据 partNameService.saveBatch(listPartName); @@ -677,8 +675,8 @@ public class SrmsApiServiceImpl implements SrmsApiService { lawsStandardMapper.updatePartParentId(); } return Result.OK("操作成功"); - }catch (Exception e){ - log.error("零部件分类树同步接口异常:",e); + } catch (Exception e) { + log.error("零部件分类树同步接口异常:", e); return Result.error("操作失败" + e.getMessage()); } } @@ -687,7 +685,7 @@ public class SrmsApiServiceImpl implements SrmsApiService { public Result syncPartStandard() { // 清理数据 LambdaUpdateWrapper updateLawsPartStandard = new LambdaUpdateWrapper<>(); - updateLawsPartStandard.eq(LawsPartStandard::getDelFlag,"0"); + updateLawsPartStandard.eq(LawsPartStandard::getDelFlag, "0"); lawsPartStandardService.remove(updateLawsPartStandard); // 同步数据到分类树标准法规回写表 List listLawsPartStandard = lawsStandardMapper.getSyncPartStandard(); @@ -703,40 +701,40 @@ public class SrmsApiServiceImpl implements SrmsApiService { JSONObject messageHeader = new JSONObject(); String date = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()); // todo Interface_ID,UUID - messageHeader.put("Interface_ID",""); - messageHeader.put("UUID",""); - messageHeader.put("MessageId",""); - messageHeader.put("Sender","SRMS"); - messageHeader.put("Receiver","PDM"); - messageHeader.put("SendDate",date.substring(0,8)); - messageHeader.put("SendTime",date.substring(8)); - all.put("MessageHeader",messageHeader); + messageHeader.put("Interface_ID", ""); + messageHeader.put("UUID", ""); + messageHeader.put("MessageId", ""); + messageHeader.put("Sender", "SRMS"); + messageHeader.put("Receiver", "PDM"); + messageHeader.put("SendDate", date.substring(0, 8)); + messageHeader.put("SendTime", date.substring(8)); + all.put("MessageHeader", messageHeader); List listObj = new ArrayList<>(); - if(!CollectionUtils.isEmpty(listLawsPartStandard)){ + if (!CollectionUtils.isEmpty(listLawsPartStandard)) { for (LawsPartStandard lawsPartStandard : listLawsPartStandard) { JSONObject rows = new JSONObject(); - rows.put(PART_CATEGORY_NUM,lawsPartStandard.getPartCategoryNum()); - rows.put("StandardPdmType",lawsPartStandard.getStandardPdmType()); - rows.put("StandardNumber",lawsPartStandard.getStandardNumber()); - rows.put("Remark1",lawsPartStandard.getRemark1()); - rows.put("Remark2",lawsPartStandard.getRemark2()); - rows.put("Remark3",lawsPartStandard.getRemark3()); + rows.put(PART_CATEGORY_NUM, lawsPartStandard.getPartCategoryNum()); + rows.put("StandardPdmType", lawsPartStandard.getStandardPdmType()); + rows.put("StandardNumber", lawsPartStandard.getStandardNumber()); + rows.put("Remark1", lawsPartStandard.getRemark1()); + rows.put("Remark2", lawsPartStandard.getRemark2()); + rows.put("Remark3", lawsPartStandard.getRemark3()); listObj.add(rows); } } JSONObject requests = new JSONObject(); - requests.put("Rows",listObj); - all.put(REQUESTS,requests); + requests.put("Rows", listObj); + all.put(REQUESTS, requests); // todo url - JSONObject reData = restTemplate.postForObject(partStandardUrl,all,JSONObject.class); + JSONObject reData = restTemplate.postForObject(partStandardUrl, all, JSONObject.class); log.info(JSON.toJSONString(reData)); - if(!Objects.isNull(reData) && reData.containsKey("Success") && Objects.equals("true",reData.getString("Success"))){ + if (!Objects.isNull(reData) && reData.containsKey("Success") && Objects.equals("true", reData.getString("Success"))) { log.info("分类树标准法规回写接口成功"); - }else{ + } else { log.error("分类树标准法规回写接口失败"); } - }catch (Exception e){ - log.error("分类树标准法规回写接口失败",e); + } catch (Exception e) { + log.error("分类树标准法规回写接口失败", e); } } @@ -746,20 +744,20 @@ public class SrmsApiServiceImpl implements SrmsApiService { try { // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); - if(!tokenOK){ - return Result.error(403,SYS_ERR); + if (!tokenOK) { + return Result.error(403, SYS_ERR); } } catch (Exception ignored) { - return Result.error(403,SYS_ERR); + return Result.error(403, SYS_ERR); } JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); JSONArray rows = JSON.parseArray(JSON.toJSONString(requests.get("Rows"))); - if(CollectionUtils.isEmpty(rows)){ + if (CollectionUtils.isEmpty(rows)) { return Result.error(ADD_NOT_NULL); } for (Object request : rows) { JSONObject js = JSON.parseObject(JSON.toJSONString(request)); - if(js.containsKey("PartNum") && StringUtils.isBlank(js.getString("PartNum"))){ + if (js.containsKey("PartNum") && StringUtils.isBlank(js.getString("PartNum"))) { return Result.error(ADD_NOT_NULL); } } @@ -770,8 +768,8 @@ public class SrmsApiServiceImpl implements SrmsApiService { // todo } return Result.OK(listObj); - }catch (Exception e){ - log.error("设计导航-产品设计条款查询异常:",e); + } catch (Exception e) { + log.error("设计导航-产品设计条款查询异常:", e); return Result.error("操作失败" + e.getMessage()); } } @@ -806,46 +804,51 @@ public class SrmsApiServiceImpl implements SrmsApiService { } @Override - public boolean validPartNoEdit(@NotNull String partNo, String partName, @NotNull String bindUserInfo) { - try { - JSONObject all = new JSONObject(); - all.put(MESSAGE_HANDLER, getMessageHandler("CNHTC_PO1000495", null)); - JSONObject requests = new JSONObject(); - requests.put("PartNum", partNo); - requests.put("PartName", partName); - requests.put("BindUserInfo", bindUserInfo); - requests.put("Remark1", ""); - requests.put("Remark2", ""); - requests.put("Remark3", ""); - all.put(REQUESTS, requests); + public void validPartNoEdit(@NotNull String partNo, String partName, @NotNull String bindUserInfo) { + JSONObject all = new JSONObject(); + all.put(MESSAGE_HANDLER, getMessageHandler("CNHTC_PO1000495", null)); + JSONObject requests = new JSONObject(); + requests.put("PartNum", partNo); + requests.put("PartName", partName); + requests.put("BindUserInfo", bindUserInfo); + requests.put("Remark1", ""); + requests.put("Remark2", ""); + requests.put("Remark3", ""); + all.put(REQUESTS, requests); - // 创建 HttpEntity 包含请求体和头信息 - HttpHeaders headers = this.getBasicAuthHeaders(); - HttpEntity entity = new HttpEntity<>(all.toString(), headers); - // 打印完整的请求报文信息 - log.info("发送验证零部件是否可修改请求"); - log.info("IP: " + pdmIp + editValidUrl); - log.info("Headers: " + headers.toString()); - log.info("Request body: " + all.toString()); + // 创建 HttpEntity 包含请求体和头信息 + HttpHeaders headers = this.getBasicAuthHeaders(); + HttpEntity entity = new HttpEntity<>(all.toString(), headers); + // 打印完整的请求报文信息 + log.info("发送验证零部件是否可修改请求"); + log.info("IP: " + pdmIp + editValidUrl); + log.info("Headers: " + headers.toString()); + log.info("Request body: " + all.toString()); - JSONObject reData = restTemplate.postForObject(pdmIp + editValidUrl, entity, JSONObject.class); - log.info("接收验证零部件是否可修改请求返回"); - log.info("Response: " + JSON.toJSONString(reData)); - if (!Objects.isNull(reData) && reData.containsKey("Success")) { - String success = reData.getString("Success"); - if ("true".equals(success)) { - log.info("验证零部件号是否可修改接口成功"); - return true; - } - if ("false".equals(success)) { - log.error("验证零部件号是否可修改接口失败"); - return false; - } - } - } catch (Exception e) { - log.error("验证零部件号是否可修改异常", e); + JSONObject reData = restTemplate.postForObject(pdmIp + editValidUrl, entity, JSONObject.class); + log.info("接收验证零部件是否可修改请求返回"); + log.info("返回报文: " + JSON.toJSONString(reData)); + JSONObject response = null; + if (!Objects.isNull(reData) && reData.containsKey("Responses")) { + response = reData.getJSONObject("Responses"); } - return false; + if (!Objects.isNull(response) && response.containsKey("Success")) { + String success = response.getString("Success"); + String message = ""; + if (response.containsKey("Message")) { + message = response.getString("Message"); + } + if ("true".equals(success)) { + log.info("验证零部件号是否可修改接口成功"); + return; + } + if ("false".equals(success)) { + log.error("验证零部件号是否可修改接口失败"); + log.error("验证零部件号是否可修改接口失败原因: " + message); + throw new JeroBootException(message); + } + } + throw new JeroBootException("零部件号" + partNo + "不可新增"); } @Override @@ -877,12 +880,17 @@ public class SrmsApiServiceImpl implements SrmsApiService { log.info("Response: " + JSON.toJSONString(reData)); if (!Objects.isNull(reData) && reData.containsKey("Success")) { String success = reData.getString("Success"); + String message = ""; + if (reData.containsKey("Message")) { + message = reData.getString("Message"); + } if ("true".equals(success)) { log.info("校验某个零部件是否所属于某个零部件分类接口成功"); return true; } if ("false".equals(success)) { log.error("校验某个零部件是否所属于某个零部件分类接口失败"); + log.error("失败原因: " + message); return false; } }