wujingjing
2025-03-11 65a34c2a476f8305579582b402445a640f531a65
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);
        },
    },
});