diff --git a/com.awspaas.user.apps.nqms.portal.indexpage/src/com/awspaas/user/apps/nqms/portal/indexpage/service/IndexService.java b/com.awspaas.user.apps.nqms.portal.indexpage/src/com/awspaas/user/apps/nqms/portal/indexpage/service/IndexService.java index 1566f245..005f00e7 100755 --- a/com.awspaas.user.apps.nqms.portal.indexpage/src/com/awspaas/user/apps/nqms/portal/indexpage/service/IndexService.java +++ b/com.awspaas.user.apps.nqms.portal.indexpage/src/com/awspaas/user/apps/nqms/portal/indexpage/service/IndexService.java @@ -1,12 +1,15 @@ package com.awspaas.user.apps.nqms.portal.indexpage.service; import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryPropertyCache; +import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.cache.DesignerShapeRelationCache; +import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.model.DesignerShapeRelationModel; import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryPropertyModel; import com.actionsoft.bpms.bo.engine.BO; import com.actionsoft.bpms.commons.mvc.view.ResponseObject; import com.actionsoft.bpms.server.UserContext; import com.actionsoft.i18n.I18nRes; import com.actionsoft.sdk.local.SDK; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.awspaas.user.apps.nqms.portal.indexpage.constant.Constants; import com.awspaas.user.apps.nqms.portal.indexpage.constant.PalCategoryEnum; @@ -268,13 +271,13 @@ public class IndexService { if (!name.startsWith(String.valueOf(index))) { continue; } - if (zllSet.contains(String.valueOf( index))) { + if (zllSet.contains(String.valueOf(index))) { group = "strategy"; - } else if (yylSet.contains(String.valueOf( index))) { + } else if (yylSet.contains(String.valueOf(index))) { group = "Operations"; - } else if (zclSet.contains(String.valueOf( index))) { + } else if (zclSet.contains(String.valueOf(index))) { group = "SupportAndServices"; - }else { + } else { continue; } if (!"1.0".equals(version) && StringUtils.isNotBlank(versionId)) { @@ -546,16 +549,16 @@ public class IndexService { //文件编号 String fileNo = getFileProper(id, "file_number"); //发布部门 - String dutyDept = getFileProper(id, "Issuing_department"); - if (StringUtils.isNotEmpty(dutyDept)) { - try { - JSONObject jsonObject = JSONObject.parseObject(dutyDept); - dutyDept = jsonObject.getString("shapeText"); - } catch (Exception e) { - e.printStackTrace(); - System.out.println("发布部门非JSON格式,转化失败,显示原值。文件ID:" + id); + List relationModels = DesignerShapeRelationCache.getByFileId(id, "Issuing_department"); + Set dutyDeptSet = new HashSet<>(); + // 是否有发布部门的文件属性【可能会有多个值】 + if (relationModels != null && relationModels.size() > 0) { + for (DesignerShapeRelationModel relationModel : relationModels) { + JSONObject relationObj = JSONObject.parseObject(relationModel.getRelationShapeText()); + dutyDeptSet.add(relationObj.getString("name")); } } + String dutyDept = String.join(";",dutyDeptSet); //流程架构L1 String processL1 = getFileProper(id, "Process_Architecture_L1"); //流程架构L2