| ¶Ô±ÈÐÂÎļþ |
| | |
| | | import { requestClient } from '#/api/request'; |
| | | |
| | | export namespace ImFriendApi { |
| | | /** IM 好å Response VO */ |
| | | export interface FriendRespVO { |
| | | id: number; // å
³ç³»è®°å½ç¼å· |
| | | friendUserId: number; // 好åçç¨æ·ç¼å· |
| | | silent?: boolean; // æ¯å¦å
ææ° |
| | | displayName?: string; // 好åå±ç¤ºå¤æ³¨ï¼ä»
èªå·±å¯è§ï¼ |
| | | displayNamePinyin?: string; // 夿³¨çæ¼é³ï¼å°åæ ç©ºæ ¼ï¼å端æé¦åæ¯åæ¡¶ / æ¼é³æç´¢ï¼ |
| | | addSource?: number; // æ·»å æ¥æºï¼åè§ ImFriendAddSourceEnum |
| | | pinned?: boolean; // æ¯å¦ç½®é¡¶è系人 |
| | | blocked?: boolean; // æ¯å¦æé» |
| | | status?: number; // 好åç¶æï¼0=æ£å¸¸ï¼1=å·²å é¤ï¼ |
| | | addTime?: string; // æ·»å å¥½åæ¶é´ |
| | | deleteTime?: string; // å é¤å¥½åæ¶é´ |
| | | updateTime?: number; // æè¿æ´æ°æ¶é´ï¼æ¯«ç§æ¶é´æ³ï¼å¢éæå游æ ç¨ï¼ |
| | | nickname?: string; // å¥½åæµç§° |
| | | nicknamePinyin?: string; // æµç§°çæ¼é³ï¼å°åæ ç©ºæ ¼ï¼å端æé¦åæ¯åæ¡¶ / æ¼é³æç´¢ï¼ |
| | | avatar?: string; // 好å头å |
| | | } |
| | | |
| | | /** IM å¥½åæ´æ° Request VO */ |
| | | export interface FriendUpdateReqVO { |
| | | friendUserId: number; // 好åçç¨æ·ç¼å· |
| | | silent?: boolean; // æ¯å¦å
ææ° |
| | | displayName?: string; // 好åå±ç¤ºå¤æ³¨ |
| | | pinned?: boolean; // æ¯å¦ç½®é¡¶è系人 |
| | | } |
| | | } |
| | | |
| | | |
| | | /** è·å¾å½åç»å½ç¨æ·ç好åå表 */ |
| | | export function getMyFriendList() { |
| | | return requestClient.get<ImFriendApi.FriendRespVO[]>('/im/friend/list'); |
| | | } |
| | | |
| | | /** å¢éæåå½åç¨æ·ç好åå
³ç³»ï¼éè¿ / 离线补å¿ï¼ */ |
| | | export function pullMyFriendList(params: { |
| | | lastId?: number; |
| | | lastUpdateTime?: number; |
| | | limit: number; |
| | | }) { |
| | | return requestClient.get<ImFriendApi.FriendRespVO[]>('/im/friend/pull', { params }); |
| | | } |
| | | |
| | | /** è·å¾å¥½å详æ
*/ |
| | | export function getFriend(friendUserId: number | string) { |
| | | return requestClient.get<ImFriendApi.FriendRespVO>('/im/friend/get', { |
| | | params: { friendUserId }, |
| | | }); |
| | | } |
| | | |
| | | /** å é¤å¥½åï¼åå软å é¤ï¼ */ |
| | | export function deleteFriend(friendUserId: number | string, clear: boolean) { |
| | | return requestClient.delete<boolean>('/im/friend/delete', { |
| | | params: { friendUserId, clear }, |
| | | }); |
| | | } |
| | | |
| | | /** æ´æ°å¥½åä¿¡æ¯ï¼å¤æ³¨ / å
ææ° / èç³»äººç½®é¡¶ï¼ */ |
| | | export function updateFriend(data: ImFriendApi.FriendUpdateReqVO) { |
| | | return requestClient.put<boolean>('/im/friend/update', data); |
| | | } |
| | | |
| | | /** æé»å¥½åï¼å¿
é¡»å
æ¯å¥½åï¼åè¾¹å±è½å¯¹æ¹ç§èæ¶æ¯ï¼ */ |
| | | export function blockFriend(friendUserId: number | string) { |
| | | return requestClient.put<boolean>('/im/friend/block', undefined, { |
| | | params: { friendUserId }, |
| | | }); |
| | | } |
| | | |
| | | /** ç§»åºé»åå */ |
| | | export function unblockFriend(friendUserId: number | string) { |
| | | return requestClient.put<boolean>('/im/friend/unblock', undefined, { |
| | | params: { friendUserId }, |
| | | }); |
| | | } |