소스 검색

606bug修改

tangjunhao 3 달 전
부모
커밋
a2ca407ae7
4개의 변경된 파일71개의 추가작업 그리고 24개의 파일을 삭제
  1. 2 2
      .env.production
  2. 4 1
      src/views/home.vue
  3. 4 3
      src/views/login/index.vue
  4. 61 18
      src/views/login/register.vue

+ 2 - 2
.env.production

@@ -2,5 +2,5 @@
 NODE_ENV=production
 VITE_NAME = '生产环境'
 VITE_BASE_URL = '/airopt'
-#VITE_WEBSOCKET_URL='wss://www.adicn.com/airoptwebsocket?projectId='
-VITE_WEBSOCKET_URL='ws://airopt.surroopt.com/airoptwebsocket?projectId='
+VITE_WEBSOCKET_URL='wss://www.adicn.com/airoptwebsocket?projectId='
+# VITE_WEBSOCKET_URL='ws://airopt.surroopt.com/airoptwebsocket?projectId='

+ 4 - 1
src/views/home.vue

@@ -2336,7 +2336,7 @@ const handleClick = (tab, event) => {
   } else {
 
   }
-  if (tabactive.value == 'Role') {
+  if (tabactive.value == 'Role' || tabactive.value == 'Three') {
     flowshow.value = true;
     console.log(11111)
   } else {
@@ -2810,15 +2810,18 @@ const dialogbolen = () => {
     case "列表监控":
       ifjiankong();
       listtableInit();
+      flowshow.value = false;
       break;
     case "曲线监控":
       ifjiankong()
       curveLine();
+      flowshow.value = false;
       break;
     case "过程监控":
       ifjiankong()
       curveLine2();
       curveLine3();
+      flowshow.value = false;
       break;
     case "列表":
       echatsfunc();

+ 4 - 3
src/views/login/index.vue

@@ -20,16 +20,17 @@
             ref="loginFormRef"
             hide-required-asterisk
             @keyup.enter="handleLogin"
+            label-position="left"
           >
-            <el-form-item prop="username" label="邮箱:" style="margin-bottom: 20px;">
+            <el-form-item prop="username" label="用户名:" label-width="80px" style="margin-bottom: 20px;">
               <el-input
                 v-model="loginForm.username"
-                placeholder="请输入邮箱"
+                placeholder="请输入用户名"
                 clearable
               />
             </el-form-item>
 
-            <el-form-item prop="password" label="密码:" style="margin-bottom: 20px;">
+            <el-form-item prop="password" label="密码:" label-width="80px" style="margin-bottom: 20px;">
               <el-input
                 v-model="loginForm.password"
                 placeholder="请输入密码"

+ 61 - 18
src/views/login/register.vue

@@ -30,9 +30,16 @@
                 clearable
               />
             </el-form-item>
-            <el-form-item prop="username" label="邮箱:" :label-width = "registerlabel" style="margin-bottom: 20px;">
+            <el-form-item prop="username" label="用户名:" :label-width = "registerlabel" style="margin-bottom: 20px;">
               <el-input
                 v-model="registerForm.username"
+                placeholder="请输入用户名"
+                clearable
+              />
+            </el-form-item>
+            <el-form-item prop="email" label="邮箱:" :label-width = "registerlabel" style="margin-bottom: 20px;">
+              <el-input
+                v-model="registerForm.email"
                 placeholder="请输入邮箱"
                 clearable
               />
@@ -50,7 +57,12 @@
                 @paste="onPaste"
                 :ref="el => inputRefs[index] = el"
               />
-              <el-button @click="getAuthCode">获取验证码</el-button>
+              <el-button 
+                :disabled="countdown > 0"
+                @click="getAuthCode"
+              >
+                {{ countdown > 0 ? `${countdown}s后重试` : '获取验证码' }}
+              </el-button>
             </div>
 
             <el-form-item prop="password" label="设置密码:" :label-width = "registerlabel" style="margin-bottom: 20px;">
@@ -131,9 +143,9 @@
             @keyup.enter="handleRegister"
             label-position = "left"
           >
-            <el-form-item prop="username" label="邮箱:" :label-width = "registerlabel" style="margin-bottom: 20px;">
+            <el-form-item prop="email" label="邮箱:" :label-width = "registerlabel" style="margin-bottom: 20px;">
               <el-input
-                v-model="registerForm.username"
+                v-model="registerForm.email"
                 placeholder="请输入邮箱"
                 clearable
               />
@@ -151,7 +163,12 @@
                 @paste="onPaste"
                 :ref="el => inputRefs[index] = el"
               />
-              <el-button @click="getAuthCode2">获取验证码</el-button>
+              <el-button 
+                :disabled="countdown > 0"
+                @click="getAuthCode2"
+              >
+                {{ countdown > 0 ? `${countdown}s后重试` : '获取验证码' }}
+              </el-button>
             </div>
 
             <el-form-item prop="password" label="设置密码:" :label-width = "registerlabel" style="margin-bottom: 20px;">
@@ -200,8 +217,8 @@
           </template>
 
           <div class="register-success">
-            <div style="font-size: 18px;">登录账号: </div>
-            <div style="font-size: 16px;">{{ registerForm.username }}</div>
+            <!-- <div style="font-size: 18px;">登录账号: </div>
+            <div style="font-size: 16px;">{{ registerForm.username }}</div> -->
             <el-button
                 class="register-btn"
                 @click="goToLogin"
@@ -226,6 +243,7 @@ import { ElMessage } from 'element-plus'
 import router from "@/router"
 import { useRoute } from 'vue-router'
 import { request,enPassword } from "@/utils/request"
+import secureStorage from '@/utils/secureStorage'
 
 import { getToken, setToken, setUserId} from "@/utils/token"
 
@@ -245,13 +263,18 @@ const timer = ref(null); // 存储定时器
 const codeLength = 6
 const codeList = ref(Array(codeLength).fill('')) // ['','','','','','']
 
+// 倒计时状态
+const countdown = ref(0)
+let timer2 = null
+
 // 获取多个 el-input 的引用
 const inputRefs = ref([])
 
 // 注册表单数据
 const registerForm = reactive({
   company: '',
-  username: '',
+  username: secureStorage.get('registerUsername')  || '',
+  email: '',
   password: '',
   repassword: ''
 })
@@ -262,6 +285,10 @@ const loading = ref(false)
 // 表单验证规则
 const registerRules = reactive({
   username: [
+    { required: true, message: '', trigger: 'blur' },
+    { min: 1, max: 30, message: '长度在 1 到 30 个字符', trigger: 'blur' }
+  ],
+  email: [
     { required: true, message: '', trigger: 'blur' },
     {
       pattern: /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/,
@@ -323,21 +350,32 @@ const onPaste = (event) => {
   event.preventDefault()
 }
 
+// 开始倒计时
+const startCountdown = () => {
+  countdown.value = 60
+  timer2 = setInterval(() => {
+    countdown.value--
+    if (countdown.value <= 0) {
+      clearInterval(timer2)
+      timer2 = null
+    }
+  }, 1000)
+}
 
 // 获取验证码(注册)
 const getAuthCode = () => {
-  if(!registerForm.username) {
+  if(!registerForm.email) {
     return;
   }
   const params = {
     transCode: "A00001",
-    mailOrPhone: registerForm.username,
+    mailOrPhone: registerForm.email,
     type: '1',
     channel: '2'
   }
   request(params)
   .then((res) => {
-
+    startCountdown()
   })
   .catch((err) => {
     ElMessage.error("获取验证码失败");
@@ -345,18 +383,18 @@ const getAuthCode = () => {
 }
 // 获取验证码(找回密码)
 const getAuthCode2 = () => {
-  if(!registerForm.username) {
+  if(!registerForm.email) {
     return;
   }
   const params = {
     transCode: "A00001",
-    mailOrPhone: registerForm.username,
+    mailOrPhone: registerForm.email,
     type: '2',
     channel: '2'
   }
   request(params)
   .then((res) => {
-
+    startCountdown()
   })
   .catch((err) => {
     ElMessage.error("获取验证码失败");
@@ -382,13 +420,14 @@ const handleRegister = () => {
       transCode: "A00003",
       userName: registerForm.username,
       password: enPassword(registerForm.password),
-      mailOrPhone: registerForm.username,
+      mailOrPhone: registerForm.email,
       channel: "2",
       verificationCode: code,
     }
     request(params)
     .then((res) => {
-      pagechange.value = 'registerSuccess';
+      secureStorage.set('registerUsername', registerForm.username)
+      router.push({ path: "/register", query:{ page: 'registerSuccess' } })
       loginTimer();
     })
     .catch((err) => {
@@ -412,7 +451,7 @@ const loginTimer = () => {
   if (timer.value) {
     clearTimeout(timer.value);
   }
-  
+
   timer.value = setTimeout(() => {
     try {
       goToLogin();
@@ -428,6 +467,9 @@ const goToLogin = () => {
     clearTimeout(timer.value); // 跳转前清除定时器
     timer.value = null;
   }
+
+  secureStorage.remove('registerUsername')
+
   router.push({ path: '/login' })
 }
 
@@ -456,7 +498,7 @@ const handleRePwd = () => {
     const params = {
       transCode: "B00026",
       newPassword: enPassword(registerForm.password),
-      mailOrPhone: registerForm.username,
+      mailOrPhone: registerForm.email,
       verificationCode: code,
     }
     request(params)
@@ -486,6 +528,7 @@ onUnmounted(() => {
   if (timer.value) {
     clearTimeout(timer.value);
   }
+  if (timer2) clearInterval(timer)
 });
 </script>