From 7e460156de73171f9660ce48f80703e79f8b478d Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期六, 14 六月 2025 11:48:26 +0800
Subject: [PATCH] 初始化提交

---
 src/store/modules/user.js |   82 +++++++++++++++++++++++++++++++++-------
 1 files changed, 67 insertions(+), 15 deletions(-)

diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index 2f6423f..4e41471 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -1,12 +1,15 @@
-import { login, logout, getInfo } from '@/api/user'
-import { getToken, setToken, removeToken } from '@/utils/auth'
+import { login, logout, getInfo, tideLogin } from '@/api/user'
+import { getToken, setToken, removeToken, getrefreshToken, setrefreshToken, removerefreshToken } from '@/utils/auth'
 import { resetRouter } from '@/router'
+var qs = require('qs')
 
 const getDefaultState = () => {
   return {
     token: getToken(),
+    refresh: getrefreshToken(),
     name: '',
-    avatar: ''
+    avatar: '',
+    authority: ''
   }
 }
 
@@ -19,23 +22,35 @@
   SET_TOKEN: (state, token) => {
     state.token = token
   },
+  SET_REFRESH: (state, refresh) => {
+    state.refresh = refresh
+  },
   SET_NAME: (state, name) => {
     state.name = name
   },
   SET_AVATAR: (state, avatar) => {
     state.avatar = avatar
+  },
+  SET_AUTHORITY: (state, authority) => {
+    state.authority = authority
   }
 }
 
 const actions = {
   // user login
   login({ commit }, userInfo) {
+    console.log(userInfo)
     const { username, password } = userInfo
+    console.log(typeof username)
     return new Promise((resolve, reject) => {
-      login({ username: username.trim(), password: password }).then(response => {
+      // login()
+      login(qs.stringify({ username: typeof username === 'number' ? username.toString().trim() : username.trim(), password: password })).then(response => {
         const { data } = response
+        console.log(data)
         commit('SET_TOKEN', data.token)
+        commit('SET_REFRESH', data.refresh)
         setToken(data.token)
+        setrefreshToken(data.refresh)
         resolve()
       }).catch(error => {
         reject(error)
@@ -47,16 +62,20 @@
   getInfo({ commit, state }) {
     return new Promise((resolve, reject) => {
       getInfo(state.token).then(response => {
-        const { data } = response
-
+        const { data, message } = response
+        console.log(response)
+        if (response.code === 10010) {
+          resolve(message)
+        }
         if (!data) {
           return reject('Verification failed, please Login again.')
         }
 
-        const { name, avatar } = data
+        const { name, avatar, authority } = data
 
         commit('SET_NAME', name)
         commit('SET_AVATAR', avatar)
+        commit('SET_AUTHORITY', authority)
         resolve(data)
       }).catch(error => {
         reject(error)
@@ -66,15 +85,25 @@
 
   // user logout
   logout({ commit, state }) {
+    console.log('閫�鍑虹櫥褰�')
     return new Promise((resolve, reject) => {
-      logout(state.token).then(() => {
-        removeToken() // must remove  token  first
-        resetRouter()
-        commit('RESET_STATE')
-        resolve()
-      }).catch(error => {
-        reject(error)
-      })
+      for (const key in state) {
+        state[key] = ''
+      }
+      removeToken() // must remove  token  first
+      removerefreshToken()
+      resetRouter()
+      commit('RESET_STATE')
+      resolve()
+      // logout(state.token).then(() => {
+      //   removeToken() // must remove  token  first
+      //   removerefreshToken()
+      //   resetRouter()
+      //   commit('RESET_STATE')
+      //   resolve()
+      // }).catch(error => {
+      //   reject(error)
+      // })
     })
   },
 
@@ -85,6 +114,29 @@
       commit('RESET_STATE')
       resolve()
     })
+  },
+
+  // flushed Token
+  flushedToken({ commit }, newTokens) {
+    console.log('鍒锋柊token')
+    commit('SET_TOKEN', newTokens.token)
+    commit('SET_REFRESH', newTokens.refresh)
+  },
+
+  tideLogin({ commit }, code) {
+    return new Promise((resolve, reject) => {
+      tideLogin(code).then(response => {
+        const { data } = response
+        console.log(data)
+        commit('SET_TOKEN', data.token)
+        commit('SET_REFRESH', data.refresh)
+        setToken(data.token)
+        setrefreshToken(data.refresh)
+        resolve()
+      }).catch(error => {
+        reject(error)
+      })
+    })
   }
 }
 

--
Gitblit v1.9.3