优化回收站

This commit is contained in:
DelLevin-Home
2026-08-09 02:20:44 +08:00
parent fb39c7b242
commit b796ff11b3
6 changed files with 275 additions and 117 deletions

View File

@@ -67,6 +67,29 @@ class BookCharacterDao {
);
});
/// 恢复已删除的角色
Future<int> restore(String id) => _wrap('restore', () async {
final db = await _dbHelper.database;
return await db.update(
'book_characters',
{'is_deleted': 0, 'updated_at': DateTime.now().toUtc().toIso8601String()},
where: 'id = ?',
whereArgs: [id],
);
});
/// 获取已删除的角色
Future<List<BookCharacter>> getDeleted() => _wrap('getDeleted', () async {
final db = await _dbHelper.database;
final maps = await db.query(
'book_characters',
where: 'is_deleted = ?',
whereArgs: [1],
orderBy: 'updated_at DESC',
);
return maps.map((m) => BookCharacter.fromJson(m)).toList();
});
/// 获取书籍的角色数量
Future<int> getCount(String bookId) => _wrap('getCount', () async {
final db = await _dbHelper.database;

View File

@@ -67,6 +67,29 @@ class GameCharacterDao {
);
});
/// 恢复已删除的角色
Future<int> restore(String id) => _wrap('restore', () async {
final db = await _dbHelper.database;
return await db.update(
'game_characters',
{'is_deleted': 0, 'updated_at': DateTime.now().toUtc().toIso8601String()},
where: 'id = ?',
whereArgs: [id],
);
});
/// 获取已删除的角色
Future<List<GameCharacter>> getDeleted() => _wrap('getDeleted', () async {
final db = await _dbHelper.database;
final maps = await db.query(
'game_characters',
where: 'is_deleted = ?',
whereArgs: [1],
orderBy: 'updated_at DESC',
);
return maps.map((m) => GameCharacter.fromJson(m)).toList();
});
/// 获取游戏的角色数量
Future<int> getCount(String gameId) => _wrap('getCount', () async {
final db = await _dbHelper.database;

View File

@@ -67,6 +67,29 @@ class MovieCharacterDao {
);
});
/// 恢复已删除的角色
Future<int> restore(String id) => _wrap('restore', () async {
final db = await _dbHelper.database;
return await db.update(
'movie_characters',
{'is_deleted': 0, 'updated_at': DateTime.now().toUtc().toIso8601String()},
where: 'id = ?',
whereArgs: [id],
);
});
/// 获取已删除的角色
Future<List<MovieCharacter>> getDeleted() => _wrap('getDeleted', () async {
final db = await _dbHelper.database;
final maps = await db.query(
'movie_characters',
where: 'is_deleted = ?',
whereArgs: [1],
orderBy: 'updated_at DESC',
);
return maps.map((m) => MovieCharacter.fromJson(m)).toList();
});
/// 获取影视的角色数量
Future<int> getCount(String movieId) => _wrap('getCount', () async {
final db = await _dbHelper.database;