From cd68e400dec06aa87d093aebc691c127ca816cb8 Mon Sep 17 00:00:00 2001
From: 田源 <tianyuan@vci-tech.com>
Date: 星期一, 30 十二月 2024 11:14:21 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue                                           |    2 
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue                |  227 +++++++++++++++++--------------
 Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue                                       |    2 
 Source/plt-web/plt-web-ui/src/styles/ui.scss                                                                  |   11 +
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java |   14 ++
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java      |   18 ++
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue                                          |    3 
 /dev/null                                                                                                     |   94 -------------
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue                              |    6 
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue                           |    8 
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/SmHMSysModConfigServiceI.java         |   11 +
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java        |    4 
 Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue                                   |    2 
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebIconController.java             |    2 
 14 files changed, 190 insertions(+), 214 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/config/ConfigCorbaReader.java b/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/config/ConfigCorbaReader.java
deleted file mode 100644
index 4c13af3..0000000
--- a/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/config/ConfigCorbaReader.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.vci.web.config;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-
-/**
- * corba閰嶇疆鏂囦欢璇诲彇
- * @author ludc
- * @date 2024/6/28 23:11
- */
-public class ConfigCorbaReader {
-
-    private static Properties properties;
-
-    static {
-        properties = new Properties();
-        try (InputStream input = ConfigCorbaReader.class.getClassLoader().getResourceAsStream("properties/corba.properties")) {
-            if (input == null) {
-                System.err.println("Unable to find corba.properties");
-            } else {
-                properties.load(input);
-            }
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-    }
-
-    public static String getConfigValue(String key) {
-        return properties.getProperty(key);
-    }
-
-}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java
index e3cb02f..b2a4fd5 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java
@@ -3,6 +3,7 @@
 import com.vci.constant.FrameWorkLangCodeConstant;
 import com.vci.corba.common.PLException;
 import com.vci.corba.framework.data.FuncOperationInfo;
+import com.vci.corba.framework.data.OnlinUserInfo;
 import com.vci.corba.framework.data.OperateInfo;
 import com.vci.dto.RoleInfoDTO;
 import com.vci.dto.RoleRightParamDTO;
@@ -524,4 +525,21 @@
         }
     }
 
+    /**
+     * 鑾峰彇褰撳墠鐢ㄦ埛鍦ㄧ嚎浜烘暟
+     * @return
+     */
+    @GetMapping("/getOnlinUsers")
+    public BaseResult<OnlinUserInfo> getOnlinUsers(){
+        try {
+            BaseResult baseResult = BaseResult.success();
+            List<OnlinUserInfo> onlineUserList = hmSysModConfigService.getOnlinUsers();
+            baseResult.setData(onlineUserList);
+            return baseResult;
+        } catch (Exception e) {
+            String errorMsg = "鑾峰彇褰撳墠鍦ㄧ嚎鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+            logger.error(errorMsg);
+            throw new VciBaseException(errorMsg);
+        }
+    }
 }
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebIconController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebIconController.java
index a700a6b..ee1d2fb 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebIconController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebIconController.java
@@ -4,6 +4,7 @@
 import com.vci.dto.PLIconDTO;
 import com.vci.pagemodel.PLIconGroupVO;
 import com.vci.pagemodel.PLIconVO;
+import com.vci.starter.web.annotation.controller.VciUnCheckRight;
 import com.vci.starter.web.annotation.log.VciBusinessLog;
 import com.vci.starter.web.exception.VciBaseException;
 import com.vci.starter.web.pagemodel.BaseQueryObject;
@@ -148,6 +149,7 @@
      * @param baseQueryObject 鏌ヨ瀵硅薄
      * @return 鍥炬爣淇℃伅
      */
+    @VciUnCheckRight
     @VciBusinessLog(operateName = "鑾峰彇鎵�鏈夊浘鏍�", description = "鑾峰彇鎵�鏈夊浘鏍�")
     @GetMapping("/getAllIcon")
     public BaseResult<PLIconGroupVO> getAllIcon(BaseQueryObject baseQueryObject){
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/data.s.json b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/data.s.json
deleted file mode 100644
index 57196ad..0000000
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/data.s.json
+++ /dev/null
@@ -1,94 +0,0 @@
-{
-    "code": 200,
-    "data": null,
-    "exceptionClassName": null,
-    "exceptionCode": null,
-    "exceptionObjs": null,
-    "finishTime": 1726130668800,
-    "msg": "",
-    "msgObjs": null,
-    "obj": null,
-    "requestTraceId": null,
-    "success": true,
-    "total": 0,
-    "traceId": "71bfe687-1112-47c3-9fe5-45ae9f7b7228",
-    "treeData": [
-        {
-            "attributes": {},
-            "checked": false,
-            "children": [
-                {
-                    "attributes": {},
-                    "checked": false,
-                    "children": [],
-                    "data": "user",
-                    "expanded": false,
-                    "href": null,
-                    "icon": null,
-                    "iconCls": null,
-                    "index": null,
-                    "leaf": false,
-                    "level": 0,
-                    "oid": "user",
-                    "parentBtmName": "user",
-                    "parentId": null,
-                    "parentName": null,
-                    "showCheckbox": false,
-                    "text": "鐢ㄦ埛"
-                },
-                {
-                    "attributes": {},
-                    "checked": false,
-                    "children": [],
-                    "data": "department",
-                    "expanded": false,
-                    "href": null,
-                    "icon": null,
-                    "iconCls": null,
-                    "index": null,
-                    "leaf": false,
-                    "level": 0,
-                    "oid": "department",
-                    "parentBtmName": "department",
-                    "parentId": null,
-                    "parentName": null,
-                    "showCheckbox": false,
-                    "text": "閮ㄩ棬"
-                },
-                {
-                    "attributes": {},
-                    "checked": false,
-                    "children": [],
-                    "data": "role",
-                    "expanded": false,
-                    "href": null,
-                    "icon": null,
-                    "iconCls": null,
-                    "index": null,
-                    "leaf": false,
-                    "level": 0,
-                    "oid": "role",
-                    "parentBtmName": "role",
-                    "parentId": null,
-                    "parentName": null,
-                    "showCheckbox": false,
-                    "text": "瑙掕壊"
-                }
-            ],
-            "data": "root",
-            "expanded": true,
-            "href": null,
-            "icon": null,
-            "iconCls": null,
-            "index": null,
-            "leaf": false,
-            "level": 0,
-            "oid": "root",
-            "parentBtmName": "root",
-            "parentId": null,
-            "parentName": null,
-            "showCheckbox": false,
-            "text": "浜哄憳缁勭粐"
-        }
-    ]
-}
\ No newline at end of file
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/SmHMSysModConfigServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/SmHMSysModConfigServiceI.java
index 2e33f82..fddc439 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/SmHMSysModConfigServiceI.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/SmHMSysModConfigServiceI.java
@@ -2,10 +2,7 @@
 
 import com.vci.common.exception.VciException;
 import com.vci.corba.common.PLException;
-import com.vci.corba.framework.data.AppConfigCategoryInfo;
-import com.vci.corba.framework.data.AppConfigDetailInfo;
-import com.vci.corba.framework.data.FuncOperationInfo;
-import com.vci.corba.framework.data.OperateInfo;
+import com.vci.corba.framework.data.*;
 import com.vci.pagemodel.ExpExcelConditionVO;
 import com.vci.pagemodel.MenuVO;
 import com.vci.starter.web.exception.VciBaseException;
@@ -164,4 +161,10 @@
      */
     long getOnlineUsersNum();
 
+    /**
+     * 鑾峰彇鍦ㄧ嚎浜哄憳
+     * @return
+     */
+    List<OnlinUserInfo> getOnlinUsers();
+
 }
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java
index 4d48b37..e9d22d8 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java
@@ -1613,4 +1613,18 @@
 
     }
 
