Merge pull request #44 from po-lan/main

对 get_group_member_list 增强
This commit is contained in:
手瓜一十雪 2024-05-28 21:49:26 +08:00 committed by GitHub
commit ba1542bd31
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 22 additions and 14 deletions

View File

@ -4,6 +4,7 @@ import sqlite3 from 'sqlite3';
import { log, logDebug, logError } from '@/common/utils/log';
import { NTQQMsgApi } from '@/core';
import LRU from "@/common/utils/LRUCache";
import { ob11Config } from '@/onebot11/config';
export interface IRember {
last_sent_time: number;
@ -483,24 +484,27 @@ class DBUtil extends DBUtilBase {
userId: number,
time: number
) {
this.LURCache.set(groupId, userId, time)
if (ob11Config.GroupLocalTimeRecord[0] == -1 || ob11Config.GroupLocalTimeRecord.includes(groupId))
this.LURCache.set(groupId, userId, time)
}
async insertJoinTime(
groupId: number,
userId: number,
time: number
) {
await this.createGroupInfoTimeTableIfNotExist(groupId);
this.db!.all(
`INSERT OR REPLACE INTO "${groupId}" (user_id, last_sent_time, join_time) VALUES (?,?,?)`,
[userId, time, time],
(err) => {
if (err)
logError(err),
Promise.reject(),
console.log("插入入群时间失败", userId, groupId);
}
);
if (ob11Config.GroupLocalTimeRecord[0] == -1 || ob11Config.GroupLocalTimeRecord.includes(groupId)){
await this.createGroupInfoTimeTableIfNotExist(groupId);
this.db!.all(
`INSERT OR REPLACE INTO "${groupId}" (user_id, last_sent_time, join_time) VALUES (?,?,?)`,
[userId, time, time],
(err) => {
if (err)
logError(err),
Promise.reject(),
console.log("插入入群时间失败", userId, groupId);
}
);
}
}
}

View File

@ -33,7 +33,7 @@ export interface OB11Config {
reportSelfMessage: boolean;
token: string;
GroupLocalTimeRecord: Array<string>;
GroupLocalTimeRecord: Array<number>;
read(): OB11Config;
@ -67,7 +67,7 @@ class Config extends ConfigBase<OB11Config> implements OB11Config {
reportSelfMessage = false;
token = '';
GroupLocalTimeRecord = [];
GroupLocalTimeRecord = [] as Array<number>;
getConfigPath() {
return path.join(this.getConfigDir(), `onebot11_${selfInfo.uin}.json`);

View File

@ -1,4 +1,5 @@
import { OB11GroupNoticeEvent } from './OB11GroupNoticeEvent';
import { dbUtil } from '@/common/utils/db';
type GroupIncreaseSubType = 'approve' | 'invite';
export class OB11GroupIncreaseEvent extends OB11GroupNoticeEvent {
@ -11,5 +12,8 @@ export class OB11GroupIncreaseEvent extends OB11GroupNoticeEvent {
this.operator_id = operatorId;
this.user_id = userId;
this.sub_type = subType;
dbUtil.insertJoinTime(groupId, userId, Math.floor(Date.now() / 1000))
}
}