6177214e-ce7c-49e3-99de-ff9721b26f63 — Commit 4df24aa5
Changed files
comwell_key_app/ios/Runner.xcodeproj/project.pbxproj | 10 +--------- comwell_key_app/lib/check_in/bloc/check_in_cubit.dart | 3 ++- comwell_key_app/lib/check_in/check_in_repository.dart | 7 ++----- comwell_key_app/lib/profile/profile_repository.dart | 11 +++++++++++ comwell_key_app/lib/services/api.dart | 5 +++++ 5 files changed, 21 insertions(+), 15 deletions(-)
Diff
diff --git a/comwell_key_app/ios/Runner.xcodeproj/project.pbxproj b/comwell_key_app/ios/Runner.xcodeproj/project.pbxproj
index 7d7542f2..049c1a9d 100644
--- a/comwell_key_app/ios/Runner.xcodeproj/project.pbxproj
+++ b/comwell_key_app/ios/Runner.xcodeproj/project.pbxproj
@@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 60;
+ objectVersion = 54;
objects = {
/* Begin PBXBuildFile section */
@@ -235,14 +235,10 @@
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- );
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
- outputPaths = (
- );
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
@@ -344,14 +340,10 @@
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- );
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
);
- outputPaths = (
- );
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
diff --git a/comwell_key_app/lib/check_in/bloc/check_in_cubit.dart b/comwell_key_app/lib/check_in/bloc/check_in_cubit.dart
index 83561cd4..995154c4 100644
--- a/comwell_key_app/lib/check_in/bloc/check_in_cubit.dart
+++ b/comwell_key_app/lib/check_in/bloc/check_in_cubit.dart
@@ -18,7 +18,8 @@ class CheckInCubit extends Cubit<CheckInState> {
await Future<void>.delayed(const Duration(milliseconds: 500));
emit(state.checkInStatusLoading());
await _checkInRepository.checkIn(booking.confirmationId);
- emit(state.checkInStatusRoomFound(roomNumber: booking.roomNumber));
+ final bookingDetails = await _checkInRepository.getBookingDetails(booking.id);
+ emit(state.checkInStatusRoomFound(roomNumber: bookingDetails.roomNumber));
await _checkInRepository.checkIfSetup();
await tryGetKeys();
diff --git a/comwell_key_app/lib/check_in/check_in_repository.dart b/comwell_key_app/lib/check_in/check_in_repository.dart
index 8ba00e8e..9870339f 100644
--- a/comwell_key_app/lib/check_in/check_in_repository.dart
+++ b/comwell_key_app/lib/check_in/check_in_repository.dart
@@ -37,11 +37,8 @@ class CheckInRepository {
}
Future<Booking> getBookingDetails(String bookingId) async {
- final user = await profileRepository.fetchProfileSettings();
- final entity = await db.bookingsDao.getBookingDetails(bookingId);
- final Json json = jsonDecode(entity.json) as Json;
- return BookingDTO.fromJson(json)
- .toBooking(user.id, BookingStatus.fromString(entity.status));
+ final booking = await profileRepository.getBookingDetails(bookingId);
+ return booking;
}
Future<void> checkIfSetup() async {
diff --git a/comwell_key_app/lib/profile/profile_repository.dart b/comwell_key_app/lib/profile/profile_repository.dart
index 08870f25..3facc019 100644
--- a/comwell_key_app/lib/profile/profile_repository.dart
+++ b/comwell_key_app/lib/profile/profile_repository.dart
@@ -1,9 +1,13 @@
import 'package:comwell_key_app/authentication/authentication_repository.dart';
import 'package:comwell_key_app/database/comwell_db.dart';
+import 'package:comwell_key_app/overview/models/booking.dart';
import 'package:comwell_key_app/profile_settings/model/user.dart';
import 'package:comwell_key_app/profile_settings/repostiory/profile_settings_repository.dart';
import 'package:comwell_key_app/services/api.dart';
+import 'package:comwell_key_app/services/mappers/booking_mapper.dart';
import 'package:comwell_key_app/services/mappers/user_mapper.dart';
+import 'package:comwell_key_app/services/models/booking_dto.dart';
+import 'package:comwell_key_app/services/models/bookings_dto.dart';
import 'package:comwell_key_app/services/models/user_dto.dart';
import 'package:comwell_key_app/utils/json.dart';
import 'package:comwell_key_app/utils/locator.dart';
@@ -37,6 +41,13 @@ class ProfileRepository {
return updatedUser;
}
+ Future<Booking> getBookingDetails(String bookingId) async {
+ final response = await api.getBookingDetails(bookingId);
+ final bookingDto = BookingDTO.fromJson(response);
+ await db.bookingsDao.insertBookings(BookingsDTO(current: [bookingDto], past: [], cancelled: []));
+ return bookingDto.toBooking(user.id, BookingStatus.current);
+ }
+
Future<User> fetchProfileSettings() async {
try {
final user = await db.userDAO.getUser();
diff --git a/comwell_key_app/lib/services/api.dart b/comwell_key_app/lib/services/api.dart
index afe4facf..9acee15d 100644
--- a/comwell_key_app/lib/services/api.dart
+++ b/comwell_key_app/lib/services/api.dart
@@ -205,4 +205,9 @@ class Api {
await dio
.post<void>(ApiEndpoints.provisionKey, data: {'bookingId': bookingId});
}
+
+ Future<Json> getBookingDetails(String bookingId) async {
+ final response = await dio.get<Json>(ApiEndpoints.getBookingDetails, queryParameters: {'confirmationId': bookingId});
+ return response.data!;
+ }
}