+    /**
+     * 鑾峰彇鍦ㄧ嚎浜哄憳
+     *
+     * @return
+     */
+    @Override
+    public List<OnlinUserInfo> getOnlinUsers() {
+        try {
+            OnlinUserInfo[] onlinUserInfos = platformClientUtil.getFrameworkService().getOnlineUsers();
+            return Arrays.asList(onlinUserInfos);
+        } catch (PLException e) {
+            throw new VciBaseException(String.valueOf(e.code), e.messages);
+        }
+    }
 }
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java
index 9d6944e..87620b7 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java
@@ -849,9 +849,11 @@
     public DataGrid getTabByContextIdAndType(String contextId, int areaType) throws PLException {
         VciBaseUtil.alertNotNull(contextId,"涓婁笅鏂囦富閿�",areaType,"鍖哄煙绫诲瀷");
         PLTabPage[] plTabPages = platformClientUtil.getUIService().getTabPagesByContextIdAndType(contextId, (short) areaType);
+        List<PLTabPage> tabPageList = Arrays.stream(plTabPages).sorted(((o1, o2) -> Math.toIntExact(o1.plSeq - o2.plSeq)))
+                .collect(Collectors.toList());
         DataGrid dataGrid = new DataGrid();
         dataGrid.setTotal(plTabPages.length);
-        dataGrid.setData(Arrays.asList(plTabPages));
+        dataGrid.setData(Arrays.asList(tabPageList));
         return dataGrid;
     }
 
diff --git a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue
index 1b14178..a0596a1 100644
--- a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue
+++ b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/input-icon.vue
@@ -14,7 +14,7 @@
                @close="dialogClose">
       <div style="display: flex;justify-content: space-between;flex-wrap: wrap">
         <div class="tag-group">
-          <span class="tag-group__title">鍒嗙被</span>
+          <span class="tag-group__title" v-if="types.length>0">鍒嗙粍</span>
           <el-tag
             v-for="item in types"
             :key="item.key"
