From 949b3dfe9912f46c79ce7754e5faf61135ec4d6a Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期四, 24 十月 2024 10:47:51 +0800
Subject: [PATCH] 调整action弹窗

---
 /dev/null                                                                                      |  433 ------------------------------------------------
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue |    8 
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue               |   42 +--
 Source/plt-web/plt-web-ui/src/views/authority/ui/typeAction/index.vue                          |   15 +
 4 files changed, 30 insertions(+), 468 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/views/authority/ui/typeAction/index.vue b/Source/plt-web/plt-web-ui/src/views/authority/ui/typeAction/index.vue
index d5c3180..2306f80 100644
--- a/Source/plt-web/plt-web-ui/src/views/authority/ui/typeAction/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/authority/ui/typeAction/index.vue
@@ -33,7 +33,7 @@
             <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delHandler">绉婚櫎</el-button>
           </template>
         </avue-crud>
-        <action-dialog ref="actionDialog"></action-dialog>
+        <action-dialog ref="actionDialog" :is-muti="true" @updataAction="actionSaveHandler"></action-dialog>
       </basic-container>
     </el-main>
 
@@ -44,7 +44,7 @@
 import basicOption from "@/util/basic-option";
 import { delUIContextData, getBizTree, gridUIContextData} from "@/api/UI/uiDefine";
 import func from "@/util/func";
