From 470153d1cd1f5043a4f0c55370e8f641839d5269 Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期二, 30 一月 2024 10:46:57 +0800
Subject: [PATCH] bug修改
---
src/layout/components/Register/index.vue | 69 ++++++++++++++++++++++++++--------
1 files changed, 53 insertions(+), 16 deletions(-)
diff --git a/src/layout/components/Register/index.vue b/src/layout/components/Register/index.vue
index 88446c0..e284428 100644
--- a/src/layout/components/Register/index.vue
+++ b/src/layout/components/Register/index.vue
@@ -108,7 +108,7 @@
<el-input
v-model="registerForm.agency.certNumber"
size="large"
- placeholder="请输入机构负责人"
+ placeholder="请输入资质证书编号"
/>
</el-form-item>
</el-col>
@@ -227,6 +227,7 @@
<el-col :span="12">
<el-form-item prop="username" label="登录用户名(字母+数字,长度在5-16之间)">
<el-input
+ :disabled="state.title == '编辑'"
v-model.trim="registerForm.username"
size="large"
placeholder="请输入登录用户名"
@@ -245,7 +246,7 @@
</el-row>
<el-row :gutter="30" v-if="state.title == '新增/注册'">
<el-col :span="12">
- <el-form-item prop="password" label="密码">
+ <el-form-item prop="password" label="密码(字母+数字+特殊字符,长度在6-16之间)">
<el-input
v-model.trim="registerForm.password"
type="password"
@@ -276,6 +277,7 @@
type="primary"
style="width:40%;margin: 0 auto"
@click.prevent="handleRegister"
+ v-preReClick
>
<div v-if="state.title == '新增/注册'">
<span v-if="!loading">注 册</span>
@@ -390,7 +392,18 @@
if(!verifyPhone(value)){
callback(new Error('手机号格式有误'))
}else{
- checkPhone({phone:value}).then((res)=>{
+ let param = {}
+ if(state.title=='新增/注册') {
+ param = {
+ phone:value
+ }
+ }else if(state.title=='编辑'){
+ param = {
+ phone:value,
+ id: state.registerForm.id
+ }
+ }
+ checkPhone(param).then((res)=>{
if(res.data == false){
callback(new Error('该手机号已被绑定用户,请更换其他手机号'))
}else{
@@ -408,9 +421,20 @@
callback()
}else{
if(!verifyUsername(value)){
- callback(new Error('用户名须使用字母+数字,长度在5-16之间'))
+ callback(new Error('用户名须使用字母或数字,长度在5-16之间'))
}else{
- checkUserName({username:value}).then((res)=>{
+ let param = {}
+ if(state.title=='新增/注册') {
+ param = {
+ username:value
+ }
+ }else if(state.title=='编辑'){
+ param = {
+ username:value,
+ id: state.registerForm.id
+ }
+ }
+ checkUserName(param).then((res)=>{
if(res.data == false){
callback(new Error('用户名已被占用,请更换其他用户名'))
}else{
@@ -426,7 +450,7 @@
callback(new Error('请输入密码'))
}else{
if(!verifyPwd(value)){
- callback(new Error('密码须包含字母、数字、特殊字符(不包括下划线),长度在6-16之间'))
+ callback(new Error('密码须包含字母、数字、特殊字符,长度在6-16之间'))
}else{
callback()
}
@@ -466,17 +490,22 @@
const registerRef = ref(null)
onMounted(()=>{
- const userInfo = JSON.parse(Cookies.get('userInfo'))
- if(userInfo.identity == 0){isSuper.value = true}
+ if(getToken()){
+ const userInfo = JSON.parse(Cookies.get('userInfo'))
+ if(userInfo.identity == 0){isSuper.value = true}
+ }
+
getBusiness()
- watchEffect(() => {
- // 在副作用中调用 getArea()
- getArea();
- });
+ getArea()
+ // watchEffect(() => {
+ // // 在副作用中调用 getArea()
+ // getArea();
+ // });
})
const isAbleEdit = ref(false);
const openDialog=(type, value)=>{
state.title = type === 'add' ? '新增/注册' : type ==='edit' ? '编辑' : '查看' ;
+ getArea()
if(type === 'edit' || type == 'view') {
state.registerForm.id = value.id
state.registerForm.username = value.username
@@ -484,9 +513,9 @@
startUsername.value = value.username
startPhone.value = value.phone
state.registerForm.agency.id = value.agencyId
- if(value.state == 2 && isSuper.value){
+ if( isSuper.value){
isAbleEdit.value = false
- }else {
+ }else{
isAbleEdit.value = true
}
getAgencyById({agencyId: value.agencyId}).then((res)=>{
@@ -497,6 +526,8 @@
state.registerForm.agency[i] = info[i]
}
}
+ getArea()
+
state.registerForm.agency.business = info.business.split(',').map(Number)
if(state.registerForm.agency.attribute === 0){
state.registerForm.agency.area = [info.city,info.district].filter(item => { return item && item.trim() })
@@ -613,10 +644,11 @@
if (valid) {
loading.value = true;
if(state.title == '新增/注册'){
- const {confirmPassword, ...data} = state.registerForm
+ const {confirmPassword,id, ...data} = JSON.parse(JSON.stringify(state.registerForm))
data.password = Base64.encode(data.password)
data.agency.business = data.agency.business.join(',')
delete data.agency.area
+ delete data.agency.id
register(data).then(res => {
if(res.code == 200){
const username = state.registerForm.username
@@ -625,10 +657,13 @@
type: "success",
}).then(() => {
emit("getList")
+
dialogVisible.value = false
+ state.registerForm.agency.attribute = 0
proxy.$refs.registerRef.resetFields()
proxy.$refs.registerRef.clearValidate()
state.fileList = []
+ loading.value = false
// router.push("/homePage")
}).catch(() => {})
}else{
@@ -641,7 +676,7 @@
loading.value = false
})
}else {
- const {confirmPassword, ...data} = state.registerForm
+ const {confirmPassword, ...data} = JSON.parse(JSON.stringify(state.registerForm))
data.password = Base64.encode(data.password)
console.log('data',data)
data.agency.business = data.agency.business.join(',')
@@ -655,6 +690,7 @@
})
emit("getList")
dialogVisible.value = false
+ state.registerForm.agency.attribute = 0
proxy.$refs.registerRef.resetFields()
proxy.$refs.registerRef.clearValidate()
state.fileList = []
@@ -675,6 +711,7 @@
}
const closeDialog = ()=>{
+ state.registerForm.agency.attribute = 0
proxy.$refs.registerRef.resetFields()
proxy.$refs.registerRef.clearValidate()
state.fileList = []
--
Gitblit v1.9.2