岗位关联属性筛选

This commit is contained in:
zhal 2022-07-26 22:18:12 +08:00
parent 113ee7a347
commit a54f92862e
2 changed files with 128 additions and 4 deletions

View File

@ -1805,7 +1805,7 @@ public class PALRepositoryQueryAPIManager {
JSONArray jsonArray = new JSONArray();
for (PALRepositoryModel model : list) {
if(model.getMethodId().equals("control.kpi") || model.getMethodId().equals("org.role") ){
if(attrId.equals("Process_performance_metrics") || attrId.equals("role")){
List data=new ArrayList();
data.add(0,model.getMethodId());
data.add(1,uuid);
@ -1900,6 +1900,99 @@ public class PALRepositoryQueryAPIManager {
object.put("dutyPersionName", UtilString.isEmpty(plDutyPerson) ? "" : SDK.getORGAPI().getUserAliasNames(plDutyPerson));
jsonArray.add(object);
}
}else if(attrId.equals("R_relevant_flies")){
if(!model.isPublish()){
continue;
}
JSONObject object = new JSONObject();
object.put("id", model.getId().trim());
object.put("pid", model.getNewParentId().trim());
if (removeIds != null && removeIds.contains(model.getId().trim())) {
object.put("nocheck", true);
} else {
object.put("nocheck", false);
}
object.put("plNo", CoeProcessLevelUtil.getProcessLevelNoByUUId(model.getId(), model.getWsId()).trim());
object.put("name", I18nRes.findValue(CoEConstant.APP_ID, context.getLanguage(), model.getName()).trim());
object.put("wsId", model.getWsId());
PALMethodModel methodModel = PALMethodCache.getPALMethodModelById(model.getMethodId());
if (methodModel == null || methodModel.isFolder()) {// 没有该建模方法或者是文件夹类
object.put("title", object.get("name"));
} else {
object.put("title", object.get("name") + " " + VersionUtil.getVersionStrV(model.getVersion()).trim());
}
//三员管理文件密级校验
if (HighSecurityUtil.isON() && HighSecurityUtil.fileSecuritySwitch()){
ResponseObject responseObject = new CoeProcessLevelWeb(DispatcherRequest.getUserContext()).checkFilePemission(model.getId());
if (responseObject.isErr() && (methodModel != null && !methodModel.isFolder())){
object.put("nocheck", true);
}
}
object.put("drop", false);
object.put("isSystemFile", model.isSystemFile());
object.put("plMethodId", model.getMethodId().trim());
if (methodModel == null || methodModel.isFolder()) {// 没有该建模方法或者是文件夹类
object.put("iconFont", "");
} else {
object.put("iconFont", "");
}
List<PALRepositoryModel> children = null;
if (isUsed) {
children = getUsedPalRepositoryModelsByPid(model.getWsId(), model.getId());
if (param != null && "designer".equals(param) && children != null && children.size() > 0) {// 过滤掉发布版本
List<PALRepositoryModel> tempChildren = new ArrayList<>();
for (PALRepositoryModel model2 : children) {
if (!model2.isPublish()) {
tempChildren.add(model2);
}
}
children = tempChildren;
}
} else if (isPublished) {
children = getPublishedPalRepositoryModelsByPid(model.getWsId(), model.getId());
}
if (children == null || children.size() == 0) {
object.put("isParent", false);
//String icon = object.getString("icon");
object.put("leaf", true);// 叶子节点
// object.put("icon", icon.replace("16.png", "16.leaf.png"));
} else {
object.put("isParent", true);
object.put("open", false);
}
object.put("plLevel", model.getLevel());
object.put("plOrdexIndex", model.getOrderIndex());
object.put("plDiagramUrl", model.getDiagramUrl());
object.put("isDrops", model.isSystemFile());
object.put("isPublish", model.isPublish());
object.put("isStop", model.isStop());
object.put("isApproval", model.isApproval());
object.put("ext1", model.getExt1());
object.put("ext2", model.getExt2());
object.put("ext3", model.getExt3());
object.put("ext4", model.getExt4());
object.put("isUse", model.isUse());
object.put("url", "./w?sid=" + context.getSessionId() + "&cmd=com.actionsoft.apps.coe.pal_pl_repository_portal_page&ruuid=" + model.getId() + "&type=1&wsid=" + model.getWsId());
object.put("plCategory", model.getMethodCategory());
object.put("versionId", model.getVersionId());
object.put("orderIndex", model.getOrderIndex());
object.put("isBottomLevel", model.isBottomLevel());
String dutyDeptId = model.getDutyDept();
object.put("dutyDeptId", dutyDeptId == null ? "" : dutyDeptId);
String plDutyDeptName = dutyDeptId;
if (!UtilString.isEmpty(dutyDeptId)) {
if (SDK.getORGAPI().getDepartmentById(dutyDeptId) != null) {
plDutyDeptName = SDK.getORGAPI().getDepartmentById(dutyDeptId).getName();
}
}
object.put("dutyDeptName", UtilString.isEmpty(dutyDeptId) ? "" : plDutyDeptName);
String plDutyPerson = model.getDutyUser();
object.put("dutyPersonId", model.getDutyUser() == null ? "" : model.getDutyUser());
object.put("dutyPersionName", UtilString.isEmpty(plDutyPerson) ? "" : SDK.getORGAPI().getUserAliasNames(plDutyPerson));
jsonArray.add(object);
}

View File

@ -782,7 +782,7 @@ public class DesignerRelationShapeWeb extends ActionWeb {
}
}
macroLibraries.put("treeData", jsonArr_new.toString());
} /*else if(attrId.equals("post")){
}else if(attrId.equals("R_relevant_flies")){
if (objects != null) {
for (int i = 0; i < objects.size(); i++) {
String id= objects.getJSONObject(i).getString("id");
@ -803,7 +803,38 @@ public class DesignerRelationShapeWeb extends ActionWeb {
}
}
macroLibraries.put("treeData", jsonArr_new.toString());
}*/else{
} else if(attrId.equals("post")){
if (objects != null) {
for (int i = 0; i < objects.size(); i++) {
String id= objects.getJSONObject(i).getString("id");
String url =objects.getJSONObject(i).getString("url");
/*String titles=objects.getJSONObject(i).getString("title");
if(!titles.equals("岗位模型") && titles!=null){*/
if (UtilString.isNotEmpty(url)) {
String titles=objects.getJSONObject(i).getString("title");
if(titles.equals("岗位模型")){
jsonArr_new.add(objects.getJSONObject(i));
}else{
List<Map<String, Object>> nodeElements = CoeDesignerUtil.getShapeMessageJson4(id);
if(nodeElements.size()>0){
String title = nodeElements.get(0).get("title").toString();
if(title.equals("岗位")){
jsonArr_new.add(objects.getJSONObject(i));
}
}
}
}else{
jsonArr_new.add(objects.getJSONObject(i));
}
/*}*/
}
}
macroLibraries.put("treeData", jsonArr_new.toString());
} else{
macroLibraries.put("treeData", treeJson);
}
@ -1097,7 +1128,7 @@ public class DesignerRelationShapeWeb extends ActionWeb {
*/
public String getTreeJson(String wsId, String pid,String attrId,String uuid) {
JSONArray list;
if(attrId.equals("Process_performance_metrics") || attrId.equals("role")){
if(attrId.equals("Process_performance_metrics") || attrId.equals("role") || attrId.equals("R_relevant_flies")){
list= PALRepositoryQueryAPIManager.getInstance().getUsedPalRepositoryTreeDataByPidAnduuid(_uc, wsId,pid,attrId,uuid);
}else{
list= PALRepositoryQueryAPIManager.getInstance().getUsedPalRepositoryTreeDataByPid(_uc, wsId, pid);