Files
flisp_app/lib/service/flisp_service.dart
2025-11-16 11:26:38 +08:00

49 lines
1005 B
Dart

import 'package:flisp_app/models/flisp.dart';
import 'package:hive_flutter/hive_flutter.dart';
class FlispService {
static const String boxName = 'flisps';
Box<Flisp> get box => Hive.box<Flisp>(boxName);
Future<bool> addFlisp(Flisp flisp) async {
try {
await box.add(flisp);
return true;
} catch (e) {
return false;
}
}
List<Flisp> getAllFlisps() {
return box.values.toList()
..sort((a, b) => b.updateTime.compareTo(a.updateTime));
}
List<Flisp> getAllFlispsByYear(int year) {
return box.values
.toList()
.where((flisp) => flisp.createTime.year == year)
.toList();
}
Future<bool> updateFlisp(Flisp flisp) async {
try {
flisp.updateTime = DateTime.now();
await flisp.save();
return true;
} catch (e) {
return false;
}
}
Future<bool> deleteFlisp(Flisp flisp) async {
try {
await flisp.delete();
return true;
} catch (e) {
return false;
}
}
}