diff --git a/web/src/utils/toolsValidate.ts b/web/src/utils/toolsValidate.ts index f2cb9d6..ec89679 100644 --- a/web/src/utils/toolsValidate.ts +++ b/web/src/utils/toolsValidate.ts @@ -190,7 +190,7 @@ export function verifyNumberCnUppercase(val: any, unit = '仟佰拾亿仟佰拾 */ export function verifyPhone(val: string) { // false: 手机号码不正确 - if (!/^((12[0-9])|(13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0|1,5-9]))\d{8}$/.test(val)) return false; + if (!/^((\+|00)86)?1((3[\d])|(4[5,6,7,9])|(5[0-3,5-9])|(6[5-7])|(7[0-8])|(8[\d])|(9[1,8,9]))\d{8}$/.test(val)) return false; // true: 手机号码正确 else return true; } diff --git a/web/src/views/system/dept/crud.tsx b/web/src/views/system/dept/crud.tsx index f055ec9..190a6ea 100644 --- a/web/src/views/system/dept/crud.tsx +++ b/web/src/views/system/dept/crud.tsx @@ -8,6 +8,7 @@ interface CreateCrudOptionsTypes { } export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExpose }): CreateCrudOptionsTypes { + const { getFormRef, getFormData } = crudExpose; const pageRequest = async (query: PageQuery) => { return await api.GetList(query); }; @@ -22,6 +23,17 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp return await api.AddObj(form); }; + const validatePhone = async (rule: any, value: any, callback: any) => { + if (value === '') { + throw new Error('请输入手机号码'); + } + if (verifyPhone(value)) { + callback(); + } else { + throw new Error('手机号码格式有误'); + } + }; + /** * 懒加载 * @param row @@ -155,10 +167,7 @@ export const createCrudOptions = function ({ crudExpose }: { crudExpose: CrudExp title: '联系电话', sortable: true, form: { - rules: [ - { required: true, message: '请输入联系电话' }, - { validator: verifyPhone, trigger: 'change' }, - ], + rules: [{ validator: validatePhone, trigger: 'blur' }], component: { span: 12, props: {