24
24
</el-form-item >
25
25
<el-form-item >
26
26
<el-button type =" primary" @click =" handleSubmitQuery" >查询</el-button >
27
- <el-button type =" default" @click =" handleResetFeilds " >重置</el-button >
27
+ <el-button type =" default" @click =" handleResetFields " >重置</el-button >
28
28
</el-form-item >
29
29
</el-form >
30
30
<div class =" user-list" >
70
70
<editor-user
71
71
:type =" editType"
72
72
:data =" editData"
73
+ :roles =" roles"
73
74
@submit =" handleSubmitUser"
74
75
/>
75
76
</el-drawer >
@@ -86,22 +87,11 @@ const store = useUserStore()
86
87
const storeRole = useRoleStore ()
87
88
// 用户列表
88
89
const users = computed (() => store .state .users )
89
- console .log (
90
- ' %c [ users ]-90' ,
91
- ' font-size:13px; background:pink; color:#bf2c9f;' ,
92
- users
93
- )
94
- const roles = computed (() => storeRole .state .roles ) // 角色
95
-
96
- console .log (
97
- ' %c [ roles ]-184' ,
98
- ' font-size:13px; background:pink; color:#bf2c9f;' ,
99
- roles .value
100
- )
101
90
102
91
// 分页相关状态
103
92
const pageNum = ref (1 )
104
93
const pageSize = ref (10 )
94
+ const roles = ref ()
105
95
// 获取用户列表 支持分页
106
96
const getUserList = () => {
107
97
store .getAllUsers ({
@@ -111,18 +101,22 @@ const getUserList = () => {
111
101
// ... 搜索条件
112
102
} as unknown as IUserQuery )
113
103
}
114
- const getRolesList = () => {
115
- storeRole .getRoles ({
104
+ const getRolesList = async () => {
105
+ await storeRole .getRoles ({
116
106
pageNum: pageNum .value ,
117
107
pageSize: pageSize .value
118
108
// ... 搜索条件
119
109
} as unknown as IRoleParams )
120
110
}
111
+
112
+ watchEffect (() => {
113
+ roles .value = storeRole .state .roles
114
+ })
121
115
// 格式化status
122
116
const formatter = (row : Profile ) => {
123
117
return row .status ? ' 正常' : ' 禁用'
124
118
}
125
- // 不使用watchEffect
119
+
126
120
onMounted (() => {
127
121
getUserList ()
128
122
getRolesList ()
@@ -151,21 +145,9 @@ const handleEditUser = (_index: number, row: Profile) => {
151
145
editType .value = 0
152
146
editData .value = { ... row }
153
147
154
- console .log (
155
- ' %c [ ]-134' ,
156
- ' font-size:13px; background:pink; color:#bf2c9f;' ,
157
- row
158
- )
159
148
// 获取当前编辑用户 现有角色列表
160
149
editData .value .roleIds = row ?.roleIds
161
- // editData.value.roleIds = row?.roleIds && row.roleIds.map((item) => item?.id)
162
-
163
- // console.log(
164
- // '%c [ ]-165',
165
- // 'font-size:13px; background:pink; color:#bf2c9f;',
166
- // editData.value.roleIds
167
- // )
168
- editData .value .roles = roles .value ! // 所有角色列表
150
+ editData .value .status = Boolean (editData .value .status )
169
151
panelVisible .value = true
170
152
}
171
153
// 用户总条数
@@ -176,7 +158,7 @@ const handleSizeChange = (val: number) => {
176
158
getUserList ()
177
159
}
178
160
const handleCurrentChange = (val : number ) => {
179
- pageNum .value = val - 1 // 页码后端是从0开始的
161
+ pageNum .value = val // 页码后端是从1开始的
180
162
getUserList ()
181
163
}
182
164
@@ -192,8 +174,9 @@ const handleSubmitQuery = () => {
192
174
193
175
// 重置
194
176
const queryFormRef = useTemplateRef <FormInstance | null >(' queryFormRef' )
195
- const handleResetFeilds = () => {
196
- ;(queryFormRef .value as FormInstance ).resetFields ()
177
+ const handleResetFields = () => {
178
+ const formInstance = queryFormRef .value as FormInstance
179
+ formInstance .resetFields ()
197
180
getUserList ()
198
181
}
199
182
@@ -205,18 +188,15 @@ const panelTitle = computed(() =>
205
188
editType .value === 1 ? ' 新增用户' : ' 编辑用户'
206
189
)
207
190
208
- storeRole .getRoles ({ pageNum: pageNum .value , pageSize: pageSize .value })
191
+ // storeRole.getRoles({ pageNum: pageNum.value, pageSize: pageSize.value })
209
192
210
193
const handleAddUser = () => {
211
194
editType .value = 1
212
195
editData .value = {} as Profile
213
- editData .value .roles = roles .value // 所有角色列表
214
196
editData .value .roleIds = [] // 所选角色id列表
215
197
panelVisible .value = true
216
198
}
217
199
const editUser = async (data : Profile ) => {
218
- // 删除 data 中的roles 属性
219
- // delete data.roles
220
200
store .editUser ({
221
201
... data ,
222
202
pageSize: pageSize .value ,
@@ -227,6 +207,7 @@ const editUser = async (data: Profile) => {
227
207
panelVisible .value = false
228
208
}
229
209
const handleSubmitUser = (data : Profile ) => {
210
+ data .status = Number (data .status )
230
211
if (editType .value === 1 ) {
231
212
// 新增
232
213
addNewUser (data )
0 commit comments