fix: bug#10653、10654

This commit is contained in:
JiangQiming 2023-03-21 17:26:03 +08:00
parent b65302e1c6
commit b78aa24b8e
3 changed files with 23 additions and 3 deletions

View File

@ -7,4 +7,13 @@ export const phoneRegEx = (value: string) => {
const phone = new RegExp('^(((\\+86)|(\\+86-))|((86)|(86\\-))|((0086)|(0086\\-)))?1[3|5|7|8|9]\\d{9}$')
const mobile = /(0[0-9]{2,3})([2-9][0-9]{6,7})+([0-9]{8,11})?$/
return phone.test(value) || mobile.test(value)
}
/**
*
* @param value
* @returns {boolean}
*/
export const passwordRegEx = (value: string) => {
const password = new RegExp(/^\S*(?=\S{8,})(?=\S*\d)(?=\S*[A-Z])(?=\S*[a-z])\S*$/)
return password.test(value)
}

View File

@ -11,7 +11,10 @@
<j-form ref="formRef" :model="form.data" layout="vertical">
<j-form-item
name="id"
:rules="[{ validator: form.rules.idCheck, trigger: 'blur' }]"
:rules="[
{ required: true, message: '' },
{ validator: form.rules.idCheck, trigger: 'blur' },
]"
class="question-item"
>
<template #label>

View File

@ -16,7 +16,13 @@
<j-form-item
name="name"
label="姓名"
:rules="[{ required: true, message: '请输入姓名' }]"
:rules="[
{ required: true, message: '请输入姓名' },
{
max: 64,
message: '最多可输入64个字符',
},
]"
>
<j-input
v-model:value="form.data.name"
@ -53,7 +59,7 @@
{ required: true, message: '' },
{
validator: form.rules.checkPassword,
trigger: 'blur',
trigger: 'change',
},
]"
>
@ -188,6 +194,7 @@ import {
import { Rule } from 'ant-design-vue/es/form';
import { DefaultOptionType } from 'ant-design-vue/es/vc-tree-select/TreeSelect';
import { AxiosResponse } from 'axios';
import { passwordRegEx } from '@/utils/validate';
const deptPermission = 'system/Department';
const rolePermission = 'system/Role';
@ -243,6 +250,7 @@ const form = reactive({
if (!value) return reject('请输入密码');
else if (value.length > 64) return reject('最多可输入64个字符');
else if (value.length < 8) return reject('密码不能少于8位');
else if (!passwordRegEx(value)) return reject('密码必须包含大小写英文和数字');
validateField_api('password', value).then((resp: any) => {
resp.result.passed
? resolve('')