|
@@ -12,6 +12,7 @@
|
|
|
v-for="item in roleList"
|
|
|
:key="item.id"
|
|
|
:label="item.id"
|
|
|
+ :disabled="item.disabled"
|
|
|
>{{ item.name }}</el-checkbox
|
|
|
>
|
|
|
</el-checkbox-group>
|
|
@@ -45,6 +46,8 @@ export default {
|
|
|
data() {
|
|
|
return {
|
|
|
loading: false,
|
|
|
+ defaultSelectedRole: ["SCHOOL_ADMIN", "SCHOOL_TEACHER", "ASSISTANT"],
|
|
|
+ // SCHOOL_ADMIN("学校管理员"),SCHOOL_TEACHER("学校老师"), ASSISTANT("学院秘书");
|
|
|
modalForm: {
|
|
|
roleIds: []
|
|
|
},
|
|
@@ -72,9 +75,19 @@ export default {
|
|
|
methods: {
|
|
|
async initData() {
|
|
|
const roleData = await sysCustomRoleList();
|
|
|
- this.roleList = roleData || [];
|
|
|
+ const res = roleData || [];
|
|
|
+ this.roleList = res.map(item => {
|
|
|
+ item.disabled = this.defaultSelectedRole.includes(item.type);
|
|
|
+ return item;
|
|
|
+ });
|
|
|
const data = await schoolSetRoleInfo(this.school.id);
|
|
|
this.modalForm.roleIds = data.roleIdList;
|
|
|
+ this.roleList
|
|
|
+ .filter(item => this.defaultSelectedRole.includes(item.type))
|
|
|
+ .forEach(item => {
|
|
|
+ if (this.modalForm.roleIds.includes(item.id)) return;
|
|
|
+ this.modalForm.roleIds.push(item.id);
|
|
|
+ });
|
|
|
},
|
|
|
async confirm() {
|
|
|
const valid = await this.$refs.modalFormComp.validate();
|