Skip to content

Commit 63c836d

Browse files
committed
refactor: chat user api
1 parent f73721c commit 63c836d

File tree

18 files changed

+390
-98
lines changed

18 files changed

+390
-98
lines changed

ui/src/api/system/workspace.ts

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
import { Result } from '@/request/Result'
2+
import type { Ref } from 'vue'
3+
import { get, post, del } from '@/request/index'
4+
import type { WorkspaceItem, CreateWorkspaceMemberParamsItem, WorkspaceMemberItem } from '@/api/type/workspace'
5+
import type { pageRequest, PageList } from '@/api/type/common'
6+
7+
const prefix = '/system/workspace'
8+
9+
/**
10+
* 获取首页的工作空间下拉列表
11+
*/
12+
const getWorkspaceListByUser: (loading?: Ref<boolean>) => Promise<Result<WorkspaceItem[]>> = (loading) => {
13+
return get('/workspace/by_user', undefined, loading)
14+
}
15+
16+
/**
17+
* 获取添加成员时的工作空间下拉列表
18+
*/
19+
const getWorkspaceList: (loading?: Ref<boolean>) => Promise<Result<Record<string, any>[]>> = (loading) => {
20+
return get('/workspace/current_user', undefined, loading)
21+
}
22+
23+
/**
24+
* 获取工作空间列表
25+
*/
26+
const getSystemWorkspaceList: (loading?: Ref<boolean>) => Promise<Result<WorkspaceItem[]>> = (loading) => {
27+
return get(`${prefix}`, undefined, loading)
28+
}
29+
30+
/**
31+
* 新建或更新工作空间
32+
*/
33+
const CreateOrUpdateWorkspace: (
34+
data: WorkspaceItem,
35+
loading?: Ref<boolean>,
36+
) => Promise<Result<any>> = (data, loading) => {
37+
return post(`${prefix}`, data, undefined, loading)
38+
}
39+
40+
/**
41+
* 删除工作空间前的校验
42+
*/
43+
const deleteWorkspaceCheck: (workspace_id: string, loading?: Ref<boolean>) => Promise<Result<any>> = (
44+
workspace_id,
45+
loading,
46+
) => {
47+
return get(`${prefix}/${workspace_id}/check`, undefined, loading)
48+
}
49+
50+
/**
51+
* 删除工作空间
52+
*/
53+
const deleteWorkspace: (workspace_id: string, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
54+
workspace_id,
55+
loading,
56+
) => {
57+
return del(`${prefix}/${workspace_id}`, undefined, {}, loading)
58+
}
59+
60+
/**
61+
* 获取工作空间成员列表
62+
*/
63+
const getWorkspaceMemberList: (
64+
workspace_id: string,
65+
page: pageRequest,
66+
param: any,
67+
loading?: Ref<boolean>,
68+
) => Promise<Result<PageList<WorkspaceMemberItem[]>>> = (workspace_id, page, param, loading) => {
69+
return get(
70+
`${prefix}/${workspace_id}/user_list/${page.current_page}/${page.page_size}`,
71+
param,
72+
loading,
73+
)
74+
}
75+
76+
/**
77+
* 新建工作空间成员
78+
*/
79+
const CreateWorkspaceMember: (
80+
workspace_id: string,
81+
data: CreateWorkspaceMemberParamsItem[],
82+
loading?: Ref<boolean>,
83+
) => Promise<Result<any>> = (workspace_id, data, loading) => {
84+
return post(`${prefix}/${workspace_id}/add_member`, data, undefined, loading)
85+
}
86+
87+
/**
88+
* 删除工作空间成员
89+
*/
90+
const deleteWorkspaceMember: (workspace_id: string, user_relation_id: string, loading?: Ref<boolean>) => Promise<Result<any>> = (
91+
workspace_id,
92+
user_relation_id,
93+
loading,
94+
) => {
95+
return post(`${prefix}/${workspace_id}/remove_member/${user_relation_id}`, undefined, {}, loading)
96+
}
97+
98+
/**
99+
* 获取添加成员时的角色下拉列表
100+
*/
101+
const getWorkspaceRoleList: (loading?: Ref<boolean>) => Promise<Result<Record<string, any>[]>> = (loading) => {
102+
return get('/role_list/current_user', undefined, loading)
103+
}
104+
105+
export default {
106+
getWorkspaceList,
107+
getSystemWorkspaceList,
108+
CreateOrUpdateWorkspace,
109+
deleteWorkspace,
110+
getWorkspaceMemberList,
111+
CreateWorkspaceMember,
112+
deleteWorkspaceMember,
113+
getWorkspaceRoleList,
114+
getWorkspaceListByUser,
115+
deleteWorkspaceCheck
116+
}

