From 5e69aed97ed2b3a28d7913092ea636851cadbecc Mon Sep 17 00:00:00 2001 From: bunny <1319900154@qq.com> Date: Mon, 28 Oct 2024 16:52:28 +0800 Subject: [PATCH] =?UTF-8?q?fixbug:=20=F0=9F=90=9B=20=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84=E5=92=8C=E5=B7=B2=E7=9F=A5?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Table/ResetPasswords.vue | 11 ++++- src/views/login/index.vue | 4 +- src/views/login/login-email.vue | 3 +- src/views/login/login-form.vue | 3 +- src/views/login/utils/hooks.ts | 4 +- src/views/system/adminUser/utils/columns.tsx | 35 ++++++++++++-- src/views/system/power/power-dialog.vue | 9 ++-- src/views/system/power/utils/columns.ts | 5 +- src/views/system/role/utils/hooks.ts | 48 +++++++++++--------- 9 files changed, 84 insertions(+), 38 deletions(-) diff --git a/src/components/Table/ResetPasswords.vue b/src/components/Table/ResetPasswords.vue index 2024582..2bbe98c 100644 --- a/src/components/Table/ResetPasswords.vue +++ b/src/components/Table/ResetPasswords.vue @@ -3,6 +3,7 @@ import { onMounted, ref, watch } from 'vue'; import { $t } from '@/plugins/i18n'; import { zxcvbn } from '@zxcvbn-ts/core'; import { isAllEmpty } from '@pureadmin/utils'; +import { REGEXP_PWD } from '@/views/login/utils/rule'; const props = defineProps({ form: { @@ -11,7 +12,15 @@ const props = defineProps({ }); const rules = { - password: [{ required: true, message: '请输入新密码', trigger: 'blur' }], + password: [ + { required: true, message: '请输入新密码', trigger: 'blur' }, + { + type: 'pattern', + message: $t('login.purePassWordRuleReg'), + trigger: ['change', 'blur'], + pattern: REGEXP_PWD, + }, + ], }; const pwdProgress = [ { color: '#e74242', text: '非常弱' }, diff --git a/src/views/login/index.vue b/src/views/login/index.vue index ca3d187..3d6cf07 100644 --- a/src/views/login/index.vue +++ b/src/views/login/index.vue @@ -71,8 +71,8 @@ onMounted(() => { - - + + diff --git a/src/views/login/login-email.vue b/src/views/login/login-email.vue index b9edaf6..812ae39 100644 --- a/src/views/login/login-email.vue +++ b/src/views/login/login-email.vue @@ -11,7 +11,7 @@ import { message } from '@/utils/message'; import { getTopMenu, initRouter } from '@/router/utils'; import Motion from './utils/motion'; import { ElMessage, FormInstance } from 'element-plus'; -import { onBack } from '@/views/login/utils/hooks'; +import { currentPage, onBack } from '@/views/login/utils/hooks'; const router = useRouter(); const userStore = useUserStore(); @@ -25,6 +25,7 @@ const ruleForm = reactive({ username: '1319900154@qq.com', password: 'admin123', emailCode: '1', + type: currentPage.value, }); /** diff --git a/src/views/login/login-form.vue b/src/views/login/login-form.vue index e27ec1d..8adfb29 100644 --- a/src/views/login/login-form.vue +++ b/src/views/login/login-form.vue @@ -22,6 +22,7 @@ const { t } = useI18n(); const ruleForm = reactive({ username: 'bunny', password: 'admin123', + type: currentPage.value, }); /** @@ -93,7 +94,7 @@ onBeforeUnmount(() => { - 邮箱登录 + 邮箱登录 diff --git a/src/views/login/utils/hooks.ts b/src/views/login/utils/hooks.ts index 1c95677..7bd049c 100644 --- a/src/views/login/utils/hooks.ts +++ b/src/views/login/utils/hooks.ts @@ -1,9 +1,9 @@ import { ref } from 'vue'; // 0普通登录,1邮箱登录,其中0为普通登录 -export const currentPage = ref(0); +export const currentPage = ref('default'); /** 返回到默认登录页面 */ export const onBack = () => { - currentPage.value = 0; + currentPage.value = 'default'; }; diff --git a/src/views/system/adminUser/utils/columns.tsx b/src/views/system/adminUser/utils/columns.tsx index 2191411..86f5cb1 100644 --- a/src/views/system/adminUser/utils/columns.tsx +++ b/src/views/system/adminUser/utils/columns.tsx @@ -1,5 +1,7 @@ import { computed, reactive, ref } from 'vue'; import { $t } from '@/plugins/i18n'; +import type { FormRules } from 'element-plus'; +import { REGEXP_PWD } from '@/views/login/utils/rule'; // 是否是更新用户信息 export const isAddUserinfo = ref(false); @@ -36,15 +38,40 @@ export const columns: TableColumnList = [ ]; // 添加规则 -export const rules: any = reactive({ +export const rules: any = reactive({ // 用户名 username: [{ required: true, message: `${$t('input')}${$t('adminUser_username')}`, trigger: 'blur' }], // 密码 - password: [{ required: isAddUserinfo, message: `${$t('input')}${$t('adminUser_password')}`, trigger: 'blur' }], + password: [ + { + required: isAddUserinfo.value, + message: `${$t('input')}${$t('adminUser_password')}`, + trigger: 'blur', + }, + { + type: 'pattern', + message: $t('login.purePassWordRuleReg'), + trigger: ['change', 'blur'], + pattern: REGEXP_PWD, + }, + ], // 邮箱 email: [ - { required: true, message: `${$t('input')}${$t('adminUser_email')}`, trigger: 'blur' }, - { type: 'email', message: `${$t('input')}${$t('adminUser_email')}${$t('format_error')}` }, + { required: true, message: `${$t('input')}${$t('adminUser_email')}`, trigger: ['change', 'blur'] }, + { + type: 'email', + message: `${$t('input')}${$t('adminUser_email')}${$t('format_error')}`, + trigger: ['change', 'blur'], + }, + ], + // 手机号 + phone: [ + { + type: 'pattern', + message: `${$t('input')}${$t('adminUser_phone')}${$t('format_error')}`, + trigger: ['change', 'blur'], + pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|166|17[3678]|18[0-9]|14[57])[0-9]{8}$/, + }, ], // 状态 status: [{ required: true, message: `${$t('input')}${$t('adminUser_status')}`, trigger: 'blur' }], diff --git a/src/views/system/power/power-dialog.vue b/src/views/system/power/power-dialog.vue index 71bfc24..09211b5 100644 --- a/src/views/system/power/power-dialog.vue +++ b/src/views/system/power/power-dialog.vue @@ -1,5 +1,5 @@