diff --git a/src/components/rightBox/settings/RoleBox.vue b/src/components/rightBox/settings/RoleBox.vue index 31f1bc08..83e92e64 100644 --- a/src/components/rightBox/settings/RoleBox.vue +++ b/src/components/rightBox/settings/RoleBox.vue @@ -64,6 +64,18 @@ export default { detail: Boolean }, data () { + const validateName = (rule, value, callback) => { + let validate = true + const reg = /^[a-zA-Z0-9\u4e00-\u9fa5\u30a1-\u30f6\u3041-\u3093\uFF00-\uFFFF\u4e00-\u9fa5\u0400-\u04FF\s]{2,64}$/ + validate = reg.test(value) + if (value.length < 2) { + callback(new Error(this.$t('validate.atLeastTwo'))) + } else if (!validate) { + callback(new Error(this.$t('validate.name'))) + } else { + callback() + } + } return { editRole: {}, url: api.role, @@ -71,7 +83,7 @@ export default { rules: { // 表单校验规则 name: [ { required: true, message: this.$t('validate.required'), trigger: 'blur' }, - { pattern: /^[a-zA-Z0-9]{2,64}$/, message: this.$t('validate.atLeastTwo') } // 目前仅对长度要求在2-64之间,后续有需求再添加 + { validator: validateName, trigger: 'change' } ] }, menus: [], diff --git a/src/components/rightBox/settings/UserBox.vue b/src/components/rightBox/settings/UserBox.vue index b7a430d6..66f55798 100644 --- a/src/components/rightBox/settings/UserBox.vue +++ b/src/components/rightBox/settings/UserBox.vue @@ -132,17 +132,29 @@ export default { callback() } } + const validateName = (rule, value, callback) => { + let validate = true + const reg = /^[a-zA-Z0-9\u4e00-\u9fa5\u30a1-\u30f6\u3041-\u3093\uFF00-\uFFFF\u4e00-\u9fa5\u0400-\u04FF\s]{2,64}$/ + validate = reg.test(value) + if (value.length < 2) { + callback(new Error(this.$t('validate.atLeastTwo'))) + } else if (!validate) { + callback(new Error(this.$t('validate.name'))) + } else { + callback() + } + } return { url: api.user, loginName: localStorage.getItem(storageKey.username), rules: { // 表单校验规则 name: [ { required: true, message: this.$t('validate.required'), trigger: 'blur' }, - { pattern: /^[a-zA-Z0-9]{2,64}$/, message: this.$t('validate.atLeastTwo') } + { validator: validateName, trigger: 'change' } ], username: [ { required: true, message: this.$t('validate.required'), trigger: 'blur' }, - { pattern: /^[a-zA-Z0-9]{2,64}$/, message: this.$t('validate.atLeastTwo') } + { pattern: /^[a-zA-Z0-9_]{2,64}$/, message: this.$t('validate.atLeastTwo') } ], pin: [ { required: true, message: this.$t('validate.required'), trigger: 'blur' }, diff --git a/src/utils/constants.js b/src/utils/constants.js index b1326aef..2ab9bd51 100644 --- a/src/utils/constants.js +++ b/src/utils/constants.js @@ -105,6 +105,8 @@ export const entityDetailTabsName = { performanceEvent: 'performanceEvent' } +export const entityDetailRelatedEntitiesShowSize = 100 + export const echartsFontSize = { legendFirstFontSize: 12, // <1920 legendSecondFontSize: 14, // >=1920 && <2560