sunyize 2 lat temu
rodzic
commit
0f51b924b4

+ 11 - 0
src/views/system/RoleUserList.vue

@@ -59,6 +59,11 @@
             :loading="loading"
             :rowSelection="{selectedRowKeys: selectedRowKeys1, onChange: onSelectChange1, type:'radio'}"
             @change="handleTableChange">
+            <template v-slot:power="text, record">
+              <div v-if="text==='1'"  >{{ '只查看自己' }}</div>
+              <div v-if="text==='2'"   >{{ '查看本部门及以下' }}</div>
+              <div v-if="text==='3'"   >{{ '查看本部门' }}</div>
+            </template>
           <span slot="action" slot-scope="text, record">
             <a @click="handleOpen(record)">用户</a>
             <a-divider type="vertical"/>
@@ -277,6 +282,12 @@
               dataIndex: 'roleName',
               sorter: (a, b) =>a.roleName.localeCompare(b.roleName),
             },
+            {
+              title: '数据权限',
+              align: 'center',
+              dataIndex: 'power',
+              scopedSlots: {customRender: 'power'}
+            },
             {
               title: '创建时间',
               dataIndex: 'createTime',

+ 25 - 0
src/views/system/modules/RoleModal.vue

@@ -16,6 +16,14 @@
           <a-input v-model="model.roleName" placeholder="请输入角色名称"/>
         </a-form-model-item>
 
+        <a-form-model-item label="数据权限"     >
+            <a-select placeholder="请选择数据权限"   v-model="model.power" >
+              <a-select-option :value="item.id" v-for="(item, index) in power" :key="index">
+                {{item.name}}
+              </a-select-option>
+            </a-select>
+        </a-form-model-item>
+
         <a-form-model-item label="描述" prop="description">
           <a-textarea :rows="5" v-model="model.description" placeholder="请输入角色描述"/>
         </a-form-model-item>
@@ -30,6 +38,12 @@
     name: "RoleModal",
     data () {
       return {
+        power:[
+
+          {"id":'1',"name":"只查看自己"},
+          {"id":'2',"name":"查看本部门及以下"},
+          {"id":'3',"name":"只查看本部门"},
+        ],
         title:"操作",
         visible: false,
         roleDisabled: false,
@@ -45,6 +59,10 @@
             { min: 2, max: 30, message: '长度在 2 到 30 个字符', trigger: 'blur' },
             { validator: this.validateRoleName}
           ],
+          requireCheck: [
+            { required: true, message: '请输入权限选择!'  },
+            { validator: this.validatePower}
+          ],
           roleCode: [
             { required: true, message: '请输入角色编码!'},
             { min: 0, max: 64, message: '长度不超过 64 个字符', trigger: 'blur' },
@@ -132,6 +150,13 @@
           });
         }
       },
+      validatePower(rule, value, callback) {
+        if ( value !=='' && value!==null) {
+          callback();
+        } else {
+          callback("请选择!");
+        }
+      },
       validateRoleName(rule, value, callback){
 
           let params = {