-import actionDialog from "@/views/modelingMenu/ui/Aciton/dialog"
+import actionDialog from "@/views/modelingMenu/ui/Aciton/components/dialog"
 
 export default {
   name: "index",
@@ -183,11 +183,20 @@
     //鍒涘缓
     addHandler() {
       if (this.nodeRow && this.nodeRow.oid && this.nodeRow.oid!='') {
-        this.$refs.actionDialog.openDialog(this.nodeRow);
+        this.$refs.actionDialog.openDialog();
       } else {
         this.$message.error('璇烽�夋嫨涓氬姟绫诲瀷');
       }
     },
+    // 淇濆瓨action
+    actionSaveHandler(val) {
+      addAction(val).then(res => {
+        if(res.data.code == 200){
+          this.$message.success(res.data.obj);
+
+        }
+      })
+    },
     delHandler() {
       if (this.selectList.length <= 0) {
         this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�');
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/dialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
similarity index 91%
rename from Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/dialog.vue
rename to Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
index 1f9f60c..c47afba 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/dialog.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/components/dialog.vue
@@ -62,27 +62,13 @@
 </template>
 
 <script>
-import {
-  getActionTree,
-  getActionTableData,
-  saveAction,
-  updateAction,
-  exportAction,
-  deleteAction,
-  getPLActionParam,
-  savePLActionParam,
-  updatePLActionParam,
-  deletePLActionParam,
-  saveActionCls,
-  updateActionCls,
-  deleteActionCls
-} from '@/api/UI/Action/api'
+import { getActionTree, getActionTableData} from '@/api/UI/Action/api'
 import func from "@/util/func";
 import basicOption from "@/util/basic-option";
-import {clonePageDef, cloneTabButton, clonetabPage} from "@/api/UI/uiDefine";
 
 export default {
   name: "index",
+  props:['isMuti'],
   data() {
     return {
       dialog: {
@@ -168,7 +154,7 @@
   created() {
   },
   methods: {
-    openDialog(data) {
+    openDialog() {
       this.dialog.showDialog = true;
       this.getTreeList()
       this.data = [];
@@ -176,21 +162,25 @@
     cancelDialog() {
       this.dialog.loading = false;
       this.dialog.showDialog = false;
+      this.$refs.tree.setCurrentKey(null);
     },
     submitDialog() {
       if (this.selectList.length==0) {
         this.$message.error('璇烽�夋嫨Action');
         return;
       }
-      const saveFunction = {
-        'pageDef': ''
-      };
-      saveFunction[this.type](params).then(res => {
-        if(res.data.code == 200){
-          this.$message.success(res.data.obj);
-          this.cancelDialog();
+      if(this.isMuti){
+        this.$emit('updataAction', this.selectList);
+      }else {
+        if(this.selectList.length>1){
+          this.$message.error('璇烽�夋嫨涓�鏉ction');
+          return;
         }
-      })
+        this.$emit('updataAction', this.selectList[0]);
+      }
+
+      this.cancelDialog();
+
     },
     // 宸︿晶鏍戣姹�
     getTreeList(status) {
@@ -207,7 +197,6 @@
     nodeClick(row) {
       this.treeNodeRow = row;
       this.getRightTableList(row);
-      this.bottomData = [];
     },
 
     // 澶撮儴鍒锋柊鎸夐挳
@@ -228,6 +217,7 @@
         const data = res.data.data;
         this.data = data;
         this.tableLoading = false;
+
       })
     },
 
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/components/action.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/components/action.vue
deleted file mode 100644
index 20b15b6..0000000
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/components/action.vue
+++ /dev/null
@@ -1,433 +0,0 @@
-<template>
-  <el-dialog
-    v-dialogDrag
-    :visible.sync="btnActionVisible"
-    append-to-body="true"
-    class="avue-dialog"
-    title="閫夋嫨Action"
-    width="70%"
-    @close="dialogClose">
-    <el-container>
-      <el-aside>
-        <basic-container>
-          <!-- 宸︿晶鏍� -->
-          <div>
-            <avue-tree
-              ref="tree"
-              v-model="treeForm"
-              :data="treeData"
-              :option="treeOption"
-              node-key="value"
-              @node-click="nodeClick">
-          <span slot-scope="{ node, data }" class="el-tree-node__label">
-           <span style="font-size: 15px">
-              <i class="el-icon-s-promotion"></i>
-                {{ (node || {}).label }}
-            </span>
-          </span>
-            </avue-tree>
-          </div>
-        </basic-container>
-      </el-aside>
-
-      <el-main>
-        <basic-container>
-          <div>
-            <avue-crud
-              ref="crud"
-              v-model="form"
-              :data="data"
-              :option="option"
-              :page.sync="page"
-              :table-loading="tableLoading"
-              @search-change="handleSearch"
-              @search-reset="handleReset"
-              @refresh-change="handleRefresh"
-              @selection-change="selectChangeHandler"
-              @row-click="rowClickHandler">
-              <template slot="plTypeType" slot-scope="{row}">
-                <el-tag :type="row.plTypeType === 'business' ? '' : 'success'">
-                  {{ row.plTypeType === 'business' ? '涓氬姟绫诲瀷' : '閾炬帴绫诲瀷' }}
-                </el-tag>
-              </template>
-
-            </avue-crud>
-          </div>
-        </basic-container>
-      </el-main>
-
-
-    </el-container>
-    <span slot="footer" class="dialog-footer">
-        <el-button @click="btnActionVisible = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="actionSaveHandler">纭� 瀹�</el-button>
-      </span>
-  </el-dialog>
-</template>
-
-<script>
-import {
-  getActionTree,
-  getActionTableData,
-} from '@/api/UI/Action/api'
-import func from "@/util/func";
-import basicOption from "@/util/basic-option";
-
-export default {
-    name: "index",
-  data() {
-    return {
-      btnActionVisible: false,
-      currenRow: {}, // action褰撳墠琛屼俊鎭�
-      topMethodsObj: {
-        select: true,
-        all: true,
-        page: false
-      },
-      transferTitle: ['鏈�夋嫨', '宸查�夋嫨'],
-      leftRoleData: [],
-      rightRoleData: [],
-      form: {},
-      bottomTableLoading: false,
-      bottomData: [],
-      bottomOption: {
-        ...basicOption,
-        addBtn: false,
-        calcHeight: -30,
-        selection: false,
-        refreshBtn: false,
-        // height:'auto',
-        column: [
-          {
-            label: '鍙傛暟鍚嶇О',
-            prop: 'name',
-            rules: [
-              {
-                required: true,
-                message: '璇疯緭鍏ュ弬鏁板悕绉�',
-                trigger: 'blur'
-              }
-            ]
-          },
-          {
-            label: '榛樿鍊�',
-            prop: 'defaultValue',
-          },
-          {
-            label: '鎻愮ず淇℃伅',
-            prop: 'description',
-            span: 24,
-            type: 'textarea',
-            rows: 4
-          },
-        ],
-      },
-      tableLoading: false,
-      lastIndex: null,
-      selectList: [],
-      data: [],
-      option: {
-        ...basicOption,
-        addBtn: false,
-        height: 500,
-        highlightCurrentRow: true,
-        menu:false,
-        column: [
-          {
-            label: '缂栧彿',
-            prop: 'plCode',
-            search: true,
-            rules: [
-              {
-                required: true,
-                message: '璇疯緭鍏ョ紪鍙�',
-                trigger: 'blur'
-              }
-            ]
-          },
-          {
-            label: '鍚嶇О',
-            prop: 'plName',
-            search: true,
-            rules: [
-              {
-                required: true,
-                message: '璇疯緭鍏ュ悕绉�',
-                trigger: 'blur'
-              }
-            ]
-          },
-          {
-            label: '绫昏矾寰�',
-            prop: 'plCSClass',
-            search: true,
-            overHidden: true,
-          },
-          {
-            label: '鍒嗙被',
-            prop: 'plActionCls',
-            type: 'tree',
-            hide: true,
-            props: {
-              label: 'name',
-              value: 'id',
-              children: 'childs'
-            },
-            rules: [
-              {
-                required: true,
-                message: '璇烽�夋嫨鍒嗙被',
-                trigger: 'blur'
-              }
-            ],
-            dicData: []
-          },
-          {
-            label: '閾炬帴鍦板潃',
-            prop: 'plBSUrl',
-            search: true,
-          },
-          {
-            label: '绫诲瀷',
-            prop: 'plTypeType',
-            search: true,
-            type: 'select',
-            dicData: [{
-              label: '涓氬姟绫诲瀷',
-              value: 'business'
-            }, {
-              label: '閾炬帴绫诲瀷',
-              value: 'link'
-            }],
-            rules: [
-              {
-                required: true,
-                message: '璇烽�夋嫨绫诲瀷',
-                trigger: 'blur'
-              }
-            ]
-          },
-          {
-            label: '鎻忚堪',
-            prop: 'plDesc',
-            search: true,
-            overHidden: true,
-          },
-        ]
-      },
-      treeNodeRow: {},
-      treeForm: {},
-      treeOption: {
-        addBtn: false,
-        defaultExpandedKeys: ['root'],
-        props: {
-          label: 'name',
-          value: 'id',
-          children: 'childs'
-        },
-        formOption: {
-          column: [
-            {
-              label: '鍒嗙被鍚嶇О',
-              prop: 'name',
-              rules: [
-                {
-                  required: true,
-                  message: '璇疯緭鍏ュ垎绫诲悕绉�',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '鍒嗙被搴忓彿',
-              prop: 'serialno',
-              rules: [
-                {
-                  required: true,
-                  message: '璇疯緭鍏ュ垎绫诲簭鍙�',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '鍒涘缓鑰�',
-              prop: 'creator',
-              readonly: true,
-            },
-            {
-              label: '鍒涘缓鏃堕棿',
-              prop: 'createTime',
-              readonly: true,
-            },
-            {
-              label: '鐖朵富绫�',
-              prop: 'pidName',
-              readonly: true,
-            },
-            {
-              label: '澶囨敞',
-              prop: 'description'
-            },
-          ],
-        }
-      },
-      treeData: [],
-    }
-  },
-  created() {
-    this.getTreeList();
-  },
-  methods: {
-    // 宸︿晶鏍戣姹�
-    getTreeList(status) {
-      const params = {
-        isExp: status ? true : false
-      }
-      getActionTree(params).then(res => {
-        const data = res.data.obj;
-        this.treeData = [data];
-        const selectTreeData = this.option.column.find(item => item.prop === 'plActionCls'); // 鎵惧埌action娣诲姞鍒嗙被鏍�
-        selectTreeData.dicData = [data];
-      })
-    },
-
-    // 宸︿晶鏍戣鐐瑰嚮
-    nodeClick(row) {
-      this.treeNodeRow = row;
-      this.getRightTableList(row);
-      this.bottomData = [];
-    },
-
-    // 澶撮儴鍒锋柊鎸夐挳
-    handleRefresh() {
-      if (func.isEmptyObject(this.treeNodeRow)) {
-        return;
-      }
-      this.getRightTableList(this.treeNodeRow);
-    },
-
-    // 鍙充晶琛ㄦ牸淇℃伅
-    getRightTableList(row) {
-      this.tableLoading = true;
-      const params = {
-        plactioncls: row.id
-      }
-      getActionTableData(params).then(res => {
-        const data = res.data.data;
-        this.data = data;
-        this.tableLoading = false;
-      })
-    },
-
-    // 琛ㄦ牸澶氶��
-    selectChangeHandler(row) {
-      this.selectList = row;
-    },
-
-    // 琛岀偣鍑�
-    rowClickHandler(row) {
-      this.currenRow = row;
-      func.rowClickHandler(
-        row,
-        this.$refs.crud,
-        this.lastIndex,
-        (newIndex) => {
-          this.lastIndex = newIndex;
-        },
-        () => {
-          this.selectList = [];
-        }
-      );
-    },
-
-    // 鎼滅储
-    handleSearch(params, done) {
-      if (func.isEmptyObject(this.treeNodeRow)) {
-        this.$message.error('璇峰厛鍦ㄥ乏渚ч�夋嫨鑺傜偣鍚庢搷浣�');
-        return done();
-      }
-      this.tableLoading = true;
-      const apiParams = {
-        plactioncls: this.treeNodeRow.id === 'root' ? '' : this.treeNodeRow.id,
-        ...params
-      }
-
-      getActionTableData(apiParams).then(res => {
-        const data = res.data.data;
-        this.data = data;
-        this.tableLoading = false;
-      })
-      done();
-    },
-
-    // 閲嶇疆鎼滅储鏉′欢
-    handleReset() {
-      if (func.isEmptyObject(this.treeNodeRow)) {
-        this.$message.error('璇峰厛鍦ㄥ乏渚ч�夋嫨鑺傜偣鍚庢搷浣�');
-        return;
-      }
-      this.getRightTableList(this.treeNodeRow);
-    },
-
-    // 淇濆瓨action
-    actionSaveHandler() {
-      if (this.selectList.length != 1) {
-        this.$message.error('鍙兘閫夋嫨涓�鏉℃暟鎹�');
-        return;
-      }
-      this.$emit('updataAction', this.selectList[0]);
-      this.dialogClose();
-    },
-
-    dialogClose(){
-      this.btnActionVisible = false;
-      this.data = [];
-      this.$refs.tree.setCurrentKey(null);
-    }
-
-  }
-}
-</script>
-
-<style lang="scss" scoped>
-::v-deep {
-  .el-scrollbar__wrap {
-    overflow: auto !important;
-  }
-
-  .headerCon {
-    .el-button {
-      width: 82px;
-    }
-  }
-}
-
-.headerCon {
-  display: flex;
-  flex-wrap: wrap;
-  margin-bottom: 5px;
-
-  .el-button + .el-button {
-    margin-left: 5px;
-  }
-
-  .el-button {
-    margin-top: 5px;
-  }
-}
-
-.headerCon > .el-button:nth-child(4) {
-  margin-left: 0;
-}
-
-.headerCon > .el-button:nth-child(7) {
-  margin-left: 0;
-}
-
-.smallBtn {
-  width: 82px;
-  text-align: center;
-  padding-left: 4.5px;
-}
-
-</style>
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 a3aab36..00148aa 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
@@ -209,10 +209,6 @@
 import basicOption from "@/util/basic-option";
 import func from "@/util/func";
 import {
-  getBtmDatasByPage,
-  getPortalVIDatasByPage,
-  getQTInfoDatasByPage,
-  getLinkDatasByPage,
   getPLPageDefinations,
   getTabButtons,
   addTapButton,
@@ -223,7 +219,7 @@
   joinBtn,
   exitBtn
 } from "@/api/UI/uiDefine";
-import actionDialog from '@/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/components/action';
+import actionDialog from '@/views/modelingMenu/ui/Aciton/components/dialog';
 import cloneDialog from "@/views/modelingMenu/ui/uiDefine/rightRegion/cloneDialog";
 
 export default {
@@ -1195,7 +1191,7 @@
 
     // 閫夋嫨action
     actionFoucus() {
-      this.$refs.actionDialog.btnActionVisible = true;
+      this.$refs.actionDialog.openDialog();
     },
 
     // 淇濆瓨action

--
Gitblit v1.9.3