瀏覽代碼

调整登录

yangdr 2 天之前
父節點
當前提交
96d0f57482
共有 5 個文件被更改,包括 77 次插入59 次删除
  1. 1 1
      .env.development
  2. 1 1
      .env.production
  3. 10 2
      src/router/index.ts
  4. 62 52
      src/views/AppCopy.vue
  5. 3 3
      vite.config.ts

+ 1 - 1
.env.development

@@ -1,2 +1,2 @@
 NODE_ENV = development
-VITE_API_URL = http://173.18.12.205:8002
+VITE_API_URL = http://173.18.12.205:8005

+ 1 - 1
.env.production

@@ -1,2 +1,2 @@
 NODE_ENV = production
-VITE_API_URL = http://kgb-server:8000
+VITE_API_URL = http://kgb-server:8005

+ 10 - 2
src/router/index.ts

@@ -1,4 +1,4 @@
-import { createRouter, createWebHistory } from "vue-router";
+import { createRouter, createWebHistory, isNavigationFailure } from "vue-router";
 import AppCopy from "@/views/AppCopy.vue";
 import HomeView from "@/views/HomeView.vue";
 import Layout from "@/views/KMPlatform/Layout.vue";
@@ -14,7 +14,7 @@ import AccountManage from "@/views/KMPlatform/Permission/AccountManage.vue";
 import PermissionManage from "@/views/KMPlatform/Permission/permission.vue";
 import RoleManage from "@/views/KMPlatform/Permission/RoleManage.vue";
 import EntityRelationshipTypeManagement from '@/views/KMPlatform/KGBuilder/KRTM/EntityRelationshipTypeManagement.vue'
