update database
This commit is contained in:
47
lib/features/account/data/models/audit_log_model.dart
Normal file
47
lib/features/account/data/models/audit_log_model.dart
Normal file
@@ -0,0 +1,47 @@
|
||||
import 'dart:convert';
|
||||
import 'package:hive_ce/hive.dart';
|
||||
import 'package:worker/core/constants/storage_constants.dart';
|
||||
|
||||
part 'audit_log_model.g.dart';
|
||||
|
||||
@HiveType(typeId: HiveTypeIds.auditLogModel)
|
||||
class AuditLogModel extends HiveObject {
|
||||
AuditLogModel({required this.logId, required this.userId, required this.action, required this.entityType, required this.entityId, this.oldValue, this.newValue, this.ipAddress, this.userAgent, required this.timestamp});
|
||||
|
||||
@HiveField(0) final int logId;
|
||||
@HiveField(1) final String userId;
|
||||
@HiveField(2) final String action;
|
||||
@HiveField(3) final String entityType;
|
||||
@HiveField(4) final String entityId;
|
||||
@HiveField(5) final String? oldValue;
|
||||
@HiveField(6) final String? newValue;
|
||||
@HiveField(7) final String? ipAddress;
|
||||
@HiveField(8) final String? userAgent;
|
||||
@HiveField(9) final DateTime timestamp;
|
||||
|
||||
factory AuditLogModel.fromJson(Map<String, dynamic> json) => AuditLogModel(
|
||||
logId: json['log_id'] as int,
|
||||
userId: json['user_id'] as String,
|
||||
action: json['action'] as String,
|
||||
entityType: json['entity_type'] as String,
|
||||
entityId: json['entity_id'] as String,
|
||||
oldValue: json['old_value'] != null ? jsonEncode(json['old_value']) : null,
|
||||
newValue: json['new_value'] != null ? jsonEncode(json['new_value']) : null,
|
||||
ipAddress: json['ip_address'] as String?,
|
||||
userAgent: json['user_agent'] as String?,
|
||||
timestamp: DateTime.parse(json['timestamp'] as String),
|
||||
);
|
||||
|
||||
Map<String, dynamic> toJson() => {
|
||||
'log_id': logId,
|
||||
'user_id': userId,
|
||||
'action': action,
|
||||
'entity_type': entityType,
|
||||
'entity_id': entityId,
|
||||
'old_value': oldValue != null ? jsonDecode(oldValue!) : null,
|
||||
'new_value': newValue != null ? jsonDecode(newValue!) : null,
|
||||
'ip_address': ipAddress,
|
||||
'user_agent': userAgent,
|
||||
'timestamp': timestamp.toIso8601String(),
|
||||
};
|
||||
}
|
||||
68
lib/features/account/data/models/audit_log_model.g.dart
Normal file
68
lib/features/account/data/models/audit_log_model.g.dart
Normal file
@@ -0,0 +1,68 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'audit_log_model.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// TypeAdapterGenerator
|
||||
// **************************************************************************
|
||||
|
||||
class AuditLogModelAdapter extends TypeAdapter<AuditLogModel> {
|
||||
@override
|
||||
final typeId = 24;
|
||||
|
||||
@override
|
||||
AuditLogModel read(BinaryReader reader) {
|
||||
final numOfFields = reader.readByte();
|
||||
final fields = <int, dynamic>{
|
||||
for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
|
||||
};
|
||||
return AuditLogModel(
|
||||
logId: (fields[0] as num).toInt(),
|
||||
userId: fields[1] as String,
|
||||
action: fields[2] as String,
|
||||
entityType: fields[3] as String,
|
||||
entityId: fields[4] as String,
|
||||
oldValue: fields[5] as String?,
|
||||
newValue: fields[6] as String?,
|
||||
ipAddress: fields[7] as String?,
|
||||
userAgent: fields[8] as String?,
|
||||
timestamp: fields[9] as DateTime,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void write(BinaryWriter writer, AuditLogModel obj) {
|
||||
writer
|
||||
..writeByte(10)
|
||||
..writeByte(0)
|
||||
..write(obj.logId)
|
||||
..writeByte(1)
|
||||
..write(obj.userId)
|
||||
..writeByte(2)
|
||||
..write(obj.action)
|
||||
..writeByte(3)
|
||||
..write(obj.entityType)
|
||||
..writeByte(4)
|
||||
..write(obj.entityId)
|
||||
..writeByte(5)
|
||||
..write(obj.oldValue)
|
||||
..writeByte(6)
|
||||
..write(obj.newValue)
|
||||
..writeByte(7)
|
||||
..write(obj.ipAddress)
|
||||
..writeByte(8)
|
||||
..write(obj.userAgent)
|
||||
..writeByte(9)
|
||||
..write(obj.timestamp);
|
||||
}
|
||||
|
||||
@override
|
||||
int get hashCode => typeId.hashCode;
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) =>
|
||||
identical(this, other) ||
|
||||
other is AuditLogModelAdapter &&
|
||||
runtimeType == other.runtimeType &&
|
||||
typeId == other.typeId;
|
||||
}
|
||||
50
lib/features/account/data/models/payment_reminder_model.dart
Normal file
50
lib/features/account/data/models/payment_reminder_model.dart
Normal file
@@ -0,0 +1,50 @@
|
||||
import 'package:hive_ce/hive.dart';
|
||||
import 'package:worker/core/constants/storage_constants.dart';
|
||||
import 'package:worker/core/database/models/enums.dart';
|
||||
|
||||
part 'payment_reminder_model.g.dart';
|
||||
|
||||
@HiveType(typeId: HiveTypeIds.paymentReminderModel)
|
||||
class PaymentReminderModel extends HiveObject {
|
||||
PaymentReminderModel({required this.reminderId, required this.invoiceId, required this.userId, required this.reminderType, required this.subject, required this.message, required this.isRead, required this.isSent, this.scheduledAt, this.sentAt, this.readAt});
|
||||
|
||||
@HiveField(0) final String reminderId;
|
||||
@HiveField(1) final String invoiceId;
|
||||
@HiveField(2) final String userId;
|
||||
@HiveField(3) final ReminderType reminderType;
|
||||
@HiveField(4) final String subject;
|
||||
@HiveField(5) final String message;
|
||||
@HiveField(6) final bool isRead;
|
||||
@HiveField(7) final bool isSent;
|
||||
@HiveField(8) final DateTime? scheduledAt;
|
||||
@HiveField(9) final DateTime? sentAt;
|
||||
@HiveField(10) final DateTime? readAt;
|
||||
|
||||
factory PaymentReminderModel.fromJson(Map<String, dynamic> json) => PaymentReminderModel(
|
||||
reminderId: json['reminder_id'] as String,
|
||||
invoiceId: json['invoice_id'] as String,
|
||||
userId: json['user_id'] as String,
|
||||
reminderType: ReminderType.values.firstWhere((e) => e.name == json['reminder_type']),
|
||||
subject: json['subject'] as String,
|
||||
message: json['message'] as String,
|
||||
isRead: json['is_read'] as bool? ?? false,
|
||||
isSent: json['is_sent'] as bool? ?? false,
|
||||
scheduledAt: json['scheduled_at'] != null ? DateTime.parse(json['scheduled_at']?.toString() ?? '') : null,
|
||||
sentAt: json['sent_at'] != null ? DateTime.parse(json['sent_at']?.toString() ?? '') : null,
|
||||
readAt: json['read_at'] != null ? DateTime.parse(json['read_at']?.toString() ?? '') : null,
|
||||
);
|
||||
|
||||
Map<String, dynamic> toJson() => {
|
||||
'reminder_id': reminderId,
|
||||
'invoice_id': invoiceId,
|
||||
'user_id': userId,
|
||||
'reminder_type': reminderType.name,
|
||||
'subject': subject,
|
||||
'message': message,
|
||||
'is_read': isRead,
|
||||
'is_sent': isSent,
|
||||
'scheduled_at': scheduledAt?.toIso8601String(),
|
||||
'sent_at': sentAt?.toIso8601String(),
|
||||
'read_at': readAt?.toIso8601String(),
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'payment_reminder_model.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// TypeAdapterGenerator
|
||||
// **************************************************************************
|
||||
|
||||
class PaymentReminderModelAdapter extends TypeAdapter<PaymentReminderModel> {
|
||||
@override
|
||||
final typeId = 23;
|
||||
|
||||
@override
|
||||
PaymentReminderModel read(BinaryReader reader) {
|
||||
final numOfFields = reader.readByte();
|
||||
final fields = <int, dynamic>{
|
||||
for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
|
||||
};
|
||||
return PaymentReminderModel(
|
||||
reminderId: fields[0] as String,
|
||||
invoiceId: fields[1] as String,
|
||||
userId: fields[2] as String,
|
||||
reminderType: fields[3] as ReminderType,
|
||||
subject: fields[4] as String,
|
||||
message: fields[5] as String,
|
||||
isRead: fields[6] as bool,
|
||||
isSent: fields[7] as bool,
|
||||
scheduledAt: fields[8] as DateTime?,
|
||||
sentAt: fields[9] as DateTime?,
|
||||
readAt: fields[10] as DateTime?,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void write(BinaryWriter writer, PaymentReminderModel obj) {
|
||||
writer
|
||||
..writeByte(11)
|
||||
..writeByte(0)
|
||||
..write(obj.reminderId)
|
||||
..writeByte(1)
|
||||
..write(obj.invoiceId)
|
||||
..writeByte(2)
|
||||
..write(obj.userId)
|
||||
..writeByte(3)
|
||||
..write(obj.reminderType)
|
||||
..writeByte(4)
|
||||
..write(obj.subject)
|
||||
..writeByte(5)
|
||||
..write(obj.message)
|
||||
..writeByte(6)
|
||||
..write(obj.isRead)
|
||||
..writeByte(7)
|
||||
..write(obj.isSent)
|
||||
..writeByte(8)
|
||||
..write(obj.scheduledAt)
|
||||
..writeByte(9)
|
||||
..write(obj.sentAt)
|
||||
..writeByte(10)
|
||||
..write(obj.readAt);
|
||||
}
|
||||
|
||||
@override
|
||||
int get hashCode => typeId.hashCode;
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) =>
|
||||
identical(this, other) ||
|
||||
other is PaymentReminderModelAdapter &&
|
||||
runtimeType == other.runtimeType &&
|
||||
typeId == other.typeId;
|
||||
}
|
||||
Reference in New Issue
Block a user