@@ -28,6 +28,12 @@ class AdminFirstStepReservationViewCoordinator: BaseCoordinator{
2828
2929 var establishment: Int = 1
3030
31+ var phone: String?
32+
33+ var fullUser: FullUser?
34+
35+ var model: SecondStepModel?
36+
3137 // MARK: - Lifecycle
3238
3339 override func start() {
@@ -52,6 +58,39 @@ extension AdminFirstStepReservationViewCoordinator: FirstStepReservationProtocol
5258 }
5359
5460 func makeReservation(model: SecondStepModel, mapView: MapImageScroll?) {
61+ self.model = model
62+
63+ if let p = phone {
64+ goToFinalStep(with: fullUser, phone: p)
65+ } else {
66+ goToSecondStep(model: model, mapView: mapView)
67+ }
68+ }
69+
70+ func goToFinalStep(with user: FullUser?, phone phoneNumber: String) {
71+ let finalStepCoordinator = AdminFinalStepReservationCoordinator(navigationController: navigationController)
72+ finalStepCoordinator.model = self.model
73+
74+ addDependency(finalStepCoordinator)
75+ finalStepCoordinator.didFinish = { [weak self] in
76+ self?.navigationController?.popViewController(animated: false)
77+ self?.removeDependency(finalStepCoordinator)
78+ self?.didFinish?()
79+ }
80+
81+ if let u = user {
82+ finalStepCoordinator.user = u
83+ } else {
84+ finalStepCoordinator.user = FullUser(uuid: nil,
85+ name: nil,
86+ phoneNumber: phoneNumber,
87+ isAdmin: true)
88+ }
89+
90+ finalStepCoordinator.start()
91+ }
92+
93+ func goToSecondStep(model: SecondStepModel, mapView: MapImageScroll?) {
5594 let reservationCoordinaotor = AdminSecondStepReservationViewCoordinator(navigationController: navigationController)
5695 reservationCoordinaotor.model = model
5796 reservationCoordinaotor.map = mapView