-import { getSessionVar,  deleteSessionVar } from "@/utils/session";
+import { getSessionVar, deleteSessionVar } from "@/utils/session";
 
 const router = createRouter({
   history: createWebHistory(import.meta.env.BASE_URL),
@@ -199,4 +199,12 @@ router.beforeEach((to, from, next) => {
   }
 });
 
+router.afterEach((to, from, failure) => {
+  if (isNavigationFailure(failure)) {
+    console.log('failed navigation', failure)
+  } else {
+    to.meta.title ? (document.title = to.meta.title as string) : document.title = '知识图谱自动化构建平台'
+  }
+})
+
 export default router;

+ 62 - 52
src/views/AppCopy.vue

@@ -2,54 +2,54 @@
   <el-container v-if="isLoggedIn == false" class="login-box">
     <div style="width: 50%;"></div>
     <div class="login-container">
-  <div class="login-header">
-      <!-- <h1>知识图谱自动化构建平台</h1><br> -->
-      <h1>欢迎{{isSignedIn? '注册' : '登录'}}知识图谱自动化构建平台</h1>
-    </div>
+      <div class="login-header">
+        <!-- <h1>知识图谱自动化构建平台</h1><br> -->
+        <h1>欢迎{{ isSignedIn ? '注册' : '登录' }}知识图谱自动化构建平台</h1>
+      </div>
 
-    <div v-if="isSignedIn == false">
-      <el-form v-model="loginForm">
-        <el-form-item label="用户名" :label-width="loginForm.formLabelWidth" size="large">
-          <el-input v-model="loginForm.username" name="username" placeholder="请输入用户名"></el-input>
-        </el-form-item>
-        <el-form-item label="密码" :label-width="loginForm.formLabelWidth" size="large">
-          <el-input v-model="loginForm.password" name="password" type="password" placeholder="请输入密码"></el-input>
-        </el-form-item>
-        <el-form-item label="" :label-width="loginForm.formLabelWidth">
-          <el-button type="primary" @click="handleLoginSubmit">登录</el-button>
-          <el-button type="success" @click="handleSignIn">注册</el-button>
-        </el-form-item>
-      </el-form>
-    </div>
-    <div v-if="isSignedIn == true">
-      <!-- <div>
+      <div v-if="isSignedIn == false">
+        <el-form v-model="loginForm">
+          <el-form-item label="用户名" :label-width="loginForm.formLabelWidth" size="large">
+            <el-input v-model="loginForm.username" name="username" placeholder="请输入用户名"></el-input>
+          </el-form-item>
+          <el-form-item label="密码" :label-width="loginForm.formLabelWidth" size="large">
+            <el-input v-model="loginForm.password" name="password" type="password" placeholder="请输入密码"></el-input>
+          </el-form-item>
+          <el-form-item label="" :label-width="loginForm.formLabelWidth">
+            <el-button type="primary" @click="handleLoginSubmit">登录</el-button>
+            <el-button type="success" @click="handleSignIn">注册</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+      <div v-if="isSignedIn == true">
+        <!-- <div>
         <h1>注册</h1>
       </div> -->
 
-      <el-form :model="loginForm" :rules="signinRules" ref="signinForm">
-        <el-form-item label="用户名" :label-width="loginForm.formLabelWidth" prop="username" size="large">
-          <el-input v-model="loginForm.username" name="username" placeholder="请输入用户名"></el-input>
-        </el-form-item>
-        <el-form-item label="显示姓名" :label-width="loginForm.formLabelWidth" prop="full_name" size="large">
-          <el-input v-model="loginForm.full_name" name="full_name" placeholder="请输入姓名"></el-input>
-        </el-form-item>
-        <el-form-item label="密码" :label-width="loginForm.formLabelWidth" prop="password" size="large">
-          <el-input v-model="loginForm.password" name="password" type="password" placeholder="请输入密码"></el-input>
-        </el-form-item>
-        <el-form-item lable="密码确认" :label-width="loginForm.formLabelWidth" prop="password2" size="large">
-          <el-input v-model="loginForm.password2" name="password2" type="password" placeholder="请再次输入密码"></el-input>
-        </el-form-item>
-        <el-form-item label="邮箱" :label-width="loginForm.formLabelWidth" prop="email" size="large">
-          <el-input v-model="loginForm.email" name="email" placeholder="请输入邮箱"></el-input>
-        </el-form-item>
-        <el-form-item label="" :label-width="loginForm.formLabelWidth">
-          <el-button type="primary" @click="handleSignInSubmit">注册</el-button>
-          <el-button type="success" @click="handleSignIn">登录</el-button>
-        </el-form-item>
-      </el-form>
+        <el-form :model="loginForm" :rules="signinRules" ref="signinForm">
+          <el-form-item label="用户名" :label-width="loginForm.formLabelWidth" prop="username" size="large">
+            <el-input v-model="loginForm.username" name="username" placeholder="请输入用户名"></el-input>
+          </el-form-item>
+          <el-form-item label="显示姓名" :label-width="loginForm.formLabelWidth" prop="full_name" size="large">
+            <el-input v-model="loginForm.full_name" name="full_name" placeholder="请输入姓名"></el-input>
+          </el-form-item>
+          <el-form-item label="密码" :label-width="loginForm.formLabelWidth" prop="password" size="large">
+            <el-input v-model="loginForm.password" name="password" type="password" placeholder="请输入密码"></el-input>
+          </el-form-item>
+          <el-form-item lable="密码确认" :label-width="loginForm.formLabelWidth" prop="password2" size="large">
+            <el-input v-model="loginForm.password2" name="password2" type="password" placeholder="请再次输入密码"></el-input>
+          </el-form-item>
+          <el-form-item label="邮箱" :label-width="loginForm.formLabelWidth" prop="email" size="large">
+            <el-input v-model="loginForm.email" name="email" placeholder="请输入邮箱"></el-input>
+          </el-form-item>
+          <el-form-item label="" :label-width="loginForm.formLabelWidth">
+            <el-button type="primary" @click="handleSignInSubmit">注册</el-button>
+            <el-button type="success" @click="handleSignIn">登录</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
     </div>
-    </div>
-  
+
   </el-container>
   <el-container class="main-container" v-if="isLoggedIn">
     <el-header class="site_header">
@@ -90,13 +90,13 @@
   </el-container>
 </template>
 <script setup lang="ts">
-import { onMounted, ref,watch, watchEffect } from 'vue'
+import { onMounted, ref, watch, watchEffect } from 'vue'
 import { useRouter, useRoute } from 'vue-router'
 import { RouterView } from 'vue-router'
 import SideMenu from '@/components/SideMenu.vue'
 import { userLogin, userSignin } from '@/api/AgentApi'
 import { deleteSessionVar, getSessionVar, saveSessionVar } from '@/utils/session'
-import { ElNotification, ElMessageBox } from 'element-plus'
+import { ElNotification, ElMessageBox, ElMessage } from 'element-plus'
 const router = useRouter();
 const route = useRoute()
 // console.log('router', router.getRoutes(), route)
@@ -125,7 +125,7 @@ const validatePassword = (rule: any, value: any, callback: Function) => {
     callback();
   }
 };
