From 87c0c5e680d467f2e618c6aa3cd78b7e7faa747d Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期五, 14 二月 2025 15:00:08 +0800
Subject: [PATCH] 设备结构树: 1、实现文档批量删除功能 2、实现文档列表的排序以及筛选功能 3、实现树节点车间与设备的权限配置功能 系统管理:删除DNC部门管理页面以及在菜单管理中删除对应菜单

---
 /dev/null                                                                            |  197 ----------------------------
 src/views/dnc/common/DocumentBatchDeleteModal.vue                                    |   17 +
 src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue              |    4 
 src/views/dnc/base/modules/DeviceStructure/DeviceStructureMainTop.vue                |   17 ++
 src/views/dnc/base/modules/DeviceStructure/Document/HasReceivedDocumentTableList.vue |   61 ++++++++
 src/views/dnc/base/modules/DeviceStructure/Document/HasSentDocumentTableList.vue     |   71 +++++++++
 6 files changed, 156 insertions(+), 211 deletions(-)

diff --git a/src/views/dnc/base/modules/DeviceStructure/DeviceStructureMainTop.vue b/src/views/dnc/base/modules/DeviceStructure/DeviceStructureMainTop.vue
index b56ba33..debcfd5 100644
--- a/src/views/dnc/base/modules/DeviceStructure/DeviceStructureMainTop.vue
+++ b/src/views/dnc/base/modules/DeviceStructure/DeviceStructureMainTop.vue
@@ -13,6 +13,9 @@
     </a-tab-pane>
 
     <TableContextMenu :tableRowInfo="currentRightClickedTableRowInfo" ref="tableContextMenuRef"/>
+
+    <DocumentBatchDeleteModal :currentDocumentInfo="currentRightClickedTableRowInfo" :size="tableContainerSize"
+                              @reloadDocumentListData="reloadDocumentListData" ref="documentBatchDeleteModalRef"/>
   </a-tabs>
 </template>
 
@@ -21,10 +24,11 @@
   import TableContextMenu from '../../../common/TableContextMenu'
   import HasSentDocumentTableList from './Document/HasSentDocumentTableList'
   import HasReceivedDocumentTableList from './Document/HasReceivedDocumentTableList'
+  import DocumentBatchDeleteModal from '../../../common/DocumentBatchDeleteModal'
 
   export default {
     name: 'DeviceStructureMainTop',
-    components: { HasReceivedDocumentTableList, HasSentDocumentTableList, TableContextMenu },
+    components: { DocumentBatchDeleteModal, HasReceivedDocumentTableList, HasSentDocumentTableList, TableContextMenu },
     props: {
       currentTreeNodeInfo: {
         type: Object
@@ -49,7 +53,6 @@
        */
       handleTableContextMenuOpen(record) {
         this.currentRightClickedTableRowInfo = Object.assign({}, record)
-        console.log('currentRightClickedTableRowInfo', this.currentRightClickedTableRowInfo)
         this.$refs.tableContextMenuRef.currentMenuLevel = record.param
         this.$refs.tableContextMenuRef.menuStyle.top = event.clientY + 'px'
         this.$refs.tableContextMenuRef.menuStyle.left = event.clientX + 'px'
@@ -162,6 +165,16 @@
       },
 
       /**
+       * 鐐瑰嚮鎵归噺鍒犻櫎鍚庡嚭鐜板脊绐�
+       * @param modalTitle 寮圭獥鏍囬
+       */
+      handleBatchRemove(modalTitle) {
+        if (!this.$refs.documentBatchDeleteModalRef) return
+        this.$refs.documentBatchDeleteModalRef.title = modalTitle
+        this.$refs.documentBatchDeleteModalRef.visible = true
+      },
+
+      /**
        * 鍑哄簱褰撳墠鍙抽敭閫変腑鏂囨。
        * @param menuLabel
        */
diff --git a/src/views/dnc/base/modules/DeviceStructure/Document/HasReceivedDocumentTableList.vue b/src/views/dnc/base/modules/DeviceStructure/Document/HasReceivedDocumentTableList.vue
index b4d946f..ee053f4 100644
--- a/src/views/dnc/base/modules/DeviceStructure/Document/HasReceivedDocumentTableList.vue
+++ b/src/views/dnc/base/modules/DeviceStructure/Document/HasReceivedDocumentTableList.vue
@@ -40,12 +40,44 @@
               return parseInt(index) + 1
             }
           },
-          { title: '鏂囦欢鍚嶇О', dataIndex: 'docName', align: 'center' },
+          {
+            title: '鏂囦欢鍚嶇О',
+            dataIndex: 'docName',
+            key: 'docName',
+            align: 'center',
+            width: 300,
+            sorter: true
+          },
           { title: '浠g爜鐗堟湰', dataIndex: 'docAlias', align: 'center' },
-          { title: '鍑哄簱鐘舵��', dataIndex: 'pullStatus_dictText', align: 'center' },
-          { title: '鐘�  鎬�', dataIndex: 'docStatus_dictText', align: 'center' },
+          {
+            title: '鍑哄簱鐘舵��',
+            dataIndex: 'pullStatus_dictText',
+            key: 'pullStatus',
+            align: 'center',
+            filters: [
+              { text: '鏈嚭搴�', value: 1 },
+              { text: '宸插嚭搴�', value: 2 }
+            ]
+          },
+          {
+            title: '鐘�  鎬�',
+            dataIndex: 'docStatus_dictText',
+            key: 'docStatus',
+            align: 'center',
+            filters: [
+              { text: '璁捐', value: 1 },
+              { text: '鍙戝竷', value: 2 },
+              { text: '褰掓。', value: 3 }
+            ]
+          },
           { title: '绯荤粺鎸囧畾鐗堟湰', dataIndex: 'publishVersion', align: 'center' },
-          { title: '涓婁紶鏃堕棿', dataIndex: 'createTime', align: 'center' }
+          {
+            title: '鍒涘缓鏃堕棿',
+            dataIndex: 'createTime',
+            align: 'center',
+            width: 200,
+            sorter: true
+          }
         ],
         dataSource: [],
         currentRightClickedDocumentInfo: {},
@@ -115,6 +147,27 @@
         }
       },
 
