From 2532353e2b4a256fba0fa93a768b389ccb631ee2 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期四, 30 十一月 2023 16:11:43 +0800
Subject: [PATCH] 新增
---
src/layout/components/Register/index.vue | 30 +++++++++++++++++++++++++++---
src/api/login.js | 24 ++++++++++++++++++++++++
2 files changed, 51 insertions(+), 3 deletions(-)
diff --git a/src/api/login.js b/src/api/login.js
index 85e37b4..0aa798c 100644
--- a/src/api/login.js
+++ b/src/api/login.js
@@ -82,4 +82,28 @@
params: path,
timeout: 20000
})
+}
+
+// 校验用户名
+export function checkUserName(data) {
+ return request({
+ url: '/system/user/checkUserNameUnique',
+ headers: {
+ isToken: false
+ },
+ method: 'post',
+ data: data
+ })
+}
+
+// 校验手机号
+export function checkPhone(data) {
+ return request({
+ url: '/system/user/checkPhoneUnique',
+ headers: {
+ isToken: false
+ },
+ method: 'post',
+ data: data
+ })
}
\ No newline at end of file
diff --git a/src/layout/components/Register/index.vue b/src/layout/components/Register/index.vue
index 9732e21..696298d 100644
--- a/src/layout/components/Register/index.vue
+++ b/src/layout/components/Register/index.vue
@@ -288,7 +288,7 @@
<script setup>
import {ref, watch, defineExpose, onMounted, reactive} from "vue"
import {ElMessage, ElMessageBox} from "element-plus"
-import { register,delPic,getDict } from "@/api/login"
+import { register,delPic,getDict,checkUserName, checkPhone } from "@/api/login"
import { getRegionTree } from "@/api/area"
import { getToken } from "@/utils/auth";
import {verifyPhone, verifyUsername, verifyPwd} from "../../../utils/validate";
@@ -364,6 +364,24 @@
}
}
+const validateUserPhone = (rule, value, callback)=>{
+ if(value === ''){
+ callback(new Error('请输入手机号'))
+ }else{
+ if(!verifyPhone(value)){
+ callback(new Error('手机号格式有误'))
+ }else{
+ checkPhone({phone:value}).then((res)=>{
+ if(res == false){
+ callback(new Error('该手机号已被绑定用户,请更换其他手机号'))
+ }else{
+ callback()
+ }
+ })
+ }
+ }
+}
+
const validateUsername = (rule, value, callback)=>{
if(value === ''){
callback(new Error('请输入登录时用户名'))
@@ -371,7 +389,13 @@
if(!verifyUsername(value)){
callback(new Error('用户名须使用字母+数字,长度在5-16之间'))
}else{
- callback()
+ checkUserName({username:value}).then((res)=>{
+ if(res == false){
+ callback(new Error('用户名已被占用,请更换其他用户名'))
+ }else{
+ callback()
+ }
+ })
}
}
}
@@ -408,7 +432,7 @@
"agency.business": [{required: true, trigger: "blur", message: "请选择申请的法定安全评价业务范围"}],
"agency.reportPath": [{required: true, trigger: "blur", message: "请上传加盖公章的《机构信息上报表》"}],
username: [{ required: true, trigger: "blur", validator: validateUsername }],
- phone: [{ required: true, trigger: "blur", validator: validatePhone }],
+ phone: [{ required: true, trigger: "blur", validator: validateUserPhone }],
password: [{ required: true, trigger: "blur", validator: validatePwd }],
confirmPassword: [
{ required: true, trigger: "blur", message: "请再次确认密码" },
--
Gitblit v1.9.2