diff --git a/src/onebot/action/group/GetGroupMemberInfo.ts b/src/onebot/action/group/GetGroupMemberInfo.ts index 3c2db5b37..783b6671a 100644 --- a/src/onebot/action/group/GetGroupMemberInfo.ts +++ b/src/onebot/action/group/GetGroupMemberInfo.ts @@ -31,18 +31,18 @@ class GetGroupMemberInfo extends BaseAction { NTQQGroupApi.getGroupMemberV2(payload.group_id.toString(), uid, isNocache), NTQQUserApi.getUserDetailInfo(uid), ]); - if (member.status !== 'fulfilled') throw new Error(`群(${payload.group_id})成员${payload.user_id}不存在 ${member.reason}`); + if (member.status !== 'fulfilled') throw new Error(`群(${payload.group_id})成员${payload.user_id}获取失败 ${member.reason}`); + if (!member.value) throw new Error(`群(${payload.group_id})成员${payload.user_id}不存在`); if (info.status === 'fulfilled') { - this.core.context.logger.logDebug('群成员详细信息结果', info.value); - Object.assign(member, info.value); + Object.assign(member.value, info.value); } else { this.core.context.logger.logDebug(`获取群成员详细信息失败, 只能返回基础信息 ${info.reason}`); } const date = Math.round(Date.now() / 1000); const retMember = OB11Entities.groupMember(payload.group_id.toString(), member.value as GroupMember); const Member = await this.core.apis.GroupApi.getGroupMember(payload.group_id.toString(), retMember.user_id); - retMember.last_sent_time = parseInt(Member?.lastSpeakTime || date.toString()); - retMember.join_time = parseInt(Member?.joinTime || date.toString()); + retMember.last_sent_time = parseInt(Member?.lastSpeakTime ?? date.toString()); + retMember.join_time = parseInt(Member?.joinTime ?? date.toString()); return retMember; } }