diff --git a/apps/health_campaign_field_worker_app/lib/app.dart b/apps/health_campaign_field_worker_app/lib/app.dart index 7d90ae5da..7472335aa 100644 --- a/apps/health_campaign_field_worker_app/lib/app.dart +++ b/apps/health_campaign_field_worker_app/lib/app.dart @@ -316,6 +316,8 @@ class MainApplicationState extends State projectFacilityDataRepository: context.repository< ProjectFacilityModel, ProjectFacilitySearchModel>(), + facilityDataRepository: context.repository< + FacilityModel, FacilitySearchModel>(), ), ), BlocProvider( diff --git a/apps/health_campaign_field_worker_app/pubspec.lock b/apps/health_campaign_field_worker_app/pubspec.lock index c47910a9c..ffb702d6a 100644 --- a/apps/health_campaign_field_worker_app/pubspec.lock +++ b/apps/health_campaign_field_worker_app/pubspec.lock @@ -69,10 +69,10 @@ packages: dependency: "direct main" description: name: attendance_management - sha256: f1b4373e8d0d9f8227ede0d25d4141f0d16d18ac2525c0347b844098cdab080f + sha256: "8a09814ca11cca736d771be70fb6174303ea0cb3525aa72e7239cbc14b915303" url: "https://pub.dev" source: hosted - version: "1.0.2+1" + version: "1.0.2+4" audioplayers: dependency: "direct main" description: @@ -501,10 +501,9 @@ packages: digit_data_model: dependency: "direct main" description: - name: digit_data_model - sha256: "0e5a1f8c5f0548e573af9c0279942f2dbc332042865614e0b89fe5952002ef1f" - url: "https://pub.dev" - source: hosted + path: "../../packages/digit_data_model" + relative: true + source: path version: "1.0.4" digit_dss: dependency: "direct main" @@ -517,9 +516,10 @@ packages: digit_firebase_services: dependency: "direct main" description: - path: "../../packages/digit_firebase_services" - relative: true - source: path + name: digit_firebase_services + sha256: ce76521d797e123b6fc95c9dfad7d4a918a93b97f57aecd0e1d517b46190909d + url: "https://pub.dev" + source: hosted version: "0.0.1" digit_location_tracker: dependency: "direct main" @@ -1127,11 +1127,10 @@ packages: inventory_management: dependency: "direct main" description: - name: inventory_management - sha256: "1d0dd4f7811941092653426a86548a31d475237d318eee71505b21a57ebc310b" - url: "https://pub.dev" - source: hosted - version: "1.0.3+4" + path: "../../packages/inventory_management" + relative: true + source: path + version: "1.0.3+5" io: dependency: transitive description: @@ -1591,10 +1590,9 @@ packages: referral_reconciliation: dependency: "direct main" description: - name: referral_reconciliation - sha256: "8aa550fe43e59b9d61ca958a50d9bb90860081807314e376b93f34c879e96569" - url: "https://pub.dev" - source: hosted + path: "../../packages/referral_reconciliation" + relative: true + source: path version: "1.0.2+2" registration_delivery: dependency: "direct main" diff --git a/apps/health_campaign_field_worker_app/pubspec.yaml b/apps/health_campaign_field_worker_app/pubspec.yaml index 06d188a41..7c0354f54 100644 --- a/apps/health_campaign_field_worker_app/pubspec.yaml +++ b/apps/health_campaign_field_worker_app/pubspec.yaml @@ -67,9 +67,9 @@ dependencies: camera: ^0.10.5+7 attendance_management: ^1.0.2+4 digit_scanner: ^1.0.3+1 - inventory_management: ^1.0.3+4 - referral_reconciliation: ^1.0.2+2 - digit_data_model: ^1.0.4 + inventory_management: + referral_reconciliation: + digit_data_model: registration_delivery: ^1.0.3+2 disable_battery_optimization: ^1.1.1 digit_dss: ^1.0.1 diff --git a/packages/digit_data_model/lib/blocs/project_facility/project_facility.dart b/packages/digit_data_model/lib/blocs/project_facility/project_facility.dart index ded76c2f0..8e44708f7 100644 --- a/packages/digit_data_model/lib/blocs/project_facility/project_facility.dart +++ b/packages/digit_data_model/lib/blocs/project_facility/project_facility.dart @@ -4,6 +4,7 @@ import 'dart:async'; import 'package:digit_data_model/models/entities/project_facility.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; +import '../../models/entities/facility.dart'; import '../../utils/typedefs.dart'; @@ -19,12 +20,14 @@ class ProjectFacilityBloc extends Bloc { // The data repository used by this bloc. final ProjectFacilityDataRepository projectFacilityDataRepository; + final FacilityDataRepository facilityDataRepository; /// The constructor for `ProjectFacilityBloc`. /// It initializes the bloc with an empty state and sets up the event handler for loading project facilities. ProjectFacilityBloc( super.initialState, { required this.projectFacilityDataRepository, + required this.facilityDataRepository, }) { on(_handleLoad); } @@ -40,10 +43,21 @@ class ProjectFacilityBloc event.query, ); + final facilities = await facilityDataRepository.search(FacilitySearchModel( + id: results.map((e) => e.facilityId).toList(), + )); + Map facilityMap = {}; + for (var element in facilities) { + facilityMap[element.id] = element.name ?? element.id; + } + if (results.isEmpty) { emit(const ProjectFacilityEmptyState()); } else { - emit(ProjectFacilityFetchedState(projectFacilities: results)); + emit(ProjectFacilityFetchedState( + projectFacilities: results, + facilityMap: facilityMap, + )); } } } @@ -69,5 +83,6 @@ class ProjectFacilityState with _$ProjectFacilityState { /// The `ProjectFacilityFetchedState` state represents the state where project facilities have been loaded. const factory ProjectFacilityState.fetched({ required List projectFacilities, + required Map facilityMap, }) = ProjectFacilityFetchedState; } diff --git a/packages/digit_data_model/lib/blocs/project_facility/project_facility.freezed.dart b/packages/digit_data_model/lib/blocs/project_facility/project_facility.freezed.dart index fc9a97289..9251295c8 100644 --- a/packages/digit_data_model/lib/blocs/project_facility/project_facility.freezed.dart +++ b/packages/digit_data_model/lib/blocs/project_facility/project_facility.freezed.dart @@ -232,7 +232,8 @@ mixin _$ProjectFacilityState { TResult when({ required TResult Function() empty, required TResult Function() loading, - required TResult Function(List projectFacilities) + required TResult Function(List projectFacilities, + Map facilityMap) fetched, }) => throw _privateConstructorUsedError; @@ -240,14 +241,18 @@ mixin _$ProjectFacilityState { TResult? whenOrNull({ TResult? Function()? empty, TResult? Function()? loading, - TResult? Function(List projectFacilities)? fetched, + TResult? Function(List projectFacilities, + Map facilityMap)? + fetched, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult maybeWhen({ TResult Function()? empty, TResult Function()? loading, - TResult Function(List projectFacilities)? fetched, + TResult Function(List projectFacilities, + Map facilityMap)? + fetched, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -338,7 +343,8 @@ class _$ProjectFacilityEmptyStateImpl implements ProjectFacilityEmptyState { TResult when({ required TResult Function() empty, required TResult Function() loading, - required TResult Function(List projectFacilities) + required TResult Function(List projectFacilities, + Map facilityMap) fetched, }) { return empty(); @@ -349,7 +355,9 @@ class _$ProjectFacilityEmptyStateImpl implements ProjectFacilityEmptyState { TResult? whenOrNull({ TResult? Function()? empty, TResult? Function()? loading, - TResult? Function(List projectFacilities)? fetched, + TResult? Function(List projectFacilities, + Map facilityMap)? + fetched, }) { return empty?.call(); } @@ -359,7 +367,9 @@ class _$ProjectFacilityEmptyStateImpl implements ProjectFacilityEmptyState { TResult maybeWhen({ TResult Function()? empty, TResult Function()? loading, - TResult Function(List projectFacilities)? fetched, + TResult Function(List projectFacilities, + Map facilityMap)? + fetched, required TResult orElse(), }) { if (empty != null) { @@ -451,7 +461,8 @@ class _$ProjectFacilityLoadingStateImpl implements ProjectFacilityLoadingState { TResult when({ required TResult Function() empty, required TResult Function() loading, - required TResult Function(List projectFacilities) + required TResult Function(List projectFacilities, + Map facilityMap) fetched, }) { return loading(); @@ -462,7 +473,9 @@ class _$ProjectFacilityLoadingStateImpl implements ProjectFacilityLoadingState { TResult? whenOrNull({ TResult? Function()? empty, TResult? Function()? loading, - TResult? Function(List projectFacilities)? fetched, + TResult? Function(List projectFacilities, + Map facilityMap)? + fetched, }) { return loading?.call(); } @@ -472,7 +485,9 @@ class _$ProjectFacilityLoadingStateImpl implements ProjectFacilityLoadingState { TResult maybeWhen({ TResult Function()? empty, TResult Function()? loading, - TResult Function(List projectFacilities)? fetched, + TResult Function(List projectFacilities, + Map facilityMap)? + fetched, required TResult orElse(), }) { if (loading != null) { @@ -528,7 +543,9 @@ abstract class _$$ProjectFacilityFetchedStateImplCopyWith<$Res> { $Res Function(_$ProjectFacilityFetchedStateImpl) then) = __$$ProjectFacilityFetchedStateImplCopyWithImpl<$Res>; @useResult - $Res call({List projectFacilities}); + $Res call( + {List projectFacilities, + Map facilityMap}); } /// @nodoc @@ -545,12 +562,17 @@ class __$$ProjectFacilityFetchedStateImplCopyWithImpl<$Res> @override $Res call({ Object? projectFacilities = null, + Object? facilityMap = null, }) { return _then(_$ProjectFacilityFetchedStateImpl( projectFacilities: null == projectFacilities ? _value._projectFacilities : projectFacilities // ignore: cast_nullable_to_non_nullable as List, + facilityMap: null == facilityMap + ? _value._facilityMap + : facilityMap // ignore: cast_nullable_to_non_nullable + as Map, )); } } @@ -559,8 +581,10 @@ class __$$ProjectFacilityFetchedStateImplCopyWithImpl<$Res> class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { const _$ProjectFacilityFetchedStateImpl( - {required final List projectFacilities}) - : _projectFacilities = projectFacilities; + {required final List projectFacilities, + required final Map facilityMap}) + : _projectFacilities = projectFacilities, + _facilityMap = facilityMap; final List _projectFacilities; @override @@ -571,9 +595,17 @@ class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { return EqualUnmodifiableListView(_projectFacilities); } + final Map _facilityMap; + @override + Map get facilityMap { + if (_facilityMap is EqualUnmodifiableMapView) return _facilityMap; + // ignore: implicit_dynamic_type + return EqualUnmodifiableMapView(_facilityMap); + } + @override String toString() { - return 'ProjectFacilityState.fetched(projectFacilities: $projectFacilities)'; + return 'ProjectFacilityState.fetched(projectFacilities: $projectFacilities, facilityMap: $facilityMap)'; } @override @@ -582,12 +614,16 @@ class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { (other.runtimeType == runtimeType && other is _$ProjectFacilityFetchedStateImpl && const DeepCollectionEquality() - .equals(other._projectFacilities, _projectFacilities)); + .equals(other._projectFacilities, _projectFacilities) && + const DeepCollectionEquality() + .equals(other._facilityMap, _facilityMap)); } @override int get hashCode => Object.hash( - runtimeType, const DeepCollectionEquality().hash(_projectFacilities)); + runtimeType, + const DeepCollectionEquality().hash(_projectFacilities), + const DeepCollectionEquality().hash(_facilityMap)); @JsonKey(ignore: true) @override @@ -601,10 +637,11 @@ class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { TResult when({ required TResult Function() empty, required TResult Function() loading, - required TResult Function(List projectFacilities) + required TResult Function(List projectFacilities, + Map facilityMap) fetched, }) { - return fetched(projectFacilities); + return fetched(projectFacilities, facilityMap); } @override @@ -612,9 +649,11 @@ class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { TResult? whenOrNull({ TResult? Function()? empty, TResult? Function()? loading, - TResult? Function(List projectFacilities)? fetched, + TResult? Function(List projectFacilities, + Map facilityMap)? + fetched, }) { - return fetched?.call(projectFacilities); + return fetched?.call(projectFacilities, facilityMap); } @override @@ -622,11 +661,13 @@ class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { TResult maybeWhen({ TResult Function()? empty, TResult Function()? loading, - TResult Function(List projectFacilities)? fetched, + TResult Function(List projectFacilities, + Map facilityMap)? + fetched, required TResult orElse(), }) { if (fetched != null) { - return fetched(projectFacilities); + return fetched(projectFacilities, facilityMap); } return orElse(); } @@ -668,10 +709,12 @@ class _$ProjectFacilityFetchedStateImpl implements ProjectFacilityFetchedState { abstract class ProjectFacilityFetchedState implements ProjectFacilityState { const factory ProjectFacilityFetchedState( - {required final List projectFacilities}) = + {required final List projectFacilities, + required final Map facilityMap}) = _$ProjectFacilityFetchedStateImpl; List get projectFacilities; + Map get facilityMap; @JsonKey(ignore: true) _$$ProjectFacilityFetchedStateImplCopyWith<_$ProjectFacilityFetchedStateImpl> get copyWith => throw _privateConstructorUsedError; diff --git a/packages/digit_data_model/lib/data/local_store/sql_store/sql_store.g.dart b/packages/digit_data_model/lib/data/local_store/sql_store/sql_store.g.dart index 67c31d083..37daa8c69 100644 --- a/packages/digit_data_model/lib/data/local_store/sql_store/sql_store.g.dart +++ b/packages/digit_data_model/lib/data/local_store/sql_store/sql_store.g.dart @@ -6875,6 +6875,11 @@ class $FacilityTable extends Facility late final GeneratedColumn tenantId = GeneratedColumn( 'tenant_id', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); + static const VerificationMeta _nameMeta = const VerificationMeta('name'); + @override + late final GeneratedColumn name = GeneratedColumn( + 'name', aliasedName, true, + type: DriftSqlType.string, requiredDuringInsert: false); static const VerificationMeta _isDeletedMeta = const VerificationMeta('isDeleted'); @override @@ -6913,6 +6918,7 @@ class $FacilityTable extends Facility auditModifiedBy, auditModifiedTime, tenantId, + name, isDeleted, rowVersion, additionalFields @@ -7006,6 +7012,10 @@ class $FacilityTable extends Facility context.handle(_tenantIdMeta, tenantId.isAcceptableOrUnknown(data['tenant_id']!, _tenantIdMeta)); } + if (data.containsKey('name')) { + context.handle( + _nameMeta, name.isAcceptableOrUnknown(data['name']!, _nameMeta)); + } if (data.containsKey('is_deleted')) { context.handle(_isDeletedMeta, isDeleted.isAcceptableOrUnknown(data['is_deleted']!, _isDeletedMeta)); @@ -7059,6 +7069,8 @@ class $FacilityTable extends Facility DriftSqlType.int, data['${effectivePrefix}audit_modified_time']), tenantId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}tenant_id']), + name: attachedDatabase.typeMapping + .read(DriftSqlType.string, data['${effectivePrefix}name']), isDeleted: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}is_deleted']), rowVersion: attachedDatabase.typeMapping @@ -7089,6 +7101,7 @@ class FacilityData extends DataClass implements Insertable { final String? auditModifiedBy; final int? auditModifiedTime; final String? tenantId; + final String? name; final bool? isDeleted; final int? rowVersion; final String? additionalFields; @@ -7107,6 +7120,7 @@ class FacilityData extends DataClass implements Insertable { this.auditModifiedBy, this.auditModifiedTime, this.tenantId, + this.name, this.isDeleted, this.rowVersion, this.additionalFields}); @@ -7153,6 +7167,9 @@ class FacilityData extends DataClass implements Insertable { if (!nullToAbsent || tenantId != null) { map['tenant_id'] = Variable(tenantId); } + if (!nullToAbsent || name != null) { + map['name'] = Variable(name); + } if (!nullToAbsent || isDeleted != null) { map['is_deleted'] = Variable(isDeleted); } @@ -7206,6 +7223,7 @@ class FacilityData extends DataClass implements Insertable { tenantId: tenantId == null && nullToAbsent ? const Value.absent() : Value(tenantId), + name: name == null && nullToAbsent ? const Value.absent() : Value(name), isDeleted: isDeleted == null && nullToAbsent ? const Value.absent() : Value(isDeleted), @@ -7237,6 +7255,7 @@ class FacilityData extends DataClass implements Insertable { auditModifiedBy: serializer.fromJson(json['auditModifiedBy']), auditModifiedTime: serializer.fromJson(json['auditModifiedTime']), tenantId: serializer.fromJson(json['tenantId']), + name: serializer.fromJson(json['name']), isDeleted: serializer.fromJson(json['isDeleted']), rowVersion: serializer.fromJson(json['rowVersion']), additionalFields: serializer.fromJson(json['additionalFields']), @@ -7260,6 +7279,7 @@ class FacilityData extends DataClass implements Insertable { 'auditModifiedBy': serializer.toJson(auditModifiedBy), 'auditModifiedTime': serializer.toJson(auditModifiedTime), 'tenantId': serializer.toJson(tenantId), + 'name': serializer.toJson(name), 'isDeleted': serializer.toJson(isDeleted), 'rowVersion': serializer.toJson(rowVersion), 'additionalFields': serializer.toJson(additionalFields), @@ -7281,6 +7301,7 @@ class FacilityData extends DataClass implements Insertable { Value auditModifiedBy = const Value.absent(), Value auditModifiedTime = const Value.absent(), Value tenantId = const Value.absent(), + Value name = const Value.absent(), Value isDeleted = const Value.absent(), Value rowVersion = const Value.absent(), Value additionalFields = const Value.absent()}) => @@ -7318,6 +7339,7 @@ class FacilityData extends DataClass implements Insertable { ? auditModifiedTime.value : this.auditModifiedTime, tenantId: tenantId.present ? tenantId.value : this.tenantId, + name: name.present ? name.value : this.name, isDeleted: isDeleted.present ? isDeleted.value : this.isDeleted, rowVersion: rowVersion.present ? rowVersion.value : this.rowVersion, additionalFields: additionalFields.present @@ -7341,6 +7363,7 @@ class FacilityData extends DataClass implements Insertable { ..write('auditModifiedBy: $auditModifiedBy, ') ..write('auditModifiedTime: $auditModifiedTime, ') ..write('tenantId: $tenantId, ') + ..write('name: $name, ') ..write('isDeleted: $isDeleted, ') ..write('rowVersion: $rowVersion, ') ..write('additionalFields: $additionalFields') @@ -7364,6 +7387,7 @@ class FacilityData extends DataClass implements Insertable { auditModifiedBy, auditModifiedTime, tenantId, + name, isDeleted, rowVersion, additionalFields); @@ -7385,6 +7409,7 @@ class FacilityData extends DataClass implements Insertable { other.auditModifiedBy == this.auditModifiedBy && other.auditModifiedTime == this.auditModifiedTime && other.tenantId == this.tenantId && + other.name == this.name && other.isDeleted == this.isDeleted && other.rowVersion == this.rowVersion && other.additionalFields == this.additionalFields); @@ -7405,6 +7430,7 @@ class FacilityCompanion extends UpdateCompanion { final Value auditModifiedBy; final Value auditModifiedTime; final Value tenantId; + final Value name; final Value isDeleted; final Value rowVersion; final Value additionalFields; @@ -7424,6 +7450,7 @@ class FacilityCompanion extends UpdateCompanion { this.auditModifiedBy = const Value.absent(), this.auditModifiedTime = const Value.absent(), this.tenantId = const Value.absent(), + this.name = const Value.absent(), this.isDeleted = const Value.absent(), this.rowVersion = const Value.absent(), this.additionalFields = const Value.absent(), @@ -7444,6 +7471,7 @@ class FacilityCompanion extends UpdateCompanion { this.auditModifiedBy = const Value.absent(), this.auditModifiedTime = const Value.absent(), this.tenantId = const Value.absent(), + this.name = const Value.absent(), this.isDeleted = const Value.absent(), this.rowVersion = const Value.absent(), this.additionalFields = const Value.absent(), @@ -7464,6 +7492,7 @@ class FacilityCompanion extends UpdateCompanion { Expression? auditModifiedBy, Expression? auditModifiedTime, Expression? tenantId, + Expression? name, Expression? isDeleted, Expression? rowVersion, Expression? additionalFields, @@ -7486,6 +7515,7 @@ class FacilityCompanion extends UpdateCompanion { if (auditModifiedBy != null) 'audit_modified_by': auditModifiedBy, if (auditModifiedTime != null) 'audit_modified_time': auditModifiedTime, if (tenantId != null) 'tenant_id': tenantId, + if (name != null) 'name': name, if (isDeleted != null) 'is_deleted': isDeleted, if (rowVersion != null) 'row_version': rowVersion, if (additionalFields != null) 'additional_fields': additionalFields, @@ -7508,6 +7538,7 @@ class FacilityCompanion extends UpdateCompanion { Value? auditModifiedBy, Value? auditModifiedTime, Value? tenantId, + Value? name, Value? isDeleted, Value? rowVersion, Value? additionalFields, @@ -7527,6 +7558,7 @@ class FacilityCompanion extends UpdateCompanion { auditModifiedBy: auditModifiedBy ?? this.auditModifiedBy, auditModifiedTime: auditModifiedTime ?? this.auditModifiedTime, tenantId: tenantId ?? this.tenantId, + name: name ?? this.name, isDeleted: isDeleted ?? this.isDeleted, rowVersion: rowVersion ?? this.rowVersion, additionalFields: additionalFields ?? this.additionalFields, @@ -7579,6 +7611,9 @@ class FacilityCompanion extends UpdateCompanion { if (tenantId.present) { map['tenant_id'] = Variable(tenantId.value); } + if (name.present) { + map['name'] = Variable(name.value); + } if (isDeleted.present) { map['is_deleted'] = Variable(isDeleted.value); } @@ -7611,6 +7646,7 @@ class FacilityCompanion extends UpdateCompanion { ..write('auditModifiedBy: $auditModifiedBy, ') ..write('auditModifiedTime: $auditModifiedTime, ') ..write('tenantId: $tenantId, ') + ..write('name: $name, ') ..write('isDeleted: $isDeleted, ') ..write('rowVersion: $rowVersion, ') ..write('additionalFields: $additionalFields, ') @@ -18025,6 +18061,12 @@ class $StockTable extends Stock with TableInfo<$StockTable, StockData> { late final GeneratedColumn senderType = GeneratedColumn( 'sender_type', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); + static const VerificationMeta _dateOfEntryMeta = + const VerificationMeta('dateOfEntry'); + @override + late final GeneratedColumn dateOfEntry = GeneratedColumn( + 'date_of_entry', aliasedName, true, + type: DriftSqlType.int, requiredDuringInsert: false); static const VerificationMeta _auditCreatedByMeta = const VerificationMeta('auditCreatedBy'); @override @@ -18139,6 +18181,7 @@ class $StockTable extends Stock with TableInfo<$StockTable, StockData> { receiverType, senderId, senderType, + dateOfEntry, auditCreatedBy, nonRecoverableError, auditCreatedTime, @@ -18240,6 +18283,12 @@ class $StockTable extends Stock with TableInfo<$StockTable, StockData> { senderType.isAcceptableOrUnknown( data['sender_type']!, _senderTypeMeta)); } + if (data.containsKey('date_of_entry')) { + context.handle( + _dateOfEntryMeta, + dateOfEntry.isAcceptableOrUnknown( + data['date_of_entry']!, _dateOfEntryMeta)); + } if (data.containsKey('audit_created_by')) { context.handle( _auditCreatedByMeta, @@ -18368,6 +18417,8 @@ class $StockTable extends Stock with TableInfo<$StockTable, StockData> { .read(DriftSqlType.string, data['${effectivePrefix}sender_id']), senderType: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}sender_type']), + dateOfEntry: attachedDatabase.typeMapping + .read(DriftSqlType.int, data['${effectivePrefix}date_of_entry']), auditCreatedBy: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}audit_created_by']), nonRecoverableError: attachedDatabase.typeMapping.read( @@ -18422,6 +18473,7 @@ class StockData extends DataClass implements Insertable { final String? receiverType; final String? senderId; final String? senderType; + final int? dateOfEntry; final String? auditCreatedBy; final bool? nonRecoverableError; final int? auditCreatedTime; @@ -18452,6 +18504,7 @@ class StockData extends DataClass implements Insertable { this.receiverType, this.senderId, this.senderType, + this.dateOfEntry, this.auditCreatedBy, this.nonRecoverableError, this.auditCreatedTime, @@ -18512,6 +18565,9 @@ class StockData extends DataClass implements Insertable { if (!nullToAbsent || senderType != null) { map['sender_type'] = Variable(senderType); } + if (!nullToAbsent || dateOfEntry != null) { + map['date_of_entry'] = Variable(dateOfEntry); + } if (!nullToAbsent || auditCreatedBy != null) { map['audit_created_by'] = Variable(auditCreatedBy); } @@ -18600,6 +18656,9 @@ class StockData extends DataClass implements Insertable { senderType: senderType == null && nullToAbsent ? const Value.absent() : Value(senderType), + dateOfEntry: dateOfEntry == null && nullToAbsent + ? const Value.absent() + : Value(dateOfEntry), auditCreatedBy: auditCreatedBy == null && nullToAbsent ? const Value.absent() : Value(auditCreatedBy), @@ -18666,6 +18725,7 @@ class StockData extends DataClass implements Insertable { receiverType: serializer.fromJson(json['receiverType']), senderId: serializer.fromJson(json['senderId']), senderType: serializer.fromJson(json['senderType']), + dateOfEntry: serializer.fromJson(json['dateOfEntry']), auditCreatedBy: serializer.fromJson(json['auditCreatedBy']), nonRecoverableError: serializer.fromJson(json['nonRecoverableError']), @@ -18703,6 +18763,7 @@ class StockData extends DataClass implements Insertable { 'receiverType': serializer.toJson(receiverType), 'senderId': serializer.toJson(senderId), 'senderType': serializer.toJson(senderType), + 'dateOfEntry': serializer.toJson(dateOfEntry), 'auditCreatedBy': serializer.toJson(auditCreatedBy), 'nonRecoverableError': serializer.toJson(nonRecoverableError), 'auditCreatedTime': serializer.toJson(auditCreatedTime), @@ -18736,6 +18797,7 @@ class StockData extends DataClass implements Insertable { Value receiverType = const Value.absent(), Value senderId = const Value.absent(), Value senderType = const Value.absent(), + Value dateOfEntry = const Value.absent(), Value auditCreatedBy = const Value.absent(), Value nonRecoverableError = const Value.absent(), Value auditCreatedTime = const Value.absent(), @@ -18776,6 +18838,7 @@ class StockData extends DataClass implements Insertable { receiverType.present ? receiverType.value : this.receiverType, senderId: senderId.present ? senderId.value : this.senderId, senderType: senderType.present ? senderType.value : this.senderType, + dateOfEntry: dateOfEntry.present ? dateOfEntry.value : this.dateOfEntry, auditCreatedBy: auditCreatedBy.present ? auditCreatedBy.value : this.auditCreatedBy, nonRecoverableError: nonRecoverableError.present @@ -18832,6 +18895,7 @@ class StockData extends DataClass implements Insertable { ..write('receiverType: $receiverType, ') ..write('senderId: $senderId, ') ..write('senderType: $senderType, ') + ..write('dateOfEntry: $dateOfEntry, ') ..write('auditCreatedBy: $auditCreatedBy, ') ..write('nonRecoverableError: $nonRecoverableError, ') ..write('auditCreatedTime: $auditCreatedTime, ') @@ -18867,6 +18931,7 @@ class StockData extends DataClass implements Insertable { receiverType, senderId, senderType, + dateOfEntry, auditCreatedBy, nonRecoverableError, auditCreatedTime, @@ -18901,6 +18966,7 @@ class StockData extends DataClass implements Insertable { other.receiverType == this.receiverType && other.senderId == this.senderId && other.senderType == this.senderType && + other.dateOfEntry == this.dateOfEntry && other.auditCreatedBy == this.auditCreatedBy && other.nonRecoverableError == this.nonRecoverableError && other.auditCreatedTime == this.auditCreatedTime && @@ -18933,6 +18999,7 @@ class StockCompanion extends UpdateCompanion { final Value receiverType; final Value senderId; final Value senderType; + final Value dateOfEntry; final Value auditCreatedBy; final Value nonRecoverableError; final Value auditCreatedTime; @@ -18964,6 +19031,7 @@ class StockCompanion extends UpdateCompanion { this.receiverType = const Value.absent(), this.senderId = const Value.absent(), this.senderType = const Value.absent(), + this.dateOfEntry = const Value.absent(), this.auditCreatedBy = const Value.absent(), this.nonRecoverableError = const Value.absent(), this.auditCreatedTime = const Value.absent(), @@ -18996,6 +19064,7 @@ class StockCompanion extends UpdateCompanion { this.receiverType = const Value.absent(), this.senderId = const Value.absent(), this.senderType = const Value.absent(), + this.dateOfEntry = const Value.absent(), this.auditCreatedBy = const Value.absent(), this.nonRecoverableError = const Value.absent(), this.auditCreatedTime = const Value.absent(), @@ -19028,6 +19097,7 @@ class StockCompanion extends UpdateCompanion { Expression? receiverType, Expression? senderId, Expression? senderType, + Expression? dateOfEntry, Expression? auditCreatedBy, Expression? nonRecoverableError, Expression? auditCreatedTime, @@ -19062,6 +19132,7 @@ class StockCompanion extends UpdateCompanion { if (receiverType != null) 'receiver_type': receiverType, if (senderId != null) 'sender_id': senderId, if (senderType != null) 'sender_type': senderType, + if (dateOfEntry != null) 'date_of_entry': dateOfEntry, if (auditCreatedBy != null) 'audit_created_by': auditCreatedBy, if (nonRecoverableError != null) 'non_recoverable_error': nonRecoverableError, @@ -19098,6 +19169,7 @@ class StockCompanion extends UpdateCompanion { Value? receiverType, Value? senderId, Value? senderType, + Value? dateOfEntry, Value? auditCreatedBy, Value? nonRecoverableError, Value? auditCreatedTime, @@ -19129,6 +19201,7 @@ class StockCompanion extends UpdateCompanion { receiverType: receiverType ?? this.receiverType, senderId: senderId ?? this.senderId, senderType: senderType ?? this.senderType, + dateOfEntry: dateOfEntry ?? this.dateOfEntry, auditCreatedBy: auditCreatedBy ?? this.auditCreatedBy, nonRecoverableError: nonRecoverableError ?? this.nonRecoverableError, auditCreatedTime: auditCreatedTime ?? this.auditCreatedTime, @@ -19194,6 +19267,9 @@ class StockCompanion extends UpdateCompanion { if (senderType.present) { map['sender_type'] = Variable(senderType.value); } + if (dateOfEntry.present) { + map['date_of_entry'] = Variable(dateOfEntry.value); + } if (auditCreatedBy.present) { map['audit_created_by'] = Variable(auditCreatedBy.value); } @@ -19262,6 +19338,7 @@ class StockCompanion extends UpdateCompanion { ..write('receiverType: $receiverType, ') ..write('senderId: $senderId, ') ..write('senderType: $senderType, ') + ..write('dateOfEntry: $dateOfEntry, ') ..write('auditCreatedBy: $auditCreatedBy, ') ..write('nonRecoverableError: $nonRecoverableError, ') ..write('auditCreatedTime: $auditCreatedTime, ') diff --git a/packages/digit_data_model/lib/data/local_store/sql_store/tables/facility.dart b/packages/digit_data_model/lib/data/local_store/sql_store/tables/facility.dart index f01360c6b..855e862d7 100644 --- a/packages/digit_data_model/lib/data/local_store/sql_store/tables/facility.dart +++ b/packages/digit_data_model/lib/data/local_store/sql_store/tables/facility.dart @@ -16,6 +16,7 @@ class Facility extends Table { TextColumn get auditModifiedBy => text().nullable()(); IntColumn get auditModifiedTime => integer().nullable()(); TextColumn get tenantId => text().nullable()(); + TextColumn get name => text().nullable()(); BoolColumn get isDeleted => boolean().nullable().withDefault(const Constant(false))(); IntColumn get rowVersion => integer().nullable()(); diff --git a/packages/digit_data_model/lib/data/local_store/sql_store/tables/package_tables/stock.dart b/packages/digit_data_model/lib/data/local_store/sql_store/tables/package_tables/stock.dart index f40613c14..9630d57a0 100644 --- a/packages/digit_data_model/lib/data/local_store/sql_store/tables/package_tables/stock.dart +++ b/packages/digit_data_model/lib/data/local_store/sql_store/tables/package_tables/stock.dart @@ -20,6 +20,7 @@ class Stock extends Table { TextColumn get receiverType => text().nullable()(); TextColumn get senderId => text().nullable()(); TextColumn get senderType => text().nullable()(); + IntColumn get dateOfEntry => integer().nullable()(); TextColumn get auditCreatedBy => text().nullable()(); BoolColumn get nonRecoverableError => boolean().nullable().withDefault(const Constant(false))(); diff --git a/packages/digit_data_model/lib/data/repositories/local/facility.dart b/packages/digit_data_model/lib/data/repositories/local/facility.dart index faf3a42f3..b7874e161 100644 --- a/packages/digit_data_model/lib/data/repositories/local/facility.dart +++ b/packages/digit_data_model/lib/data/repositories/local/facility.dart @@ -54,6 +54,7 @@ class FacilityLocalRepository isPermanent: facility.isPermanent, storageCapacity: facility.storageCapacity, usage: facility.usage, + name: facility.name, address: address == null ? null : AddressModel( diff --git a/packages/digit_data_model/lib/models/entities/facility.dart b/packages/digit_data_model/lib/models/entities/facility.dart index cc2347c48..c080247bc 100644 --- a/packages/digit_data_model/lib/models/entities/facility.dart +++ b/packages/digit_data_model/lib/models/entities/facility.dart @@ -9,14 +9,16 @@ import '../../data/local_store/sql_store/sql_store.dart'; part 'facility.mapper.dart'; @MappableClass(ignoreNull: true, discriminatorValue: MappableClass.useAsDefault) -class FacilitySearchModel extends EntitySearchModel with FacilitySearchModelMappable { +class FacilitySearchModel extends EntitySearchModel + with FacilitySearchModelMappable { final List? id; final bool? isPermanent; final String? usage; final int? storageCapacity; final String? tenantId; - + final String? name; FacilitySearchModel({ + this.name, this.id, this.isPermanent, this.usage, @@ -24,22 +26,22 @@ class FacilitySearchModel extends EntitySearchModel with FacilitySearchModelMapp this.tenantId, super.boundaryCode, super.isDeleted, - }): super(); + }) : super(); @MappableConstructor() FacilitySearchModel.ignoreDeleted({ + this.name, this.id, this.isPermanent, this.usage, this.storageCapacity, this.tenantId, super.boundaryCode, - }): super(isDeleted: false); + }) : super(isDeleted: false); } @MappableClass(ignoreNull: true, discriminatorValue: MappableClass.useAsDefault) class FacilityModel extends EntityModel with FacilityModelMappable { - static const schemaName = 'Facility'; final String id; @@ -51,6 +53,7 @@ class FacilityModel extends EntityModel with FacilityModelMappable { final int? rowVersion; final AddressModel? address; final FacilityAdditionalFields? additionalFields; + final String? name; FacilityModel({ this.additionalFields, @@ -62,39 +65,41 @@ class FacilityModel extends EntityModel with FacilityModelMappable { this.tenantId, this.rowVersion, this.address, - super.auditDetails,super.clientAuditDetails, + this.name, + super.auditDetails, + super.clientAuditDetails, super.isDeleted = false, - }): super(); + }) : super(); FacilityCompanion get companion { return FacilityCompanion( - auditCreatedBy: Value(auditDetails?.createdBy), - auditCreatedTime: Value(auditDetails?.createdTime), - auditModifiedBy: Value(auditDetails?.lastModifiedBy), - clientCreatedTime: Value(clientAuditDetails?.createdTime), - clientModifiedTime: Value(clientAuditDetails?.lastModifiedTime), - clientCreatedBy: Value(clientAuditDetails?.createdBy), - clientModifiedBy: Value(clientAuditDetails?.lastModifiedBy), - auditModifiedTime: Value(auditDetails?.lastModifiedTime), - additionalFields: Value(additionalFields?.toJson()), - isDeleted: Value(isDeleted), - id: Value(id), - isPermanent: Value(isPermanent), - usage: Value(usage), - storageCapacity: Value(storageCapacity), - nonRecoverableError: Value(nonRecoverableError), - tenantId: Value(tenantId), - rowVersion: Value(rowVersion), - ); + auditCreatedBy: Value(auditDetails?.createdBy), + auditCreatedTime: Value(auditDetails?.createdTime), + auditModifiedBy: Value(auditDetails?.lastModifiedBy), + clientCreatedTime: Value(clientAuditDetails?.createdTime), + clientModifiedTime: Value(clientAuditDetails?.lastModifiedTime), + clientCreatedBy: Value(clientAuditDetails?.createdBy), + clientModifiedBy: Value(clientAuditDetails?.lastModifiedBy), + auditModifiedTime: Value(auditDetails?.lastModifiedTime), + additionalFields: Value(additionalFields?.toJson()), + isDeleted: Value(isDeleted), + id: Value(id), + isPermanent: Value(isPermanent), + usage: Value(usage), + storageCapacity: Value(storageCapacity), + nonRecoverableError: Value(nonRecoverableError), + tenantId: Value(tenantId), + rowVersion: Value(rowVersion), + name: Value(name)); } } @MappableClass(ignoreNull: true, discriminatorValue: MappableClass.useAsDefault) -class FacilityAdditionalFields extends AdditionalFields with FacilityAdditionalFieldsMappable { +class FacilityAdditionalFields extends AdditionalFields + with FacilityAdditionalFieldsMappable { FacilityAdditionalFields({ super.schema = 'Facility', required super.version, super.fields, }); } - diff --git a/packages/digit_data_model/lib/models/entities/facility.mapper.dart b/packages/digit_data_model/lib/models/entities/facility.mapper.dart index 1ef9e0118..2808cd68d 100644 --- a/packages/digit_data_model/lib/models/entities/facility.mapper.dart +++ b/packages/digit_data_model/lib/models/entities/facility.mapper.dart @@ -21,6 +21,9 @@ class FacilitySearchModelMapper @override final String id = 'FacilitySearchModel'; + static String? _$name(FacilitySearchModel v) => v.name; + static const Field _f$name = + Field('name', _$name, opt: true); static List? _$id(FacilitySearchModel v) => v.id; static const Field> _f$id = Field('id', _$id, opt: true); @@ -50,6 +53,7 @@ class FacilitySearchModelMapper @override final MappableFields fields = const { + #name: _f$name, #id: _f$id, #isPermanent: _f$isPermanent, #usage: _f$usage, @@ -72,6 +76,7 @@ class FacilitySearchModelMapper static FacilitySearchModel _instantiate(DecodingData data) { return FacilitySearchModel.ignoreDeleted( + name: data.dec(_f$name), id: data.dec(_f$id), isPermanent: data.dec(_f$isPermanent), usage: data.dec(_f$usage), @@ -140,7 +145,8 @@ abstract class FacilitySearchModelCopyWith<$R, $In extends FacilitySearchModel, ListCopyWith<$R, String, ObjectCopyWith<$R, String, String>>? get id; @override $R call( - {List? id, + {String? name, + List? id, bool? isPermanent, String? usage, int? storageCapacity, @@ -166,13 +172,15 @@ class _FacilitySearchModelCopyWithImpl<$R, $Out> : null; @override $R call( - {Object? id = $none, + {Object? name = $none, + Object? id = $none, Object? isPermanent = $none, Object? usage = $none, Object? storageCapacity = $none, Object? tenantId = $none, Object? boundaryCode = $none}) => $apply(FieldCopyWithData({ + if (name != $none) #name: name, if (id != $none) #id: id, if (isPermanent != $none) #isPermanent: isPermanent, if (usage != $none) #usage: usage, @@ -183,6 +191,7 @@ class _FacilitySearchModelCopyWithImpl<$R, $Out> @override FacilitySearchModel $make(CopyWithData data) => FacilitySearchModel.ignoreDeleted( + name: data.get(#name, or: $value.name), id: data.get(#id, or: $value.id), isPermanent: data.get(#isPermanent, or: $value.isPermanent), usage: data.get(#usage, or: $value.usage), @@ -240,6 +249,9 @@ class FacilityModelMapper extends SubClassMapperBase { static AddressModel? _$address(FacilityModel v) => v.address; static const Field _f$address = Field('address', _$address, opt: true); + static String? _$name(FacilityModel v) => v.name; + static const Field _f$name = + Field('name', _$name, opt: true); static AuditDetails? _$auditDetails(FacilityModel v) => v.auditDetails; static const Field _f$auditDetails = Field('auditDetails', _$auditDetails, opt: true); @@ -262,6 +274,7 @@ class FacilityModelMapper extends SubClassMapperBase { #tenantId: _f$tenantId, #rowVersion: _f$rowVersion, #address: _f$address, + #name: _f$name, #auditDetails: _f$auditDetails, #clientAuditDetails: _f$clientAuditDetails, #isDeleted: _f$isDeleted, @@ -288,6 +301,7 @@ class FacilityModelMapper extends SubClassMapperBase { tenantId: data.dec(_f$tenantId), rowVersion: data.dec(_f$rowVersion), address: data.dec(_f$address), + name: data.dec(_f$name), auditDetails: data.dec(_f$auditDetails), clientAuditDetails: data.dec(_f$clientAuditDetails), isDeleted: data.dec(_f$isDeleted)); @@ -367,6 +381,7 @@ abstract class FacilityModelCopyWith<$R, $In extends FacilityModel, $Out> String? tenantId, int? rowVersion, AddressModel? address, + String? name, AuditDetails? auditDetails, ClientAuditDetails? clientAuditDetails, bool? isDeleted}); @@ -407,6 +422,7 @@ class _FacilityModelCopyWithImpl<$R, $Out> Object? tenantId = $none, Object? rowVersion = $none, Object? address = $none, + Object? name = $none, Object? auditDetails = $none, Object? clientAuditDetails = $none, Object? isDeleted = $none}) => @@ -421,6 +437,7 @@ class _FacilityModelCopyWithImpl<$R, $Out> if (tenantId != $none) #tenantId: tenantId, if (rowVersion != $none) #rowVersion: rowVersion, if (address != $none) #address: address, + if (name != $none) #name: name, if (auditDetails != $none) #auditDetails: auditDetails, if (clientAuditDetails != $none) #clientAuditDetails: clientAuditDetails, @@ -439,6 +456,7 @@ class _FacilityModelCopyWithImpl<$R, $Out> tenantId: data.get(#tenantId, or: $value.tenantId), rowVersion: data.get(#rowVersion, or: $value.rowVersion), address: data.get(#address, or: $value.address), + name: data.get(#name, or: $value.name), auditDetails: data.get(#auditDetails, or: $value.auditDetails), clientAuditDetails: data.get(#clientAuditDetails, or: $value.clientAuditDetails), diff --git a/packages/inventory_management/lib/blocs/record_stock.dart b/packages/inventory_management/lib/blocs/record_stock.dart index 82ac8efbe..fa73f8c73 100644 --- a/packages/inventory_management/lib/blocs/record_stock.dart +++ b/packages/inventory_management/lib/blocs/record_stock.dart @@ -115,6 +115,7 @@ class RecordStockBloc extends Bloc { facilityId: facilityModel.id, rowVersion: 1, tenantId: InventorySingleton().tenantId, + dateOfEntry: dateOfRecord.millisecondsSinceEpoch, ), ); @@ -180,7 +181,7 @@ class RecordStockState with _$RecordStockState { String? primaryId, StockModel? stockModel, }) = RecordStockPersistedState; - } +} class InvalidRecordStockStateException implements Exception { final String? message; diff --git a/packages/inventory_management/lib/blocs/stock_reconciliation.dart b/packages/inventory_management/lib/blocs/stock_reconciliation.dart index 0d18c99e3..fb54385bc 100644 --- a/packages/inventory_management/lib/blocs/stock_reconciliation.dart +++ b/packages/inventory_management/lib/blocs/stock_reconciliation.dart @@ -31,6 +31,17 @@ class StockReconciliationBloc on(_handleSelectProduct); on(_handleCalculate); on(_handleCreate); + on(_handleSetDateOfReconciliation); + } + + // Event handler for selecting dateOfReconciliation + FutureOr _handleSetDateOfReconciliation( + StockReconciliationSetDateOfReconciliationEvent event, + StockReconciliationEmitter emit, + ) async { + // Emitting the state with the selected dateOfReconciliation + emit(state.copyWith(dateOfReconciliation: event.dateOfReconciliation)); + add(const StockReconciliationCalculateEvent()); } // Event handler for selecting a facility @@ -65,6 +76,7 @@ class StockReconciliationBloc final productVariantId = state.productVariantId; final facilityId = state.facilityModel?.id; + final dateOfReconciliation = state.dateOfReconciliation; if ((productVariantId == null) || (!event.isDistributor && facilityId == null)) return; @@ -93,10 +105,24 @@ class StockReconciliationBloc InventorySingleton().loggedInUserUuid) .toList(); + final stocks = [...receivedStocks, ...sentStocks]; + final dateFilteredStocks = stocks + .where( + (e) => + e.dateOfEntryTime == null || + (e.dateOfEntryTime!.year < dateOfReconciliation.year || + e.dateOfEntryTime!.year == dateOfReconciliation.year && + e.dateOfEntryTime!.month < dateOfReconciliation.month || + e.dateOfEntryTime!.year == dateOfReconciliation.year && + e.dateOfEntryTime!.month == dateOfReconciliation.month && + e.dateOfEntryTime!.day <= dateOfReconciliation.day), + ) + .toList(); + // Emitting the state with the fetched stock reconciliation details emit(state.copyWith( loading: false, - stockModels: [...receivedStocks, ...sentStocks], + stockModels: dateFilteredStocks, )); } @@ -161,6 +187,12 @@ class StockReconciliationEvent with _$StockReconciliationEvent { const factory StockReconciliationEvent.create( StockReconciliationModel stockReconciliationModel, ) = StockReconciliationCreateEvent; + + //Event For setting dateOfReconciliation + const factory StockReconciliationEvent.setDateOfReconciliation( + DateTime dateOfReconciliation, { + @Default(false) bool isDistributor, + }) = StockReconciliationSetDateOfReconciliationEvent; } // Freezed union class for stock reconciliation states diff --git a/packages/inventory_management/lib/blocs/stock_reconciliation.freezed.dart b/packages/inventory_management/lib/blocs/stock_reconciliation.freezed.dart index c102a0c1a..094766e2b 100644 --- a/packages/inventory_management/lib/blocs/stock_reconciliation.freezed.dart +++ b/packages/inventory_management/lib/blocs/stock_reconciliation.freezed.dart @@ -25,6 +25,8 @@ mixin _$StockReconciliationEvent { required TResult Function(bool isDistributor) calculate, required TResult Function(StockReconciliationModel stockReconciliationModel) create, + required TResult Function(DateTime dateOfReconciliation, bool isDistributor) + setDateOfReconciliation, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -36,6 +38,8 @@ mixin _$StockReconciliationEvent { TResult? Function(bool isDistributor)? calculate, TResult? Function(StockReconciliationModel stockReconciliationModel)? create, + TResult? Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -46,6 +50,8 @@ mixin _$StockReconciliationEvent { selectProduct, TResult Function(bool isDistributor)? calculate, TResult Function(StockReconciliationModel stockReconciliationModel)? create, + TResult Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -58,6 +64,9 @@ mixin _$StockReconciliationEvent { required TResult Function(StockReconciliationCalculateEvent value) calculate, required TResult Function(StockReconciliationCreateEvent value) create, + required TResult Function( + StockReconciliationSetDateOfReconciliationEvent value) + setDateOfReconciliation, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -68,6 +77,8 @@ mixin _$StockReconciliationEvent { selectProduct, TResult? Function(StockReconciliationCalculateEvent value)? calculate, TResult? Function(StockReconciliationCreateEvent value)? create, + TResult? Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -78,6 +89,8 @@ mixin _$StockReconciliationEvent { selectProduct, TResult Function(StockReconciliationCalculateEvent value)? calculate, TResult Function(StockReconciliationCreateEvent value)? create, + TResult Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -192,6 +205,8 @@ class _$StockReconciliationSelectFacilityEventImpl required TResult Function(bool isDistributor) calculate, required TResult Function(StockReconciliationModel stockReconciliationModel) create, + required TResult Function(DateTime dateOfReconciliation, bool isDistributor) + setDateOfReconciliation, }) { return selectFacility(facilityModel, isDistributor); } @@ -206,6 +221,8 @@ class _$StockReconciliationSelectFacilityEventImpl TResult? Function(bool isDistributor)? calculate, TResult? Function(StockReconciliationModel stockReconciliationModel)? create, + TResult? Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, }) { return selectFacility?.call(facilityModel, isDistributor); } @@ -219,6 +236,8 @@ class _$StockReconciliationSelectFacilityEventImpl selectProduct, TResult Function(bool isDistributor)? calculate, TResult Function(StockReconciliationModel stockReconciliationModel)? create, + TResult Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, required TResult orElse(), }) { if (selectFacility != null) { @@ -237,6 +256,9 @@ class _$StockReconciliationSelectFacilityEventImpl required TResult Function(StockReconciliationCalculateEvent value) calculate, required TResult Function(StockReconciliationCreateEvent value) create, + required TResult Function( + StockReconciliationSetDateOfReconciliationEvent value) + setDateOfReconciliation, }) { return selectFacility(this); } @@ -250,6 +272,8 @@ class _$StockReconciliationSelectFacilityEventImpl selectProduct, TResult? Function(StockReconciliationCalculateEvent value)? calculate, TResult? Function(StockReconciliationCreateEvent value)? create, + TResult? Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, }) { return selectFacility?.call(this); } @@ -263,6 +287,8 @@ class _$StockReconciliationSelectFacilityEventImpl selectProduct, TResult Function(StockReconciliationCalculateEvent value)? calculate, TResult Function(StockReconciliationCreateEvent value)? create, + TResult Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, required TResult orElse(), }) { if (selectFacility != null) { @@ -376,6 +402,8 @@ class _$StockReconciliationSelectProductEventImpl required TResult Function(bool isDistributor) calculate, required TResult Function(StockReconciliationModel stockReconciliationModel) create, + required TResult Function(DateTime dateOfReconciliation, bool isDistributor) + setDateOfReconciliation, }) { return selectProduct(productVariantId, isDistributor); } @@ -390,6 +418,8 @@ class _$StockReconciliationSelectProductEventImpl TResult? Function(bool isDistributor)? calculate, TResult? Function(StockReconciliationModel stockReconciliationModel)? create, + TResult? Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, }) { return selectProduct?.call(productVariantId, isDistributor); } @@ -403,6 +433,8 @@ class _$StockReconciliationSelectProductEventImpl selectProduct, TResult Function(bool isDistributor)? calculate, TResult Function(StockReconciliationModel stockReconciliationModel)? create, + TResult Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, required TResult orElse(), }) { if (selectProduct != null) { @@ -421,6 +453,9 @@ class _$StockReconciliationSelectProductEventImpl required TResult Function(StockReconciliationCalculateEvent value) calculate, required TResult Function(StockReconciliationCreateEvent value) create, + required TResult Function( + StockReconciliationSetDateOfReconciliationEvent value) + setDateOfReconciliation, }) { return selectProduct(this); } @@ -434,6 +469,8 @@ class _$StockReconciliationSelectProductEventImpl selectProduct, TResult? Function(StockReconciliationCalculateEvent value)? calculate, TResult? Function(StockReconciliationCreateEvent value)? create, + TResult? Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, }) { return selectProduct?.call(this); } @@ -447,6 +484,8 @@ class _$StockReconciliationSelectProductEventImpl selectProduct, TResult Function(StockReconciliationCalculateEvent value)? calculate, TResult Function(StockReconciliationCreateEvent value)? create, + TResult Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, required TResult orElse(), }) { if (selectProduct != null) { @@ -549,6 +588,8 @@ class _$StockReconciliationCalculateEventImpl required TResult Function(bool isDistributor) calculate, required TResult Function(StockReconciliationModel stockReconciliationModel) create, + required TResult Function(DateTime dateOfReconciliation, bool isDistributor) + setDateOfReconciliation, }) { return calculate(isDistributor); } @@ -563,6 +604,8 @@ class _$StockReconciliationCalculateEventImpl TResult? Function(bool isDistributor)? calculate, TResult? Function(StockReconciliationModel stockReconciliationModel)? create, + TResult? Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, }) { return calculate?.call(isDistributor); } @@ -576,6 +619,8 @@ class _$StockReconciliationCalculateEventImpl selectProduct, TResult Function(bool isDistributor)? calculate, TResult Function(StockReconciliationModel stockReconciliationModel)? create, + TResult Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, required TResult orElse(), }) { if (calculate != null) { @@ -594,6 +639,9 @@ class _$StockReconciliationCalculateEventImpl required TResult Function(StockReconciliationCalculateEvent value) calculate, required TResult Function(StockReconciliationCreateEvent value) create, + required TResult Function( + StockReconciliationSetDateOfReconciliationEvent value) + setDateOfReconciliation, }) { return calculate(this); } @@ -607,6 +655,8 @@ class _$StockReconciliationCalculateEventImpl selectProduct, TResult? Function(StockReconciliationCalculateEvent value)? calculate, TResult? Function(StockReconciliationCreateEvent value)? create, + TResult? Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, }) { return calculate?.call(this); } @@ -620,6 +670,8 @@ class _$StockReconciliationCalculateEventImpl selectProduct, TResult Function(StockReconciliationCalculateEvent value)? calculate, TResult Function(StockReconciliationCreateEvent value)? create, + TResult Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, required TResult orElse(), }) { if (calculate != null) { @@ -720,6 +772,8 @@ class _$StockReconciliationCreateEventImpl required TResult Function(bool isDistributor) calculate, required TResult Function(StockReconciliationModel stockReconciliationModel) create, + required TResult Function(DateTime dateOfReconciliation, bool isDistributor) + setDateOfReconciliation, }) { return create(stockReconciliationModel); } @@ -734,6 +788,8 @@ class _$StockReconciliationCreateEventImpl TResult? Function(bool isDistributor)? calculate, TResult? Function(StockReconciliationModel stockReconciliationModel)? create, + TResult? Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, }) { return create?.call(stockReconciliationModel); } @@ -747,6 +803,8 @@ class _$StockReconciliationCreateEventImpl selectProduct, TResult Function(bool isDistributor)? calculate, TResult Function(StockReconciliationModel stockReconciliationModel)? create, + TResult Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, required TResult orElse(), }) { if (create != null) { @@ -765,6 +823,9 @@ class _$StockReconciliationCreateEventImpl required TResult Function(StockReconciliationCalculateEvent value) calculate, required TResult Function(StockReconciliationCreateEvent value) create, + required TResult Function( + StockReconciliationSetDateOfReconciliationEvent value) + setDateOfReconciliation, }) { return create(this); } @@ -778,6 +839,8 @@ class _$StockReconciliationCreateEventImpl selectProduct, TResult? Function(StockReconciliationCalculateEvent value)? calculate, TResult? Function(StockReconciliationCreateEvent value)? create, + TResult? Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, }) { return create?.call(this); } @@ -791,6 +854,8 @@ class _$StockReconciliationCreateEventImpl selectProduct, TResult Function(StockReconciliationCalculateEvent value)? calculate, TResult Function(StockReconciliationCreateEvent value)? create, + TResult Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, required TResult orElse(), }) { if (create != null) { @@ -813,6 +878,211 @@ abstract class StockReconciliationCreateEvent get copyWith => throw _privateConstructorUsedError; } +/// @nodoc +abstract class _$$StockReconciliationSetDateOfReconciliationEventImplCopyWith< + $Res> { + factory _$$StockReconciliationSetDateOfReconciliationEventImplCopyWith( + _$StockReconciliationSetDateOfReconciliationEventImpl value, + $Res Function(_$StockReconciliationSetDateOfReconciliationEventImpl) + then) = + __$$StockReconciliationSetDateOfReconciliationEventImplCopyWithImpl<$Res>; + @useResult + $Res call({DateTime dateOfReconciliation, bool isDistributor}); +} + +/// @nodoc +class __$$StockReconciliationSetDateOfReconciliationEventImplCopyWithImpl<$Res> + extends _$StockReconciliationEventCopyWithImpl<$Res, + _$StockReconciliationSetDateOfReconciliationEventImpl> + implements + _$$StockReconciliationSetDateOfReconciliationEventImplCopyWith<$Res> { + __$$StockReconciliationSetDateOfReconciliationEventImplCopyWithImpl( + _$StockReconciliationSetDateOfReconciliationEventImpl _value, + $Res Function(_$StockReconciliationSetDateOfReconciliationEventImpl) + _then) + : super(_value, _then); + + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? dateOfReconciliation = null, + Object? isDistributor = null, + }) { + return _then(_$StockReconciliationSetDateOfReconciliationEventImpl( + null == dateOfReconciliation + ? _value.dateOfReconciliation + : dateOfReconciliation // ignore: cast_nullable_to_non_nullable + as DateTime, + isDistributor: null == isDistributor + ? _value.isDistributor + : isDistributor // ignore: cast_nullable_to_non_nullable + as bool, + )); + } +} + +/// @nodoc + +class _$StockReconciliationSetDateOfReconciliationEventImpl + implements StockReconciliationSetDateOfReconciliationEvent { + const _$StockReconciliationSetDateOfReconciliationEventImpl( + this.dateOfReconciliation, + {this.isDistributor = false}); + + @override + final DateTime dateOfReconciliation; + @override + @JsonKey() + final bool isDistributor; + + @override + String toString() { + return 'StockReconciliationEvent.setDateOfReconciliation(dateOfReconciliation: $dateOfReconciliation, isDistributor: $isDistributor)'; + } + + @override + bool operator ==(Object other) { + return identical(this, other) || + (other.runtimeType == runtimeType && + other is _$StockReconciliationSetDateOfReconciliationEventImpl && + (identical(other.dateOfReconciliation, dateOfReconciliation) || + other.dateOfReconciliation == dateOfReconciliation) && + (identical(other.isDistributor, isDistributor) || + other.isDistributor == isDistributor)); + } + + @override + int get hashCode => + Object.hash(runtimeType, dateOfReconciliation, isDistributor); + + @JsonKey(ignore: true) + @override + @pragma('vm:prefer-inline') + _$$StockReconciliationSetDateOfReconciliationEventImplCopyWith< + _$StockReconciliationSetDateOfReconciliationEventImpl> + get copyWith => + __$$StockReconciliationSetDateOfReconciliationEventImplCopyWithImpl< + _$StockReconciliationSetDateOfReconciliationEventImpl>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(FacilityModel facilityModel, bool isDistributor) + selectFacility, + required TResult Function(String? productVariantId, bool isDistributor) + selectProduct, + required TResult Function(bool isDistributor) calculate, + required TResult Function(StockReconciliationModel stockReconciliationModel) + create, + required TResult Function(DateTime dateOfReconciliation, bool isDistributor) + setDateOfReconciliation, + }) { + return setDateOfReconciliation(dateOfReconciliation, isDistributor); + } + + @override + @optionalTypeArgs + TResult? whenOrNull({ + TResult? Function(FacilityModel facilityModel, bool isDistributor)? + selectFacility, + TResult? Function(String? productVariantId, bool isDistributor)? + selectProduct, + TResult? Function(bool isDistributor)? calculate, + TResult? Function(StockReconciliationModel stockReconciliationModel)? + create, + TResult? Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, + }) { + return setDateOfReconciliation?.call(dateOfReconciliation, isDistributor); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(FacilityModel facilityModel, bool isDistributor)? + selectFacility, + TResult Function(String? productVariantId, bool isDistributor)? + selectProduct, + TResult Function(bool isDistributor)? calculate, + TResult Function(StockReconciliationModel stockReconciliationModel)? create, + TResult Function(DateTime dateOfReconciliation, bool isDistributor)? + setDateOfReconciliation, + required TResult orElse(), + }) { + if (setDateOfReconciliation != null) { + return setDateOfReconciliation(dateOfReconciliation, isDistributor); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(StockReconciliationSelectFacilityEvent value) + selectFacility, + required TResult Function(StockReconciliationSelectProductEvent value) + selectProduct, + required TResult Function(StockReconciliationCalculateEvent value) + calculate, + required TResult Function(StockReconciliationCreateEvent value) create, + required TResult Function( + StockReconciliationSetDateOfReconciliationEvent value) + setDateOfReconciliation, + }) { + return setDateOfReconciliation(this); + } + + @override + @optionalTypeArgs + TResult? mapOrNull({ + TResult? Function(StockReconciliationSelectFacilityEvent value)? + selectFacility, + TResult? Function(StockReconciliationSelectProductEvent value)? + selectProduct, + TResult? Function(StockReconciliationCalculateEvent value)? calculate, + TResult? Function(StockReconciliationCreateEvent value)? create, + TResult? Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, + }) { + return setDateOfReconciliation?.call(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(StockReconciliationSelectFacilityEvent value)? + selectFacility, + TResult Function(StockReconciliationSelectProductEvent value)? + selectProduct, + TResult Function(StockReconciliationCalculateEvent value)? calculate, + TResult Function(StockReconciliationCreateEvent value)? create, + TResult Function(StockReconciliationSetDateOfReconciliationEvent value)? + setDateOfReconciliation, + required TResult orElse(), + }) { + if (setDateOfReconciliation != null) { + return setDateOfReconciliation(this); + } + return orElse(); + } +} + +abstract class StockReconciliationSetDateOfReconciliationEvent + implements StockReconciliationEvent { + const factory StockReconciliationSetDateOfReconciliationEvent( + final DateTime dateOfReconciliation, + {final bool isDistributor}) = + _$StockReconciliationSetDateOfReconciliationEventImpl; + + DateTime get dateOfReconciliation; + bool get isDistributor; + @JsonKey(ignore: true) + _$$StockReconciliationSetDateOfReconciliationEventImplCopyWith< + _$StockReconciliationSetDateOfReconciliationEventImpl> + get copyWith => throw _privateConstructorUsedError; +} + /// @nodoc mixin _$StockReconciliationState { bool get loading => throw _privateConstructorUsedError; diff --git a/packages/inventory_management/lib/data/repositories/local/stock.dart b/packages/inventory_management/lib/data/repositories/local/stock.dart index 7a04099fe..c24dfe681 100644 --- a/packages/inventory_management/lib/data/repositories/local/stock.dart +++ b/packages/inventory_management/lib/data/repositories/local/stock.dart @@ -93,6 +93,7 @@ class StockLocalRepository clientReferenceId: data.clientReferenceId, isDeleted: data.isDeleted, rowVersion: data.rowVersion, + dateOfEntry: data.dateOfEntry, auditDetails: createdTime == null || createdBy == null ? null : AuditDetails(createdTime: createdTime, createdBy: createdBy), diff --git a/packages/inventory_management/lib/models/entities/stock.dart b/packages/inventory_management/lib/models/entities/stock.dart index 66f9882b2..79e8f797c 100644 --- a/packages/inventory_management/lib/models/entities/stock.dart +++ b/packages/inventory_management/lib/models/entities/stock.dart @@ -22,6 +22,7 @@ class StockSearchModel extends EntitySearchModel with StockSearchModelMappable { final List? clientReferenceId; final List? transactionType; final List? transactionReason; + final DateTime? dateOfEntryTime; StockSearchModel({ this.id, @@ -39,9 +40,13 @@ class StockSearchModel extends EntitySearchModel with StockSearchModelMappable { this.clientReferenceId, this.transactionType, this.transactionReason, + int? dateOfEntry, super.boundaryCode, super.isDeleted, - }) : super(); + }) : dateOfEntryTime = dateOfEntry == null + ? null + : DateTime.fromMillisecondsSinceEpoch(dateOfEntry), + super(); @MappableConstructor() StockSearchModel.ignoreDeleted({ @@ -60,8 +65,14 @@ class StockSearchModel extends EntitySearchModel with StockSearchModelMappable { this.clientReferenceId, this.transactionType, this.transactionReason, + int? dateOfEntry, super.boundaryCode, - }) : super(isDeleted: false); + }) : dateOfEntryTime = dateOfEntry == null + ? null + : DateTime.fromMillisecondsSinceEpoch(dateOfEntry), + super(isDeleted: false); + + int? get dateOfEntry => dateOfEntryTime?.millisecondsSinceEpoch; } @MappableClass(ignoreNull: true, discriminatorValue: MappableClass.useAsDefault) @@ -88,8 +99,10 @@ class StockModel extends EntityModel with StockModelMappable { final String? transactionType; final String? transactionReason; final StockAdditionalFields? additionalFields; + final DateTime? dateOfEntryTime; StockModel({ + int? dateOfEntry, this.additionalFields, this.id, this.tenantId, @@ -113,7 +126,12 @@ class StockModel extends EntityModel with StockModelMappable { super.auditDetails, super.clientAuditDetails, super.isDeleted = false, - }) : super(); + }) : dateOfEntryTime = dateOfEntry == null + ? null + : DateTime.fromMillisecondsSinceEpoch(dateOfEntry), + super(); + + int? get dateOfEntry => dateOfEntryTime?.millisecondsSinceEpoch; StockCompanion get companion { return StockCompanion( @@ -146,6 +164,7 @@ class StockModel extends EntityModel with StockModelMappable { rowVersion: Value(rowVersion), transactionType: Value(transactionType), transactionReason: Value(transactionReason), + dateOfEntry: Value(dateOfEntry), ); } } diff --git a/packages/inventory_management/lib/models/entities/stock.mapper.dart b/packages/inventory_management/lib/models/entities/stock.mapper.dart index 8c4738857..7780aa6e6 100644 --- a/packages/inventory_management/lib/models/entities/stock.mapper.dart +++ b/packages/inventory_management/lib/models/entities/stock.mapper.dart @@ -70,6 +70,9 @@ class StockSearchModelMapper extends SubClassMapperBase { v.transactionReason; static const Field> _f$transactionReason = Field('transactionReason', _$transactionReason, opt: true); + static int? _$dateOfEntry(StockSearchModel v) => v.dateOfEntry; + static const Field _f$dateOfEntry = + Field('dateOfEntry', _$dateOfEntry, opt: true); static String? _$boundaryCode(StockSearchModel v) => v.boundaryCode; static const Field _f$boundaryCode = Field('boundaryCode', _$boundaryCode, opt: true); @@ -80,6 +83,9 @@ class StockSearchModelMapper extends SubClassMapperBase { v.additionalFields; static const Field _f$additionalFields = Field('additionalFields', _$additionalFields, mode: FieldMode.member); + static DateTime? _$dateOfEntryTime(StockSearchModel v) => v.dateOfEntryTime; + static const Field _f$dateOfEntryTime = + Field('dateOfEntryTime', _$dateOfEntryTime, mode: FieldMode.member); @override final MappableFields fields = const { @@ -98,9 +104,11 @@ class StockSearchModelMapper extends SubClassMapperBase { #clientReferenceId: _f$clientReferenceId, #transactionType: _f$transactionType, #transactionReason: _f$transactionReason, + #dateOfEntry: _f$dateOfEntry, #boundaryCode: _f$boundaryCode, #auditDetails: _f$auditDetails, #additionalFields: _f$additionalFields, + #dateOfEntryTime: _f$dateOfEntryTime, }; @override final bool ignoreNull = true; @@ -130,6 +138,7 @@ class StockSearchModelMapper extends SubClassMapperBase { clientReferenceId: data.dec(_f$clientReferenceId), transactionType: data.dec(_f$transactionType), transactionReason: data.dec(_f$transactionReason), + dateOfEntry: data.dec(_f$dateOfEntry), boundaryCode: data.dec(_f$boundaryCode)); } @@ -212,6 +221,7 @@ abstract class StockSearchModelCopyWith<$R, $In extends StockSearchModel, $Out> List? clientReferenceId, List? transactionType, List? transactionReason, + int? dateOfEntry, String? boundaryCode}); StockSearchModelCopyWith<$R2, $In, $Out2> $chain<$R2, $Out2>( Then<$Out2, $R2> t); @@ -266,6 +276,7 @@ class _StockSearchModelCopyWithImpl<$R, $Out> Object? clientReferenceId = $none, Object? transactionType = $none, Object? transactionReason = $none, + Object? dateOfEntry = $none, Object? boundaryCode = $none}) => $apply(FieldCopyWithData({ if (id != $none) #id: id, @@ -285,6 +296,7 @@ class _StockSearchModelCopyWithImpl<$R, $Out> if (clientReferenceId != $none) #clientReferenceId: clientReferenceId, if (transactionType != $none) #transactionType: transactionType, if (transactionReason != $none) #transactionReason: transactionReason, + if (dateOfEntry != $none) #dateOfEntry: dateOfEntry, if (boundaryCode != $none) #boundaryCode: boundaryCode })); @override @@ -309,6 +321,7 @@ class _StockSearchModelCopyWithImpl<$R, $Out> transactionType: data.get(#transactionType, or: $value.transactionType), transactionReason: data.get(#transactionReason, or: $value.transactionReason), + dateOfEntry: data.get(#dateOfEntry, or: $value.dateOfEntry), boundaryCode: data.get(#boundaryCode, or: $value.boundaryCode)); @override @@ -331,6 +344,9 @@ class StockModelMapper extends SubClassMapperBase { @override final String id = 'StockModel'; + static int? _$dateOfEntry(StockModel v) => v.dateOfEntry; + static const Field _f$dateOfEntry = + Field('dateOfEntry', _$dateOfEntry, opt: true); static StockAdditionalFields? _$additionalFields(StockModel v) => v.additionalFields; static const Field _f$additionalFields = @@ -402,9 +418,13 @@ class StockModelMapper extends SubClassMapperBase { static bool? _$isDeleted(StockModel v) => v.isDeleted; static const Field _f$isDeleted = Field('isDeleted', _$isDeleted, opt: true, def: false); + static DateTime? _$dateOfEntryTime(StockModel v) => v.dateOfEntryTime; + static const Field _f$dateOfEntryTime = + Field('dateOfEntryTime', _$dateOfEntryTime, mode: FieldMode.member); @override final MappableFields fields = const { + #dateOfEntry: _f$dateOfEntry, #additionalFields: _f$additionalFields, #id: _f$id, #tenantId: _f$tenantId, @@ -428,6 +448,7 @@ class StockModelMapper extends SubClassMapperBase { #auditDetails: _f$auditDetails, #clientAuditDetails: _f$clientAuditDetails, #isDeleted: _f$isDeleted, + #dateOfEntryTime: _f$dateOfEntryTime, }; @override final bool ignoreNull = true; @@ -442,6 +463,7 @@ class StockModelMapper extends SubClassMapperBase { static StockModel _instantiate(DecodingData data) { return StockModel( + dateOfEntry: data.dec(_f$dateOfEntry), additionalFields: data.dec(_f$additionalFields), id: data.dec(_f$id), tenantId: data.dec(_f$tenantId), @@ -529,7 +551,8 @@ abstract class StockModelCopyWith<$R, $In extends StockModel, $Out> get clientAuditDetails; @override $R call( - {StockAdditionalFields? additionalFields, + {int? dateOfEntry, + StockAdditionalFields? additionalFields, String? id, String? tenantId, String? facilityId, @@ -577,7 +600,8 @@ class _StockModelCopyWithImpl<$R, $Out> .$chain((v) => call(clientAuditDetails: v)); @override $R call( - {Object? additionalFields = $none, + {Object? dateOfEntry = $none, + Object? additionalFields = $none, Object? id = $none, Object? tenantId = $none, Object? facilityId = $none, @@ -601,6 +625,7 @@ class _StockModelCopyWithImpl<$R, $Out> Object? clientAuditDetails = $none, Object? isDeleted = $none}) => $apply(FieldCopyWithData({ + if (dateOfEntry != $none) #dateOfEntry: dateOfEntry, if (additionalFields != $none) #additionalFields: additionalFields, if (id != $none) #id: id, if (tenantId != $none) #tenantId: tenantId, @@ -631,6 +656,7 @@ class _StockModelCopyWithImpl<$R, $Out> })); @override StockModel $make(CopyWithData data) => StockModel( + dateOfEntry: data.get(#dateOfEntry, or: $value.dateOfEntry), additionalFields: data.get(#additionalFields, or: $value.additionalFields), id: data.get(#id, or: $value.id), diff --git a/packages/inventory_management/pubspec.lock b/packages/inventory_management/pubspec.lock index 8d4d079e1..a40707a0b 100644 --- a/packages/inventory_management/pubspec.lock +++ b/packages/inventory_management/pubspec.lock @@ -429,11 +429,10 @@ packages: digit_data_model: dependency: "direct main" description: - name: digit_data_model - sha256: "560b806cbb9f760ed956ecf2d01a8e5ea5640d8fca9ec1332ee15b34998d2e15" - url: "https://pub.dev" - source: hosted - version: "1.0.3+3" + path: "../digit_data_model" + relative: true + source: path + version: "1.0.4" digit_scanner: dependency: "direct main" description: diff --git a/packages/inventory_management/pubspec.yaml b/packages/inventory_management/pubspec.yaml index 75f1edbaf..543c690d6 100644 --- a/packages/inventory_management/pubspec.yaml +++ b/packages/inventory_management/pubspec.yaml @@ -32,7 +32,8 @@ dependencies: digit_scanner: ^1.0.3+1 gs1_barcode_parser: ^1.0.5 auto_route: ^7.8.4 - digit_data_model: ^1.0.3+3 + digit_data_model: + path: ../../packages/digit_data_model collection: ^1.16.0 dev_dependencies: diff --git a/packages/referral_reconciliation/lib/pages/create_referral/record_facility_details.dart b/packages/referral_reconciliation/lib/pages/create_referral/record_facility_details.dart index 0f2bb4a98..dd07f4727 100644 --- a/packages/referral_reconciliation/lib/pages/create_referral/record_facility_details.dart +++ b/packages/referral_reconciliation/lib/pages/create_referral/record_facility_details.dart @@ -72,7 +72,7 @@ class _ReferralFacilityPageState extends LocalizedState { builder: (ctx, facilityState) { return facilityState.maybeWhen( orElse: () => const SizedBox.shrink(), - fetched: (facilities) { + fetched: (facilities, facilityMap) { final projectFacilities = facilities .where((e) => e.id != 'N/A' && e.id != 'Delivery Team') .toList(); @@ -306,8 +306,9 @@ class _ReferralFacilityPageState extends LocalizedState { ), ); - if (facility == null) + if (facility == null) { return; + } form .control( _evaluationFacilityKey, diff --git a/packages/referral_reconciliation/lib/widgets/project_facility_bloc_wrapper.dart b/packages/referral_reconciliation/lib/widgets/project_facility_bloc_wrapper.dart index e49e0272e..def597a88 100644 --- a/packages/referral_reconciliation/lib/widgets/project_facility_bloc_wrapper.dart +++ b/packages/referral_reconciliation/lib/widgets/project_facility_bloc_wrapper.dart @@ -16,11 +16,14 @@ class ProjectFacilityBlocWrapper extends StatelessWidget { @override Widget build(BuildContext context) { + final facilityRepository = + context.read>(); return BlocProvider( create: (_) => ProjectFacilityBloc( const ProjectFacilityEmptyState(), projectFacilityDataRepository: context.repository(context), + facilityDataRepository: facilityRepository, )..add(ProjectFacilityLoadEvent( query: ProjectFacilitySearchModel( projectId: [ReferralReconSingleton().projectId]))), diff --git a/packages/referral_reconciliation/pubspec.lock b/packages/referral_reconciliation/pubspec.lock index 8a79c12b0..146a16e84 100644 --- a/packages/referral_reconciliation/pubspec.lock +++ b/packages/referral_reconciliation/pubspec.lock @@ -429,11 +429,10 @@ packages: digit_data_model: dependency: "direct main" description: - name: digit_data_model - sha256: "560b806cbb9f760ed956ecf2d01a8e5ea5640d8fca9ec1332ee15b34998d2e15" - url: "https://pub.dev" - source: hosted - version: "1.0.3+3" + path: "../digit_data_model" + relative: true + source: path + version: "1.0.4" digit_scanner: dependency: "direct main" description: diff --git a/packages/referral_reconciliation/pubspec.yaml b/packages/referral_reconciliation/pubspec.yaml index 6973be72c..1fc553591 100644 --- a/packages/referral_reconciliation/pubspec.yaml +++ b/packages/referral_reconciliation/pubspec.yaml @@ -33,7 +33,8 @@ dependencies: flutter_keyboard_visibility: ^5.4.0 auto_route: ^7.8.4 collection: ^1.16.0 - digit_data_model: ^1.0.3+3 + digit_data_model: + path: ../../packages/digit_data_model stream_transform: ^2.1.0 dev_dependencies: