d1求片冷却
This commit is contained in:
@@ -1480,6 +1480,18 @@ export class D1Storage implements IStorage {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
async updateLastMovieRequestTime(userName: string, timestamp: number): Promise<void> {
|
||||
try {
|
||||
await this.db
|
||||
.prepare('UPDATE users SET last_movie_request_time = ? WHERE username = ?')
|
||||
.bind(timestamp, userName)
|
||||
.run();
|
||||
} catch (err) {
|
||||
console.error('D1Storage.updateLastMovieRequestTime error:', err);
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1275,6 +1275,16 @@ export abstract class BaseRedisStorage implements IStorage {
|
||||
);
|
||||
}
|
||||
|
||||
async updateLastMovieRequestTime(userName: string, timestamp: number): Promise<void> {
|
||||
await this.withRetry(() =>
|
||||
this.adapter.hSet(
|
||||
this.userInfoKey(userName),
|
||||
'last_movie_request_time',
|
||||
timestamp.toString()
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
// ---------- 求片相关 ----------
|
||||
private movieRequestsKey() {
|
||||
return 'movie_requests:all';
|
||||
|
||||
@@ -118,6 +118,9 @@ export interface IStorage {
|
||||
getLastFavoriteCheckTime(userName: string): Promise<number>;
|
||||
setLastFavoriteCheckTime(userName: string, timestamp: number): Promise<void>;
|
||||
|
||||
// 求片冷却时间
|
||||
updateLastMovieRequestTime?(userName: string, timestamp: number): Promise<void>;
|
||||
|
||||
// 求片相关
|
||||
getAllMovieRequests(): Promise<MovieRequest[]>;
|
||||
getMovieRequest(requestId: string): Promise<MovieRequest | null>;
|
||||
|
||||
Reference in New Issue
Block a user