You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
1.6 KiB

5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
  1. //
  2. // RedeemWireframe.swift
  3. // GME Remit
  4. //
  5. // Created by InKwon Devik Kim on 11/04/2019.
  6. //Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
  7. //
  8. import UIKit
  9. class RedeemWireframe {
  10. weak var view: UIViewController!
  11. private var model: RewardProduct?
  12. }
  13. extension RedeemWireframe: RedeemWireframeInput {
  14. var storyboardName: String {return "Redeem"}
  15. func getMainView() -> UIViewController {
  16. let service = RedeemService()
  17. let interactor = RedeemInteractor(service: service)
  18. let presenter = RedeemPresenter(with: self.model)
  19. let viewController = viewControllerFromStoryboard(of: RedeemViewController.self)
  20. viewController.presenter = presenter
  21. interactor.output = presenter
  22. presenter.interactor = interactor
  23. presenter.wireframe = self
  24. presenter.view = viewController
  25. view = viewController
  26. return viewController
  27. }
  28. func pushMainViewWithModel(with model: RewardProduct?, in source: UINavigationController) {
  29. self.model = model
  30. pushMainView(in: source)
  31. }
  32. func showSearchAddressVC() {
  33. let wireframe = SearchAddressWireframe()
  34. guard let delegate = view as? SearchAddressDelegate else {return}
  35. wireframe.openViewControllerWithNavigationWithDelegate(
  36. delegate: delegate,
  37. viewController: wireframe.getMainView(),
  38. source: view
  39. )
  40. }
  41. func showBranchesVC() {
  42. let wireframe = GmeContactsWireframe()
  43. let vc = wireframe.getMainView()
  44. wireframe.openViewControllerWithNavigation(viewController: vc, source: view)
  45. }
  46. func goRewardVC() {
  47. view.navigationController?.popToRootViewController(animated: true)
  48. }
  49. }