UnisKB/ui/src/api/team.ts

69 lines
1.5 KiB
TypeScript
Raw Normal View History

2023-10-20 03:26:14 +00:00
import { Result } from '@/request/Result'
2023-10-24 07:31:30 +00:00
import { get, post, del, put } from '@/request/index'
2023-10-25 10:35:28 +00:00
import type { TeamMember } from '@/api/type/team'
2023-10-20 03:26:14 +00:00
// import type { Ref } from 'vue'
const prefix = '/team/member'
/**
*
*/
const getTeamMember: () => Promise<Result<TeamMember[]>> = () => {
return get(`${prefix}`)
}
/**
*
* @param { "username_or_email": "string" }
*/
2023-10-25 10:35:28 +00:00
const postCreatTeamMember: (data: String) => Promise<Result<boolean>> = (data) => {
return post(`${prefix}`, { username_or_email: data })
2023-10-20 10:48:16 +00:00
}
/**
*
* @param member_id
*/
const delTeamMember: (member_id: String) => Promise<Result<boolean>> = (member_id) => {
return del(`${prefix}/${member_id}`)
2023-10-20 03:26:14 +00:00
}
2023-10-20 11:09:25 +00:00
/**
*
* @param member_id
*/
2023-10-23 09:48:34 +00:00
const getMemberPermissions: (member_id: String) => Promise<Result<any>> = (member_id) => {
2023-10-20 11:09:25 +00:00
return get(`${prefix}/${member_id}`)
}
2023-10-24 07:31:30 +00:00
/**
*
* @param member_id
* @param {
"team_member_permission_list": [
{
"target_id": "string",
"type": "string",
"operate": {
"USE": true,
"MANAGE": true
}
}
]
}
*/
const putMemberPermissions: (member_id: String, body: any) => Promise<Result<any>> = (
member_id,
body
) => {
return put(`${prefix}/${member_id}`, undefined, body)
}
2023-10-20 03:26:14 +00:00
export default {
getTeamMember,
2023-10-20 10:48:16 +00:00
postCreatTeamMember,
2023-10-20 11:09:25 +00:00
delTeamMember,
2023-10-24 07:31:30 +00:00
getMemberPermissions,
putMemberPermissions
2023-10-20 03:26:14 +00:00
}