ui/src/api/workspace/chat-user.ts

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
import {Result} from '@/request/Result'
2+
import {get, put, post, del} from '@/request/index'
3+
import type {pageRequest, PageList} from '@/api/type/common'
4+
import type {ChatUserItem} from '@/api/type/systemChatUser'
5+
import type {Ref} from 'vue'
6+
7+
const prefix = '/workspace/chat_user'
8+
9+
10+
/**
11+
* 用户列表
12+
*/
13+
const getChatUserList: (loading?: Ref<boolean>) => Promise<Result<ChatUserItem[]>> = (loading) => {
14+
return get(`${prefix}/list`, undefined, loading)
15+
}
16+
17+
/**
18+
* 用户分页列表
19+
* @query 参数
20+
username_or_nickname: string
21+
*/
22+
const getUserManage: (
23+
page: pageRequest,
24+
params?: any,
25+
loading?: Ref<boolean>,
26+
) => Promise<Result<PageList<ChatUserItem[]>>> = (page, params, loading) => {
27+
return get(
28+
`${prefix}/user_manage/${page.current_page}/${page.page_size}`,
29+
params ? params : undefined,
30+
loading,
31+
)
32+
}
33+
34+
/**
35+
* 删除用户
36+
* @param 参数 user_id,
37+
*/
38+
const delUserManage: (user_id: string, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
39+
user_id,
40+
loading,
41+
) => {
42+
return del(`${prefix}/${user_id}`, undefined, {}, loading)
43+
}
44+
45+
/**
46+
* 创建用户
47+
*/
48+
const postUserManage: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
49+
data,
50+
loading,
51+
) => {
52+
return post(`${prefix}`, data, undefined, loading)
53+
}
54+
55+
/**
56+
* 编辑用户
57+
*/
58+
const putUserManage: (
59+
user_id: string,
60+
data: any,
61+
loading?: Ref<boolean>,
62+
) => Promise<Result<any>> = (user_id, data, loading) => {
63+
return put(`${prefix}/${user_id}`, data, undefined, loading)
64+
}
65+
66+
/**
67+
* 修改用户密码
68+
*/
69+
const putUserManagePassword: (
70+
user_id: string,
71+
data: any,
72+
loading?: Ref<boolean>
73+
) => Promise<Result<any>> = (user_id, data, loading) => {
74+
return put(`${prefix}/${user_id}/re_password`, data, undefined, loading)
75+
}
76+
77+
/**
78+
* 设置用户组
79+
*/
80+
const batchAddGroup: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
81+
data,
82+
loading,
83+
) => {
84+
return post(`${prefix}/batch_add_group`, data, undefined, loading)
85+
}
86+
87+
/**
88+
* 批量删除
89+
*/
90+
const batchDelete: (data: string[], loading?: Ref<boolean>) => Promise<Result<any>> = (
91+
data,
92+
loading,
93+
) => {
94+
return post(`${prefix}/batch_delete`, data, undefined, loading)
95+
}
96+
export default {
97+
getUserManage,
98+
putUserManage,
99+
delUserManage,
100+
postUserManage,
101+
putUserManagePassword,
102+
getChatUserList,
103+
batchAddGroup,
104+
batchDelete,
105+
}

