| ¶Ô±ÈÐÂÎļþ |
| | |
| | | import { requestClient } from '#/api/request'; |
| | | |
| | | export namespace ImGroupRequestApi { |
| | | /** IM å 群ç³è¯· Response VO */ |
| | | export interface GroupRequestRespVO { |
| | | id: number; // ç³è¯·ç¼å· |
| | | groupId: number; // 群ç¼å· |
| | | userId: number; // ç³è¯·äºº / 被éè¯·äººç¨æ·ç¼å· |
| | | inviterUserId?: number; // é请人ï¼NULL è¡¨ç¤ºç¨æ·ä¸»å¨ç³è¯· |
| | | handleResult: number; // å¤çç»æï¼0=æªå¤çï¼1=åæï¼2=æç» |
| | | applyContent?: string; // ç³è¯·çç± |
| | | handleContent?: string; // å¤ççç±ï¼æç»æ¶å¯éå¡«ï¼ |
| | | handleUserId?: number; // å¤çäººç¨æ·ç¼å· |
| | | addSource?: number; // å å
¥æ¥æºï¼åè§ ImGroupAddSourceEnum |
| | | handleTime?: string; // å¤çæ¶é´ |
| | | createTime: string; // ç³è¯·å建æ¶é´ |
| | | updateTime?: number; // æè¿æ´æ°æ¶é´ï¼æ¯«ç§æ¶é´æ³ï¼å¢éæå游æ ç¨ï¼ |
| | | userNickname?: string; // ç³è¯·äºº / 被é请人æµç§° |
| | | userAvatar?: string; // ç³è¯·äºº / 被é请人头å |
| | | inviterNickname?: string; // é请人æµç§° |
| | | inviterAvatar?: string; // é请人头å |
| | | groupName?: string; // 群åç§° |
| | | groupAvatar?: string; // 群头å |
| | | } |
| | | |
| | | /** IM å 群ç³è¯·åèµ· Request VO */ |
| | | export interface GroupRequestApplyReqVO { |
| | | groupId: number; // 群ç¼å· |
| | | applyContent?: string; // ç³è¯·çç± |
| | | addSource?: number; // å å
¥æ¥æº |
| | | } |
| | | } |
| | | |
| | | |
| | | /** ç³è¯·å 群 */ |
| | | export function applyJoinGroup(data: ImGroupRequestApi.GroupRequestApplyReqVO) { |
| | | return requestClient.post<null | number>('/im/group-request/apply', data); |
| | | } |
| | | |
| | | /** åæå 群ç³è¯·ï¼ç¾¤ä¸»æç®¡çåï¼ */ |
| | | export function agreeGroupRequest(id: number | string) { |
| | | return requestClient.put<boolean>('/im/group-request/agree', undefined, { |
| | | params: { id }, |
| | | }); |
| | | } |
| | | |
| | | /** æç»å 群ç³è¯·ï¼ç¾¤ä¸»æç®¡çåï¼ */ |
| | | export function refuseGroupRequest( |
| | | id: number | string, |
| | | handleContent?: string, |
| | | ) { |
| | | return requestClient.put<boolean>('/im/group-request/refuse', undefined, { |
| | | params: { id, handleContent }, |
| | | }); |
| | | } |
| | | |
| | | /** æ¥è¯¢ãæç®¡ççææç¾¤ãä¸çæªå¤çå 群ç³è¯·å表ï¼ä¸å页ï¼ï¼å端 store æ®æ¤æ´¾ç横å¹
çº¢ç¹ + Drawer å表 */ |
| | | export function getUnhandledRequestList() { |
| | | return requestClient.get<ImGroupRequestApi.GroupRequestRespVO[]>( |
| | | '/im/group-request/unhandled-list', |
| | | ); |
| | | } |
| | | |
| | | /** æ¥è¯¢æå®ç¾¤ä¸çå
¨é¨å 群ç³è¯·ï¼å«å·²å¤çï¼ï¼ä»
群主 / 管çå坿¥ */ |
| | | export function getGroupRequestListByGroupId(groupId: number) { |
| | | return requestClient.get<ImGroupRequestApi.GroupRequestRespVO[]>( |
| | | '/im/group-request/list-by-group', |
| | | { params: { groupId } }, |
| | | ); |
| | | } |
| | | |
| | | /** æ id 忥ç³è¯·è®°å½ï¼å¸¦è¶æè¿æ»¤ï¼WebSocket éç¥å°è¾¾åç¨ï¼ */ |
| | | export function getMyGroupRequest(id: number) { |
| | | return requestClient.get<ImGroupRequestApi.GroupRequestRespVO | null>( |
| | | '/im/group-request/get', |
| | | { params: { id } }, |
| | | ); |
| | | } |
| | | |
| | | /** å¢éæåæç®¡ççææç¾¤ä¸å 群ç³è¯·åæ´ï¼éè¿ / 离线补å¿ï¼ */ |
| | | export function pullMyGroupRequestList(params: { |
| | | lastId?: number; |
| | | lastUpdateTime?: number; |
| | | limit: number; |
| | | }) { |
| | | return requestClient.get<ImGroupRequestApi.GroupRequestRespVO[]>( |
| | | '/im/group-request/pull', |
| | | { params }, |
| | | ); |
| | | } |