From 72bab1219cbca2e53adb98dc9113ae1f85298cf8 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期一, 19 八月 2024 14:06:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java | 5
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeAttributeVO.java | 12
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/OsBtmTypeDTO.java | 77 ---
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java | 27 +
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java | 14
Source/plt-web/plt-web-parent/plt-web/src/main/resources/menuConfig.json | 91 ++++
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/RightControlUtil.java | 2
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java | 39 +
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java | 220 +++++++++-
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/SmFunctionController.java | 27 +
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java | 4
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeVO.java | 29
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java | 21
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java | 64 ++
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/MenuVO.java | 15
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/OsScanAnnotationTool.java | 2
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java | 423 ++++++++++++++++++-
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/properties/JsonConfigReader.java | 36 +
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/other/LinkQTExportData.java | 96 ++++
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsCodeGenSchemaServiceImpl.java | 8
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java | 2
21 files changed, 1,011 insertions(+), 203 deletions(-)
diff --git a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/OsBtmTypeDTO.java b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/OsBtmTypeDTO.java
index 4f05d27..0e185a2 100644
--- a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/OsBtmTypeDTO.java
+++ b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/OsBtmTypeDTO.java
@@ -46,16 +46,6 @@
private String revisionRuleId;
/**
- * 鐗堟湰瑙勫垯鐨勫悕绉�
- */
- private String revisionRuleName;
-
- /**
- * 鍒嗛殧绗�
- */
- private String revisionSep;
-
- /**
* 鏄惁鎵嬪姩杈撳叆鐗堟湰
*/
private boolean inputRevisionFlag;
@@ -96,11 +86,6 @@
private String lifeCycleId;
/**
- * 鐢熷懡鍛ㄦ湡鐨勪腑鏂囧悕绉�
- */
- private String lifeCycleName;
-
- /**
* 鐗堟瑙勫垯
*/
private String versionRule;
@@ -114,11 +99,6 @@
* 澶囩敤鐢熷懡鍛ㄦ湡鑻辨枃鍚嶇О
*/
private String subLifeCycleId;
-
- /**
- * 澶囩敤鐢熷懡鍛ㄦ湡涓枃鍚嶇О
- */
- private String subLifeCycleName;
/**
* 鏄惁涓鸿鍥�
@@ -146,14 +126,9 @@
private String delimiter;
/**
- * 娣诲姞鎴栬�呯Щ闄ょ殑灞炴�т俊鎭�
- */
- private List<OsBtmTypeLinkAttributesDTO> attributesDTOList;
-
- /**
* 娣诲姞鎴栫Щ闄ょ殑灞炴��
*/
- private String[] apNameArray;
+ private String apNameArray;
/**
* 鏃堕棿鎴筹紝鐢ㄤ簬鏍¢獙鏄惁鏈�鏂版暟鎹�
@@ -180,11 +155,11 @@
*/
private Date lastModifyTime;
- public void setApNameArray(String[] apNameArray) {
+ public void setApNameArray(String apNameArray) {
this.apNameArray = apNameArray;
}
- public String[] getApNameArray() {
+ public String getApNameArray() {
return apNameArray;
}
@@ -284,22 +259,6 @@
this.revisionRuleId = revisionRuleId;
}
- public String getRevisionRuleName() {
- return revisionRuleName;
- }
-
- public void setRevisionRuleName(String revisionRuleName) {
- this.revisionRuleName = revisionRuleName;
- }
-
- public String getRevisionSep() {
- return revisionSep;
- }
-
- public void setRevisionSep(String revisionSep) {
- this.revisionSep = revisionSep;
- }
-
public boolean isInputRevisionFlag() {
return inputRevisionFlag;
}
@@ -364,14 +323,6 @@
this.versionRule = versionRule;
}
- public List<OsBtmTypeLinkAttributesDTO> getAttributesDTOList() {
- return attributesDTOList;
- }
-
- public void setAttributesDTOList(List<OsBtmTypeLinkAttributesDTO> attributesDTOList) {
- this.attributesDTOList = attributesDTOList;
- }
-
public Date getTs() {
return ts;
}
@@ -412,28 +363,12 @@
this.lifeCycleId = lifeCycleId;
}
- public String getLifeCycleName() {
- return lifeCycleName;
- }
-
- public void setLifeCycleName(String lifeCycleName) {
- this.lifeCycleName = lifeCycleName;
- }
-
public String getSubLifeCycleId() {
return subLifeCycleId;
}
public void setSubLifeCycleId(String subLifeCycleId) {
this.subLifeCycleId = subLifeCycleId;
- }
-
- public String getSubLifeCycleName() {
- return subLifeCycleName;
- }
-
- public void setSubLifeCycleName(String subLifeCycleName) {
- this.subLifeCycleName = subLifeCycleName;
}
public String getClassFullName() {
@@ -453,8 +388,7 @@
", tableName='" + tableName + '\'' +
", description='" + description + '\'' +
", revisionRuleId='" + revisionRuleId + '\'' +
- ", revisionRuleName='" + revisionRuleName + '\'' +
- ", revisionSep='" + revisionSep + '\'' +
+ ", delimiter='" + delimiter + '\'' +
", inputRevisionFlag=" + inputRevisionFlag +
", abstractFlag=" + abstractFlag +
", revisionFlag=" + revisionFlag +
@@ -463,14 +397,11 @@
", implClass='" + implClass + '\'' +
", shape='" + shape + '\'' +
", lifeCycleId='" + lifeCycleId + '\'' +
- ", lifeCycleName='" + lifeCycleName + '\'' +
", versionRule='" + versionRule + '\'' +
", subLifeCycleId='" + subLifeCycleId + '\'' +
- ", subLifeCycleName='" + subLifeCycleName + '\'' +
", viewFlag=" + viewFlag +
", viewCreateSql='" + viewCreateSql + '\'' +
", classFullName='" + classFullName + '\'' +
- ", attributesDTOList=" + attributesDTOList +
", ts=" + ts +
'}';
}
diff --git a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/MenuVO.java b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/MenuVO.java
index 48769fb..473c411 100644
--- a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/MenuVO.java
+++ b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/MenuVO.java
@@ -33,7 +33,6 @@
*/
private Boolean hasChildren;
-
/**
* 鑿滃崟缂栧彿
*/
@@ -103,11 +102,25 @@
* 鏄惁鏂扮獥鍙f墦寮�
*/
private String isOpenName;
+
+ /**
+ * 鍙拡瀵逛簬棣栭〉绯荤粺妯″潡閰嶇疆浣跨敤锛岀敤浜庡尯鍒嗙偣鍑讳笉鍚岀殑鑺傜偣锛屽睍寮�鐨勪笉鍚屾煡璇㈤�昏緫
+ */
+ private String modeType;
+
/**
* 鍓嶇鏄惁闅愯棌
*/
private HashMap<String,Boolean> meta = new HashMap<>();
+ public String getModeType() {
+ return modeType;
+ }
+
+ public void setModeType(String modeType) {
+ this.modeType = modeType;
+ }
+
public String getId() {
return id;
}
diff --git a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeAttributeVO.java b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeAttributeVO.java
index b03a021..f2cf29e 100644
--- a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeAttributeVO.java
+++ b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeAttributeVO.java
@@ -53,7 +53,7 @@
/**
* 鏁版嵁绫诲瀷
*/
- private String attrDataType;
+ private String attributeDataType;
/**
* 鏄惁鍙互涓虹┖
@@ -191,12 +191,12 @@
this.description = description;
}
- public String getAttrDataType() {
- return attrDataType;
+ public String getAttributeDataType() {
+ return attributeDataType;
}
- public void setAttrDataType(String attrDataType) {
- this.attrDataType = attrDataType;
+ public void setAttributeDataType(String attributeDataType) {
+ this.attributeDataType = attributeDataType;
}
public boolean isReferFlag() {
@@ -379,7 +379,7 @@
", name='" + name + '\'' +
", attributeLength=" + attributeLength +
", description='" + description + '\'' +
- ", attrDataType='" + attrDataType + '\'' +
+ ", attributeDataType='" + attributeDataType + '\'' +
", nullableFlag=" + nullableFlag +
", defaultValue='" + defaultValue + '\'' +
", precisionLength=" + precisionLength +
diff --git a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeVO.java b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeVO.java
index 94ff8ad..8ba5e9e 100644
--- a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeVO.java
+++ b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/OsBtmTypeVO.java
@@ -1,5 +1,7 @@
package com.vci.pagemodel;
+import com.vci.starter.web.pagemodel.Tree;
+
import java.util.Date;
import java.util.List;
@@ -54,11 +56,6 @@
* 鐗堟湰瑙勫垯鐨勫悕绉�
*/
private String revisionRuleName;
-
- /**
- * 鍒嗛殧绗�
- */
- private String revisionSep;
/**
* 鏄惁鎵嬪姩杈撳叆鐗堟湰
@@ -123,7 +120,7 @@
/**
* 澶囩敤鐢熷懡鍛ㄦ湡鑻辨枃鍚嶇О
*/
- private String subLifeCycleId;
+ private String lifeCycleIds;
/**
* 澶囩敤鐢熷懡鍛ㄦ湡涓枃鍚嶇О
@@ -268,14 +265,6 @@
public void setRevisionRuleName(String revisionRuleName) {
this.revisionRuleName = revisionRuleName;
- }
-
- public String getRevisionSep() {
- return revisionSep;
- }
-
- public void setRevisionSep(String revisionSep) {
- this.revisionSep = revisionSep;
}
public boolean isInputRevisionFlag() {
@@ -423,12 +412,12 @@
this.lifeCycleName = lifeCycleName;
}
- public String getSubLifeCycleId() {
- return subLifeCycleId;
+ public String getLifeCycleIds() {
+ return lifeCycleIds;
}
- public void setSubLifeCycleId(String subLifeCycleId) {
- this.subLifeCycleId = subLifeCycleId;
+ public void setLifeCycleIds(String lifeCycleIds) {
+ this.lifeCycleIds = lifeCycleIds;
}
public String getSubLifeCycleName() {
@@ -481,7 +470,7 @@
", description='" + description + '\'' +
", revisionRuleId='" + revisionRuleId + '\'' +
", revisionRuleName='" + revisionRuleName + '\'' +
- ", revisionSep='" + revisionSep + '\'' +
+ ", delimiter='" + delimiter + '\'' +
", inputRevisionFlag=" + inputRevisionFlag +
", revisionRuleVO=" + revisionRuleVO +
", abstractFlag=" + abstractFlag +
@@ -493,7 +482,7 @@
", lifeCycleId='" + lifeCycleId + '\'' +
", lifeCycleName='" + lifeCycleName + '\'' +
", versionRule='" + versionRule + '\'' +
- ", subLifeCycleId='" + subLifeCycleId + '\'' +
+ ", lifeCycleIds='" + lifeCycleIds + '\'' +
", subLifeCycleName='" + subLifeCycleName + '\'' +
", viewFlag=" + viewFlag +
", viewCreateSql='" + viewCreateSql + '\'' +
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java
index dcf7cc8..8106ccf 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java
@@ -1,9 +1,11 @@
package com.vci.frameworkcore.compatibility;
+import com.vci.common.exception.VciException;
import com.vci.corba.common.PLException;
import com.vci.frameworkcore.enumpck.ResourceControlTypeEnum;
import com.vci.pagemodel.MenuVO;
import com.vci.pagemodel.SmFunctionVO;
+import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.pagemodel.PageHelper;
import com.vci.starter.web.pagemodel.Tree;
@@ -52,13 +54,23 @@
List<MenuVO> treeCurrentUserMenu(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) throws PLException;
/**
+ * 閫氳繃妯″潡ID鑾峰彇瀛愮骇鍒楄〃
+ * @param parentId
+ * @param isAll 鏄惁鍖呮嫭鏃犳晥鐨勬ā鍧楋紝true鍒欏寘鎷�
+ * @return
+ * @throws VciBaseException
+ */
+ List<MenuVO> getSysModelTreeMenuByPID(String parentId,boolean isAll) throws VciBaseException;
+
+ int checkChildObject(String moduleId) throws VciException;
+
+ /**
* 鑾峰彇鎵�鏈夌殑鍔熻兘鑿滃崟
* @param treeQueryObject 鏍戞煡璇㈠璞�
* @param resourceControlTypeEnum 瑙掕壊鎺у埗鍖哄煙锛屼篃鏄姛鑳芥帶鍒剁殑鍖哄煙
* @return 鏍戣妭鐐癸紝鍑虹幇閿欒浼氬湪寮傚父澶勭悊鍣ㄤ腑缁熶竴杩斿洖Json
*/
List<Tree> treeAllMenu(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum);
-
/**
* 閫氳繃涓婄骇鑺傜偣鑾峰彇涓嬬骇鐨勬墍鏈夌殑鑿滃崟鑺傜偣
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java
index 1414528..1f6c4de 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java
@@ -1,8 +1,14 @@
package com.vci.frameworkcore.compatibility.impl;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
+import com.vci.client.ClientSession;
+import com.vci.common.exception.VciException;
+import com.vci.common.locale.LocaleDisplay;
import com.vci.corba.common.PLException;
+import com.vci.corba.framework.data.FuncOperationInfo;
import com.vci.corba.framework.data.FunctionInfo;
+import com.vci.corba.framework.data.OperateInfo;
import com.vci.corba.framework.data.RoleRightInfo;
import com.vci.corba.omd.data.BusinessObject;
import com.vci.corba.portal.data.PLUILayout;
@@ -13,14 +19,16 @@
import com.vci.pagemodel.MenuVO;
import com.vci.pagemodel.SmFunctionVO;
import com.vci.omd.utils.ObjectTool;
-import com.vci.pagemodel.SmFunctionVO;
import com.vci.starter.web.constant.QueryOptionConstant;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.*;
+import com.vci.starter.web.util.VciBaseUtil;
import com.vci.starter.web.wrapper.VciQueryWrapperForDO;
import com.vci.pagemodel.UIContentVO;
+import com.vci.web.properties.JsonConfigReader;
import com.vci.web.service.UIEngineServiceI;
import com.vci.web.service.WebBoServiceI;
+import com.vci.web.util.Func;
import com.vci.web.util.PlatformClientUtil;
import com.vci.web.util.RightControlUtil;
import com.vci.web.util.WebUtil;
@@ -51,9 +59,17 @@
/**
* 鑿滃崟鐨勬牴鑺傜偣涓婚敭锛岃繖涓槸骞冲彴瀹氫箟鐨�
*/
- private final String ROOT_MENU_Id = "modelManagmentNode";
+ private final String ROOT_MENU_ID = "modelManagmentNode";
+ /**
+ * 绠$悊鍔熻兘妯″潡鑿滃崟鏍硅妭鐐�
+ */
+ private final String SYSTEMMANAGMENTNODE = "systemManagmentNode";
+ /**
+ * 鎿嶄綔绫诲瀷绠$悊鑿滃崟鏍硅妭鐐�
+ */
+ private final String OPERATENODE = "operateNode";
/**
* 浣跨敤鐢ㄦ埛鏌ヨ
@@ -81,6 +97,7 @@
@Autowired
RightControlUtil rightControlUtil;
+
/**
* 鏌ヨ鎵�鏈夌殑鍔熻兘
*
@@ -199,7 +216,7 @@
functionVO.setDescription(functionForPlatform1.getPldesc());
}
}
-
+
functionVO.setBtmname("function");
//鑰佺殑鏁版嵁閲屽垱寤轰汉锛屾渶鍚庝慨鏀逛汉绛夐兘娌℃湁
return functionVO;
@@ -216,20 +233,23 @@
public List<MenuVO> treeCurrentUserMenu(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) throws PLException {
SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfoNotException();
String parentId;
-
- if (rightControlUtil.isAdminOrDeveloperOrRoot(sessionInfo.getUserId())) {
- // 绯荤粺鑿滃崟
- parentId = "systemManagmentNode" ;
+ boolean adminOrDeveloperOrRoot = rightControlUtil.isAdminOrDeveloperOrRoot(sessionInfo.getUserId());
+ if (adminOrDeveloperOrRoot) {
+ //绯荤粺鑿滃崟
+ parentId = SYSTEMMANAGMENTNODE;
} else if (rightControlUtil.isThreeAdminCurUser()) {
- parentId = "systemManagmentNode" ;
+ //涓夊憳杩斿洖绠$悊鍔熻兘妯″潡鐩稿叧鐨勮彍鍗�
+ parentId = SYSTEMMANAGMENTNODE;
} else {
- parentId = "modelManagmentNode" ;
+ //鏅�氱敤鎴峰彧杩斿洖涓氬姟鍔熻兘妯″潡鐩稿叧鐨勮彍鍗�
+ parentId = ROOT_MENU_ID;
}
RoleRightInfo[] userRoleRights = rightControlUtil.getRoleRightByUserName(sessionInfo.getUserId());
Map<String, List<FunctionInfo>> map = rightControlUtil.getAllChildrenFunctionsByUserName(
parentId, sessionInfo.getUserId(), userRoleRights);
+
List<MenuVO> functionVOList = new ArrayList<>();
- if(CollectionUtils.isEmpty(map.get(parentId))){
+ if(Func.isEmpty(map.get(parentId))) {
return functionVOList;
}
for (FunctionInfo menu : map.get(parentId)) {
@@ -239,9 +259,9 @@
MenuVO functionVO = new MenuVO();
functionVO.setId(menu.id);
functionVO.setSource(menu.image);
-// if(StringUtils.isBlank(menu.resourceB)){
-// continue;
-// }
+ //if(StringUtils.isBlank(menu.resourceB)){
+ // continue;
+ //}
functionVO.setPath(menu.resourceB);
functionVO.setParentId(menu.parentId);
functionVO.setCode(menu.aliasName);
@@ -249,7 +269,14 @@
functionVO.setName(menu.name);
functionVO.getMeta().put("keepAlive",false);
functionVO.setSort((int) menu.seq);
- functionVO.setChildren(findChildFunctionVO(menu.id, map));
+ try {
+ functionVO.setChildren(findChildFunctionVO(menu.id, map));
+ } catch (PLException e) {
+ e.printStackTrace();
+ String errorMsg = "鑿滃崟鏌ヨ鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+ logger.error(errorMsg);
+ throw new VciBaseException(errorMsg);
+ }
if(functionVO.getChildren().size() > 0){
functionVO.setHasChildren(true);
}else {
@@ -257,7 +284,156 @@
}
functionVOList.add(functionVO);
}
+ //濡傛灉鏄紑鍙戞垨鑰呮祴璇曠敤鎴凤紝闇�鍝熻幏鍙栫郴缁熸ā鍧楅厤缃彍鍗�
+ if(adminOrDeveloperOrRoot){
+ //鑾峰彇棣栭〉绯荤粺妯″潡閰嶇疆鑿滃崟
+ MenuVO menuVO = JsonConfigReader.getMenuVO();
+ functionVOList.add(menuVO);
+ }
return functionVOList.stream().sorted(Comparator.comparing(s -> s.getSort())).collect(Collectors.toList());
+ }
+
+ /**
+ * 閫氳繃妯″潡ID鑾峰彇瀛愮骇鍒楄〃
+ * @param parentId
+ * @param isAll 鏄惁鍖呮嫭鏃犳晥鐨勬ā鍧楋紝true鍒欏寘鎷�
+ * @return
+ * @throws VciBaseException
+ */
+ @Override
+ public List<MenuVO> getSysModelTreeMenuByPID(String parentId,boolean isAll) throws VciBaseException{
+ List<MenuVO> menuVOList = new ArrayList<>();
+ if(Func.isBlank(parentId)){
+ return menuVOList;
+ }
+ if(parentId.equals("mangeModel") || parentId.equals("businessModel")){
+ if(parentId.equalsIgnoreCase("FunctionObject")){
+ try {
+ /**鍒ゆ柇璇ユā鍧椾笅瀛愬璞℃槸妯″潡杩樻槸鎿嶄綔锛�0琛ㄧず鏃犲瓙鑺傜偣锛�1琛ㄧず鏄ā鍧楋紝2琛ㄧず鏄搷浣�**/
+ int childType = this.checkChildObject(parentId);
+ if(childType == 2){
+ try{
+ FuncOperationInfo[] infos = platformClientUtil.getFrameworkService().getFuncOperationByModule(parentId, "", false);
+ for(int i = 0;i < infos.length ;i++){
+ FuncOperationInfo info = infos[i];
+ MenuVO menuVO = new MenuVO();
+ menuVO.setId(info.id);
+ menuVO.setCode(info.funcId);
+ menuVO.setId(info.operId);
+ menuVO.setName(info.operName);
+ //menuVO.setOperIndentify(info.operIndentify);
+ menuVO.setAlias(info.operAlias);
+ menuVO.setRemark(info.operDesc);
+ menuVO.setSort((int) info.number);
+ //menuVO.setIsValid(info.isValid);
+ menuVO.setHasChildren(false);
+ menuVOList.add(menuVO);
+ }
+ }catch (PLException e) {
+ e.printStackTrace();
+ throw new VciBaseException(String.valueOf(e.code), e.messages);
+ }
+ }else if(childType == 1){
+ try{
+ FunctionInfo[] funcInfos = platformClientUtil.getFrameworkService().getModuleListByParentId(parentId, isAll);
+ for(int i = 0;i < funcInfos.length; i++){
+ FunctionInfo funcInfo = funcInfos[i];
+ MenuVO menuVO = this.functionInfoToMenuVO(funcInfo);
+ menuVOList.add(menuVO);
+ }
+ }catch (PLException e) {
+ e.printStackTrace();
+ throw new VciBaseException(String.valueOf(e.code),e.messages);
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ throw new VciBaseException("妯″潡鏌ヨ鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+VciBaseUtil.getExceptionMessage(e));
+ }
+ }else{
+ try{
+ FunctionInfo[] funcInfos = platformClientUtil.getFrameworkService().getModuleListByParentId(parentId, isAll);
+ for(int i = 0;i < funcInfos.length; i++){
+ FunctionInfo funcInfo = funcInfos[i];
+ MenuVO menuVO = this.functionInfoToMenuVO(funcInfo);
+ menuVO.setModeType("FunctionObject");
+ menuVOList.add(menuVO);
+ }
+ }catch (PLException e) {
+ e.printStackTrace();
+ throw new VciBaseException(String.valueOf(e.code),e.messages);
+ }
+ }
+ }else if(parentId.equals("operateType")){
+ //鍔犺浇鎵�鏈夋搷浣�
+ try{
+ OperateInfo[] operateInfos = platformClientUtil.getFrameworkService().getOperateTreeList(parentId);
+ for(int i = 0; i < operateInfos.length;i++ ){
+ OperateInfo operateInfo = operateInfos[i];
+ MenuVO menuVO = new MenuVO();
+ menuVO.setId(operateInfo.id);
+ menuVO.setName(operateInfo.name);
+ menuVO.setCode(operateInfo.identify);
+ menuVO.setAlias(operateInfo.alias);
+ menuVO.setCategory(2);
+ menuVO.setRemark(operateInfo.desc);
+ menuVO.getMeta().put("keepAlive",false);
+ menuVO.setSort((int) operateInfo.seq);
+ menuVO.setModeType("operateObject");
+ menuVO.setHasChildren(false);
+ menuVOList.add(menuVO);
+ }
+ }catch (PLException e) {
+ e.printStackTrace();
+ throw new VciBaseException(String.valueOf(e.code),new String[]{VciBaseUtil.getExceptionMessage(e)});
+ }
+ }
+ return menuVOList;
+ }
+
+ /**
+ * functionInfo杞琕O瀵硅薄
+ * @param funcInfo
+ * @return
+ */
+ private MenuVO functionInfoToMenuVO(FunctionInfo funcInfo){
+ MenuVO menuVO = new MenuVO();
+ menuVO.setId(funcInfo.id);
+ menuVO.setSource(funcInfo.image);
+ //if(StringUtils.isBlank(menu.resourceB)){
+ // continue;
+ //}
+ menuVO.setPath(funcInfo.resourceB);
+ menuVO.setParentId(funcInfo.parentId);
+ menuVO.setCode(funcInfo.aliasName);
+ menuVO.setAlias(funcInfo.aliasName);
+ menuVO.setName(funcInfo.name);
+ menuVO.getMeta().put("keepAlive",false);
+ menuVO.setSort((int) funcInfo.seq);
+ if(this.checkChildObject(menuVO.getId()) == 0){
+ menuVO.setHasChildren(false);
+ }else{
+ menuVO.setHasChildren(true);
+ }
+ return menuVO;
+ }
+
+ /**
+ * 閫氳繃妯″潡ID妫�鏌ヨ妯″潡瀛愮骇瀵硅薄鏄ā鍧楄繕鏄搷浣�
+ * @param moduleId
+ * @return 0琛ㄧず娌℃湁妯″潡涔熸病鏈夋搷浣滐紝1琛ㄧず鏈夋ā鍧楋紝2琛ㄧず鏈夋搷浣�
+ * @throws VciException
+ */
+ @Override
+ public int checkChildObject(String moduleId) throws VciBaseException {
+ long res = 0;
+ try{
+ res = ClientSession.getFrameworkService().checkChildObject(moduleId);
+ }catch (PLException e) {
+ e.printStackTrace();
+ throw new VciBaseException(String.valueOf(e.code),e.messages);
+ }
+ return (int)res;
}
public List<MenuVO> findChildFunctionVO(String parentOid,Map<String, List<FunctionInfo>> map) throws PLException {
@@ -294,7 +470,6 @@
return functionVOList.stream().sorted(Comparator.comparing(s -> s.getSort())).collect(Collectors.toList());
}
-
@Override
public UIContentVO getUIContentByBtmTypeAndId(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) throws PLException {
SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfoNotException();
@@ -310,9 +485,6 @@
return null;
}
-
-
-
/**
* 鑾峰彇鎵�鏈夌殑鍔熻兘鑿滃崟
*
@@ -324,7 +496,7 @@
public List<Tree> treeAllMenu(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) {
List<SmFunctionVO> functionVOList = self.selectAllFunction().stream().filter(s -> s.isDisplayFlag() && resourceControlTypeEnum.getValue().equalsIgnoreCase(s.getResourceControlType())).collect(Collectors.toList());
if(!treeQueryObject.isQueryAllLevel() && StringUtils.isNotBlank(treeQueryObject.getParentOid())){
- functionVOList = functionVOList.stream().filter(s->treeQueryObject.getParentOid().equalsIgnoreCase(s.getParentFunctionId())).collect(Collectors.toList());
+ functionVOList = functionVOList.stream().filter(s->treeQueryObject.getParentOid().equalsIgnoreCase(s.getParentFunctionId())).collect(Collectors.toList());
}
return dos2Trees(functionVOList.stream().sorted(Comparator.comparing(s -> s.getOrderNum())).collect(Collectors.toList()),treeQueryObject == null?null:treeQueryObject.getParentOid());
}
@@ -341,7 +513,7 @@
List<Tree> childList = new ArrayList<>();
functionVOList.stream().forEach(s -> {
Tree tree = DO2Tree(s);
- if (tree.getParentId() == null || tree.getParentId().equals(rootId) || ROOT_MENU_Id.equalsIgnoreCase(tree.getParentId())) {
+ if (tree.getParentId() == null || tree.getParentId().equals(rootId) || ROOT_MENU_ID.equalsIgnoreCase(tree.getParentId())) {
rootList.add(tree);
} else {
childList.add(tree);
@@ -385,7 +557,7 @@
public List<Tree> treeFunctionByParent(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) {
List<SmFunctionVO> functionVOList = self.selectAllFunction().stream().filter(s -> s.isDisplayFlag() && resourceControlTypeEnum.getValue().equalsIgnoreCase(s.getResourceControlType())).collect(Collectors.toList());
if(!treeQueryObject.isQueryAllLevel() && StringUtils.isNotBlank(treeQueryObject.getParentOid())){
- functionVOList = functionVOList.stream().filter(s->treeQueryObject.getParentOid().equalsIgnoreCase(s.getParentFunctionId())).collect(Collectors.toList());
+ functionVOList = functionVOList.stream().filter(s->treeQueryObject.getParentOid().equalsIgnoreCase(s.getParentFunctionId())).collect(Collectors.toList());
}
return dos2Trees(functionVOList,treeQueryObject == null?null:treeQueryObject.getParentOid());
}
@@ -401,12 +573,12 @@
public List<Tree> treeCurrentFunctionByParent(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) {
SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfo();
List<SmFunctionVO> functionVOList =self.selectAllFunction().stream().filter(s -> s.isDisplayFlag()
- && resourceControlTypeEnum.getValue().equalsIgnoreCase(s.getResourceControlType())
+ && resourceControlTypeEnum.getValue().equalsIgnoreCase(s.getResourceControlType())
&& !CollectionUtils.isEmpty(sessionInfo.getFunctionOids())
&& sessionInfo.getFunctionOids().contains(s.getOid())
).collect(Collectors.toList());
if(!treeQueryObject.isQueryAllLevel() && StringUtils.isNotBlank(treeQueryObject.getParentOid())){
- functionVOList = functionVOList.stream().filter(s->treeQueryObject.getParentOid().equalsIgnoreCase(s.getParentFunctionId())).collect(Collectors.toList());
+ functionVOList = functionVOList.stream().filter(s->treeQueryObject.getParentOid().equalsIgnoreCase(s.getParentFunctionId())).collect(Collectors.toList());
}
return dos2Trees(functionVOList,treeQueryObject == null?null:treeQueryObject.getParentOid());
}
@@ -605,6 +777,7 @@
}
return dataGrid(queryMap,pageHelper);
}
+
/**
* 鎵归噺鏍规嵁瑙掕壊鐨勪富閿幏鍙栧叧鑱旂殑鏉冮檺
*
@@ -637,7 +810,6 @@
}
return gridFunctionByRoleOid(roleOidCollection.stream().collect(Collectors.joining(",")), queryMap,pageHelper,resourceControlTypeEnum,false);
}
-
/**
* 娓呴櫎缂撳瓨
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java
index 044c644..cb3bc49 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java
@@ -272,8 +272,8 @@
* @return
*/
@PostMapping("/impData")
- @VciUnCheckRight
- public BaseResult impData(MultipartFile file){try {
+ public BaseResult impData(MultipartFile file){
+ try {
return linkTypeService.impData(file);
}catch (Throwable e) {
throw new VciBaseException(VciBaseUtil.getExceptionMessage(e),new String[0],e);
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java
index 7eaabfb..0313038 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java
@@ -124,7 +124,7 @@
/**
* 鏌ヨ鏉′欢鐨勬煡璇㈡寜閽煡璇is鍒楄〃
- * @param dataMap 浼犺緭鐨勬暟鎹璞★細
+ * @param qtInfoDTO 浼犺緭鐨勬暟鎹璞★細
* linkTypeName 閾炬帴绫诲瀷鍚嶇О銆�
* rdPositive 鏂瑰悜锛宼rue姝e悜锛宖alse鍙嶅悜
* btmName 涓氬姟绫诲瀷鍚嶇О
@@ -134,10 +134,10 @@
* level 瀛愯妭鐐瑰眰鏁�
* @return 鏌ヨ缁撴灉
*/
- @GetMapping("/getCriteria")
- public BaseResult getCriteria(@RequestBody HashMap<String,Object> dataMap){
+ @PostMapping("/getCriteria")
+ public BaseResult getCriteria(@RequestBody QTInfoDTO qtInfoDTO){
try {
- return quereyTemplateServiceI.getCriteria(dataMap);
+ return quereyTemplateServiceI.getCriteria(qtInfoDTO);
} catch (PLException e) {
BaseResult objectBaseResult = new BaseResult<>();
objectBaseResult.setCode(Integer.parseInt(e.code));
@@ -202,4 +202,60 @@
return objectBaseResult;
}
}
+
+ /**
+ * 閾炬帴绫诲瀷鏌ヨ妯℃澘鏍戞煡璇紝鐢ㄤ簬鐣岄潰鐨勫鍑哄姛鑳�
+ * @return 鏌ヨ缁撴灉
+ */
+ @GetMapping("/getLinkTree")
+ public BaseResult getLinkTree(){
+ try {
+ return quereyTemplateServiceI.getLinkTree();
+ } catch (PLException e) {
+ BaseResult objectBaseResult = new BaseResult<>();
+ objectBaseResult.setCode(Integer.parseInt(e.code));
+ objectBaseResult.setMsg(Arrays.toString(e.messages));
+ return objectBaseResult;
+ }
+ }
+ /**
+ * 瀵煎嚭閾炬帴绫诲瀷鏌ヨ妯℃澘
+ * names 鏌ヨ妯℃澘鍚�
+ * @return
+ */
+ @PostMapping("/expLinkTemplate")
+ public void expLinkTemplate(@RequestBody List<String> names,HttpServletResponse response) throws PLException, IOException {
+ quereyTemplateServiceI.expLinkTemplate(names, response);
+ }
+
+ /**
+ * 瀵煎叆閾炬帴绫诲瀷鏌ヨ妯℃澘
+ * @param file 涓婁紶鐨勬枃浠�
+ * @return 瀵煎叆缁撴灉
+ */
+ @PostMapping("/impLinkTemplate")
+ public BaseResult impLinkTemplate(MultipartFile file){
+ try {
+ return quereyTemplateServiceI.impLinkTemplate(file);
+ }catch (Throwable e) {
+ throw new VciBaseException(VciBaseUtil.getExceptionMessage(e),new String[0],e);
+ }
+ }
+
+ /**
+ * 鏌ヨ鏂规鍒犻櫎
+ * @param templateNames 鏌ヨ鏂规鍚�
+ * @return 鎿嶄綔缁撴灉
+ */
+ @DeleteMapping("/deleteLinkTemplate")
+ public BaseResult deleteLinkTemplate(@RequestBody List<String> templateNames){
+ try {
+ return quereyTemplateServiceI.deleteLinkTemplate(templateNames);
+ } catch (PLException e) {
+ BaseResult objectBaseResult = new BaseResult<>();
+ objectBaseResult.setCode(Integer.parseInt(e.code));
+ objectBaseResult.setMsg(Arrays.toString(e.messages));
+ return objectBaseResult;
+ }
+ }
}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/SmFunctionController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/SmFunctionController.java
index 87f6987..7e9968d 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/SmFunctionController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/SmFunctionController.java
@@ -6,8 +6,12 @@
import com.vci.pagemodel.MenuVO;
import com.vci.pagemodel.SmFunctionVO;
import com.vci.starter.web.annotation.controller.VciUnCheckRight;
+import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.*;
import com.vci.pagemodel.UIContentVO;
+import com.vci.starter.web.util.VciBaseUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -29,6 +33,10 @@
@Autowired
private ISmFunctionQueryService functionQueryService;
+ /**
+ * 鏃ュ織
+ */
+ private Logger logger = LoggerFactory.getLogger(getClass());
/**
* 鑾峰彇褰撳墠鐢ㄦ埛鐨勮彍鍗�
@@ -41,6 +49,25 @@
}
/**
+ * 鑾峰彇褰撳墠妯″潡涓嬬殑瀛愭ā鍧�
+ * @param parentId
+ * @return
+ * @throws PLException
+ */
+ @GetMapping("/getSysModelTreeMenuByPID")
+ @VciUnCheckRight
+ public List<MenuVO> getSysModelTreeMenuByPID(String parentId) {
+ try {
+ return functionQueryService.getSysModelTreeMenuByPID(parentId,true);
+ }catch (Exception e){
+ e.printStackTrace();
+ String errorMsg = "鏌ヨ瀛愭ā鍧楁椂鍑虹幇閿欒锛屽師鍥狅細"+VciBaseUtil.getExceptionMessage(e);
+ logger.error(errorMsg);
+ throw new VciBaseException(errorMsg);
+ }
+ }
+
+ /**
* 鑾峰彇褰撳墠鐢ㄦ埛鐨勮彍鍗�
* @param treeQueryObject 鏍戞煡璇㈠璞�
* @return 鏍戣妭鐐癸紝鍑虹幇閿欒浼氬湪寮傚父澶勭悊鍣ㄤ腑缁熶竴杩斿洖Json
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java
index 5e6f1f0..270d46a 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java
@@ -54,7 +54,6 @@
@RequestMapping("/btmTypeController")
@VciBusinessLog(modelName="涓氬姟绫诲瀷")
@RestController
-@VciUnCheckRight
public class WebBtmTypeController {
/**
@@ -191,7 +190,7 @@
* btmTypeDTO 閾炬帴绫诲瀷淇敼鐨勫璞�
* @return 淇濆瓨缁撴灉
*/
- @PostMapping("/updateBtmType")
+ @PutMapping("/updateBtmType")
public BaseResult updateBtmType(@RequestBody OsBtmTypeDTO btmTypeDTO){
try {
return btmService.updateBtmType(btmTypeDTO) ? BaseResult.success("涓氬姟绫诲瀷淇敼鎴愬姛锛�"):BaseResult.fail("涓氬姟绫诲瀷淇敼澶辫触锛�");
@@ -469,7 +468,7 @@
OsBtmTypeAttributeVO attributeVO = new OsBtmTypeAttributeVO();
BeanUtil.convert(attr,attributeVO);
attributeVO.setAttributeLength(attr.getAttrLength());
- attributeVO.setAttrDataType(attr.getAttributeDataType());
+ attributeVO.setAttributeDataType(attr.getAttributeDataType());
attributeVO.setReferBtmTypeId(attr.getBtmTypeId());
attributeVO.setReferBtmTypeName(attr.getBtmTypeName());
finalBoAttrs.add(attributeVO);
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/other/LinkQTExportData.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/other/LinkQTExportData.java
new file mode 100644
index 0000000..d2fe2f7
--- /dev/null
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/other/LinkQTExportData.java
@@ -0,0 +1,96 @@
+package com.vci.web.other;
+
+import java.io.Serializable;
+import java.util.HashMap;
+import java.util.Map;
+
+import com.vci.corba.omd.ltm.LinkType;
+import com.vci.corba.omd.qtm.QTD;
+import com.vci.corba.omd.qtm.QTInfo;
+import com.vci.corba.common.PLException;
+import com.vci.web.util.PlatformClientUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * 鏌ヨ妯℃澘瀵煎嚭鏁版嵁绫伙細鍙簭鍒楀寲涓烘ā鏉挎枃浠�,鍚屾椂涔熷吋瀵煎嚭鏁版嵁鎺у埗绫�
+ * @Title :QTExportData.java
+ * @Description :
+ * @Copyright :瀹忓崥杩滆揪绉戞妧鏈夐檺鍏徃
+ * @Author :骞冲彴涓庤鍒掗儴/ZhongGY/E-mail:zhonggy@vci-tech.com
+ * @Date :2015-6-8
+ * @Version :1
+ * @Other :浜х敓娉ㄩ噴:Alt+Shift+J
+ */
+public class LinkQTExportData implements Serializable{
+
+ private static final long serialVersionUID = 1L;
+
+
+ /**
+ * 闇�瑕佸簭鍒楀寲鐨勬ā鏉挎暟鎹�
+ */
+ //
+ private Map<String/*绫诲瀷鍚嶇О*/, LinkType/*绫诲瀷瀵硅薄*/> selectedBtmItems = new HashMap<String, LinkType>();
+ private Map<String/*绫诲瀷鍚嶇О*/,String[]/*绫诲瀷鎵�灞炲睘鎬�*/> selectedBtmAttrs = new HashMap<String, String[]>();
+ private Map<String/*鏌ヨ妯℃澘鍚嶇О*/, QTInfo/*鏌ヨ妯℃澘瀵硅薄*/> allSelectedQTs = new HashMap<String, QTInfo>();
+ private Map<String/*绫诲瀷鍚嶇О*/, QTD[]/*鏌ヨ妯℃澘瀹氫箟*/> allQTDs = new HashMap<String, QTD[]>();
+
+
+ public Map<String, LinkType> getSelectedBtmItems() {
+ return selectedBtmItems;
+ }
+
+ public void setSelectedBtmItems(Map<String, LinkType> selectedBtmItems) {
+ this.selectedBtmItems = selectedBtmItems;
+ }
+
+ public Map<String, String[]> getSelectedBtmAttrs() {
+ return selectedBtmAttrs;
+ }
+
+ public void setSelectedBtmAttrs(Map<String, String[]> selectedBtmAttrs) {
+ this.selectedBtmAttrs = selectedBtmAttrs;
+ }
+
+ public Map<String, QTD[]> getAllQTDs() {
+ return allQTDs;
+ }
+
+ public void setAllQTDs(Map<String, QTD[]> allQTDs) {
+ this.allQTDs = allQTDs;
+ }
+
+ public Map<String, QTInfo> getAllQTs() {
+ return allSelectedQTs;
+ }
+
+// public void setAllQTs(Map<String, QTInfo> allQTs) {
+// this.allSelectedQTs = allQTs;
+//// try {
+//// BizType[] btmArray = BtmClient.getService().getAllBtmItem("");
+//// for (int i = 0; i < btmArray.length; i++) {
+//// allBtmItems.put(btmArray[i].name, btmArray[i]);
+//// }
+//// } catch (PLException e) {
+//// }
+// for (Map.Entry<String, QTInfo> item : allQTs.entrySet()) {
+//// BizType bizType = allBtmItems.get(item.getValue().btmName);
+// LinkType linkType;
+// try {
+// linkType = LinkTypeStart.getService().getLinkType(item.getValue().btmName);
+// if(linkType != null && !linkType.oid.equals("")){
+// selectedBtmItems.put(linkType.name, linkType);
+//// selectedBtmAttrs.put(linkType.name, BtmProvider.getInstance().getAbNames(linkType.name));
+// selectedBtmAttrs.put(linkType.name, linkType.attributes);
+// allQTDs.put(linkType.name, .getQTDService().getLinkTypeQTDs(linkType.name));
+// }
+// } catch (PLException e1) {
+// // TODO Auto-generated catch block
+// e1.printStackTrace();
+// }
+// }
+// //selectedBtmAttrs?
+// //allQTDs?
+// }
+
+}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/properties/JsonConfigReader.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/properties/JsonConfigReader.java
new file mode 100644
index 0000000..840d4f0
--- /dev/null
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/properties/JsonConfigReader.java
@@ -0,0 +1,36 @@
+package com.vci.web.properties;
+
+import com.alibaba.fastjson.JSON;
+import com.vci.pagemodel.MenuVO;
+import org.apache.commons.io.FileUtils;
+import org.springframework.util.ResourceUtils;
+
+import java.io.*;
+
+/**
+ * 璇诲彇json閰嶇疆鏂囦欢锛岃彍鍗曠瓑
+ * @author ludc
+ * @date 2024/8/16 10:09
+ */
+public class JsonConfigReader {
+
+ /**
+ * 鑿滃崟json閰嶇疆鏂囦欢锛屽鏈夊叾浠栭渶瑕佽鍙栫殑锛屽彲浠ヤ豢鐓у綋鍓嶉�昏緫缂栧啓
+ */
+ private static MenuVO menuVO;
+
+ static{
+ try {
+ File file = ResourceUtils.getFile("classpath:menuConfig.json");
+ String json = FileUtils.readFileToString(file, "UTF-8");
+ menuVO = JSON.parseObject(json, MenuVO.class);
+ }catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public static MenuVO getMenuVO() {
+ return menuVO;
+ }
+
+}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java
index 4cd367d..c4fbb99 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java
@@ -53,7 +53,7 @@
BaseResult deleteTemplate(String name) throws PLException;
/**
*
- * @param dataMap 浼犺緭鐨勬暟鎹璞★細
+ * @param qtInfoDTO 浼犺緭鐨勬暟鎹璞★細
* linkTypeName 閾炬帴绫诲瀷銆�
* rdPositive 鏂瑰悜锛宼rue姝e悜锛宖alse鍙嶅悜
* btmName 涓氬姟绫诲瀷鍚嶇О
@@ -63,7 +63,7 @@
* level 瀛愯妭鐐瑰眰鏁�
* @return 鏌ヨ缁撴灉
*/
- BaseResult getCriteria(HashMap<String,Object> dataMap) throws PLException;
+ BaseResult getCriteria(QTInfoDTO qtInfoDTO) throws PLException;
/**
* 鏌ヨ妯℃澘鍒楄〃
* @param btName 绫诲瀷鍚嶇О
@@ -83,4 +83,27 @@
* @return 淇濆瓨缁撴灉
*/
BaseResult linkSave(QTInfoDTO qtInfoDTO) throws PLException;
+ /**
+ * 閾炬帴绫诲瀷鏌ヨ妯℃澘鏍戞煡璇紝鐢ㄤ簬鐣岄潰鐨勫鍑哄姛鑳�
+ * @return 鏌ヨ缁撴灉
+ */
+ BaseResult getLinkTree() throws PLException ;
+ /**
+ * 瀵煎嚭閾炬帴绫诲瀷鏌ヨ妯℃澘
+ * names 鏌ヨ妯℃澘鍚�
+ * @return
+ */
+ void expLinkTemplate(List<String> names, HttpServletResponse response) throws PLException, IOException ;
+ /**
+ * 瀵煎叆閾炬帴绫诲瀷鏌ヨ妯℃澘
+ * @param file 涓婁紶鐨勬枃浠�
+ * @return 瀵煎叆缁撴灉
+ */
+ BaseResult impLinkTemplate(MultipartFile file) throws IOException, ClassNotFoundException;
+ /**
+ * 鏌ヨ鏂规鍒犻櫎
+ * @param templateNames 鏌ヨ鏂规鍚�
+ * @return 鎿嶄綔缁撴灉
+ */
+ BaseResult deleteLinkTemplate(List<String> templateNames) throws PLException;
}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
index aace24a..3f0f4d3 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
@@ -202,7 +202,7 @@
//vo.setCreateTime(VciDateUtil.str2Date(String.valueOf(btmItem.createTime),VciDateUtil.DateTimeFormat));
vo.setCreateTime(Func.parse(btmItem.createTime, ConcurrentDateFormat.of(VciDateUtil.DateTimeFormat)));
vo.setLastModifyTime( Func.parse(btmItem.modifyTime, ConcurrentDateFormat.of(VciDateUtil.DateTimeFormat)));
- vo.setTs(Func.parse(btmItem.ts, ConcurrentDateFormat.of(VciDateUtil.DateTimeFormat)));
+ vo.setTs(Func.parse(btmItem.ts, ConcurrentDateFormat.of(VciDateUtil.DateTimeMillFormat)));
} catch (Exception e) {
e.printStackTrace();
}
@@ -219,11 +219,11 @@
vo.setInputRevisionFlag(btmItem.revInput);
vo.setDelimiter(btmItem.delimiter);
vo.setfName(btmItem.fName);
- if(StringUtils.isNotBlank(vo.getRevisionRuleId()) || vo.isInputRevisionFlag()){
+ vo.setVersionRule(String.valueOf(btmItem.verRuleName));
+ if(StringUtils.isNotBlank(vo.getRevisionRuleName()) || vo.isInputRevisionFlag()){
vo.setRevisionFlag(true);
}
- vo.setVersionRule(String.valueOf(btmItem.verRuleName));
- vo.setSubLifeCycleId(Arrays.stream(btmItem.lifeCycles).collect(Collectors.joining(",")));
+ vo.setLifeCycleIds(Arrays.stream(btmItem.lifeCycles).collect(Collectors.joining(",")));
vo.setApNameArray(btmItem.apNameArray);
List<OsAttributeVO> attributeVOS = attributeService.listAttrByIds(Arrays.stream(btmItem.apNameArray).collect(Collectors.toList()));
List<OsBtmTypeAttributeVO> btmTypeAttributeVOS = new ArrayList<>();
@@ -232,7 +232,7 @@
BeanUtil.convert(attributeVO,btmTypeAttributeVO);
btmTypeAttributeVO.setPkBtmType(vo.getOid());
btmTypeAttributeVO.setBtmTypeId(vo.getId());
- btmTypeAttributeVO.setAttrDataType(attributeVO.getAttributeDataType());
+ btmTypeAttributeVO.setAttributeDataType(attributeVO.getAttributeDataType());
btmTypeAttributeVO.setAttributeLength(attributeVO.getAttrLength());
btmTypeAttributeVO.setDefaultValue(attributeVO.getDefaultValue());
if("secretgrade".equalsIgnoreCase(attributeVO.getId())){
@@ -385,7 +385,7 @@
attributeService.getDefaultAttributeVOs().stream().forEach(attr->{
OsBtmTypeAttributeVO attributeVO = new OsBtmTypeAttributeVO();
BeanUtil.convert(attr, attributeVO);
- attributeVO.setAttrDataType(attr.getAttributeDataType());
+ attributeVO.setAttributeDataType(attr.getAttributeDataType());
attributeVO.setAttributeLength(attr.getAttrLength());
attributeVO.setReferBtmTypeId(attr.getBtmTypeId());
attributeVO.setReferBtmTypeName(attr.getBtmTypeName());
@@ -648,7 +648,7 @@
AttributeDef sysAttributeDef = collect.get(attrName.toLowerCase());
OsBtmTypeAttributeVO vo = new OsBtmTypeAttributeVO();
vo.setOid(sysAttributeDef.oid);
- vo.setAttrDataType(sysAttributeDef.vtDataType);
+ vo.setAttributeDataType(sysAttributeDef.vtDataType);
vo.setPkBtmType(btmName);
vo.setCreateTime(new Date(sysAttributeDef.createTime));
vo.setCreator(sysAttributeDef.creator);
@@ -667,7 +667,7 @@
for (AttributeDef attribute : attributeDefs) {
OsBtmTypeAttributeVO vo = new OsBtmTypeAttributeVO();
vo.setOid(attribute.oid);
- vo.setAttrDataType(attribute.vtDataType);
+ vo.setAttributeDataType(attribute.vtDataType);
vo.setPkBtmType(btmName);
vo.setCreateTime(new Date(attribute.createTime));
vo.setCreator(attribute.creator);
@@ -695,6 +695,7 @@
*/
private BizType dto2BizType(OsBtmTypeDTO dto){
BizType bizType = new BizType();
+ bizType.oid = dto.getOid();
bizType.name =dto.getId();
bizType.isAbstract = dto.isAbstractFlag();
bizType.label = dto.getName();
@@ -710,24 +711,24 @@
}
bizType.description = dto.getDescription();
bizType.revLevel = dto.getRevLevel();
-
- bizType.revRuleName = dto.getRevisionRuleName();
+ bizType.revRuleName = dto.getRevisionRuleId();
bizType.revInput = dto.isInputRevisionFlag();
bizType.delimiter = (dto.getDelimiter() == null ? "" : dto.getDelimiter());
- bizType.verRuleName = Short.parseShort(dto.getRevisionRuleName());
+ bizType.verRuleName = Func.isBlank(dto.getVersionRule()) ? 0:Short.parseShort(dto.getVersionRule());
//bizType.imageName = dto.get;
//List<String> attrIdList = dto.getAttributesDTOList().stream().map(OsBtmTypeLinkAttributesDTO::getId).collect(Collectors.toList());
- bizType.apNameArray = dto.getApNameArray();//attrIdList.toArray(new String[attrIdList.size()]);
+ bizType.apNameArray = dto.getApNameArray().split(",");//attrIdList.toArray(new String[attrIdList.size()]);
String userId = WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserId();
long timeMillis = System.currentTimeMillis();
bizType.creator = Func.isBlank(dto.getCreator()) ? userId:dto.getCreator();
bizType.createTime = Func.isEmpty(dto.getCreateTime()) ? timeMillis:dto.getCreateTime().getTime();
bizType.modifier = userId;
bizType.modifyTime = timeMillis;
+ bizType.ts = Func.isEmpty(dto.getTs())? timeMillis:dto.getTs().getTime();
return bizType;
}
@@ -811,9 +812,11 @@
* @return
*/
private void checkVersionInfo(OsBtmTypeDTO dto) throws PLException {
- //闇�瑕佹墜鍔ㄨ緭鍏ョ増鏈椂revisionRuleName涓嶈兘涓虹┖
- if (dto.isInputRevisionFlag() && Func.isBlank(dto.getRevisionRuleName())) {
- throw new PLException("500",new String[]{"鐗堟湰鍙疯鍒欎笉鑳戒负绌�"});
+ //闇�瑕佹墜鍔ㄨ緭鍏ョ増鏈椂revisionRuleId涓嶈兘涓虹┖
+ if (dto.getRevLevel() == 1 || dto.getRevLevel() == 2) {
+ if (Func.isBlank(dto.getRevisionRuleId()) && !dto.isInputRevisionFlag()) {
+ throw new PLException("500",new String[]{"鐗堟湰鍙疯鍒欎笉鑳戒负绌�"});
+ }
}
}
@@ -854,14 +857,14 @@
checkRevLevel(dbBizType,btmTypeDTO);
checkVersionInfo(btmTypeDTO);
//澶勭悊涓氬姟绫诲瀷涓嬬殑灞炴��
- List<String> lastAttrList = new ArrayList<>(Arrays.asList(btmTypeDTO.getApNameArray()));
+ List<String> lastAttrList = new ArrayList<>(Arrays.asList(btmTypeDTO.getApNameArray().split(",")));
//涓嶈兘绉婚櫎鐨勫睘鎬�
String[] unRemovableFields = null;
List<String> unRemovableFields_ = null;
//闇�瑕佺Щ闄ょ殑灞炴��
List<String> removableFields = null;
//淇敼鍓嶄笟鍔$被鍨嬪湪鏁版嵁搴撲腑宸插瓨鍦ㄧ殑鎵�鏈夊睘鎬�
- String[] apNameArray = btmTypeDTO.getApNameArray();
+ String[] apNameArray = btmTypeDTO.getApNameArray().split(",");
Set<String> dbApNameArray = Arrays.stream(dbBizType.apNameArray)
.collect(Collectors.toSet());
//杩囨护鍑洪渶瑕佺Щ闄ょ殑灞炴��
@@ -1479,7 +1482,7 @@
if(StringUtils.isBlank(bizType.getfName())){
continue;
}
- if(bizType.getfName().equals(parentBIzType.getName())){
+ if(bizType.getfName().equals(parentBIzType.getId())){
Tree tree = new Tree();
tree.setOid(bizType.getOid());
tree.setParentName(parentBIzType.getfName());
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsCodeGenSchemaServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsCodeGenSchemaServiceImpl.java
index 70e4ff8..2bbb45b 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsCodeGenSchemaServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsCodeGenSchemaServiceImpl.java
@@ -412,7 +412,7 @@
if(StringUtils.isBlank(idAttr.getName())){
idAttr.setName("缂栧彿");
}
- idAttr.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ idAttr.setAttributeDataType(VciFieldTypeEnum.VTString.name());
if(idAttr.getAttributeLength() == null || idAttr.getAttributeLength() <= 0){
idAttr.setAttributeLength(50);
}
@@ -426,7 +426,7 @@
if(StringUtils.isBlank(nameAttr.getName())){
nameAttr.setName("鍚嶇О");
}
- nameAttr.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ nameAttr.setAttributeDataType(VciFieldTypeEnum.VTString.name());
if(nameAttr.getAttributeLength() == null || nameAttr.getAttributeLength() <= 0){
nameAttr.setAttributeLength(150);
}
@@ -440,7 +440,7 @@
if(StringUtils.isBlank(descAttr.getName())){
descAttr.setName("鎻忚堪");
}
- descAttr.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ descAttr.setAttributeDataType(VciFieldTypeEnum.VTString.name());
if(descAttr.getAttributeLength() == null || descAttr.getAttributeLength() <= 0){
descAttr.setAttributeLength(250);
}
@@ -455,7 +455,7 @@
if(VciQueryWrapperForDO.LC_STATUS_FIELD.equalsIgnoreCase(attributeBO.getId())){
attributeBO.setName("鐘舵��");
}
- attributeBO.setVciAttrDataType(attr.getAttrDataType());
+ attributeBO.setVciAttrDataType(attr.getAttributeDataType());
attributeBO.setNullable(String.valueOf(attr.isNullableFlag()));
attributeBO.setAttrDataType(getAttrDateTypeFromVci(attributeBO.getVciAttrDataType()));
attributeBO.setJdbcType(getJdbcTypeFromVci(attributeBO.getVciAttrDataType()));
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java
index c9cf8d5..f69df86 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java
@@ -319,7 +319,7 @@
}
OsBtmTypeAttributeVO attributeVO = attributeVOMap.getOrDefault(attrId.toLowerCase(Locale.ROOT), null);
if(attributeVO!=null){
- String vtType = attributeVO.getAttrDataType();
+ String vtType = attributeVO.getAttributeDataType();
String attrType = "";
VciFieldTypeEnum fieldTypeEnum = VciFieldTypeEnum.forValue(vtType);
if(fieldTypeEnum == null) {
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java
index 44d39ff..8f49da8 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java
@@ -1,19 +1,33 @@
package com.vci.web.service.impl;
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.util.ZipUtil;
import com.alibaba.fastjson.JSONObject;
import com.vci.client.common.oq.OQTool;
import com.vci.common.qt.object.*;
+import com.vci.constant.FrameWorkLangCodeConstant;
import com.vci.corba.common.PLException;
import com.vci.corba.omd.atm.AttributeDef;
import com.vci.corba.omd.data.LinkObject;
+import com.vci.corba.omd.ltm.LinkType;
import com.vci.corba.omd.qtm.QTD;
import com.vci.corba.omd.qtm.QTInfo;
import com.vci.dto.QTInfoDTO;
import com.vci.omd.objects.OtherInfo;
+import com.vci.po.OsLinkTypePO;
+import com.vci.starter.poi.bo.ReadExcelOption;
+import com.vci.starter.poi.bo.WriteExcelData;
+import com.vci.starter.poi.bo.WriteExcelOption;
+import com.vci.starter.poi.constant.ExcelLangCodeConstant;
+import com.vci.starter.poi.util.ExcelUtil;
+import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.BaseResult;
+import com.vci.starter.web.pagemodel.Tree;
import com.vci.starter.web.util.*;
+import com.vci.web.other.LinkQTExportData;
import com.vci.web.service.*;
import com.vci.web.util.DateUtil;
+import com.vci.web.util.Func;
import com.vci.web.util.PlatformClientUtil;
import com.vci.web.util.WebUtil;
import org.apache.commons.lang3.StringUtils;
@@ -23,7 +37,13 @@
import org.dom4j.Element;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.*;
import java.util.*;
+import java.util.stream.Collectors;
/**
* 鏌ヨ妯℃澘鏈嶅姟
@@ -142,8 +162,8 @@
* @return 鏌ヨ缁撴灉
*/
@Override
- public BaseResult getCriteria(HashMap<String,Object> dataMap) throws PLException {
- QueryTemplate qt = getQT(dataMap);
+ public BaseResult getCriteria(QTInfoDTO qtInfoDTO) throws PLException {
+ QueryTemplate qt = getQT(qtInfoDTO);
String checkInfo = OQTool.checkQT(qt);
if(!checkInfo.equals("OK")){
throw new PLException("500", new String[]{checkInfo});
@@ -279,6 +299,71 @@
}
}
+ /**
+ * 閾炬帴绫诲瀷鏌ヨ妯℃澘鏍戞煡璇紝鐢ㄤ簬鐣岄潰鐨勫鍑哄姛鑳�
+ * @return 鏌ヨ缁撴灉
+ */
+ @Override
+ public BaseResult getLinkTree() throws PLException {
+ LinkType[] linkTypes= null;
+ QTInfo[] qts = null;
+ HashMap<String,Object> tree = new HashMap();
+ tree.put("text","涓氬姟绫诲瀷");
+ if (linkTypes == null) {
+ List<LinkType> es = new ArrayList<LinkType>();
+ linkTypes = platformClientUtil.getLinkTypeService().getLinkTypes();
+ for (LinkType lt : linkTypes) {
+ QTInfo[] qtWrappers = platformClientUtil.getQTDService().getObjTypeQTs(lt.name);
+ if (qtWrappers.length!=0) {
+ es.add(lt);
+ }
+ }
+ linkTypes = es.toArray(new LinkType[es.size()]);
+ //TODO:闇�淇娌℃湁鍏宠仈鏌ヨ妯℃澘涓氬姟绫诲瀷鍘绘帀
+ qts = platformClientUtil.getQTDService().getAllQTs();//鑾峰彇鎵�鏈夋煡璇㈡ā鏉�
+ }
+ List<HashMap<String,Object>> childList = new ArrayList<>();
+ //娣诲姞涓氬姟绫诲瀷鏍硅妭鐐�
+ for (LinkType plAction : linkTypes) {
+ HashMap<String,Object> childTree = new HashMap();
+ childTree.put("text", plAction.tag + "/" +plAction.name);
+ childTree.put("oid", plAction.oid);
+// tree.put("children", childTree);
+ addExportTreeNode(plAction, qts, childTree);
+ childList.add(childTree);
+ }
+ tree.put("children", childList);
+ return BaseResult.success(tree);
+ }
+
+ /**
+ * 鐢熸垚瀵煎嚭鏍戦�夋嫨浠ュ強瀵煎叆鏍戞樉绀�
+ * @param linkType
+ * @param qts
+ * @param tree
+ */
+ private void addExportTreeNode(LinkType linkType/*涓氬姟绫诲瀷*/,QTInfo[] qts/*鏌ヨ妯℃澘瀵硅薄*/,HashMap<String,Object> tree) {
+ List<String> childList = new ArrayList<>();
+ // 娣诲姞鏌ヨ妯℃澘瀵硅薄瀛愯妭鐐�
+ for (QTInfo qtItem : qts) {
+ //澶勭悊瀵煎叆鏃舵棤娉曡繘琛岀被鍨嬪垽鏂�
+ int splitLength = linkType.name.indexOf("銆�");
+ if(splitLength == -1){
+ splitLength = linkType.name.length();
+ }
+ if (qtItem.btmName.equals(linkType.name.substring(0,
+ splitLength))) {
+ childList.add(qtItem.qtName);
+ }
+ }
+ tree.put("children",childList);
+ }
+
+ /**
+ * 灏嗛珮绾ф潯浠舵暟鎹浆涓簒ml
+ * @param qtInfoDTO 鏌ヨ妯℃澘鍒楄〃浼犺緭瀵硅薄
+ * @return xml鏁版嵁
+ */
private String getSeniorXML(QTInfoDTO qtInfoDTO){
HashMap<String, Object> tree = qtInfoDTO.getTree();
if(tree.isEmpty()){
@@ -300,6 +385,12 @@
return xmlStr.append("</root>").toString();
}
+
+ /**
+ * 灏嗛珮绾ф潯浠舵暟鎹浆涓簒ml
+ * @param childs 楂樼骇鏉′欢鏁版嵁
+ * @return xml鏁版嵁
+ */
private String getSeniorChildXML(JSONObject childs){
StringBuilder xmlStr = new StringBuilder("<child>" + childs.get("connector"));
@@ -498,8 +589,6 @@
//楂樼骇鏌ヨ鏉′欢
}else if(qtInfoDTO.getLevelFlag() == 1){
ciMap = getCIMapForSeniorTree(qtInfoDTO);
-
-// OQTool.parseTreeToDoc(seniorTree);
}
return ciMap;
}
@@ -797,34 +886,34 @@
return qt;
}
- /**
- * 缁勮鏌ヨ妯℃澘
- * @return
- */
- public QueryTemplate getQT(HashMap<String,Object> dataMap){
- QueryTemplate qt = new QueryTemplate();
- qt.setType(QTConstants.TYPE_LINK);
- //TODO String qtId =
- qt.setLinkType((String) dataMap.get("linkTypeName"));
- qt.setDirection( (Boolean)dataMap.get("rdPositive") ? QTConstants.DIRECTION_POSITIVE : QTConstants.DIRECTION_OPPOSITE);
- qt.setBtmType((String) dataMap.get("btmName"));
- if("鎵�鏈夌被鍨�".equals(dataMap.get("combRelaType"))){
- qt.setBtmType("*");
- }
- qt.setVersion(getVersion((String) dataMap.get("versionValue")));
- qt.setQueryISLeaf((Boolean) dataMap.get("isQueryIsLeaf"));
- qt.setLevel(StringUtils.isBlank((CharSequence) dataMap.get("level")) ? 1 : Integer.valueOf(String.valueOf(dataMap.get("level"))));
- List<String> clauseList = new ArrayList<String>();
- //TODO 鏌ヨ鍒� 鏄剧ず鍒�
- clauseList.add("*");
- qt.setClauseList(clauseList);
+// /**
+// * 缁勮鏌ヨ妯℃澘
+// * @return
+// */
+// public QueryTemplate getQT(HashMap<String,Object> dataMap){
+// QueryTemplate qt = new QueryTemplate();
+// qt.setType(QTConstants.TYPE_LINK);
+// //TODO String qtId =
+// qt.setLinkType((String) dataMap.get("linkTypeName"));
+// qt.setDirection( (Boolean)dataMap.get("rdPositive") ? QTConstants.DIRECTION_POSITIVE : QTConstants.DIRECTION_OPPOSITE);
+// qt.setBtmType((String) dataMap.get("btmName"));
+// if("鎵�鏈夌被鍨�".equals(dataMap.get("combRelaType"))){
+// qt.setBtmType("*");
+// }
+// qt.setVersion(getVersion((String) dataMap.get("versionValue")));
+// qt.setQueryISLeaf((Boolean) dataMap.get("isQueryIsLeaf"));
+// qt.setLevel(StringUtils.isBlank((CharSequence) dataMap.get("level")) ? 1 : Integer.valueOf(String.valueOf(dataMap.get("level"))));
+// List<String> clauseList = new ArrayList<String>();
+// //TODO 鏌ヨ鍒� 鏄剧ず鍒�
+// clauseList.add("*");
+// qt.setClauseList(clauseList);
// Condition con = new Condition();
// qt.setCondition(con);
// HashMap<String, ConditionItem> ciMap = getCIMap();
// con.setCIMap(ciMap);
// con.setRootCIName(con.getRootCINameByCIMap(ciMap));
- return qt;
- }
+// return qt;
+// }
/**
@@ -868,4 +957,284 @@
throw new PLException("500", new String[]{"璇ユā鏉垮畾涔夊悕宸茬粡琚娇鐢�, 璇锋洿鎹�"});
}
}
+
+
+ /**
+ * 瀵煎嚭閾炬帴绫诲瀷鏌ヨ妯℃澘
+ * names 鏌ヨ妯℃澘鍚�
+ * @return
+ */
+ @Override
+ public void expLinkTemplate(List<String> names, HttpServletResponse response) throws PLException, IOException {
+ String defaultTempFolder = LocalFileUtil.getDefaultTempFolder();
+ String vciqtmfFileName = defaultTempFolder + File.separator + "LinkTemplateExp" + new Date().getTime() + ".vciqtf";
+ LinkQTExportData exportData = new LinkQTExportData();
+ for (String name : names) {
+ QTInfo qt = platformClientUtil.getQTDService().getQT(name);
+ exportData.getAllQTs().put(qt.qtName,qt);
+ LinkType linkType = platformClientUtil.getLinkTypeService().getLinkType(qt.btmName);
+ if(linkType != null && !linkType.oid.equals("")){
+ exportData.getSelectedBtmItems().put(linkType.name, linkType);
+ exportData.getSelectedBtmAttrs().put(linkType.name, linkType.attributes);
+ exportData.getAllQTDs().put(linkType.name, platformClientUtil.getQTDService().getLinkTypeQTDs(linkType.name));
+ }
+ }
+ ObjectOutputStream vciamfFileStream = null;
+ try {
+ File vciqtmfFile = new File(vciqtmfFileName);
+ vciamfFileStream = new ObjectOutputStream(new FileOutputStream(vciqtmfFile));
+ vciamfFileStream.writeObject(exportData);
+ }finally {
+ try {
+ if (vciamfFileStream != null) {
+ vciamfFileStream.flush();
+ vciamfFileStream.close();
+ }
+ } catch (Exception e) {
+ throw new PLException("500",new String[]{"瀵煎嚭娴佸叧闂紓甯革紒"});
+ }
+ }
+ ControllerUtil.writeFileToResponse(response,vciqtmfFileName);
+ FileUtil.del(defaultTempFolder + File.separator);
+ }
+ /**
+ * 瀵煎叆閾炬帴绫诲瀷鏌ヨ妯℃澘
+ * @param file 涓婁紶鐨勬枃浠�
+ * @return 瀵煎叆缁撴灉
+ */
+ @Override
+ public BaseResult impLinkTemplate(MultipartFile file) throws IOException, ClassNotFoundException {
+
+ if (file == null) {
+ return BaseResult.fail(FrameWorkLangCodeConstant.IMPORT_FAIL, new String[]{"鏃犲鍏ョ殑鏂囦欢"});
+ }
+ if (!file.getOriginalFilename().endsWith(".vciqtf")) {
+ throw new VciBaseException("浠呰兘涓婁紶.vciqtf鏍煎紡鏂囦欢锛岃閲嶆柊涓婁紶锛�");
+ }
+ ObjectInputStream obj = new ObjectInputStream(
+ file.getInputStream());
+ LinkQTExportData qtExportData = (LinkQTExportData) obj.readObject();
+ List<LinkType> ltsNew = new ArrayList<>();
+ List<QTInfo> qTWrapperNew = new ArrayList<>();
+ Map<String/* 绫诲瀷鍚嶇О */, QTD[]/* 鏌ヨ妯℃澘瀹氫箟 */> norepQTDs = new HashMap<String, QTD[]>();
+ addImportData(qtExportData, ltsNew, qTWrapperNew, norepQTDs);
+ QTInfo[] qts = qTWrapperNew
+ .toArray(new QTInfo[qTWrapperNew.size()]);
+ //澶勭悊鏍戠殑杩斿洖
+ HashMap<String,Object> tree = new HashMap();
+ tree.put("text","閾炬帴绫诲瀷");
+ List<HashMap<String,Object>> childList = new ArrayList<>();
+ //娣诲姞涓氬姟绫诲瀷鏍硅妭鐐�
+ for (LinkType plAction : ltsNew) {
+ HashMap<String,Object> childTree = new HashMap();
+ childTree.put("text", plAction.tag + "/" +plAction.name);
+ childTree.put("oid", plAction.oid);
+ addExportTreeNode(plAction, qts, childTree);
+ childList.add(childTree);
+ }
+ tree.put("children", childList);
+ return BaseResult.success(tree);
+ }
+
+ // 鏁版嵁杩囨护
+ private void addImportData(LinkQTExportData qtExportData, List<LinkType> ltsNew, List<QTInfo> qTWrapperNew,
+ Map<String/* 绫诲瀷鍚嶇О */, QTD[]/* 鏌ヨ妯℃澘瀹氫箟 */> norepQTDs) {
+ Map<String/* 绫诲瀷鍚嶇О */, QTD[]/* 鏌ヨ妯℃澘瀹氫箟 */> allQTDs = qtExportData
+ .getAllQTDs();
+ Map<String/* 绫诲瀷鍚嶇О */, LinkType/* 绫诲瀷瀵硅薄 */> selectedBtmItems = qtExportData
+ .getSelectedBtmItems();
+ Map<String/* 绫诲瀷鍚嶇О */, String[]/* 绫诲瀷鎵�灞炲睘鎬� */> selectedBtmAttrs = qtExportData
+ .getSelectedBtmAttrs();
+ Map<String/* 鏌ヨ妯℃澘鍚嶇О */, QTInfo/* 鏌ヨ妯℃澘瀵硅薄 */> allSelectedQTs = qtExportData
+ .getAllQTs();
+ if (allQTDs.size() == 0 || allQTDs == null
+ || selectedBtmItems.size() == 0 || selectedBtmItems == null
+ || selectedBtmAttrs.size() == 0 || selectedBtmAttrs == null
+ || allSelectedQTs.size() == 0 || allSelectedQTs == null) {
+ throw new VciBaseException("瀵煎叆鐨勬ā鏉挎暟鎹湁璇�!!!");
+ }
+ Set<Map.Entry<String, QTD[]>> pLActions = allQTDs.entrySet();
+ Set<Map.Entry<String, QTInfo>> pLQts = allSelectedQTs.entrySet();
+ Set<Map.Entry<String, LinkType>> LinkpLQts = selectedBtmItems.entrySet();
+ for (Map.Entry<String, QTD[]> entry : pLActions) {
+ String string = entry.getKey();
+ QTD[] qtds = entry.getValue();
+ getPLQtIsInDB(string, qtds, norepQTDs);
+ }
+ for (Map.Entry<String, LinkType> entry : LinkpLQts) {
+ String string = entry.getKey();
+ LinkType LinkType = entry.getValue();
+ getPLQtBtmItem(string, LinkType, ltsNew);
+ }
+ Map<String/*绫诲瀷鍚嶇О*/, QTD[]/*鏌ヨ妯℃澘瀹氫箟*/> newNorepQTDs = getnewNorepQTDs(norepQTDs,allSelectedQTs);
+ for (Map.Entry<String, QTInfo> entry : pLQts) {
+ String string = entry.getKey();
+ QTInfo qtWrapper = entry.getValue();
+ getPLQtWrapper(string, qtWrapper, ltsNew, qTWrapperNew, newNorepQTDs);
+ }
+
+ }
+
+ /**
+ * 鏌ヨ妯℃澘瀹氫箟鐨勫鐞�
+ * @param string
+ * @param qtds
+ */
+ private void getPLQtIsInDB(String string, QTD[] qtds, Map<String/* 绫诲瀷鍚嶇О */, QTD[]/* 鏌ヨ妯℃澘瀹氫箟 */> norepQTDs) {
+ // TODO Auto-generated method stub
+ try {
+ QTD[] qtds2 = platformClientUtil.getQTDService().getBizTypeQTDs(string);
+ QTD[] qtdsNewQtds = null;
+ List<QTD> es = new ArrayList<>();
+ for (QTD qtd : qtds) {
+ boolean isleat = true;
+ for (int i = 0; i < qtds2.length; i++) {
+ if (qtd.name.equals(qtds2[i].name)) {
+ isleat = false;
+ break;
+ }
+ }
+ if (isleat) {
+ es.add(qtd);
+ }
+ }
+ if (es.size() != 0) {
+ qtdsNewQtds = es.toArray(new QTD[es.size()]);
+ norepQTDs.put(string, qtdsNewQtds);
+ }
+ } catch (PLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ private void getPLQtBtmItem(String string, LinkType linkType, List<LinkType> ltsNew) {
+ // TODO Auto-generated method stub
+ try {
+ LinkType queryLinkType = platformClientUtil.getLinkTypeService().getLinkType(string);
+ LinkType[] btmArray = platformClientUtil.getLinkTypeService().getLinkTypes();
+ String[] strings = queryLinkType.attributes;
+ String[] stringsFrom = queryLinkType.btmItemsFrom;
+ String[] stringsTo = queryLinkType.btmItemsTo;
+ boolean b = true;
+ for (int i = 0; i < btmArray.length; i++) {
+ if (btmArray[i].name.equals(string)) {
+ b = false;
+ if (Arrays.equals(linkType.attributes, strings)
+ && Arrays
+ .equals(linkType.btmItemsFrom, stringsFrom)
+ && Arrays.equals(linkType.btmItemsTo, stringsTo)) {
+ btmArray[i].name += "銆愰摼鎺ョ被鍨嬪凡瀛樺湪銆�";
+ /* this.btmArray[i] = btmArray[i]; */
+ ltsNew.add(btmArray[i]);
+ } else {
+ btmArray[i].name += "銆愰摼鎺ョ被鍨嬪瓨鍦ㄤ絾灞炴�т笉涓�鑷淬��";
+ ltsNew.add(btmArray[i]);
+ }
+ }
+ }
+ if (b) {
+ linkType.name += "銆愰摼鎺ョ被鍨嬩笉瀛樺湪銆�";
+ ltsNew.add(linkType);
+ }
+ } catch (PLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ private void getPLQtWrapper(String string, QTInfo qtWrapper, List<LinkType> ltsNew, List<QTInfo> qTWrapperNew, Map<String/*绫诲瀷鍚嶇О*/, QTD[]/*鏌ヨ妯℃澘瀹氫箟*/> newNorepQTDs) {
+ try {
+ QTInfo[] qtws = platformClientUtil.getQTDService().getAllQTs();
+ boolean islaet = true;
+ for (int i = 0; i < qtws.length; i++) {
+ if (string.equals(qtws[i].qtName)) {
+ islaet = false;
+ for (LinkType lt : ltsNew) {
+ if (qtWrapper.btmName.equals(lt.name.substring(0,
+ lt.name.indexOf("銆�")))) {
+ if (lt.name.endsWith("銆愰摼鎺ョ被鍨嬪凡瀛樺湪銆�")) {
+ qtWrapper.qtName += "銆愭煡璇㈡ā鏉垮凡瀛樺湪锛屼笉瀵煎叆銆�";
+ qTWrapperNew.add(qtWrapper);
+ }else if(lt.name.endsWith("銆愰摼鎺ョ被鍨嬪瓨鍦ㄤ絾灞炴�т笉涓�鑷淬��")){
+ qtWrapper.qtName += "銆愭煡璇㈡ā鏉挎墍灞為摼鎺ョ被鍨嬪睘鎬т笉涓�鑷达紝涓嶅鍏ャ��";
+ qTWrapperNew.add(qtWrapper);
+ }else{
+ qtWrapper.qtName += "銆愭煡璇㈡ā鏉挎墍灞為摼鎺ョ被鍨嬩笉瀛樺湪锛屼笉瀵煎叆銆�";
+ qTWrapperNew.add(qtWrapper);
+ }
+ }
+ }
+ }
+ }
+ if (islaet) {
+ for (LinkType btmItem : ltsNew) {
+ if (qtWrapper.btmName.equals(btmItem.name.substring(0,
+ btmItem.name.indexOf("銆�")))) {
+ if (btmItem.name.endsWith("銆愰摼鎺ョ被鍨嬪凡瀛樺湪銆�")) {
+ //鍒ゆ柇鏌ヨ妯℃澘瀹氫箟鏄惁瀛樺湪锛岃繘琛屼繚瀛�
+ QTD[] qtds = newNorepQTDs.get(qtWrapper.btmName);
+ if(qtds != null){
+ for (QTD qtd : qtds) {
+ QTD qtdByName = platformClientUtil.getQTDService().getQTDByName(qtd.name);
+ if(!(qtdByName != null && StringUtils.isNotBlank(qtdByName.name))){
+ boolean b = platformClientUtil.getQTDService().addQTD(qtd);
+ if(!b){
+ qtWrapper.qtName += qtWrapper.qtName+"瀵煎叆鏌ヨ妯℃澘瀹氫箟銆�" + qtdByName.name + "銆戝け璐ワ紒";
+ }
+ }
+ }
+ newNorepQTDs.remove(qtWrapper.btmName);
+ }
+ boolean success = platformClientUtil.getQTDService().saveQT(qtWrapper);
+ if(!success){
+ qtWrapper.qtName += qtWrapper.qtName+"瀵煎叆澶辫触锛�";
+ }else {
+ qtWrapper.qtName += "銆愭煡璇㈡ā鏉垮鍏ユ垚鍔燂紒銆�";
+ }
+ qTWrapperNew.add(qtWrapper);
+ }else if(btmItem.name.endsWith("銆愰摼鎺ョ被鍨嬪瓨鍦ㄤ絾灞炴�т笉涓�鑷淬��")){
+ qtWrapper.qtName += "銆愭煡璇㈡ā鏉挎墍灞為摼鎺ョ被鍨嬪睘鎬т笉涓�鑷达紝涓嶅鍏ャ��";
+ qTWrapperNew.add(qtWrapper);
+ }else{
+ qtWrapper.qtName += "銆愭煡璇㈡ā鏉挎墍灞為摼鎺ョ被鍨嬩笉瀛樺湪锛屼笉瀵煎叆銆�";
+ qTWrapperNew.add(qtWrapper);
+ }
+ }
+ }
+ }
+ } catch (PLException e) {
+ e.printStackTrace();
+ }
+ }
+
+ //鏍规嵁閫夋嫨鐨勬煡璇㈡ā鏉胯繃婊ゆā鏉垮畾涔�
+ private Map<String, QTD[]> getnewNorepQTDs(Map<String, QTD[]> norepQTDs,
+ Map<String, QTInfo> allQTs) {
+ // TODO Auto-generated method stub
+ Map<String, QTD[]> map = new HashMap<String, QTD[]>();
+ Set<Map.Entry<String, QTInfo>> pLQts = allQTs.entrySet();
+ Set<Map.Entry<String, QTD[]>> pLActions = norepQTDs.entrySet();
+ for (Map.Entry<String, QTD[]> entrys : pLActions) {
+ for (Map.Entry<String, QTInfo> entry : pLQts) {
+ if(entry.getValue().btmName.equals(entrys.getKey())){
+ map.put(entrys.getKey(), entrys.getValue());
+ }
+ }
+ }
+ return map;
+ }
+ /**
+ * 鏌ヨ鏂规鍒犻櫎
+ * @param templateNames 鏌ヨ鏂规鍚�
+ * @return 鎿嶄綔缁撴灉
+ */
+ @Override
+ public BaseResult deleteLinkTemplate(List<String> templateNames) throws PLException {
+ boolean b = platformClientUtil.getQTDService().deleteQTs(templateNames.toArray(new String[0]));
+ if(!b){
+ return BaseResult.fail("鍒犻櫎澶辫触锛侊紒锛�");
+ }
+ return BaseResult.success();
+ }
}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java
index 6119c1e..b8724f9 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java
@@ -735,7 +735,7 @@
OsBtmTypeAttributeVO idAttrVO = new OsBtmTypeAttributeVO();
idAttrVO.setId("id");
idAttrVO.setName("缂栧彿");
- idAttrVO.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ idAttrVO.setAttributeDataType(VciFieldTypeEnum.VTString.name());
idAttrVO.setAttributeLength(50);
idAttrVO.setNullableFlag(true);
attributes.add(idAttrVO);
@@ -743,7 +743,7 @@
OsBtmTypeAttributeVO nameAttrVO = new OsBtmTypeAttributeVO();
nameAttrVO.setId("name");
nameAttrVO.setName("鍚嶇О");
- nameAttrVO.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ nameAttrVO.setAttributeDataType(VciFieldTypeEnum.VTString.name());
nameAttrVO.setAttributeLength(50);
nameAttrVO.setNullableFlag(true);
attributes.add(nameAttrVO);
@@ -751,7 +751,7 @@
OsBtmTypeAttributeVO descAttrVO = new OsBtmTypeAttributeVO();
descAttrVO.setId("description");
descAttrVO.setName("鎻忚堪");
- descAttrVO.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ descAttrVO.setAttributeDataType(VciFieldTypeEnum.VTString.name());
descAttrVO.setAttributeLength(150);
descAttrVO.setNullableFlag(true);
attributes.add(descAttrVO);
@@ -894,7 +894,7 @@
//鐒跺悗灞炴�х殑涓枃鍚嶇О
rowDataList.add(new WriteExcelData(rowIndex, 3, attributeVO.getName()));
//灞炴�х殑绫诲瀷
- rowDataList.add(new WriteExcelData(rowIndex, 4, VciFieldTypeEnum.getTextByValue(attributeVO.getAttrDataType())));
+ rowDataList.add(new WriteExcelData(rowIndex, 4, VciFieldTypeEnum.getTextByValue(attributeVO.getAttributeDataType())));
//鏄惁鍙互涓虹┖
rowDataList.add(new WriteExcelData(rowIndex, 5, attributeVO.isNullableFlag() ? "鏄�" : "鍚�"));
//灞炴�ч暱搴�
@@ -1064,7 +1064,7 @@
}
columnData.put(wordFieldProperties.getColumnId(),btmTypeAttributeVO.getId().toLowerCase());
columnData.put(wordFieldProperties.getColumnName(),btmTypeAttributeVO.getName());
- String attrDataType = btmTypeAttributeVO.getAttrDataType();
+ String attrDataType = btmTypeAttributeVO.getAttributeDataType();
String columnType = VciFieldTypeEnum.getTextByValue(attrDataType);
if(StringUtils.isBlank(columnType)){
columnType = "瀛楃涓�";
@@ -1194,15 +1194,8 @@
} else {
btmItem.verRuleName = 0;
}
- //鍖呭惈鐨勫睘鎬х殑鏁扮粍
- List<OsBtmTypeLinkAttributesDTO> attributesDTOList = btmTypeDTO.getAttributesDTOList();
- List<String> attrIdList = new ArrayList<String>();
- if (!CollectionUtils.isEmpty(attributesDTOList)) {
- for (OsBtmTypeLinkAttributesDTO attr : attributesDTOList) {
- attrIdList.add(attr.getId().toLowerCase());
- }
- }
- btmItem.apNameArray = attrIdList.toArray(new String[0]);
+ //鍖呭惈鐨勫睘鎬у悕绉�
+ btmItem.apNameArray = btmTypeDTO.getApNameArray().split(",");
}
/**
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/OsScanAnnotationTool.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/OsScanAnnotationTool.java
index a623bd4..64041e6 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/OsScanAnnotationTool.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/OsScanAnnotationTool.java
@@ -465,7 +465,7 @@
Collections.addAll(fields,btmTypeClass.getDeclaredFields());
List<OsBtmTypeLinkAttributesDTO> btmTypeLinkAttributesDTOList = new ArrayList<OsBtmTypeLinkAttributesDTO>();
scanAttributes(fields,attributeDTOMap,btmTypeLinkAttributesDTOList,processAttributeInfo);
- btmTypeDTO.setAttributesDTOList(btmTypeLinkAttributesDTOList);
+ btmTypeDTO.setApNameArray(btmTypeLinkAttributesDTOList.stream().map(OsBtmTypeLinkAttributesDTO::getId).collect(Collectors.joining(",")));
btmTypeDTOMap.put(btmTypeDTO.getId().toLowerCase().trim(),btmTypeDTO);
}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/RightControlUtil.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/RightControlUtil.java
index e011cd6..154b35b 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/RightControlUtil.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/util/RightControlUtil.java
@@ -153,7 +153,6 @@
return roleRightByUserName;
}
-
/**
* 鑾峰彇褰撳墠鐢ㄦ埛鍏锋湁鏉冮檺鐨勬墍鏈夋ā鍧�
* @param parentId, 鐖舵ā鍧梚d
@@ -231,7 +230,6 @@
public FunctionInfo[] getFunctionsByParentId(String parentId, String userName) {
-
FunctionInfo[] funcObjs = null;
try {
if(isDeveloper(userName)){
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/resources/menuConfig.json b/Source/plt-web/plt-web-parent/plt-web/src/main/resources/menuConfig.json
new file mode 100644
index 0000000..ff3052b
--- /dev/null
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/resources/menuConfig.json
@@ -0,0 +1,91 @@
+{
+ "hasChildren": true,
+ "children": [
+ {
+ "hasChildren": true,
+ "children": [],
+ "id": "systemManagmentNode",
+ "name": "绠$悊鍔熻兘妯″潡",
+ "parentId": "VCIBaseTreeNode",
+ "code": "systemManagmentNode",
+ "alias": "system",
+ "meta": {
+ "keepAlive": false
+ },
+ "sort": 2,
+ "soruce": "",
+ "path": "views/systemModel/mangeModel/index"
+ },
+ {
+ "hasChildren": true,
+ "children": [],
+ "id": "modelManagmentNode",
+ "name": "涓氬姟鍔熻兘妯″潡",
+ "parentId": "VCIBaseTreeNode",
+ "code": "modelManagmentNode",
+ "alias": "model",
+ "meta": {
+ "keepAlive": false
+ },
+ "sort": 3,
+ "soruce": "",
+ "path": "views/systemModel/businessModel/index"
+ },
+ {
+ "hasChildren": true,
+ "children": [],
+ "id": "operateNode",
+ "name": "鎿嶄綔绫诲瀷绠$悊",
+ "parentId": "VCIBaseTreeNode",
+ "code": "operateNode",
+ "alias": "operate",
+ "meta": {
+ "keepAlive": false
+ },
+ "sort": 4,
+ "soruce": "",
+ "path": "views/systemModel/operateType/index"
+ },
+ {
+ "hasChildren": false,
+ "children": [],
+ "id": "sysOptionNode",
+ "name": "绯荤粺閰嶇疆",
+ "parentId": "VCIBaseTreeNode",
+ "code": "sysOptionNode",
+ "alias": "sysOption",
+ "meta": {
+ "keepAlive": false
+ },
+ "sort": 5,
+ "soruce": "",
+ "path": "views/systemModel/systemConfig/index"
+ },
+ {
+ "hasChildren": false,
+ "children": [],
+ "id": "sysMonitorNode",
+ "name": "绯荤粺杩愯鐩戞帶",
+ "parentId": "VCIBaseTreeNode",
+ "code": "sysMonitorNode",
+ "alias": "sysMonitor",
+ "meta": {
+ "keepAlive": false
+ },
+ "sort": 5,
+ "soruce": "",
+ "path": "views/systemModel/systemMonitor/index"
+ }
+ ],
+ "id": "VCIBaseTreeNode",
+ "name": "绯荤粺妯″潡閰嶇疆",
+ "parentId": "systemManagmentNode",
+ "code": "rootNode",
+ "alias": "root",
+ "meta": {
+ "keepAlive": false
+ },
+ "sort": 0,
+ "soruce": "",
+ "path": ""
+}
\ No newline at end of file
--
Gitblit v1.9.3