diff --git a/Source/plt-web/plt-web-ui/src/styles/ui.scss b/Source/plt-web/plt-web-ui/src/styles/ui.scss
index 19ebae7..5bed0d1 100644
--- a/Source/plt-web/plt-web-ui/src/styles/ui.scss
+++ b/Source/plt-web/plt-web-ui/src/styles/ui.scss
@@ -377,7 +377,7 @@
   margin-top: 0 !important;
 }
 .avue-dialog .el-dialog__body{
-  padding: 20px 20px 0px 20px; // 涓婂彸涓嬪乏 鍙栨秷琛ㄦ牸涓嬭竟璺濓紙浼氬嚭鐜版粴鍔ㄦ潯锛�
+  padding: 15px 15px 0px 15px; // 涓婂彸涓嬪乏 鍙栨秷琛ㄦ牸涓嬭竟璺濓紙浼氬嚭鐜版粴鍔ㄦ潯锛�
   margin-bottom: 10px !important;
 }
 .avue-dialog .el-dialog__body .avue-form{
@@ -390,6 +390,10 @@
 .el-dialog__footer{
   border-top: 1px solid #e9e7e7;
   padding: 10px 20px 10px;
+  z-index: 10000;
+}
+.avue-dialog__footer{
+  z-index: 10000;
 }
 
 /*
@@ -528,7 +532,7 @@
 }
 
 /*
-鏍�
+  鏍�
  */
 /***闅愯棌鏍戞噿鍔犺浇鏃惰妭鐐逛笂鐨刲oading锛岄槻姝㈣妭鐐规姈鍔�*****/
 .el-tree .el-tree-node__loading-icon{
@@ -540,6 +544,9 @@
   height: 14px !important;
   margin-right: 3px;
 }
+.el-tree-node__label [class*=" el-icon-"],.el-tree-node__label [class^=el-icon-]{
+  font-size: 14px;margin-top: 3px;
+}
 
 .el-select{
   width: 100%;
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
index ed80440..fa491cb 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
@@ -163,6 +163,7 @@
       this.dialog.loading = false;
       this.dialog.showDialog = false;
       this.$refs.tree.setCurrentKey(null);
+      this.$emit('cancelAction',null);
     },
     submitDialog() {
       if (this.selectList.length==0) {
@@ -179,8 +180,9 @@
         this.$emit('updataAction', this.selectList[0]);
       }
 
-      this.cancelDialog();
-
+      this.dialog.loading = false;
+      this.dialog.showDialog = false;
+      this.$refs.tree.setCurrentKey(null);
     },
     // 宸︿晶鏍戣姹�
     getTreeList(status) {
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
index 3586e44..fcf06d1 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
@@ -214,10 +214,11 @@
         highlightCurrentRow: true,
         rowKey: 'id',
         rowParentKey: 'pid',
-        menuWidth: 360,
+        menuWidth: 300,
         span: 24,
         labelWidth: 100,
         dialogWidth: '800',
+        align:'left',
         column: [{
           label: '鍒嗙被鍚嶇О',
           prop: 'name',
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
index 13c1cf5..17f529e 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
@@ -4,7 +4,7 @@
       <basic-container>
         <div style="display: flex;justify-content: space-between;flex-wrap: wrap">
           <div class="tag-group">
-            <span class="tag-group__title">鍒嗙粍</span>
+            <span class="tag-group__title" v-if="types.length>0">鍒嗙粍</span>
             <el-tag
               v-for="item in types"
               :key="item.key"
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
index 8f682cd..9151173 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue
@@ -16,12 +16,12 @@
         <el-button v-if="permissionChildrenList.UiPageLayoutAddBtn" icon="el-icon-plus" plain size="small" type="primary"
                    @click="addClickHandler">澧炲姞
         </el-button>
-        <el-button v-if="permissionChildrenList.UiPageLayoutDesignBtn" icon="el-icon-edit-outline" plain size="small" type="primary"
-                   @click="btnDesignClickHandler">鎸夐挳璁捐
-        </el-button>
       </template>
 
       <template slot="menu" slot-scope="scope">
+        <el-button v-if="permissionChildrenList.UiPageLayoutDesignBtn" icon="el-icon-edit-outline" size="small" type="text"
+                   @click="btnDesignClickHandler(scope.row)">鎸夐挳璁捐
+        </el-button>
         <el-button v-if="permissionChildrenList.UiPageLayoutEditBtn" icon="el-icon-edit" size="small" type="text" @click="editBtnClick(scope.row)">缂栬緫
         </el-button>
         <el-button v-if="permissionChildrenList.UiPageLayoutDelBtn" icon="el-icon-delete" size="small" type="text" @click="rowDeleteHandler(scope.row)">鍒犻櫎
@@ -109,28 +109,28 @@
       append-to-body="true"
       class="avue-dialog"
       title="閰嶇疆鎸夐挳"
-      width="75%"
-      @close="dialogClose">
+      width="1200px"
+      @close="$refs.form.clearValidate();disabledBtn=true;">
       <el-container v-loading="dialogLoading">
-        <el-header style="height: 40px !important;">
+        <el-header style="height: 40px !important;padding-left: 5px;">
           <div style="display: flex">
-            <el-button :disabled="!disabledBtn" plain size="mini" type="primary" @click="addClickBtnHandler">娣诲姞
+            <el-button v-show="disabledBtn" :disabled="!disabledBtn" plain size="mini" type="primary" @click="addClickBtnHandler">娣诲姞
             </el-button>
-            <el-button :disabled="!disabledBtn" plain size="mini" type="primary" @click="editClickBtnHandler">淇敼
+            <el-button v-show="disabledBtn" :disabled="!disabledBtn" plain size="mini" type="primary" @click="editClickBtnHandler">淇敼
             </el-button>
-            <el-button :disabled="!disabledBtn" plain size="mini" type="danger" @click="delClickBtnHandler">鍒犻櫎
+            <el-button v-show="disabledBtn" :disabled="!disabledBtn" plain size="mini" type="danger" @click="delClickBtnHandler">鍒犻櫎
             </el-button>
-            <el-button :disabled="disabledBtn" plain size="mini" type="primary" @click="saveClickBtnHandler">淇濆瓨
+            <el-button v-show="!disabledBtn" :disabled="disabledBtn" plain size="mini" icon="el-icon-check" type="success" @click="saveClickBtnHandler">淇濆瓨
             </el-button>
-            <el-button :disabled="disabledBtn" plain size="mini" type="primary" @click="escClickBtnHandler">鍙栨秷
+            <el-button v-show="!disabledBtn" :disabled="disabledBtn" plain size="mini" icon="el-icon-close" type="danger" @click="escClickBtnHandler">鍙栨秷
             </el-button>
-            <el-button plain size="mini" type="primary" @click="changeBottomBtnHandler">璋冩暣涓轰笅绾ф寜閽�</el-button>
-            <el-button plain size="mini" type="primary" @click="changeTopBtnHandler">璋冩暣涓轰笂绾ф寜閽�</el-button>
-            <el-button plain size="mini" type="primary" @click="cloneClickBtnHandler">澶嶅埗鍒板叾浠栫粍浠�</el-button>
+            <el-button v-show="disabledBtn"  plain size="mini" type="primary" @click="changeBottomBtnHandler">璋冩暣涓轰笅绾ф寜閽�</el-button>
+            <el-button v-show="disabledBtn"  plain size="mini" type="primary" @click="changeTopBtnHandler">璋冩暣涓轰笂绾ф寜閽�</el-button>
+            <el-button v-show="disabledBtn"  plain size="mini" type="primary" @click="cloneClickBtnHandler">澶嶅埗鍒板叾浠栫粍浠�</el-button>
           </div>
         </el-header>
         <el-container>
-          <el-aside width="20%">
+          <el-aside width="25%">
             <basic-container>
               <div style="height:650px;">
                 <avue-tree
@@ -141,9 +141,10 @@
                   node-key="value"
                   @node-click="nodeTreeClick">
                   <span slot-scope="{ node, data }" class="el-tree-node__label">
-                    <span style="font-size: 14px">
-                    <i class="el-icon-s-promotion"></i>
-                      {{ (node || {}).label }}
+                    <span style="display: flex">
+                      <i v-if="data.oId=='parentNode'" class="iconShow el-icon-s-home"></i>
+                      <icon-show v-else :name="data.iconPath"></icon-show>
+                        {{ (node || {}).label }}
                     </span>
                   </span>
                 </avue-tree>
@@ -154,30 +155,29 @@
           <el-main>
             <basic-container>
               <el-divider content-position="left">鍩虹淇℃伅</el-divider>
-              <el-form ref="form" :model="basicForm" :rules="rules" label-width="90px" size="small"
+              <el-form ref="form" :model="basicForm" :rules="rules" label-width="100px" size="small"
                        style="margin-top: 20px">
                 <el-row>
-                  <el-form-item :inline-message='true' label="缂栧彿锛�" prop="seq">
-                    <el-input-number v-model="basicForm.seq" :disabled="disabledBtn" :max="9999" :min="1"
-                                     controls-position="right"></el-input-number>
-                  </el-form-item>
+                  <el-col :span="12">
+                    <el-form-item :inline-message='true' label="缂栧彿锛�" prop="seq">
+                      <el-input-number v-model="basicForm.seq" :disabled="disabledBtn" :max="9999" :min="1"
+                                       controls-position="right"></el-input-number>
+                    </el-form-item>
+                  </el-col>
 
-                  <el-form-item :inline-message='true' label="鍚嶇О锛�" prop="label">
-                    <el-col :span="14">
-                      <el-input v-model="basicForm.label" :readonly="disabledBtn"></el-input>
-                    </el-col>
-                  </el-form-item>
+                  <el-col :span="12">
+                    <el-form-item :inline-message='true' label="鍚嶇О锛�" prop="label">
+                      <el-input v-model="basicForm.label" :disabled="disabledBtn"></el-input>
+                    </el-form-item>
+                  </el-col>
 
-                  <el-form-item label="Action锛�" prop="Action">
-                    <el-col :span="14">
-                      <div style="display: flex">
-                        <el-input v-model="basicForm.actionName" :readonly="disabledBtn"></el-input>
-                        <el-button :disabled="disabledBtn" size="mini" style="margin-left: 10px" type="success"
-                                   @click="actionFoucus">閫夋嫨
-                        </el-button>
-                      </div>
-                    </el-col>
-                  </el-form-item>
+                  <el-col :span="12">
+                    <el-form-item label="Action锛�" prop="actionName">
+                      <el-input v-model="basicForm.actionName" :disabled="disabledBtn" :clearable="true" @focus="actionFoucus" @clear="clearActionValue">
+                        <i slot="suffix" class="el-input__icon el-icon-search" style="cursor: pointer" @click="actionFoucus"></i>
+                      </el-input>
+                    </el-form-item>
+                  </el-col>
 
                   <el-col :span="12">
                     <el-form-item label="鏄惁鎺堟潈锛�" prop="authorization">
@@ -185,7 +185,8 @@
                       <el-radio v-model="basicForm.authorization" :disabled="disabledBtn" label="1">鍚�</el-radio>
                     </el-form-item>
                   </el-col>
-
+                  <el-col :span="24">
+                  </el-col>
                   <el-col :span="12">
                     <el-form-item label="鏄惁鏄剧ず锛�" prop="show">
                       <el-radio v-model="basicForm.show" :disabled="disabledBtn" label="0">鏄�</el-radio>
@@ -193,18 +194,22 @@
                     </el-form-item>
                   </el-col>
 
-                  <el-col :span="12">
+                  <el-col :span="12" v-show="basicForm.show=='0'">
                     <el-form-item label="鏄剧ず鏂瑰紡锛�" prop="showType">
                       <el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="text">鏂囧瓧</el-radio>
                       <el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="image">鍥炬爣</el-radio>
-                      <el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="textandimage">鏂囧瓧鍜屽浘鏍�
-                      </el-radio>
+                      <el-radio v-model="basicForm.displayMode" :disabled="disabledBtn" label="textandimage">鏂囧瓧鍜屽浘鏍�</el-radio>
+                    </el-form-item>
+                  </el-col>
+                  <el-col :span="24" v-show="basicForm.show=='0' && (basicForm.displayMode=='image'||basicForm.displayMode=='textandimage')">
+                    <el-form-item label="鍥炬爣锛�" prop="iconPath">
+                      <input-icon v-model="basicForm.iconPath" :disabled="disabledBtn"></input-icon>
                     </el-form-item>
                   </el-col>
 
-                  <el-col :span="12">
+                  <el-col :span="24">
                     <el-form-item label="鎻愮ず淇℃伅锛�" prop="desc">
-                      <el-input v-model="basicForm.desc" :readonly="disabledBtn" type="textarea"></el-input>
+                      <el-input v-model="basicForm.desc" :disabled="disabledBtn" type="textarea"></el-input>
                     </el-form-item>
                   </el-col>
 
@@ -241,7 +246,7 @@
         </el-container>
       </el-container>
     </el-dialog>
-    <action-dialog ref="actionDialog" @updataAction="actionSaveHandler"></action-dialog>
+    <action-dialog ref="actionDialog" @cancelAction="actionCancelHandler" @updataAction="actionSaveHandler"></action-dialog>
     <clone-dialog ref="cloneDialog" :fromOid="fromOid" :sourceOId="sourceOId" paramsType="tab"
                   type="pageDef"></clone-dialog>
     <clone-dialog ref="cloneBtnDialog" :fromOid="formBtnOid" :sourceOId="sourceBtnOid" paramsType="pageDef"
@@ -358,10 +363,13 @@
         editBtn: false,
         delBtn: false,
         refreshBtn: false,
+        dialogWidth:'600',
+        menuWidth:'150',
         column: [
           {
             label: '鍚嶇О',
             prop: 'name',
+            width:180,
             span: 24,
             rules: [
               {
@@ -374,6 +382,7 @@
           {
             label: '鍊�',
             prop: 'value',
+            type:'textarea',
             span: 24,
             rules: [
               {
@@ -391,6 +400,9 @@
         ],
         label: [
           {required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur'},
+        ],
+        actionName: [
+          {required: true, message: '璇烽�夋嫨Action', trigger: 'blur'},
         ],
       },
       // 鎸夐挳璁捐 鍩虹淇℃伅
@@ -422,10 +434,12 @@
         calcHeight: -30,
         editBtn: false,
         delBtn: false,
+        menuWidth:300,
         column: [
           {
             label: '鍚嶇О',
             prop: 'name',
+            width: 220,
             labelWidth: 110,
             rules: [
               {
@@ -438,6 +452,7 @@
           {
             label: '缂栧彿',
             prop: 'seq',
+            width:100,
             labelWidth: 110,
             hide: false,
             rules: [
@@ -449,13 +464,13 @@
             ],
           },
           {
-            label: '',
+            label: 'UI瑙f瀽绫诲瀷',
             prop: 'uiParser',
             hide: true,
             labelWidth: 110,
           },
           {
-            label: '',
+            label: '鎵╁睍灞炴��',
             prop: 'extAttr',
             hide: true,
             labelWidth: 110,
@@ -911,7 +926,7 @@
           this.lastIndex = newIndex;
         },
         () => {
-          this.selectList = [];
+          this.selectList = [row];
         }
       );
     },
@@ -949,7 +964,6 @@
           };
         });
       }
-      console.log('row',row);
       this.searchTargerChangeFlag = false;
       this.$refs.crud.rowEdit(row);
     },
@@ -1026,24 +1040,6 @@
 
     // 瀵硅瘽妗嗚〃鏍兼坊鍔�
     formDataAddClickHandler() {
-      // if (!this.form.eventKey) {
-      //   this.$message.error('璇烽�夋嫨EventKey');
-      //   return;
-      // }
-      //
-      // if (!this.form.eventValue) {
-      //   this.$message.error('璇疯緭鍏ventValue');
-      //   return;
-      // }
-      //
-      // if (this.eventData.length >= 1) {
-      //   const eventValueStatus = this.eventData.some(item => item.eventValue === this.form.eventValue);
-      //
-      //   if (eventValueStatus) {
-      //     this.$message.error('宸插瓨鍦ㄧ浉鍚岀殑 EventValue锛屼笉鑳介噸澶嶆坊鍔�');
-      //     return;
-      //   }
-      // }
       const obj = {
         index: this.eventData.length,
         eventKey: this.form.eventKey || 'SelectionEvent',
@@ -1135,34 +1131,34 @@
     },
 
     // 鎸夐挳璁捐
-    btnDesignClickHandler() {
-      if (this.selectList.length != 1) {
+    btnDesignClickHandler(row) {
+      /*if (this.selectList.length != 1) {
         this.$message.error('璇烽�夋嫨涓�鏉℃暟鎹�');
         return;
-      }
+      }*/
       this.btnDesignVisible = true;
-      this.formBtnOid = this.selectList[0].id;
-      this.getTabBtnTree();
+      this.formBtnOid = row.id;
+      this.getTabBtnTree(row);
     },
 
     // 宸︿晶鏍戣姹�
-    getTabBtnTree() {
+    getTabBtnTree(row) {
       const params = {
-        pageDefinationOid: this.selectList[0].id
+        pageDefinationOid: row && row.id ? row.id : this.selectList[0].id
       }
       this.treeLoading = true;
       getTabButtons(params).then(res => {
         if (res.data.code === 200) {
           const data = res.data.data;
           this.treeData = [{
-            label: this.selectList[0].name,
+            label: row && row.id ? row.name : this.selectList[0].name,
             oId: 'parentNode',
             disabled: true,
             children: data
           }];
           this.treeLoading = false;
         } else {
-          this.$message.error('璇锋鏌ユ帶鍒跺彴閿欒');
+          this.$message.error(res.data.msg);
         }
       })
     },
@@ -1176,6 +1172,7 @@
         value: value
       })) : [];
       this.disabledBtn = true;
+      this.$refs.form.clearValidate()
     },
 
     // 鎸夐挳璁捐鍙傛暟淇℃伅鍒犻櫎
@@ -1253,37 +1250,47 @@
 
     // 鎸夐挳璁捐淇濆瓨
     saveClickBtnHandler() {
-      this.dialogLoading = true;
-      const saveFunction = this.saveType === 'add' ? addTapButton : updateTapButton;
-      const bottomParams = {};
-      if (this.paramsData.length > 0) {
-        this.paramsData.forEach(item => {
-          bottomParams[item.name] = item.value
-        })
+      if (this.basicForm.show == '0' && (this.basicForm.displayMode == 'image' || this.basicForm.displayMode == 'textandimage') && this.basicForm.iconPath == '') {
+        this.$message.error('璇烽�夋嫨鍥炬爣');
+        return;
       }
+      this.$refs.form.validate((valid, done) => {
+        if (valid) {
+          this.dialogLoading = true;
+          const saveFunction = this.saveType === 'add' ? addTapButton : updateTapButton;
+          const bottomParams = {};
+          if (this.paramsData.length > 0) {
+            this.paramsData.forEach(item => {
+              bottomParams[item.name] = item.value
+            })
+          }
+          const params = this.saveType === 'add' ? {
+            ...this.basicForm,
+            parentId: this.nodeTreeRow.oId === 'parentNode' ? '' : this.nodeTreeRow.parentId,
+            buttonParams: bottomParams,
+            tableOId: this.selectList[0].id
+          } : {
+            ...this.basicForm,
+            buttonParams: bottomParams
+          }
 
-      const params = this.saveType === 'add' ? {
-        ...this.basicForm,
-        parentId: this.nodeTreeRow.oId === 'parentNode' ? '' : this.nodeTreeRow.parentId,
-        buttonParams: bottomParams,
-        tableOId: this.selectList[0].id
-      } : {
-        ...this.basicForm,
-        buttonParams: bottomParams
-      }
-
-      saveFunction(params).then(res => {
-        if (res.data.code === 200) {
-          this.$message.success(res.data.obj);
-          this.disabledBtn = true;
-          this.getTabBtnTree();
-          this.basicForm = {};
-          this.paramsData = [];
-          this.dialogLoading = false;
+          saveFunction(params).then(res => {
+            if (res.data.code === 200) {
+              this.$message.success(res.data.obj);
+              this.disabledBtn = true;
+              this.getTabBtnTree();
+              this.basicForm = {};
+              this.paramsData = [];
+              this.dialogLoading = false;
+            }
+          }).catch(err => {
+            this.dialogLoading = false;
+          })
+        } else {
+          return false;
         }
-      }).catch(err => {
-        this.dialogLoading = false;
-      })
+        done();
+      });
     },
 
     // 鎸夐挳璁捐鍒犻櫎
@@ -1342,8 +1349,20 @@
     actionSaveHandler(val) {
       this.$set(this.basicForm, 'actionName', val.plName);
       this.$set(this.basicForm, 'actionOId', val.plOId);
+      this.$refs.form.clearValidate('Action')
+    },
+    // action閫夋嫨寮圭獥鐩存帴鍏抽棴
+    actionCancelHandler() {
+      if(this.basicForm.actionOId){
+        this.$refs.form.clearValidate('Action')
+      }
     },
 
+    //娓呴櫎action
+    clearActionValue(){
+      this.$set(this.basicForm, 'actionName', '');
+      this.$set(this.basicForm, 'actionOId', '');
+    },
     // 鎵撳紑鍏嬮殕瀵硅瘽妗�
     rowCloneHandler(row) {
       this.fromOid = this.sourceData.plOId;
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
index 1429d44..c2c0e08 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/plShow.vue
@@ -54,7 +54,8 @@
           </el-col>
           <el-col :span="12">
             <el-form-item label="搴忓彿锛�" prop="plSeq">
-              <el-input v-model="form.plSeq"></el-input>
+              <el-input-number  v-model="form.plSeq" :max="9999" :min="1"
+                                controls-position="right"></el-input-number >
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -269,7 +270,7 @@
           this.lastIndex = newIndex;
         },
         () => {
-          this.selectList = [];
+          this.selectList = [row];
         }
       );
     },
@@ -324,7 +325,7 @@
     },
     // 缂栬緫鎸夐挳
     rowEditBtnClick(row) {
-      this.form=row;
+      this.form=JSON.parse(JSON.stringify(row));
       this.dialogType = 'edit';
       this.dialogVisible = true;
     },
@@ -388,6 +389,7 @@
         } else {
           return false;
         }
+        done();
       });
     },
     rowCloneHandler(row) {
diff --git a/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue b/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
index e8040ab..ac1d0e7 100644
--- a/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
@@ -495,7 +495,7 @@
           this.lastIndex = newIndex;
         },
         () => {
-          this.methodsList = [];
+          this.methodsList = [row];
         }
       );
     },

--
Gitblit v1.9.3