diff --git a/jero-web/src/views/system/modules/RoleModal.vue b/jero-web/src/views/system/modules/RoleModal.vue index 87762890..54fdf71a 100644 --- a/jero-web/src/views/system/modules/RoleModal.vue +++ b/jero-web/src/views/system/modules/RoleModal.vue @@ -43,11 +43,11 @@ export default { confirmLoading: false, validatorRules: { roleName: [ - { required: true, message: '请输入角色名称!' }, + { required: true, validator: this.validateRoleName }, { min: 2, max: 30, message: '长度在 2 到 30 个字符', trigger: 'blur' } ], roleCode: [ - { required: true, message: '请输入角色名称!' }, + { required: true, message: '请输入角色编码!' }, { min: 0, max: 64, message: '长度不超过 64 个字符', trigger: 'blur' }, { validator: this.validateRoleCode } ], @@ -125,6 +125,25 @@ export default { } }) } + }, + validateRoleName (rule, value, callback) { + if (!value) { + callback(new Error('请输入角色名称!')) + } else { + const params = { + tableName: 'sys_role', + fieldName: 'role_name', + fieldVal: value, + dataId: this.model.id + } + duplicateCheck(params).then((res) => { + if (res.success) { + callback() + } else { + callback(res.message) + } + }) + } } } }