diff --git a/src/core b/src/core index 0e7c9d43..e8dee74e 160000 --- a/src/core +++ b/src/core @@ -1 +1 @@ -Subproject commit 0e7c9d43c4c401a2b34f4b5637d566a2ff27b7b7 +Subproject commit e8dee74e8dcb1ed73dd3017d6759f14f68348173 diff --git a/src/onebot11/action/group/GetGroupList.ts b/src/onebot11/action/group/GetGroupList.ts index 80d92669..1158e5a0 100644 --- a/src/onebot11/action/group/GetGroupList.ts +++ b/src/onebot11/action/group/GetGroupList.ts @@ -3,19 +3,24 @@ import { OB11Constructor } from '../../constructor'; import BaseAction from '../BaseAction'; import { ActionName } from '../types'; import { groups } from '@/common/data'; -import {NTQQGroupApi} from "@/core/qqnt/apis"; +import { NTQQGroupApi } from '@/core/qqnt/apis'; +import { Group } from '@/core/qqnt/entities'; +import { log } from '@/common/utils/log'; +interface Payload { + no_cache: boolean; +} -class GetGroupList extends BaseAction { +class GetGroupList extends BaseAction { actionName = ActionName.GetGroupList; - protected async _handle(payload: null) { - if (groups.size === 0) { - //todo: get groups - // const groups = await NTQQGroupApi.getGroups(true) - // log("get groups", groups) + protected async _handle(payload: Payload) { + let groupList: Group[] = Array.from(groups.values()); + if (groupList.length === 0) { + groupList = await NTQQGroupApi.getGroups(payload.no_cache === true); + // log('get groups', groups); } - return OB11Constructor.groups(Array.from(groups.values())); + return OB11Constructor.groups(groupList); } }