34 lines
1.3 KiB
Dart
34 lines
1.3 KiB
Dart
import 'package:isar/isar.dart';
|
|
|
|
// Эта строка указывает Isar сгенерировать файл isar_transaction.g.dart
|
|
part 'isar_transaction.g.dart';
|
|
|
|
@collection // Аннотация для Isar коллекции
|
|
@Name("Transaction") // Явно задаем имя коллекции для Isar
|
|
class IsarTransaction {
|
|
Id id = Isar.autoIncrement; // Автоинкрементный ID
|
|
|
|
@Index() // Индекс для быстрого поиска/фильтрации по имени категории
|
|
@Name("category_name") // Явно задаем имя поля для Isar
|
|
late String categoryName;
|
|
|
|
late double amount;
|
|
|
|
@Index() // Индекс для быстрой сортировки/фильтрации по дате
|
|
@Name("transaction_date") // Явно задаем имя поля для Isar (используем другое имя для надежности)
|
|
late DateTime date;
|
|
|
|
late String merchant;
|
|
|
|
// Конструктор (необязателен, но удобен)
|
|
IsarTransaction({
|
|
required this.categoryName,
|
|
required this.amount,
|
|
required this.date,
|
|
required this.merchant,
|
|
});
|
|
|
|
// Пустой конструктор для Isar (не используется напрямую)
|
|
// IsarTransaction();
|
|
}
|