瀏覽代碼

对注册页调整,编程页注册默认租户,除此之外注册需要输入租户

liyanbo 2 月之前
父節點
當前提交
d45ce1ebd6
共有 1 個文件被更改,包括 39 次插入18 次删除
  1. 39 18
      src/views/RegisterLogin.vue

+ 39 - 18
src/views/RegisterLogin.vue

@@ -18,12 +18,19 @@
             label-width="0px"
             class="input-item"
           >
-            <!-- 手机号注册 -->
+            <!-- 学校输入框 -->
+            <el-form-item prop="tenantName" v-if="!isBlocklyLogin">
+              <el-input
+                  v-model="loginForm.tenantName"
+                  :prefix-icon="HomeFilled"
+                  placeholder="请输入学校"
+              />
+            </el-form-item>
             <el-form-item prop="phone">
-              <el-input 
-                v-model="loginForm.phone" 
-                :prefix-icon="Iphone" 
-                placeholder="请输入手机号" 
+              <el-input
+                  v-model="loginForm.phone"
+                  :prefix-icon="Iphone"
+                  placeholder="请输入手机号"
               />
             </el-form-item>
             <el-form-item prop="password">
@@ -66,8 +73,8 @@
 </template>
 
 <script setup>
-import { ref, computed } from "vue";
-import { Lock, Iphone, Key } from '@element-plus/icons-vue';
+import { ref, computed, watch } from "vue";
+import { Lock, Iphone, Key, HomeFilled } from '@element-plus/icons-vue';
 import { ElMessage } from 'element-plus';
 import { useRouter } from 'vue-router';
 import homeBG from "@/assets/images/homeBG.png";
@@ -87,6 +94,26 @@ const loginFormRef = ref(null);
 const bgImageType = computed(() => router.currentRoute.value.query.bgImage || 'homeBG');
 const loginTypePage = computed(() => router.currentRoute.value.query.loginType || 'login');
 
+// 注册表单数据
+const loginForm = ref({
+  tenantName: "", // 学校
+  phone: "", // 手机号
+  password: "", // 密码
+  confirmPassword: "", // 确认密码
+  inviteCode: "", // 邀请码
+  rememberMe: false,
+});
+
+// 判断是否为blocklyLogin类型
+const isBlocklyLogin = computed(() => loginTypePage.value === 'blocklyLogin');
+
+// 设置默认值并监听变化
+watch(isBlocklyLogin, (newVal) => {
+  if (newVal) {
+    loginForm.value.tenantName = '内部测试租户';
+  }
+}, { immediate: true });
+
 // 动态选择背景图
 const registerBG = computed(() => {
   switch(bgImageType.value) {
@@ -115,17 +142,11 @@ const goBackToLogin = () => {
   router.replace(loginPath);
 };
 
-// 注册表单数据
-const loginForm = ref({
-  phone: "", // 手机号
-  password: "", // 密码
-  confirmPassword: "", // 确认密码
-  inviteCode: "", // 邀请码
-  rememberMe: false,
-});
-
 // 表单验证规则
 const rules = ref({
+  tenantName: [
+    { required: true, message: "请输入学校", trigger: "blur" }
+  ],
   phone: [
     { required: true, message: "请输入手机号", trigger: "blur" },
     { pattern: /^1[3-9]\d{9}$/, message: "请输入正确的手机号格式", trigger: "blur" }
@@ -155,8 +176,8 @@ const handleRegister = async () => {
   try {
     // 表单验证
     await loginFormRef.value.validate();
-    // 获取默认租户名称
-    const tenantName = '内部测试租户';
+    // 获取租户名称
+    const tenantName = loginForm.value.tenantName;
     // 获取租户ID
     const tenantId = await getTenantId(tenantName);
     if (!tenantId) {