xiangpei
2025-04-18 7feee0463330ee014b0ac1a6f8e31118bb699f12
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
import {getUserById,getUserRoleByUserId} from "@/api/user";
import {getRoles} from "@/api/role";
import {getSysOrgs} from "@/api/sysOrg";
 
export default {
    namespaced: true,
    state: {
        userId: null,
        // 所有角色
        roles: [],
        treeData: [],
        // 用户已有角色
        hasRoles: {},
        selected: [],
        // 分配的角色
        userRoles: [],
        tableData: [],
        dialogFormVisible: false,
        dialogFormVisible1: false,
        dialogVisible: false,
        dialogTreeVisible: false,
        dialogTitle: "",
        pageSize: 10,
        currentPage: 1,
        total: 0,
        userForm: {
            id: null,
            userName: "",
            nickName: "",
            email: "",
            phoneNumber: "",
            password: "",
            avatar: "",
            status: "",
            tenantId: "",
            sex: "",
            belongOrg: null,
            belongOrgName: "",
        },
        multipleSelection: [],
    },
    getters: {},
    mutations: {
        OpenTreeDialog(state, params) {
            state.dialogTreeVisible = params.dialogTreeVisible;
            state.treeData = params.treeData;
        },
        openDialogForm(state, value) {
            state.dialogFormVisible = value.dialogFormVisible;
            state.dialogTitle = value.dialogTitle;
        },
        EditUser(state, value) {
            state.dialogFormVisible = value.dialogFormVisible;
            state.dialogTitle = value.dialogTitle;
            Object.keys(state.userForm).forEach((key) => {
                state.userForm[key] = value.userForm[key]
            })
        },
        EditUserBySelf(state, value) {
            state.dialogFormVisible1 = value.dialogFormVisible1;
            state.dialogTitle = value.dialogTitle;
            Object.keys(state.userForm).forEach((key) => {
                state.userForm[key] = value.userForm[key]
            })
        },
        OpenUserRoleDialog(state, params) {
            state.dialogVisible = params.dialogVisible,
            state.roles = params.roles;
            state.hasRoles = params.hasRoles;
            state.userId = params.userId;
            state.selected = params.hasRoles.roleIds === null ? [] : params.hasRoles.roleIds ;
        },
    },
    actions: {
        openTreeDialog(state, value) {
            getSysOrgs(null).then((res) => {
                var params = {
                    "treeData": res.data.data,
                    "dialogTreeVisible": value
                }
                state.commit("OpenTreeDialog", params)
            });
 
        },
        editUser(state, id) {
            getUserById(id).then((res) => {
                var params = {
                    dialogFormVisible: true,
                    dialogTitle: "修改用户",
                    userForm: res.data.data
                }
                state.commit("EditUser", params);
            })
        },
        editUserBySelf(state, id) {
            getUserById(id).then((res) => {
                var params = {
                    dialogFormVisible1: true,
                    dialogTitle: "修改用户",
                    userForm: res.data.data
                }
                state.commit("EditUserBySelf", params);
            })
        },
        assignRole(state, params) {
            getRoles(null).then((res) => {
                getUserRoleByUserId(params).then((res1) => {
                    var allRole = res.data.data;
                    var hasRole = res1.data.data
                    var data = {
                        roles: allRole,
                        userId: params,
                        dialogVisible: true,
                        hasRoles: hasRole
                    }
                    state.commit("OpenUserRoleDialog", data);
                });
            });
        }
    },
}