From c13c622eac5551c6f099f148feb5256711ca34de Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期二, 11 七月 2023 21:03:01 +0800 Subject: [PATCH] !25 部分优化以及新增功能 Merge pull request !25 from ahaos/tspr --- src/views/register.vue | 125 ++++++++++++++++++++--------------------- 1 files changed, 62 insertions(+), 63 deletions(-) diff --git a/src/views/register.vue b/src/views/register.vue index b80ce5d..0716532 100644 --- a/src/views/register.vue +++ b/src/views/register.vue @@ -58,19 +58,18 @@ <script setup lang="ts"> import { getCodeImg, register, getTenantList } from '@/api/login'; import { RegisterForm, TenantVO } from '@/api/types'; -import { FormRules } from 'element-plus'; import { to } from 'await-to-js'; const router = useRouter(); const registerForm = ref<RegisterForm>({ - tenantId: "", - username: "", - password: "", - confirmPassword: "", - code: "", - uuid: "", - userType: "sys_user" + tenantId: "", + username: "", + password: "", + confirmPassword: "", + code: "", + uuid: "", + userType: "sys_user" }); // 绉熸埛寮�鍏� @@ -78,30 +77,30 @@ const equalToPassword = (rule: any, value: string, callback: any) => { - if (registerForm.value.password !== value) { - callback(new Error("涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�")); - } else { - callback(); - } + if (registerForm.value.password !== value) { + callback(new Error("涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�")); + } else { + callback(); + } }; -const registerRules: FormRules = { - tenantId: [ - { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勭鎴风紪鍙�" } - ], - username: [ - { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勮处鍙�" }, - { min: 2, max: 20, message: "鐢ㄦ埛璐﹀彿闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", trigger: "blur" } - ], - password: [ - { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勫瘑鐮�" }, - { min: 5, max: 20, message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿", trigger: "blur" } - ], - confirmPassword: [ - { required: true, trigger: "blur", message: "璇峰啀娆¤緭鍏ユ偍鐨勫瘑鐮�" }, - { required: true, validator: equalToPassword, trigger: "blur" } - ], - code: [{ required: true, trigger: "change", message: "璇疯緭鍏ラ獙璇佺爜" }] +const registerRules: ElFormRules = { + tenantId: [ + { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勭鎴风紪鍙�" } + ], + username: [ + { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勮处鍙�" }, + { min: 2, max: 20, message: "鐢ㄦ埛璐﹀彿闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", trigger: "blur" } + ], + password: [ + { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勫瘑鐮�" }, + { min: 5, max: 20, message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿", trigger: "blur" } + ], + confirmPassword: [ + { required: true, trigger: "blur", message: "璇峰啀娆¤緭鍏ユ偍鐨勫瘑鐮�" }, + { required: true, validator: equalToPassword, trigger: "blur" } + ], + code: [{ required: true, trigger: "change", message: "璇疯緭鍏ラ獙璇佺爜" }] }; const codeUrl = ref(""); const loading = ref(false); @@ -111,50 +110,50 @@ const tenantList = ref<TenantVO[]>([]); const handleRegister = () => { - registerRef.value.validate(async (valid: boolean) => { - if (valid) { - loading.value = true; - const [err] = await to(register(registerForm.value)); - if (!err) { - const username = registerForm.value.username; - await ElMessageBox.alert("<font color='red'>鎭枩浣狅紝鎮ㄧ殑璐﹀彿 " + username + " 娉ㄥ唽鎴愬姛锛�</font>", "绯荤粺鎻愮ず", { - dangerouslyUseHTMLString: true, - type: "success", - }); - await router.push("/login"); - } else { - loading.value = false; - if (captchaEnabled) { - getCode(); - } - } + registerRef.value.validate(async (valid: boolean) => { + if (valid) { + loading.value = true; + const [err] = await to(register(registerForm.value)); + if (!err) { + const username = registerForm.value.username; + await ElMessageBox.alert("<font color='red'>鎭枩浣狅紝鎮ㄧ殑璐﹀彿 " + username + " 娉ㄥ唽鎴愬姛锛�</font>", "绯荤粺鎻愮ず", { + dangerouslyUseHTMLString: true, + type: "success", + }); + await router.push("/login"); + } else { + loading.value = false; + if (captchaEnabled) { + getCode(); } - }); + } + } + }); } const getCode = async () => { - const { data } = await getCodeImg(); - captchaEnabled.value = data.captchaEnabled === undefined ? true : data.captchaEnabled; - if (captchaEnabled.value) { - codeUrl.value = "data:image/gif;base64," + data.img; - registerForm.value.uuid = data.uuid; - } + const { data } = await getCodeImg(); + captchaEnabled.value = data.captchaEnabled === undefined ? true : data.captchaEnabled; + if (captchaEnabled.value) { + codeUrl.value = "data:image/gif;base64," + data.img; + registerForm.value.uuid = data.uuid; + } } const initTenantList = async () => { - const { data } = await getTenantList(); - tenantEnabled.value = data.tenantEnabled === undefined ? true : data.tenantEnabled; - if (tenantEnabled.value) { - tenantList.value = data.voList; - if (tenantList.value != null && tenantList.value.length !== 0) { - registerForm.value.tenantId = tenantList.value[0].tenantId; - } + const { data } = await getTenantList(); + tenantEnabled.value = data.tenantEnabled === undefined ? true : data.tenantEnabled; + if (tenantEnabled.value) { + tenantList.value = data.voList; + if (tenantList.value != null && tenantList.value.length !== 0) { + registerForm.value.tenantId = tenantList.value[0].tenantId; } + } } onMounted(() => { - getCode(); - initTenantList(); + getCode(); + initTenantList(); }) </script> -- Gitblit v1.9.3