组织管理接口初步调试

This commit is contained in:
LovableCat
2025-03-18 21:19:02 +08:00
parent 945e11b0ae
commit 26c594c9d4
3 changed files with 233 additions and 128 deletions

View File

@@ -1,50 +1,45 @@
import request from '@/utils/request';
import {
type CreateOrganizationApiResultType,
type OrganizationMemberItemType,
type UnitRes
} from "@/api/organizationManage/organizationManageType";
// TODO 获取组织信息功能 没有相关接口,待对齐
export function getOrganizationInfoApi(params) {
export function createOrganizationApi(params: { groupName: string, groupDesc: string }): Promise<UnitRes<CreateOrganizationApiResultType>> {
return request({
url: ``,
url: `/api/v1/group/create`,
method: 'post',
data: params,
});
}
export function updateOrganizationInfoApi(params: { id: number, name: string, desc: string }): Promise<UnitRes<CreateOrganizationApiResultType>> {
return request({
url: `/api/v1/group/update`,
method: 'post',
data: params,
});
}
export function getOrganizationMemberListApi(params: { groupId: number }): Promise<UnitRes<any>> {
return request({
url: `/api/v1/group/member/list`,
method: 'get',
params,
});
}
export function createOrganizationApi(params) {
export function inviteOrganizationMemberApi(params: { groupId: number, username: string, roleCode: string }): Promise<UnitRes<boolean>> {
return request({
url: `/api/v1/user/group/create`,
url: `/api/v1/group/member/invite `,
method: 'post',
data: params,
});
}
// TODO 更新组织信息功能 没有相关接口,待对齐
export function updateOrganizationInfoApi(params) {
export function deleteOrganizationMemberApi(params: { groupId: number, username: string }): Promise<UnitRes<boolean>> {
return request({
url: `/api/v1/user/group/create`,
method: 'post',
data: params,
});
}
export function getOrganizationMemberListApi(params) {
return request({
url: `/api/v1/user/group/member/list`,
method: 'get',
params,
});
}
export function inviteOrganizationMemberApi(params) {
return request({
url: `/api/v1/user/group/member/invite `,
method: 'post',
data: params,
});
}
export function deleteOrganizationMemberApi(params) {
return request({
url: `/api/v1/user/group/member/remove`,
url: `/api/v1/group/member/remove`,
method: 'delete',
data: params,
});

View File

@@ -1,12 +1,65 @@
import { type AxiosResponse } from "axios";
export interface ApiDefaultType<T> {
data?: {
data?: T;
}
}
export interface CommonRes<T> {
code: number;
msg: string;
data: T;
}
export type UnitRes<T> = AxiosResponse<CommonRes<T>>;
export interface CreateOrganizationApiResultType {
id: number;
name: string;
ext: null;
status: null;
deleted: null;
createUser: string;
createTime: string;
updateTime: null;
}
export interface OrganizationInfoType {
groupId: number;
organizationName: string;
organizationProfile: string;
}
export interface OrganizationMemberItemType {
id: string;
userName: string;
role: string;
email: string;
joinDate: string;
export interface UserInfoType {
username: string;
mobile: null;
email: string;
avatar: string;
noticeUnreadNum: number;
inviteNum: number;
groupId: null | number;
groupName: null | string;
groupDesc: null | string;
}
export enum OrganizationMemberRoleEnum {
OWNER = 'OWNER',
MEMBER = 'MEMBER',
}
export enum OrganizationMemberStatusEnum {
TO_ACCEPTED = 0,
ACCEPTED = 1,
}
export interface OrganizationMemberItemType {
id: number;
groupId: number;
name: string; // 组织名称
username: string;
roleCode: OrganizationMemberRoleEnum;
status: OrganizationMemberStatusEnum;
createTime: string;
updateTime: string;
}