-const validatePassword2 = (rule, value, callback) => {
+const validatePassword2 = (rule: Object, value: string, callback: Function) => {
   if (value === "") {
     callback(new Error("请再次输入密码"));
   } else if (value !== loginForm.value.password) {
@@ -224,10 +224,11 @@ const handleLoginSubmit = () => {
   userLogin({ username: loginForm.value.username, password: loginForm.value.password }).then((res: any) => {
     // console.log(res.records[0])
     loginForm.value.password = ''
-    saveSessionVar("session_id", res.records[0].session_id)
-    saveSessionVar("user_id", res.records[0].user_id)
-    saveSessionVar("username", res.records[0].username)
-    saveSessionVar("full_name", res.records[0].full_name)
+    // console.log(res, res.records[0].session)
+    saveSessionVar("session_id", res.records[0].session.session_id)
+    saveSessionVar("user_id", res.records[0].session.user_id)
+    saveSessionVar("username", res.records[0].session.username)
+    saveSessionVar("full_name", res.records[0].session.full_name)
 
     user.value = {
       id: getSessionVar('user_id') || "0",
@@ -237,6 +238,12 @@ const handleLoginSubmit = () => {
 
     isLoggedIn.value = true;
     goToKMPlatform()
+  }).catch((err: any) => {
+    ElMessage({
+      message: err.message,
+      type: 'error'
+    })
+    console.log(err)
   })
 }
 
@@ -270,7 +277,8 @@ watchEffect(() => {
   console.log('route changed', route)
   if (route.query.logout) {
     handleLogout()
-  }})
+  }
+})
 </script>
 <style scoped>
 #app {
@@ -284,6 +292,7 @@ watchEffect(() => {
   height: 100vh;
   overflow: hidden;
 }
+
 .login-box {
   width: 100vw;
   height: 100vh;
@@ -306,7 +315,8 @@ watchEffect(() => {
   background-color: #eef6ff;
   border-radius: 12px 12px 12px 12px;
 }
-.login-header{
+
+.login-header {
   font-size: 26px;
   font-weight: bold;
   margin-bottom: 20px;

+ 3 - 3
vite.config.ts

@@ -8,7 +8,7 @@ import vueJsx from "@vitejs/plugin-vue-jsx";
 
 export default defineConfig(({ command, mode }) => {
   const env = loadEnv(mode, process.cwd(), '');
-  console.log('env', env)
+  // console.log('env', env)
   return {
     define: {
       'process.env': env
@@ -18,10 +18,10 @@ export default defineConfig(({ command, mode }) => {
         '/api': {
           target: env.VITE_API_URL, //'http://172.18.0.3:8000/api',
           changeOrigin: true,
-          rewrite: path => path.replace(/^\/api/, '')
+          rewrite: path => path.replace(/^\/api/, '/open-platform')
         },
         '/open-platform': {
-          target: 'http://173.18.12.205:8003/', // 后端服务器地址
+          target: 'http://173.18.12.205:8005/', // 后端服务器地址
           changeOrigin: true, // 启用跨域
           // rewrite: (path) => path.replace(/^\/open-platform/, '') // 路径重写
         }