|
|
@@ -1,11 +1,21 @@
|
|
|
-import { defineStore } from 'pinia'
|
|
|
-import { ref } from 'vue'
|
|
|
-import { login, logout } from '@/api/login.js'
|
|
|
-import { getUserInfo } from '@/utils/auth'
|
|
|
+import {
|
|
|
+ defineStore
|
|
|
+} from 'pinia'
|
|
|
+import {
|
|
|
+ ref
|
|
|
+} from 'vue'
|
|
|
+import {
|
|
|
+ login,
|
|
|
+ getInfo,
|
|
|
+ logout
|
|
|
+} from '@/api/login.js'
|
|
|
+import {
|
|
|
+ getUserInfo
|
|
|
+} from '@/utils/auth'
|
|
|
|
|
|
export const useUserStore = defineStore('user', () => {
|
|
|
- const user = ref(getUserInfo())
|
|
|
- // user.value = getUserInfo()
|
|
|
+ const user = ref(getUserInfo()) // 用户信息
|
|
|
+ const useId = ref(0) // staffId
|
|
|
// 登录方法
|
|
|
function Login(userInfo) {
|
|
|
const username = userInfo.username
|
|
|
@@ -13,9 +23,7 @@ export const useUserStore = defineStore('user', () => {
|
|
|
return new Promise((resolve, reject) => {
|
|
|
login(username.trim(), password)
|
|
|
.then(res => {
|
|
|
- uni.setStorageSync('userInfo', res.returnParams)
|
|
|
- user.value = res.returnParams // 抽离进 GetInfo中
|
|
|
- // 可以在这里设置 token 或用户信息
|
|
|
+ useId.value = res.returnParams.useId // 设置staffId
|
|
|
// setToken(res.token)
|
|
|
resolve(res)
|
|
|
})
|
|
|
@@ -24,17 +32,38 @@ export const useUserStore = defineStore('user', () => {
|
|
|
})
|
|
|
})
|
|
|
}
|
|
|
+
|
|
|
+ function GetInfo(index) {
|
|
|
+ const roleIndex = index || 0
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ getInfo(useId.value).then(res => {
|
|
|
+ // 保存 用户信息
|
|
|
+ uni.setStorageSync('userInfo', res.returnParams[roleIndex])
|
|
|
+ user.value = res.returnParams[roleIndex]
|
|
|
+ resolve(res)
|
|
|
+ })
|
|
|
+ .catch(error => {
|
|
|
+ reject(error)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
function LogOut() {
|
|
|
return new Promise((resolve, reject) => {
|
|
|
// logout().then(() => {
|
|
|
- user.value = {}
|
|
|
- uni.clearStorageSync()
|
|
|
- resolve()
|
|
|
- }).catch(error => {
|
|
|
- reject(error)
|
|
|
- })
|
|
|
+ user.value = {}
|
|
|
+ uni.clearStorageSync()
|
|
|
+ resolve()
|
|
|
+ }).catch(error => {
|
|
|
+ reject(error)
|
|
|
+ })
|
|
|
// })
|
|
|
}
|
|
|
|
|
|
- return { user, Login, LogOut }
|
|
|
+ return {
|
|
|
+ user,
|
|
|
+ Login,
|
|
|
+ GetInfo,
|
|
|
+ LogOut
|
|
|
+ }
|
|
|
})
|