Эх сурвалжийг харах

部门管理新增和修改只能添加下级部门,顶级部门不能修改和删除

zhontai 2 жил өмнө
parent
commit
d66471d632

+ 1 - 1
src/views/admin/org/components/org-form.vue

@@ -4,7 +4,7 @@
       <el-form :model="form" ref="formRef" size="default" label-width="80px">
         <el-row :gutter="35">
           <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-            <el-form-item label="上级部门">
+            <el-form-item label="上级部门" prop="parentId" :rules="[{ required: true, message: '请输入上级部门', trigger: ['change'] }]">
               <el-tree-select
                 v-model="form.parentId"
                 :data="orgTreeData"

+ 19 - 2
src/views/admin/org/index.vue

@@ -35,8 +35,24 @@
             </el-table-column>
             <el-table-column label="操作" width="160" fixed="right" header-align="center" align="center">
               <template #default="{ row }">
-                <el-button v-auth="'api:admin:org:update'" icon="ele-EditPen" size="small" text type="primary" @click="onEdit(row)">编辑</el-button>
-                <el-button v-auth="'api:admin:org:delete'" icon="ele-Delete" size="small" text type="danger" @click="onDelete(row)">删除</el-button>
+                <el-button
+                  v-if="auth('api:admin:org:update') && row.parentId > 0"
+                  icon="ele-EditPen"
+                  size="small"
+                  text
+                  type="primary"
+                  @click="onEdit(row)"
+                  >编辑</el-button
+                >
+                <el-button
+                  v-if="auth('api:admin:org:delete') && row.parentId > 0"
+                  icon="ele-Delete"
+                  size="small"
+                  text
+                  type="danger"
+                  @click="onDelete(row)"
+                  >删除</el-button
+                >
               </template>
             </el-table-column>
           </el-table>
@@ -54,6 +70,7 @@ import { OrgListOutput } from '/@/api/admin/data-contracts'
 import { OrgApi } from '/@/api/admin/Org'
 import { listToTree, filterTree } from '/@/utils/tree'
 import eventBus from '/@/utils/mitt'
+import { auth } from '/@/utils/authFunction'
 
 // 引入组件
 const OrgForm = defineAsyncComponent(() => import('./components/org-form.vue'))