1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
| import { defineStore } from 'pinia';
| import db from './db';
| const account_key_name = `IEE_account`;
| export const useLogin = defineStore('userInfo', {
| state: () => ({
| /** 用户ID 0 Employee 1 OuterUser 2 Agent */
| UserID: 0,
| /** 用户类型 */
| UserType: 0,
| /** 真实姓名 */
| RealName: '',
| // 登录时获取的Token
| Token: null,
| // 记录退出登录之前的页面路
| preLoginPagePath: db.get('path') || '',
| }),
| actions: {
| /**
| * @description 退出
| */
| logOut() {
| // 清楚令牌信息和账户信息
| this.clear();
| },
|
| /**
| * 从本地存储中加载令牌
| */
| loadfromlocalstorage() {
| const user = db.get(account_key_name);
| if (user) {
| this.UserID = user.UserID;
| this.UserType = user.UserType;
| this.Token = user.Token;
| this.RealName = user.RealName;
| }
| },
| /**
| * 设置登陆后跳转的页面
| */
| preLoginPageRoute(path) {
| //将路径存入缓存
| db.set('path', path);
| path = db.get('path');
| this.preLoginPagePath = path;
| },
|
| /**
| * 初始化用户信息
| */
| init(user) {
| let UserInfo = {
| UserID: 0,
| UserType: 0,
| Token: '',
| };
| if (!user) {
| user = db.get(account_key_name);
| UserInfo = { ...user };
| }
| if (user) {
| this.UserID = user.UserID;
| this.UserType = user.UserType;
| this.Token = user.Token;
| this.RealName = user.RealName;
|
| UserInfo.UserID = user.UserID;
| UserInfo.UserType = user.UserType;
| UserInfo.Token = user.Token;
| }
| db.set(account_key_name, user);
| },
| // 获取用户信息
| getUserInfo() {
| const user = db.get(account_key_name);
|
| let userInfo = {
| /** 用户ID 0 Employee 1 OuterUser 2 Agent */
| UserID: this.UserID,
| /** 用户类型 */
| UserType: this.UserType,
| /** 真实姓名 */
| RealName: this.RealName,
| // 登录时获取的Token
| Token: this.Token,
| };
| if (user) {
| userInfo = user;
| return userInfo;
| }
| return userInfo;
| },
|
| /**
| * 清楚用户信息
| */
| clear() {
| this.UserID = 0;
| this.UserType = 0;
| this.RealName = '';
| this.Token = '';
| db.remove(account_key_name);
| },
| },
| });
|
|