feat: roles
This commit is contained in:
parent
91da01551f
commit
d8b4c7d37d
@ -39,6 +39,8 @@ class RolesController extends Controller
|
|||||||
|
|
||||||
$role->setAttribute('permissions', $role->permissions()->get()->toTree());
|
$role->setAttribute('permissions', $role->permissions()->get()->toTree());
|
||||||
|
|
||||||
|
$role->setAttribute('departments', $role->departments()->get()->toTree());
|
||||||
|
|
||||||
return $role;
|
return $role;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ class Roles extends Model
|
|||||||
*/
|
*/
|
||||||
protected array $form = ['role_name','identify','parent_id','description','data_range'];
|
protected array $form = ['role_name','identify','parent_id','description','data_range'];
|
||||||
|
|
||||||
protected array $formRelations = ['permissions'];
|
protected array $formRelations = ['permissions', 'departments'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var bool
|
* @var bool
|
||||||
|
@ -44,15 +44,16 @@
|
|||||||
<Select v-model="formData.data_range" name="data_range" clearable api="dataRange" class="w-full" />
|
<Select v-model="formData.data_range" name="data_range" clearable api="dataRange" class="w-full" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="自定义权限" prop="department_ids" v-if="showDepartments">
|
<el-form-item label="自定义权限" prop="department_ids" v-if="showDepartments">
|
||||||
|
<!--
|
||||||
<el-cascader
|
<el-cascader
|
||||||
:options="departments"
|
:options="departments"
|
||||||
name="parent_id"
|
|
||||||
v-model="formData.departmetn_ids"
|
v-model="formData.departmetn_ids"
|
||||||
:show-all-levels="false"
|
:show-all-levels="false"
|
||||||
clearable
|
clearable
|
||||||
:props="{ value: 'id', label: 'department_name', checkStrictly: true, multiple: true }"
|
:props="{ value: 'id', label: 'department_name', emitPath: false, multiple: true }"
|
||||||
class="w-full"
|
class="w-full"
|
||||||
/>
|
/>-->
|
||||||
|
<el-tree-select v-model="formData.departmetn_ids" value-key="id" :data="departments" :render-after-expand="false" show-checkbox multiple :props="{ value: 'id', label: 'department_name' }" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="角色权限" prop="permissions">
|
<el-form-item label="角色权限" prop="permissions">
|
||||||
<el-tree
|
<el-tree
|
||||||
@ -158,6 +159,7 @@ onMounted(() => {
|
|||||||
watch(
|
watch(
|
||||||
formData,
|
formData,
|
||||||
function (value) {
|
function (value) {
|
||||||
|
// 如果数据权限是自定义数据
|
||||||
showDepartments.value = value.data_range === 2
|
showDepartments.value = value.data_range === 2
|
||||||
},
|
},
|
||||||
{ deep: true },
|
{ deep: true },
|
||||||
|
Loading…
x
Reference in New Issue
Block a user