diff --git a/src/core/apis/friend.ts b/src/core/apis/friend.ts index d51a926d..d18ea5ab 100644 --- a/src/core/apis/friend.ts +++ b/src/core/apis/friend.ts @@ -17,8 +17,14 @@ export class NTQQFriendApi { async getBuddyV2SimpleInfoMap () { const buddyService = this.context.session.getBuddyService(); - const buddyListV2 = await buddyService.getBuddyListV2('0', BuddyListReqType.KNOMAL); - const uids = buddyListV2.data.flatMap(item => item.buddyUids); + let uids: string[] = []; + if (this.core.context.basicInfoWrapper.requireMinNTQQBuild('40990')) { + const buddyListV2NT = await buddyService.getBuddyListV2('0', true, BuddyListReqType.KNOMAL); + uids = buddyListV2NT.data.flatMap(item => item.buddyUids); + } else { + const buddyListV2 = await buddyService.getBuddyListV2('0', BuddyListReqType.KNOMAL); + uids = buddyListV2.data.flatMap(item => item.buddyUids); + } return await this.core.eventWrapper.callNoListenerEvent( 'NodeIKernelProfileService/getCoreAndBaseInfo', 'nodeStore', diff --git a/src/core/services/NodeIKernelBuddyService.ts b/src/core/services/NodeIKernelBuddyService.ts index 16303250..39ae8fdb 100644 --- a/src/core/services/NodeIKernelBuddyService.ts +++ b/src/core/services/NodeIKernelBuddyService.ts @@ -3,122 +3,133 @@ import { NodeIKernelBuddyListener } from '@/core/listeners'; import { BuddyListReqType } from '@/core/types/user'; export interface NodeIKernelBuddyService { - getBuddyListV2(callFrom: string, reqType: BuddyListReqType): Promise - }> + buddyUids: Array; + }>; + }>; + getBuddyListV2 (callFrom: string, isPullRefresh: boolean, reqType: BuddyListReqType): Promise; + }>; }>; - getBuddyListFromCache(reqType: BuddyListReqType): Promise// Uids - }>>; - addKernelBuddyListener(listener: NodeIKernelBuddyListener): number; + getBuddyListFromCache (reqType: BuddyListReqType): Promise;// Uids + }>>; - getAllBuddyCount(): number; + addKernelBuddyListener (listener: NodeIKernelBuddyListener): number; - removeKernelBuddyListener(listenerId: number): void; + getAllBuddyCount (): number; + + removeKernelBuddyListener (listenerId: number): void; // getBuddyList(nocache: boolean): Promise; - getBuddyNick(uid: number): string; + getBuddyNick (uid: number): string; - getBuddyRemark(uid: number): string; + getBuddyRemark (uid: number): string; - setBuddyRemark(param: { uid: string, remark: string, signInfo?: unknown }): void; + setBuddyRemark (param: { uid: string, remark: string, signInfo?: unknown; }): void; - getAvatarUrl(uid: number): string; + getAvatarUrl (uid: number): string; - isBuddy(uid: string): boolean; + isBuddy (uid: string): boolean; - getCategoryNameWithUid(uid: number): string; + getCategoryNameWithUid (uid: number): string; - getTargetBuddySetting(uid: number): unknown; + getTargetBuddySetting (uid: number): unknown; - getTargetBuddySettingByType(uid: number, type: number): unknown; + getTargetBuddySettingByType (uid: number, type: number): unknown; - getBuddyReqUnreadCnt(): number; + getBuddyReqUnreadCnt (): number; - getBuddyReq(): Promise; + getBuddyReq (): Promise; - delBuddyReq(uid: number): void; + delBuddyReq (uid: number): void; - clearBuddyReqUnreadCnt(): Promise; + clearBuddyReqUnreadCnt (): Promise; - reqToAddFriends(uid: number, msg: string): void; + reqToAddFriends (uid: number, msg: string): void; - setSpacePermission(uid: number, permission: number): void; + setSpacePermission (uid: number, permission: number): void; - approvalFriendRequest(arg: { + approvalFriendRequest (arg: { friendUid: string; reqTime: string; accept: boolean; }): Promise; - delBuddy(param: { + delBuddy (param: { friendUid: string; tempBlock: boolean; tempBothDel: boolean; }): Promise; - delBatchBuddy(uids: number[]): void; + delBatchBuddy (uids: number[]): void; - getSmartInfos(uid: number): unknown; + getSmartInfos (uid: number): unknown; - setBuddyCategory(uid: number, category: number): void; + setBuddyCategory (uid: number, category: number): void; - setBatchBuddyCategory(uids: number[], category: number): void; + setBatchBuddyCategory (uids: number[], category: number): void; - addCategory(category: string): void; + addCategory (category: string): void; - delCategory(category: string): void; + delCategory (category: string): void; - renameCategory(oldCategory: string, newCategory: string): void; + renameCategory (oldCategory: string, newCategory: string): void; - resortCategory(categorys: string[]): void; + resortCategory (categorys: string[]): void; - pullCategory(uid: number, category: string): void; + pullCategory (uid: number, category: string): void; - setTop(uid: number, isTop: boolean): void; + setTop (uid: number, isTop: boolean): void; - SetSpecialCare(uid: number, isSpecialCare: boolean): void; + SetSpecialCare (uid: number, isSpecialCare: boolean): void; - setMsgNotify(uid: number, isNotify: boolean): void; + setMsgNotify (uid: number, isNotify: boolean): void; - hasBuddyList(): boolean; + hasBuddyList (): boolean; - setBlock(uid: number, isBlock: boolean): void; + setBlock (uid: number, isBlock: boolean): void; - isBlocked(uid: number): boolean; + isBlocked (uid: number): boolean; - modifyAddMeSetting(setting: unknown): void; + modifyAddMeSetting (setting: unknown): void; - getAddMeSetting(): unknown; + getAddMeSetting (): unknown; - getDoubtBuddyReq(reqId: string, num: number, uk:string): Promise; + getDoubtBuddyReq (reqId: string, num: number, uk: string): Promise; - getDoubtBuddyUnreadNum(): number; + getDoubtBuddyUnreadNum (): number; - approvalDoubtBuddyReq(uid: string, str1: string, str2: string): void; + approvalDoubtBuddyReq (uid: string, str1: string, str2: string): void; - delDoubtBuddyReq(uid: number): void; + delDoubtBuddyReq (uid: number): void; - delAllDoubtBuddyReq(): Promise; + delAllDoubtBuddyReq (): Promise; - reportDoubtBuddyReqUnread(): void; + reportDoubtBuddyReqUnread (): void; - getBuddyRecommendContactArkJson(uid: string, phoneNumber: string): Promise; + getBuddyRecommendContactArkJson (uid: string, phoneNumber: string): Promise; - isNull(): boolean; + isNull (): boolean; }