+      /**
+       * 琛ㄦ牸鍒嗛〉銆佹帓搴忔敼鍙樸�佺瓫閫夋椂瑙﹀彂
+       * @param pagination 鍒嗛〉鍣ㄩ�夐」
+       * @param filters 绛涢�夐�夐」
+       * @param sorter 鎺掑簭閫夐」
+       */
+      handleTableChange(pagination, filters, sorter) {
+        if (sorter.order) {
+          this.isorter.column = sorter.field
+          this.isorter.order = sorter.order === 'ascend' ? 'asc' : 'desc'
+        } else {
+          this.isorter.column = 'createTime'
+          this.isorter.order = 'desc'
+        }
+        for (let key in filters) {
+          this.filters[key] = filters[key].join(',')
+        }
+        this.ipagination = pagination
+        this.loadData()
+      },
+
       handleDocumentEdit(record, modalTitle) {
         this.$refs.modalForm.edit(record)
         this.$refs.modalForm.title = modalTitle
diff --git a/src/views/dnc/base/modules/DeviceStructure/Document/HasSentDocumentTableList.vue b/src/views/dnc/base/modules/DeviceStructure/Document/HasSentDocumentTableList.vue
index 4272858..c517cac 100644
--- a/src/views/dnc/base/modules/DeviceStructure/Document/HasSentDocumentTableList.vue
+++ b/src/views/dnc/base/modules/DeviceStructure/Document/HasSentDocumentTableList.vue
@@ -40,12 +40,54 @@
               return parseInt(index) + 1
             }
           },
-          { title: '鏂囦欢鍚嶇О', dataIndex: 'docName', align: 'center' },
+          {
+            title: '鏂囦欢鍚嶇О',
+            dataIndex: 'docName',
+            key: 'docName',
+            align: 'center',
+            width: 300,
+            sorter: true
+          },
           { title: '浠g爜鐗堟湰', dataIndex: 'docAlias', align: 'center' },
-          { title: '鍑哄簱鐘舵��', dataIndex: 'pullStatus_dictText', align: 'center' },
-          { title: '鐘�  鎬�', dataIndex: 'docStatus_dictText', align: 'center' },
+          {
+            title: '鍑哄簱鐘舵��',
+            dataIndex: 'pullStatus_dictText',
+            key: 'pullStatus',
+            align: 'center',
+            filters: [
+              { text: '鏈嚭搴�', value: 1 },
+              { text: '宸插嚭搴�', value: 2 }
+            ]
+          },
+          {
+            title: '鐘�  鎬�',
+            dataIndex: 'docStatus_dictText',
+            key: 'docStatus',
+            align: 'center',
+            filters: [
+              { text: '璁捐', value: 1 },
+              { text: '鍙戝竷', value: 2 },
+              { text: '褰掓。', value: 3 }
+            ]
+          },
           { title: '绯荤粺鎸囧畾鐗堟湰', dataIndex: 'publishVersion', align: 'center' },
-          { title: '涓婁紶鏃堕棿', dataIndex: 'createTime', align: 'center' }
+          {
+            title: '鍚屾鐘舵��',
+            dataIndex: 'syncStatus_dictText',
+            key: 'syncStatus',
+            align: 'center',
+            filters: [
+              { text: '鏈悓姝�', value: 1 },
+              { text: '宸插悓姝�', value: 2 }
+            ]
+          },
+          {
+            title: '鍒涘缓鏃堕棿',
+            dataIndex: 'createTime',
+            align: 'center',
+            width: 200,
+            sorter: true
+          }
         ],
         dataSource: [],
         currentRightClickedDocumentInfo: {},
@@ -115,6 +157,27 @@
         }
       },
 
+      /**
+       * 琛ㄦ牸鍒嗛〉銆佹帓搴忔敼鍙樸�佺瓫閫夋椂瑙﹀彂
+       * @param pagination 鍒嗛〉鍣ㄩ�夐」
+       * @param filters 绛涢�夐�夐」
+       * @param sorter 鎺掑簭閫夐」
+       */
+      handleTableChange(pagination, filters, sorter) {
+        if (sorter.order) {
+          this.isorter.column = sorter.field
+          this.isorter.order = sorter.order === 'ascend' ? 'asc' : 'desc'
+        } else {
+          this.isorter.column = 'createTime'
+          this.isorter.order = 'desc'
+        }
+        for (let key in filters) {
+          this.filters[key] = filters[key].join(',')
+        }
+        this.ipagination = pagination
+        this.loadData()
+      },
+
       handleDocumentEdit(record, modalTitle) {
         this.$refs.modalForm.edit(record)
         this.$refs.modalForm.title = modalTitle
diff --git a/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue b/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue
index b0fecf4..7551d6b 100644
--- a/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue
+++ b/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue
@@ -146,6 +146,10 @@
         })
       },
 
