Files
tasq/lib/brick/adapters/pass_slip_adapter.g.dart
2026-04-27 06:20:39 +08:00

303 lines
8.8 KiB
Dart

// GENERATED CODE DO NOT EDIT
part of '../brick.g.dart';
Future<PassSlip> _$PassSlipFromSupabase(
Map<String, dynamic> data, {
required SupabaseProvider provider,
OfflineFirstWithSupabaseRepository? repository,
}) async {
return PassSlip(
id: data['id'] as String,
userId: data['user_id'] as String,
dutyScheduleId: data['duty_schedule_id'] as String,
reason: data['reason'] as String,
status: data['status'] as String,
requestedAt: DateTime.parse(data['requested_at'] as String),
approvedBy: data['approved_by'] == null
? null
: data['approved_by'] as String?,
approvedAt: data['approved_at'] == null
? null
: data['approved_at'] == null
? null
: DateTime.tryParse(data['approved_at'] as String),
slipStart: data['slip_start'] == null
? null
: data['slip_start'] == null
? null
: DateTime.tryParse(data['slip_start'] as String),
slipEnd: data['slip_end'] == null
? null
: data['slip_end'] == null
? null
: DateTime.tryParse(data['slip_end'] as String),
requestedStart: data['requested_start'] == null
? null
: data['requested_start'] == null
? null
: DateTime.tryParse(data['requested_start'] as String),
);
}
Future<Map<String, dynamic>> _$PassSlipToSupabase(
PassSlip instance, {
required SupabaseProvider provider,
OfflineFirstWithSupabaseRepository? repository,
}) async {
return {
'id': instance.id,
'user_id': instance.userId,
'duty_schedule_id': instance.dutyScheduleId,
'reason': instance.reason,
'status': instance.status,
'requested_at': instance.requestedAt.toIso8601String(),
'approved_by': instance.approvedBy,
'approved_at': instance.approvedAt?.toIso8601String(),
'slip_start': instance.slipStart?.toIso8601String(),
'slip_end': instance.slipEnd?.toIso8601String(),
'requested_start': instance.requestedStart?.toIso8601String(),
};
}
Future<PassSlip> _$PassSlipFromSqlite(
Map<String, dynamic> data, {
required SqliteProvider provider,
OfflineFirstWithSupabaseRepository? repository,
}) async {
return PassSlip(
id: data['id'] as String,
userId: data['user_id'] as String,
dutyScheduleId: data['duty_schedule_id'] as String,
reason: data['reason'] as String,
status: data['status'] as String,
requestedAt: DateTime.parse(data['requested_at'] as String),
approvedBy: data['approved_by'] == null
? null
: data['approved_by'] as String?,
approvedAt: data['approved_at'] == null
? null
: data['approved_at'] == null
? null
: DateTime.tryParse(data['approved_at'] as String),
slipStart: data['slip_start'] == null
? null
: data['slip_start'] == null
? null
: DateTime.tryParse(data['slip_start'] as String),
slipEnd: data['slip_end'] == null
? null
: data['slip_end'] == null
? null
: DateTime.tryParse(data['slip_end'] as String),
requestedStart: data['requested_start'] == null
? null
: data['requested_start'] == null
? null
: DateTime.tryParse(data['requested_start'] as String),
)..primaryKey = data['_brick_id'] as int;
}
Future<Map<String, dynamic>> _$PassSlipToSqlite(
PassSlip instance, {
required SqliteProvider provider,
OfflineFirstWithSupabaseRepository? repository,
}) async {
return {
'id': instance.id,
'user_id': instance.userId,
'duty_schedule_id': instance.dutyScheduleId,
'reason': instance.reason,
'status': instance.status,
'requested_at': instance.requestedAt.toIso8601String(),
'approved_by': instance.approvedBy,
'approved_at': instance.approvedAt?.toIso8601String(),
'slip_start': instance.slipStart?.toIso8601String(),
'slip_end': instance.slipEnd?.toIso8601String(),
'requested_start': instance.requestedStart?.toIso8601String(),
};
}
/// Construct a [PassSlip]
class PassSlipAdapter extends OfflineFirstWithSupabaseAdapter<PassSlip> {
PassSlipAdapter();
@override
final supabaseTableName = 'pass_slips';
@override
final defaultToNull = true;
@override
final fieldsToSupabaseColumns = {
'id': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'id',
),
'userId': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'user_id',
),
'dutyScheduleId': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'duty_schedule_id',
),
'reason': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'reason',
),
'status': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'status',
),
'requestedAt': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'requested_at',
),
'approvedBy': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'approved_by',
),
'approvedAt': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'approved_at',
),
'slipStart': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'slip_start',
),
'slipEnd': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'slip_end',
),
'requestedStart': const RuntimeSupabaseColumnDefinition(
association: false,
columnName: 'requested_start',
),
};
@override
final ignoreDuplicates = false;
@override
final uniqueFields = {};
@override
final Map<String, RuntimeSqliteColumnDefinition> fieldsToSqliteColumns = {
'primaryKey': const RuntimeSqliteColumnDefinition(
association: false,
columnName: '_brick_id',
iterable: false,
type: int,
),
'id': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'id',
iterable: false,
type: String,
),
'userId': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'user_id',
iterable: false,
type: String,
),
'dutyScheduleId': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'duty_schedule_id',
iterable: false,
type: String,
),
'reason': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'reason',
iterable: false,
type: String,
),
'status': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'status',
iterable: false,
type: String,
),
'requestedAt': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'requested_at',
iterable: false,
type: DateTime,
),
'approvedBy': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'approved_by',
iterable: false,
type: String,
),
'approvedAt': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'approved_at',
iterable: false,
type: DateTime,
),
'slipStart': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'slip_start',
iterable: false,
type: DateTime,
),
'slipEnd': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'slip_end',
iterable: false,
type: DateTime,
),
'requestedStart': const RuntimeSqliteColumnDefinition(
association: false,
columnName: 'requested_start',
iterable: false,
type: DateTime,
),
};
@override
Future<int?> primaryKeyByUniqueColumns(
PassSlip instance,
DatabaseExecutor executor,
) async => instance.primaryKey;
@override
final String tableName = 'PassSlip';
@override
Future<PassSlip> fromSupabase(
Map<String, dynamic> input, {
required provider,
covariant OfflineFirstWithSupabaseRepository? repository,
}) async => await _$PassSlipFromSupabase(
input,
provider: provider,
repository: repository,
);
@override
Future<Map<String, dynamic>> toSupabase(
PassSlip input, {
required provider,
covariant OfflineFirstWithSupabaseRepository? repository,
}) async => await _$PassSlipToSupabase(
input,
provider: provider,
repository: repository,
);
@override
Future<PassSlip> fromSqlite(
Map<String, dynamic> input, {
required provider,
covariant OfflineFirstWithSupabaseRepository? repository,
}) async => await _$PassSlipFromSqlite(
input,
provider: provider,
repository: repository,
);
@override
Future<Map<String, dynamic>> toSqlite(
PassSlip input, {
required provider,
covariant OfflineFirstWithSupabaseRepository? repository,
}) async => await _$PassSlipToSqlite(
input,
provider: provider,
repository: repository,
);
}