From 3451f5695d6fb65eeac2f4eedd9bf8cdd16a6d79 Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期五, 01 十二月 2023 17:21:12 +0800
Subject: [PATCH] 评价类型、业务范围

---
 src/layout/components/Register/index.vue |   35 ++++++++++++++++++++++++++++++-----
 1 files changed, 30 insertions(+), 5 deletions(-)

diff --git a/src/layout/components/Register/index.vue b/src/layout/components/Register/index.vue
index a7eae8c..696298d 100644
--- a/src/layout/components/Register/index.vue
+++ b/src/layout/components/Register/index.vue
@@ -179,12 +179,12 @@
           </el-col>
           <el-col :span="8">
             <el-form-item prop="agency.business" label="申请的法定安全评价业务范围">
-              <el-select v-model="registerForm.agency.business" placeholder="请选择业务范围" size="large" style="width: 100%">
+              <el-select v-model="registerForm.agency.business" placeholder="请选择业务范围" multiple size="large" style="width: 100%">
                 <el-option
                     v-for="item in state.busList"
                     :key="item.id"
                     :label="item.label"
-                    :value="item.label"
+                    :value="item.id"
                 />
               </el-select>
             </el-form-item>
@@ -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: "请再次确认密码" },
@@ -516,6 +540,7 @@
       loading.value = true;
       const {confirmPassword, ...data} = registerForm.value
       data.password = Base64.encode(data.password)
+      data.agency.business = data.agency.business.join(',')
       delete data.agency.area
       register(data).then(res => {
         if(res.code == 200){

--
Gitblit v1.9.2