+      /**
+       * 鐐瑰嚮鎵归噺鍒犻櫎鍚庡嚭鐜板脊绐�
+       * @param modalTitle 寮圭獥鏍囬
+       */
       handleBatchRemove(modalTitle) {
         if (!this.$refs.documentBatchDeleteModalRef) return
         this.$refs.documentBatchDeleteModalRef.title = modalTitle
diff --git a/src/views/dnc/common/DocumentBatchDeleteModal.vue b/src/views/dnc/common/DocumentBatchDeleteModal.vue
index 36180b6..f4fee17 100644
--- a/src/views/dnc/common/DocumentBatchDeleteModal.vue
+++ b/src/views/dnc/common/DocumentBatchDeleteModal.vue
@@ -83,7 +83,7 @@
             filters: [
               { text: '鏈嚭搴�', value: 1 },
               { text: '宸插嚭搴�', value: 2 }
-            ],
+            ]
           },
           {
             title: '鐘�  鎬�',
@@ -94,7 +94,7 @@
               { text: '璁捐', value: 1 },
               { text: '鍙戝竷', value: 2 },
               { text: '褰掓。', value: 3 }
-            ],
+            ]
           },
           { title: '绯荤粺鎸囧畾鐗堟湰', dataIndex: 'publishVersion', align: 'center', width: 200 },
           {
@@ -183,7 +183,7 @@
       // 纭鎵归噺鍒犻櫎鏂囨。
       confirmBatchDeleteDocument() {
         const that = this
-        const { selectedRowKeys, $notification, $confirm, currentDocumentInfo: { param, attributionId } } = that
+        const { selectedRowKeys, $notification, $confirm, currentDocumentInfo: { param, attributionId, attributionType } } = that
 
         if (selectedRowKeys.length === 0) {
           $notification.warning({
@@ -201,8 +201,17 @@
           onOk: () => {
             let hasRequestedSuccessCount = 0
             let hasRequestedCount = 0
+            let method
+            let queryParam
             selectedRowKeys.forEach(key => {
-              dncApi.deleteDocumentApi(key)
+              if (attributionType !== 4) {
+                method = dncApi.deleteDocumentApi
+                queryParam = key
+              } else {
+                method = dncApi.deleteDeviceRelativeDocumentApi
+                queryParam = { docId: key, attributionId }
+              }
+              method(queryParam)
                 .then(res => {
                   if (res.success) {
                     $notification.success({
diff --git a/src/views/system/DncDepartmentList.vue b/src/views/system/DncDepartmentList.vue
deleted file mode 100644
index e9cc243..0000000
--- a/src/views/system/DncDepartmentList.vue
+++ /dev/null
@@ -1,634 +0,0 @@
-<template xmlns:background-color="http://www.w3.org/1999/xhtml">
-  <a-row :gutter="10">
-    <a-col :md="12" :sm="24">
-      <a-card :bordered="false">
-
-        <!-- 鎸夐挳鎿嶄綔鍖哄煙 -->
-        <a-row style="margin-left: 14px">
-          <a-button @click="handleAdd(1)" type="primary">娣诲姞閮ㄩ棬</a-button>
-          <a-button @click="handleAdd(2)" type="primary">娣诲姞涓嬬骇</a-button>
-<!--          <a-button title="鍒犻櫎澶氭潯鏁版嵁" @click="batchDel" type="default">鎵归噺鍒犻櫎</a-button>-->
-          <!--<a-button @click="refresh" type="default" icon="reload" :loading="loading">鍒锋柊</a-button>-->
-        </a-row>
-        <div style="background: #fff;padding-left:16px;height: 100%; margin-top: 5px">
-          <a-alert type="info" :showIcon="true">
-            <div slot="message">
-              褰撳墠閫夋嫨锛�<span v-if="this.currSelected.title">{{ getCurrSelectedTitle() }}</span>
-              <a v-if="this.currSelected.title" style="margin-left: 10px" @click="onClearSelected">鍙栨秷閫夋嫨</a>
-            </div>
-          </a-alert>
-          <a-input-search @search="onSearch" style="width:100%;margin-top: 10px" placeholder="璇疯緭鍏ラ儴闂ㄥ悕绉�"/>
-          <!-- 鏍�-->
-          <a-col :md="10" :sm="24">
-            <template>
-              <a-dropdown :trigger="[this.dropTrigger]" @visibleChange="dropStatus">
-               <span style="user-select: none">
-            <a-tree
-              checkable
-              multiple
-              @select="onSelect"
-              @check="onCheck"
-              @rightClick="rightHandle"
-              :selectedKeys="selectedKeys"
-              :checkedKeys="checkedKeys"
-              :treeData="departTree"
-              :checkStrictly="checkStrictly"
-              :expandedKeys="iExpandedKeys"
-              :autoExpandParent="autoExpandParent"
-              @expand="onExpand"/>
-                </span>
-                <!--鏂板鍙抽敭鐐瑰嚮浜嬩欢,鍜屽鍔犳坊鍔犲拰鍒犻櫎鍔熻兘-->
-                <a-menu slot="overlay">
-                  <a-menu-item @click="handleAdd(3)" key="1">娣诲姞</a-menu-item>
-                  <a-menu-item @click="handleDelete" key="2">鍒犻櫎</a-menu-item>
-                  <a-menu-item @click="closeDrop" key="3">鍙栨秷</a-menu-item>
-                </a-menu>
-              </a-dropdown>
-            </template>
-          </a-col>
-        </div>
-      </a-card>
-      <!---- author:os_chengtgen -- date:20190827 --  for:鍒囨崲鐖跺瓙鍕鹃�夋ā寮� =======------>
-      <div class="drawer-bootom-button">
-        <a-dropdown :trigger="['click']" placement="topCenter">
-          <a-menu slot="overlay">
-            <a-menu-item key="1" @click="switchCheckStrictly(1)">鐖跺瓙鍏宠仈</a-menu-item>
-            <a-menu-item key="2" @click="switchCheckStrictly(2)">鍙栨秷鍏宠仈</a-menu-item>
-            <a-menu-item key="3" @click="checkALL">鍏ㄩ儴鍕鹃��</a-menu-item>
-            <a-menu-item key="4" @click="cancelCheckALL">鍙栨秷鍏ㄩ��</a-menu-item>
-            <a-menu-item key="5" @click="expandAll">灞曞紑鎵�鏈�</a-menu-item>
-            <a-menu-item key="6" @click="closeAll">鍚堝苟鎵�鏈�</a-menu-item>
-          </a-menu>
-          <a-button>
-            鏍戞搷浣� <a-icon type="up" />
-          </a-button>
-        </a-dropdown>
-      </div>
-      <!---- author:os_chengtgen -- date:20190827 --  for:鍒囨崲鐖跺瓙鍕鹃�夋ā寮� =======------>
-    </a-col>
-    <a-col :md="12" :sm="24">
-      <a-tabs defaultActiveKey="1">
-        <a-tab-pane tab="鍩烘湰淇℃伅" key="1" >
-          <a-card :bordered="false" v-if="selectedKeys.length>0">
-            <a-form-model ref="form" :model="model" :rules="validatorRules">
-              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="departName" label="鏈烘瀯鍚嶇О">
-                <a-input placeholder="璇疯緭鍏ユ満鏋�/閮ㄩ棬鍚嶇О" v-model="model.departName" />
-              </a-form-model-item>
-              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="涓婄骇閮ㄩ棬">
-                <a-tree-select
-                  style="width:100%"
-                  :dropdownStyle="{maxHeight:'200px',overflow:'auto'}"
-                  :treeData="treeData"
-                  :disabled="disable"
-                  v-model="model.parentId"
-                  placeholder="鏃�">
-                </a-tree-select>
-              </a-form-model-item>
-              <!--<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orgCode" label="鏈烘瀯缂栫爜">-->
-                <!--<a-input disabled placeholder="璇疯緭鍏ユ満鏋勭紪鐮�" v-model="model.orgCode" />-->
-              <!--</a-form-model-item>-->
-              <!--<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orgCategory" label="鏈烘瀯绫诲瀷">-->
-                <!--<template v-if="orgCategoryDisabled">-->
-                  <!--<a-radio-group v-model="model.orgCategory" placeholder="璇烽�夋嫨鏈烘瀯绫诲瀷">-->
-                    <!--<a-radio value="1">-->
-                      <!--鍏徃-->
-                    <!--</a-radio>-->
-                  <!--</a-radio-group>-->
-                <!--</template>-->
-                <!--<template v-else>-->
-                  <!--<a-radio-group v-model="model.orgCategory" placeholder="璇烽�夋嫨鏈烘瀯绫诲瀷">-->
-                    <!--<a-radio value="2">-->
-                      <!--閮ㄩ棬-->
-                    <!--</a-radio>-->
-                    <!--<a-radio value="3">-->
-                      <!--宀椾綅-->
-                    <!--</a-radio>-->
-                  <!--</a-radio-group>-->
-                <!--</template>-->
-              <!--</a-form-model-item>-->
-              <!--<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="閮ㄩ棬璐熻矗浜�">-->
-                <!--<j-select-multi-user v-model="model.directorUserIds" valueKey="id"></j-select-multi-user>-->
-              <!--</a-form-model-item>-->
-              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="鎺掑簭">
-                <a-input-number v-model="model.priority" />
-              </a-form-model-item>
-              <!--<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="鎵嬫満鍙�" prop="mobile">-->
-                <!--<a-input placeholder="璇疯緭鍏ユ墜鏈哄彿" v-model="model.mobile" />-->
-              <!--</a-form-model-item>-->
-              <!--<a-form-model-item  :labelCol="labelCol" :wrapperCol="wrapperCol"  label="鍦板潃">-->
-                <!--<a-input placeholder="璇疯緭鍏ュ湴鍧�" v-model="model.address"/>-->
-              <!--</a-form-model-item>-->
-              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="澶囨敞">
-                <a-textarea placeholder="璇疯緭鍏ュ娉�" v-model="model.description"/>
-              </a-form-model-item>
-            </a-form-model>
-            <div class="anty-form-btn">
-              <a-button @click="emptyCurrForm" type="default" htmlType="button" icon="sync">閲嶇疆</a-button>
-              <a-button @click="submitCurrForm" type="primary" htmlType="button" icon="form">淇濆瓨</a-button>
-            </div>
-          </a-card>
-          <a-card v-else >
-            <a-empty>
-              <span slot="description"> 璇峰厛閫夋嫨涓�涓儴闂�! </span>
-            </a-empty>
-          </a-card>
-        </a-tab-pane>
-        <a-tab-pane tab="閮ㄩ棬鏉冮檺" key="2" forceRender>
-          <DepartMentAuthModal ref="departAuth"/>
-        </a-tab-pane>
-      </a-tabs>
-
-    </a-col>
-    <DncDepartmentModal ref="DncDepartmentModal" @ok="loadTree"></DncDepartmentModal>
-  </a-row>
-</template>
-<script>
-  import {queryDepartTreeList, searchByKeywords, deleteByDepartId} from '@/api/api'
-  import { httpAction, deleteAction, getAction } from '@/api/manage'
-  import {JeecgListMixin} from '@/mixins/JeecgListMixin'
-  import DncDepartmentModal from './modules/DncDepartmentModal'
-  import DepartMentAuthModal from './modules/DepartMentAuthModal'
-  import Vue from 'vue'
-  // 琛ㄥご
-  const columns = [
-    {
-      title: '鏈烘瀯鍚嶇О',
-      dataIndex: 'departName'
-    },
-    {
-      title: '鏈烘瀯绫诲瀷',
-      align: 'center',
-      dataIndex: 'orgType'
-    },
-    {
-      title: '鏈烘瀯缂栫爜',
-      dataIndex: 'orgCode',
-    },
-    {
-      title: '鎵嬫満鍙�',
-      dataIndex: 'mobile'
-    },
-    {
-      title: '浼犵湡',
-      dataIndex: 'fax'
-    },
-    {
-      title: '鍦板潃',
-      dataIndex: 'address'
-    },
-    {
-      title: '鎺掑簭',
-      align: 'center',
-      dataIndex: 'departOrder'
-    },
-    {
-      title: '鎿嶄綔',
-      align: 'center',
-      dataIndex: 'action',
-      scopedSlots: {customRender: 'action'}
-    }
-  ]
-  export default {
-    name: 'DepartList',
-    mixins: [JeecgListMixin],
-    components: {
-      DncDepartmentModal,
-      DepartMentAuthModal
-    },
-    data() {
-      return {
-        iExpandedKeys: [],
-        loading: false,
-        autoExpandParent: true,
-        currFlowId: '',
-        currFlowName: '',
-        disable: true,
-        treeData: [],
-        visible: false,
-        departTree: [],
-        rightClickSelectedKey: '',
-        rightClickSelectedOrgCode: '',
-        hiding: true,
-        model: {},
-        dropTrigger: '',
-        depart: {},
-        columns: columns,
-        disableSubmit: false,
-        checkedKeys: [],
-        selectedKeys: [],
-        autoIncr: 1,
-        currSelected: {},
-        allTreeKeys:[],
-        checkStrictly: true,
-        labelCol: {
-          xs: {span: 24},
-          sm: {span: 5}
-        },
-        wrapperCol: {
-          xs: {span: 24},
-          sm: {span: 16}
-        },
-        graphDatasource: {
-          nodes: [],
-          edges: []
-        },
-        validatorRules: {
-          departName: [{required: true, message: '璇疯緭鍏ユ満鏋�/閮ㄩ棬鍚嶇О!'}],
-          orgCode: [{required: true, message: '璇疯緭鍏ユ満鏋勭紪鐮�!'}],
-          orgCategory:[{required: true, message: '璇烽�夋嫨鏈烘瀯绫诲瀷!'}],
-          mobile: Vue.prototype.rules.mobile2
-        },
-        url: {
-          tree:"/ucenter/depart/queryTreeList",
-          delete: '/ucenter/depart/delete',
-          edit: '/ucenter/depart/edit',
-          deleteBatch: '/sys/sysDepart/deleteBatch',
-          searchBy:'/ucenter/depart/searchBy',
-        },
-        orgCategoryDisabled:false,
-        oldDirectorUserIds:""
-      }
-    },
-    computed: {
-      importExcelUrl: function () {
-        return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
-      }
-    },
-    methods: {
-      loadData() {
-        this.refresh();
-      },
-      loadTree() {
-        var that = this
-        that.treeData = []
-        that.departTree = []
-        //淇敼鎺ュ彛
-        getAction(this.url.tree).then((res) => {
-          if (res.success) {
-            //閮ㄩ棬鍏ㄩ�夊悗锛屽啀娣诲姞閮ㄩ棬锛岄�変腑鏁伴噺澧炲
-            this.allTreeKeys = [];
-            for (let i = 0; i < res.result.length; i++) {
-              let temp = res.result[i]
-              that.treeData.push(temp)
-              that.departTree.push(temp)
-              that.setThisExpandedKeys(temp)
-              that.getAllKeys(temp);
-              // console.log(temp.id)
-            }
-            this.loading = false
-          }
-        })
-      },
-      setThisExpandedKeys(node) {
-        if (node.children && node.children.length > 0) {
-          this.iExpandedKeys.push(node.key)
-          for (let a = 0; a < node.children.length; a++) {
-            this.setThisExpandedKeys(node.children[a])
-          }
-        }
-      },
-      refresh() {
-        this.loading = true
-        this.loadTree()
-      },
-      // 鍙抽敭鎿嶄綔鏂规硶
-      rightHandle(node) {
-        this.dropTrigger = 'contextmenu'
-        console.log(node.node.eventKey)
-        this.rightClickSelectedKey = node.node.eventKey
-        this.rightClickSelectedOrgCode = node.node.dataRef.orgCode
-      },
-      onExpand(expandedKeys) {
-        console.log('onExpand', expandedKeys)
-        this.iExpandedKeys = expandedKeys
-        this.autoExpandParent = false
-      },
-      backFlowList() {
-        this.$router.back(-1)
-      },
-      // 鍙抽敭鐐瑰嚮涓嬫媺妗嗘敼鍙樹簨浠�
-      dropStatus(visible) {
-        if (visible == false) {
-          this.dropTrigger = ''
-        }
-      },
-      // 鍙抽敭涓嬫媺鍏抽棴涓嬫媺妗�
-      closeDrop() {
-        this.dropTrigger = ''
-      },
-      addRootNode() {
-        this.$refs.nodeModal.add(this.currFlowId, '')
-      },
-      batchDel: function () {
-        console.log(this.checkedKeys)
-        if (this.checkedKeys.length <= 0) {
-          this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒')
-        } else {
-          var ids = ''
-          for (var a = 0; a < this.checkedKeys.length; a++) {
-            ids += this.checkedKeys[a] + ','
-          }
-          var that = this
-          this.$confirm({
-            title: '纭鍒犻櫎',
-            content: '纭畾瑕佸垹闄ゆ墍閫変腑鐨� ' + this.checkedKeys.length + ' 鏉℃暟鎹紝浠ュ強瀛愯妭鐐规暟鎹悧?',
-            onOk: function () {
-              deleteAction(that.url.deleteBatch, {ids: ids}).then((res) => {
-                if (res.success) {
-                  that.$message.success(res.message)
-                  that.loadTree()
-                  that.onClearSelected()
-                } else {
-                  that.$message.warning(res.message)
-                }
-              })
-            }
-          })
-        }
-      },
-      onSearch(value) {
-        let that = this
-        if (value) {
-          getAction(this.url.searchBy,{keyWord: value}).then((res) => {
-            if (res.success) {
-              that.departTree = []
-              for (let i = 0; i < res.result.length; i++) {
-                let temp = res.result[i]
-                that.departTree.push(temp)
-              }
-            } else {
-              that.$message.warning(res.message)
-            }
-          })
-        } else {
-          that.loadTree()
-        }
-
-      },
-      nodeModalOk() {
-        this.loadTree()
-      },
-      nodeModalClose() {
-      },
-      hide() {
-        console.log(111)
-        this.visible = false
-      },
-      onCheck(checkedKeys, info) {
-        console.log('onCheck', checkedKeys, info)
-        this.hiding = false
-        //---- author:os_chengtgen -- date:20190827 --  for:鍒囨崲鐖跺瓙鍕鹃�夋ā寮� =======------
-        if(this.checkStrictly){
-          this.checkedKeys = checkedKeys.checked;
-        }else{
-          this.checkedKeys = checkedKeys
-        }
-        //---- author:os_chengtgen -- date:20190827 --  for:鍒囨崲鐖跺瓙鍕鹃�夋ā寮� =======------
-      },
-      onSelect(selectedKeys, e) {
-        console.log('selected', selectedKeys, e)
-        this.hiding = false
-        let record = e.node.dataRef
-        console.log('onSelect-record', record)
-        this.currSelected = Object.assign({}, record)
-        this.model = this.currSelected
-        this.selectedKeys = [record.key]
-        this.model.parentId = record.parentId
-        this.setValuesToForm(record)
-        this.$refs.departAuth.show(record.departId);
-        this.oldDirectorUserIds = record.directorUserIds
-
-        //update-beign-author:taoyan date:20220316 for: VUEN-329銆恇ug銆戜负浠�涔堜笉鏄け鍘荤劍鐐圭殑鏃跺�欙紝瑙﹀彂鎵嬫満鍙锋牎楠�
-        this.$nextTick(()=>{
-          this.$refs.form.validateField('mobile')
-        })
-        //update-end-author:taoyan date:20220316 for: VUEN-329銆恇ug銆戜负浠�涔堜笉鏄け鍘荤劍鐐圭殑鏃跺�欙紝瑙﹀彂鎵嬫満鍙锋牎楠�
-      },
-      // 瑙﹀彂onSelect浜嬩欢鏃�,涓洪儴闂ㄦ爲鍙充晶鐨刦orm琛ㄥ崟璧嬪��
-      setValuesToForm(record) {
-        if(record.orgCategory == '1'){
-          this.orgCategoryDisabled = true;
-        }else{
-          this.orgCategoryDisabled = false;
-        }
-      },
-      getCurrSelectedTitle() {
-        return !this.currSelected.title ? '' : this.currSelected.title
-      },
-      onClearSelected() {
-        this.hiding = true
-        this.checkedKeys = []
-        this.currSelected = {}
-        this.selectedKeys = []
-        this.$refs.departAuth.departId = ''
-      },
-      handleNodeTypeChange(val) {
-        this.currSelected.nodeType = val
-      },
-      notifyTriggerTypeChange(value) {
-        this.currSelected.notifyTriggerType = value
-      },
-      receiptTriggerTypeChange(value) {
-        this.currSelected.receiptTriggerType = value
-      },
-      submitCurrForm() {
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            if (!this.currSelected.departId) {
-              this.$message.warning('璇风偣鍑婚�夋嫨瑕佷慨鏀归儴闂�!')
-              return
-            }
-
-            //update-begin---author:wangshuai ---date:20200308  for锛歔JTC-119]鍦ㄩ儴闂ㄧ鐞嗚彍鍗曚笅璁剧疆閮ㄩ棬璐熻矗浜�
-            this.currSelected.oldDirectorUserIds = this.oldDirectorUserIds
-            //update-end---author:wangshuai ---date:20200308  for锛歔JTC-119]鍦ㄩ儴闂ㄧ鐞嗚彍鍗曚笅璁剧疆閮ㄩ棬璐熻矗浜�
-            httpAction(this.url.edit+'/'+this.currSelected.departId, this.currSelected, 'put').then((res) => {
-              if (res.success) {
-                this.$message.success('淇濆瓨鎴愬姛!')
-                this.loadTree()
-              } else {
-                this.$message.error(res.message)
-              }
-            })
-          }
-        })
-      },
-      emptyCurrForm() {
-        this.$refs.form.resetFields();
-        this.model={}
-      },
-      nodeSettingFormSubmit() {
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            console.log('Received values of form: ', this.model)
-          }
-        })
-      },
-      openSelect() {
-        this.$refs.sysDirectiveModal.show()
-      },
-      handleAdd(num) {
-        if (num == 1) {
-          this.$refs.DncDepartmentModal.add()
-          this.$refs.DncDepartmentModal.title = '鏂板'
-        } else if (num == 2) {
-          let key = this.currSelected.key
-          if (!key) {
-            this.$message.warning('璇峰厛鐐瑰嚮閫変腑涓婄骇閮ㄩ棬锛�')
-            return false
-          }
-          this.$refs.DncDepartmentModal.add(this.selectedKeys)
-          this.$refs.DncDepartmentModal.title = '鏂板'
-        } else {
-          this.$refs.DncDepartmentModal.add(this.rightClickSelectedKey)
-          this.$refs.DncDepartmentModal.title = '鏂板'
-        }
-      },
-      handleDelete() {
-        var that = this
-        this.$confirm({
-          title: '纭鍒犻櫎',
-          content: '纭畾瑕佸垹闄ゆ閮ㄩ棬浠ュ強瀛愯妭鐐规暟鎹悧?',
-          onOk: function () {
-            deleteAction(that.url.delete,{id: that.rightClickSelectedKey}).then((resp) => {
-              if (resp.success) {
-                //鍒犻櫎鎴愬姛鍚庯紝鍘婚櫎宸查�変腑涓殑鏁版嵁
-                that.checkedKeys.splice(that.checkedKeys.findIndex(key => key === that.rightClickSelectedKey), 1);
-                that.$message.success('鍒犻櫎鎴愬姛!')
-                that.loadTree()
-                //鍒犻櫎鍚庡悓姝ユ竻绌哄彸渚у熀鏈俊鎭唴瀹�
-                let orgCode=that.model.orgCode;
-                if(orgCode && orgCode === that.rightClickSelectedOrgCode){
-                  that.onClearSelected()
-                }
-              } else {
-                that.$message.warning(resp.message)
-              }
-            })
-          }
-        })
-      },
-      selectDirectiveOk(record) {
-        console.log('閫変腑鎸囦护鏁版嵁', record)
-        this.nodeSettingForm.setFieldsValue({directiveCode: record.directiveCode})
-        this.currSelected.sysCode = record.sysCode
-      },
-      getFlowGraphData(node) {
-        this.graphDatasource.nodes.push({
-          id: node.id,
-          text: node.flowNodeName
-        })
-        if (node.children.length > 0) {
-          for (let a = 0; a < node.children.length; a++) {
-            let temp = node.children[a]
-            this.graphDatasource.edges.push({
-              source: node.id,
-              target: temp.id
-            })
-            this.getFlowGraphData(temp)
-          }
-        }
-      },
-     //---- author:os_chengtgen -- date:20190827 --  for:鍒囨崲鐖跺瓙鍕鹃�夋ā寮� =======------
-      expandAll () {
-        this.iExpandedKeys = this.allTreeKeys
-      },
-      closeAll () {
-        this.iExpandedKeys = []
-      },
-      checkALL () {
-        this.checkStriccheckStrictlytly = false
-        this.checkedKeys = this.allTreeKeys
-      },
-      cancelCheckALL () {
-        //this.checkedKeys = this.defaultCheckedKeys
-        this.checkedKeys = []
-      },
-      switchCheckStrictly (v) {
-        if(v==1){
-          this.checkStrictly = false
-        }else if(v==2){
-          this.checkStrictly = true
-        }
-      },
-      getAllKeys(node) {
-        // console.log('node',node);
-        this.allTreeKeys.push(node.key)
-        if (node.children && node.children.length > 0) {
-          for (let a = 0; a < node.children.length; a++) {
-            this.getAllKeys(node.children[a])
-          }
-        }
-      }
-      //---- author:os_chengtgen -- date:20190827 --  for:鍒囨崲鐖跺瓙鍕鹃�夋ā寮� =======------
-
-    },
-    created() {
-      this.currFlowId = this.$route.params.id
-      this.currFlowName = this.$route.params.name
-      // this.loadTree()
-    },
-
-  }
-</script>
-<style scoped>
-  .ant-card-body .table-operator {
-    margin: 15px;
-  }
-
-  .anty-form-btn {
-    width: 100%;
-    text-align: center;
-  }
-
-  .anty-form-btn button {
-    margin: 0 5px;
-  }
-
-  .anty-node-layout .ant-layout-header {
-    padding-right: 0
-  }
-
-  .header {
-    padding: 0 8px;
-  }
-
-  .header button {
-    margin: 0 3px
-  }
-
-  .ant-modal-cust-warp {
-    height: 100%
-  }
-
-  .ant-modal-cust-warp .ant-modal-body {
-    height: calc(100% - 110px) !important;
-    overflow-y: auto
-  }
-
-  .ant-modal-cust-warp .ant-modal-content {
-    height: 90% !important;
-    overflow-y: hidden
-  }
-
-  #app .desktop {
-    height: auto !important;
-  }
-
-  /** Button鎸夐挳闂磋窛 */
-  .ant-btn {
-    margin-left: 3px
-  }
-
-  .drawer-bootom-button {
-    /*position: absolute;*/
-    bottom: 0;
-    width: 100%;
-    border-top: 1px solid #e8e8e8;
-    padding: 10px 16px;
-    text-align: left;
-    left: 0;
-    background: #fff;
-    border-radius: 0 0 2px 2px;
-  }
-</style>
\ No newline at end of file
diff --git a/src/views/system/modules/DepartMentAuthModal.vue b/src/views/system/modules/DepartMentAuthModal.vue
deleted file mode 100644
index d629a37..0000000
--- a/src/views/system/modules/DepartMentAuthModal.vue
+++ /dev/null
@@ -1,200 +0,0 @@
-<template>
-  <a-card :bordered="false">
-    <template v-if="this.departId">
-      <a-spin :spinning="loading">
-        <a-form>
-          <a-form-item label='鎵�鎷ユ湁鐨勬潈闄�'>
-            <a-tree
-              checkable
-              @check="onCheck"
-              :checkedKeys="checkedKeys"
-              :treeData="treeData"
-              @expand="onExpand"
-              @select="onTreeNodeSelect"
-              :selectedKeys="selectedKeys"
-              :expandedKeys="expandedKeysss"
-              :checkStrictly="checkStrictly"
-              style="height:500px;overflow: auto;">
-              <span slot="hasDatarule" slot-scope="{slotTitle,ruleFlag}">
-                {{ slotTitle }}
-                <a-icon v-if="ruleFlag" type="align-left" style="margin-left:5px;color: red;"></a-icon>
-              </span>
-            </a-tree>
-          </a-form-item>
-        </a-form>
-      </a-spin>
-      <div class="anty-form-btn">
-        <a-dropdown style="float: left" :trigger="['click']" placement="topCenter">
-          <a-menu slot="overlay">
-            <!-- 绠�鍖朤ree閫昏緫锛屼娇鐢ㄩ粯璁heckStrictly涓篺alse鐨勮涓猴紝鍗抽粯璁ょ埗瀛愬叧鑱�
-            <a-menu-item key="1" @click="switchCheckStrictly(1)">鐖跺瓙鍏宠仈</a-menu-item>
-            <a-menu-item key="2" @click="switchCheckStrictly(2)">鍙栨秷鍏宠仈</a-menu-item>
-            -->
-            <a-menu-item key="3" @click="checkALL">鍏ㄩ儴鍕鹃��</a-menu-item>
-            <a-menu-item key="4" @click="cancelCheckALL">鍙栨秷鍏ㄩ��</a-menu-item>
-            <a-menu-item key="5" @click="expandAll">灞曞紑鎵�鏈�</a-menu-item>
-            <a-menu-item key="6" @click="closeAll">鍚堝苟鎵�鏈�</a-menu-item>
-          </a-menu>
-          <a-button>
-            鏍戞搷浣� <a-icon type="up" />
-          </a-button>
-        </a-dropdown>
-        <a-button style="float: right" @click="handleSubmit" type="primary" htmlType="button" icon="form">淇濆瓨</a-button>
-      </div>
-    </template>
-    <a-card v-else :bordered="false" style="height:200px">
-      <a-empty>
-        <span slot="description"> 璇峰厛閫夋嫨涓�涓儴闂�! </span>
-      </a-empty>
-    </a-card>
-    <depart-datarule-modal ref="datarule"/>
-  </a-card>
-</template>
-
-<script>
-  import {queryTreeListForRole,queryDepartPermission,saveDepartPermission} from '@/api/api'
-  import DepartDataruleModal from './DepartDataruleModal'
-
-  export default {
-    name: 'DepartAuthModal',
-    components: { DepartDataruleModal },
-    data(){
-      return {
-        departId:"",
-        treeData: [],
-        defaultCheckedKeys:[],
-        checkedKeys:[],
-        halfCheckedKeys:[],
-        expandedKeysss:[],
-        allTreeKeys:[],
-        autoExpandParent: true,
-        checkStrictly: false,
-        title:"閮ㄩ棬鏉冮檺閰嶇疆",
-        visible: false,
-        loading: false,
-        selectedKeys:[]
-      }
-    },
-    methods: {
-      onTreeNodeSelect(id){
-        if(id && id.length>0){
-          this.selectedKeys = id
-        }
-        this.$refs.datarule.show(this.selectedKeys[0],this.departId)
-      },
-      onCheck (checkedKeys, { halfCheckedKeys }) {
-        // 淇濆瓨閫変腑鐨勫拰鍗婇�変腑鐨勶紝鍚庨潰淇濆瓨鐨勬椂鍊欏悎骞舵彁浜�
-        this.checkedKeys = checkedKeys
-        this.halfCheckedKeys = halfCheckedKeys
-      },
-      show(departId){
-        this.departId=departId
-        this.loadData();
-      },
-      close () {
-        this.reset()
-        this.$emit('close');
-        this.visible = false;
-      },
-      onExpand(expandedKeys){
-        this.expandedKeysss = expandedKeys;
-        this.autoExpandParent = false
-      },
-      reset () {
-        this.expandedKeysss = []
-        this.checkedKeys = []
-        this.defaultCheckedKeys = []
-        this.loading = false
-      },
-      expandAll () {
-        this.expandedKeysss = this.allTreeKeys
-      },
-      closeAll () {
-        this.expandedKeysss = []
-      },
-      checkALL () {
-        this.checkedKeys = this.allTreeKeys
-      },
-      cancelCheckALL () {
-        this.checkedKeys = []
-      },
-      handleCancel () {
-        this.close()
-      },
-      handleSubmit() {
-        let that = this;
-        if(!that.departId){
-          this.$message.warning('璇风偣鍑婚�夋嫨涓�涓儴闂�!')
-        }
-        let checkedKeys = [...that.checkedKeys, ...that.halfCheckedKeys]
-        const permissionIds = checkedKeys.join(",")
-        let params =  {
-          departId:that.departId,
-          permissionIds,
-          lastpermissionIds:that.defaultCheckedKeys.join(","),
-        };
-        that.loading = true;
-        saveDepartPermission(params).then((res)=>{
-          if(res.success){
-            // that.$message.success(res.message);
-            that.$notification.warning({
-              message:'娑堟伅',
-              description:res.message
-            });
-            that.loading = false;
-            that.loadData();
-          }else {
-            // that.$message.error(res.message);
-            that.$notification.warning({
-              message:'娑堟伅',
-              description:res.message
-            });
-            that.loading = false;
-          }
-        })
-      },
-      convertTreeListToKeyLeafPairs(treeList, keyLeafPair = []) {
-        for(const {key, isLeaf, children} of treeList) {
-          keyLeafPair.push({key, isLeaf})
-          if(children && children.length > 0) {
-            this.convertTreeListToKeyLeafPairs(children, keyLeafPair)
-          }
-        }
-        return keyLeafPair;
-      },
-      emptyCurrForm() {
-        this.form.resetFields()
-      },
-      loadData(){
-        this.loading = true;
-        queryTreeListForRole().then((res) => {
-          this.treeData = res.result.treeList
-          this.allTreeKeys = res.result.ids
-          const keyLeafPairs = this.convertTreeListToKeyLeafPairs(this.treeData)
-          queryDepartPermission({departId:this.departId}).then((res)=>{
-            // 杩囨护鍑� leaf node 鍗冲彲锛屽嵆閫変腑鐨�
-            // Tree缁勪欢涓璫heckStrictly榛樿涓篺alse鐨勬椂鍊欙紝閫変腑瀛愯妭鐐癸紝鐖惰妭鐐逛細鑷姩璁剧疆閫変腑鎴栧崐閫変腑
-            // 淇濆瓨 checkedKeys 浠ュ強 halfCheckedKeys 浠ヤ究浜庢湭鍋氫换浣曟搷浣滄椂鎻愪氦琛ㄥ崟鏁版嵁
-            const checkedKeys = [...res.result].filter(key => {
-              const keyLeafPair = keyLeafPairs.filter(item => item.key === key)[0]
-              return keyLeafPair && keyLeafPair.isLeaf
-            })
-            const halfCheckedKeys = [...res.result].filter(key => {
-              const keyLeafPair = keyLeafPairs.filter(item => item.key === key)[0]
-              return keyLeafPair && !keyLeafPair.isLeaf
-            })
-            this.checkedKeys = [...checkedKeys];
-            this.halfCheckedKeys = [...halfCheckedKeys]
-            this.defaultCheckedKeys = [...halfCheckedKeys, ...checkedKeys];
-            this.expandedKeysss = this.allTreeKeys;
-            this.loading = false;
-          })
-        })
-      }
-    },
-  }
-</script>
-
-<style scoped>
-
-</style>
\ No newline at end of file
diff --git a/src/views/system/modules/DncDepartmentModal.vue b/src/views/system/modules/DncDepartmentModal.vue
deleted file mode 100644
index 40e6fcc..0000000
--- a/src/views/system/modules/DncDepartmentModal.vue
+++ /dev/null
@@ -1,197 +0,0 @@
-<template>
-  <a-modal
-    :title="title"
-    :width="800"
-    :ok=false
-    :visible="visible"
-    :confirmLoading="confirmLoading"
-    :okButtonProps="{ props: {disabled: disableSubmit} }"
-    @ok="handleOk"
-    @cancel="handleCancel"
-    cancelText="鍏抽棴">
-
-    <a-spin :spinning="confirmLoading">
-      <a-form-model-item
-        :labelCol="labelCol"
-        :wrapperCol="wrapperCol"
-        label="閮ㄩ棬缂栫爜"
-        prop="departName"
-        :hidden="false"
-        hasFeedback >
-        <a-input id="departCode" placeholder="璇疯緭鍏ラ儴闂ㄧ紪鐮�" v-model="model.departCode"/>
-      </a-form-model-item>
-
-      <a-form-model ref="form" :model="model" :rules="validatorRules">
-        <a-form-model-item
-          :labelCol="labelCol"
-          :wrapperCol="wrapperCol"
-          label="閮ㄩ棬鍚嶇О"
-          prop="departName"
-          :hidden="false"
-          hasFeedback >
-          <a-input id="departName" placeholder="璇疯緭鍏ラ儴闂ㄥ悕绉�" v-model="model.departName"/>
-        </a-form-model-item>
-
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" :hidden="seen" label="涓婄骇閮ㄩ棬" hasFeedback>
-        <a-tree-select
-          style="width:100%"
-          :dropdownStyle="{maxHeight:'200px',overflow:'auto'}"
-          :treeData="departTree"
-          v-model="model.parentId"
-          placeholder="璇烽�夋嫨涓婄骇閮ㄩ棬"
-          :disabled="condition">
-        </a-tree-select>
-        </a-form-model-item>
-        <a-form-model-item
-          :labelCol="labelCol"
-          :wrapperCol="wrapperCol"
-          label="鎺掑簭">
-          <a-input-number v-model="model.getPriority"/>
-        </a-form-model-item>
-        <a-form-model-item
-          :labelCol="labelCol"
-          :wrapperCol="wrapperCol"
-          label="澶囨敞">
-          <a-textarea placeholder="璇疯緭鍏ュ娉�" v-model="model.description"/>
-        </a-form-model-item>
-
-      </a-form-model>
-    </a-spin>
-  </a-modal>
-</template>
-
-<script>
-import { getAction, httpAction } from '@/api/manage'
-  import { queryIdTree } from '@/api/api'
-  import pick from 'lodash.pick'
-  import ATextarea from 'ant-design-vue/es/input/TextArea'
-  export default {
-    name: "SysDepartModal",
-    components: { ATextarea },
-    data () {
-      return {
-        departTree:[],
-        orgTypeData:[],
-        phoneWarning:'',
-        departName:"",
-        departCode:"",
-        title:"鎿嶄綔",
-        seen:false,
-        visible: false,
-        condition:true,
-        disableSubmit:false,
-        model: {},
-        defaultModel:{
-          getPriority:0,
-          orgCategory:'1'
-        },
-        menuhidden:false,
-        menuusing:true,
-        labelCol: {
-          xs: { span: 24 },
-          sm: { span: 5 },
-        },
-        wrapperCol: {
-          xs: { span: 24 },
-          sm: { span: 16 },
-        },
-
-        confirmLoading: false,
-        validatorRules:{
-          departName:[{ required: true, message: '璇疯緭鍏ラ儴闂ㄥ悕绉�!' }],
-          departCode:[{ required: true, message: '璇疯緭鍏ラ儴闂ㄧ紪鐮�!' }],
-          mobile: [{validator:this.validateMobile}],
-          orgCategory:[{required: true, message: '璇疯緭鍏ラ儴闂ㄧ被鍨�!'}]
-        },
-        url: {
-          tree:"/ucenter/depart/queryTreeList",
-          add: "/ucenter/depart/add",
-        },
-        dictDisabled:true,
-      }
-    },
-    created () {
-    },
-    methods: {
-      loadTreeData(){
-        var that = this;
-        getAction(this.url.tree).then((res) => {
-          if(res.success){
-            that.departTree = [];
-            for (let i = 0; i < res.result.length; i++) {
-              let temp = res.result[i];
-              that.departTree.push(temp);
-            }
-          }
-
-        })
-      },
-      add (depart) {
-        if(depart){
-          this.seen = false;
-          this.dictDisabled = false;
-        }else{
-          this.seen = true;
-          this.dictDisabled = true;
-        }
-        this.edit(depart);
-      },
-      edit (record) {
-          this.visible = true;
-          this.model = Object.assign({}, this.defaultModel, record)
-          this.loadTreeData();
-          this.model.parentId = record!=null?record.toString():null;
-           if(this.seen){
-             this.model.orgCategory = '1';
-           }else{
-             this.model.orgCategory = '2';
-           }
-      },
-      close () {
-        this.$emit('close');
-        this.disableSubmit = false;
-        this.visible = false;
-        this.$refs.form.resetFields();
-      },
-      handleOk () {
-        const that = this;
-        // 瑙﹀彂琛ㄥ崟楠岃瘉
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            that.confirmLoading = true;
-            httpAction(this.url.add,this.model,"post").then((res)=>{
-              if(res.success){
-                that.$message.success(res.message);
-                that.loadTreeData();
-                that.$emit('ok');
-              }else{
-                that.$message.warning(res.message);
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-              that.close();
-            })
-
-          }else{
-            return false;
-          }
-        })
-      },
-      handleCancel () {
-        this.close()
-      },
-      validateMobile(rule,value,callback){
-        if (!value || new RegExp(/^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$/).test(value)){
-          callback();
-        }else{
-          callback("鎮ㄧ殑鎵嬫満鍙风爜鏍煎紡涓嶆纭�!");
-        }
-
-      }
-    }
-  }
-</script>
-
-<style scoped>
-
-</style>
\ No newline at end of file

--
Gitblit v1.9.3