ui/src/api/workspace/user-group.ts

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
import {Result} from '@/request/Result'
2+
import {get, post, del} from '@/request/index'
3+
import type {Ref} from 'vue'
4+
import type {ChatUserGroupUserItem,} from '@/api/type/systemChatUser'
5+
import type {pageRequest, PageList, ListItem} from '@/api/type/common'
6+
7+
const prefix = '/workspace/group'
8+
9+
/**
10+
* 获取用户组列表
11+
*/
12+
const getUserGroup: (loading?: Ref<boolean>) => Promise<Result<ListItem[]>> = () => {
13+
return get(`${prefix}`)
14+
}
15+
16+
/**
17+
* 创建用户组
18+
* @param 参数
19+
* {
20+
"id": "string",
21+
"name": "string"
22+
}
23+
*/
24+
const postUserGroup: (data: ListItem, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
25+
data,
26+
loading,
27+
) => {
28+
return post(`${prefix}`, data, undefined, loading)
29+
}
30+
31+
/**
32+
* 删除用户组
33+
* @param 参数 user_group_id
34+
*/
35+
const delUserGroup: (user_group_id: string, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
36+
user_group_id,
37+
loading,
38+
) => {
39+
return del(`${prefix}/${user_group_id}`, undefined, {}, loading)
40+
}
41+
42+
/**
43+
* 给用户组添加用户
44+
*/
45+
const postAddMember: (
46+
user_group_id: string,
47+
body: any,
48+
loading?: Ref<boolean>,
49+
) => Promise<Result<any>> = (user_group_id, body, loading) => {
50+
return post(`${prefix}/${user_group_id}/add_member`, body, {}, loading)
51+
}
52+
53+
/**
54+
* 从用户组删除用户
55+
*/
56+
const postRemoveMember: (
57+
user_group_id: string,
58+
body: any,
59+
loading?: Ref<boolean>,
60+
) => Promise<Result<any>> = (user_group_id, body, loading) => {
61+
return post(`${prefix}/${user_group_id}/remove_member`, body, {}, loading)
62+
}
63+
64+
/**
65+
* 获取用户组的成员列表
66+
*/
67+
const getUserListByGroup: (
68+
user_group_id: string,
69+
page: pageRequest,
70+
params ?: any,
71+
loading?: Ref<boolean>,
72+
) => Promise<Result<PageList<ChatUserGroupUserItem[]>>> = (user_group_id, page, params, loading) => {
73+
return get(
74+
`${prefix}/${user_group_id}/user_list/${page.current_page}/${page.page_size}`,
75+
params ? params : undefined,
76+
loading,
77+
)
78+
}
79+
export default {
80+
getUserGroup,
81+
postUserGroup,
82+
delUserGroup,
83+
postAddMember,
84+
postRemoveMember,
85+
getUserListByGroup
86+
}

ui/src/api/workspace/workspace.ts

Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { get, post, del } from '@/request/index'
44
import type { WorkspaceItem, CreateWorkspaceMemberParamsItem, WorkspaceMemberItem } from '@/api/type/workspace'
55
import type { pageRequest, PageList } from '@/api/type/common'
66

7-
const prefix = '/system/workspace'
7+
const prefix = '/workspace'
88

99
/**
1010
* 获取首页的工作空间下拉列表
@@ -27,35 +27,6 @@ const getSystemWorkspaceList: (loading?: Ref<boolean>) => Promise<Result<Workspa
2727
return get(`${prefix}`, undefined, loading)
2828
}
2929

30-
/**
31-
* 新建或更新工作空间
32-
*/
33-
const CreateOrUpdateWorkspace: (
34-
data: WorkspaceItem,
35-
loading?: Ref<boolean>,
36-
) => Promise<Result<any>> = (data, loading) => {
37-
return post(`${prefix}`, data, undefined, loading)
38-
}
39-
40-
/**
41-
* 删除工作空间前的校验
42-
*/
43-
const deleteWorkspaceCheck: (workspace_id: string, loading?: Ref<boolean>) => Promise<Result<any>> = (
44-
workspace_id,
45-
loading,
46-
) => {
47-
return get(`${prefix}/${workspace_id}/check`, undefined, loading)
48-
}
49-
50-
/**
51-
* 删除工作空间
52-
*/
53-
const deleteWorkspace: (workspace_id: string, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
54-
workspace_id,
55-
loading,
56-
) => {
57-
return del(`${prefix}/${workspace_id}`, undefined, {}, loading)
58-
}
5930

6031
/**
6132
* 获取工作空间成员列表
@@ -105,12 +76,9 @@ const getWorkspaceRoleList: (loading?: Ref<boolean>) => Promise<Result<Record<st
10576
export default {
10677
getWorkspaceList,
10778
getSystemWorkspaceList,
108-
CreateOrUpdateWorkspace,
109-
deleteWorkspace,
11079
getWorkspaceMemberList,
11180
CreateWorkspaceMember,
11281
deleteWorkspaceMember,
11382
getWorkspaceRoleList,
11483
getWorkspaceListByUser,
115-
deleteWorkspaceCheck
116-
}
84+
}

0 commit comments

Comments
 (0)