12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- import {
- defineStore
- } from "pinia";
- import config from '@/config'
- import storage from '@/utils/storage'
- import constant from '@/utils/constant'
- import {
- login,
- logout,
- getInfo
- } from '@/api/login'
- import {
- getToken,
- setToken,
- removeToken
- } from '@/utils/auth'
- const baseUrl = config.baseUrl
- const useUserStore = defineStore('user', {
- state: () => ({
- token: getToken(),
- name: storage.get(constant.name),
- avatar: storage.get(constant.avatar),
- roles: storage.get(constant.roles),
- permissions: storage.get(constant.permissions)
- }),
- actions: {
- // 登录
- Login(userInfo) {
- const clientType = "wx_app"
- const code = ""
- const loginName = userInfo.username.trim()
- const password = userInfo.password
- const pointJson = userInfo.pointJson
- return new Promise((resolve, reject) => {
- login(loginName, password, code, clientType, pointJson).then(res => {
- console.log(res)
- setToken(res.satoken)
- this.token = res.satoken
- this.name = res.mercName
- storage.set(constant.name, res.mercName)
- resolve(res)
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 获取用户信息
- GetInfo() {
- return new Promise((resolve, reject) => {
- getInfo().then(res => {
- const user = res.user
- const avatar = (user == null || user.avatar == "" || user.avatar == null) ?
- '' : baseUrl + user.avatar
- const username = (user == null || user.userName == "" || user.userName ==
- null) ? "" : user.userName
- if (res.roles && res.roles.length > 0) {
- this.roles = res.roles
- storage.set(constant.roles, res.roles)
- this.permissions = res.permissions
- storage.set(constant.permissions, res.permissions)
- } else {
- this.roles = ['ROLE_DEFAULT']
- storage.set(constant.roles, ['ROLE_DEFAULT'])
- }
- resolve(res)
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 退出系统
- LogOut() {
- return new Promise((resolve, reject) => {
- this.roles = ''
- storage.set(constant.roles, '')
- this.permissions = ''
- storage.set(constant.permissions, '')
- this.permissions = res.permissions
- storage.set(constant.permissions, res.permissions)
- removeToken()
- storage.clean()
- resolve('退出登录成功~')
- })
- }
- }
- })
- export default useUserStore
|