feat: roles

This commit is contained in:
JaguarJack 2023-01-02 18:36:07 +08:00
parent 91da01551f
commit d8b4c7d37d
3 changed files with 8 additions and 4 deletions

View File

@ -39,6 +39,8 @@ class RolesController extends Controller
$role->setAttribute('permissions', $role->permissions()->get()->toTree());
$role->setAttribute('departments', $role->departments()->get()->toTree());
return $role;
}

View File

@ -37,7 +37,7 @@ class Roles extends Model
*/
protected array $form = ['role_name','identify','parent_id','description','data_range'];
protected array $formRelations = ['permissions'];
protected array $formRelations = ['permissions', 'departments'];
/**
* @var bool

View File

@ -44,15 +44,16 @@
<Select v-model="formData.data_range" name="data_range" clearable api="dataRange" class="w-full" />
</el-form-item>
<el-form-item label="自定义权限" prop="department_ids" v-if="showDepartments">
<!--
<el-cascader
:options="departments"
name="parent_id"
v-model="formData.departmetn_ids"
:show-all-levels="false"
clearable
:props="{ value: 'id', label: 'department_name', checkStrictly: true, multiple: true }"
:props="{ value: 'id', label: 'department_name', emitPath: false, multiple: true }"
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 label="角色权限" prop="permissions">
<el-tree
@ -158,6 +159,7 @@ onMounted(() => {
watch(
formData,
function (value) {
//
showDepartments.value = value.data_range === 2
},
{ deep: true },