diff --git a/GME Remit.xcodeproj/project.pbxproj b/GME Remit.xcodeproj/project.pbxproj index 6b3b37b6..6de7946a 100644 --- a/GME Remit.xcodeproj/project.pbxproj +++ b/GME Remit.xcodeproj/project.pbxproj @@ -532,6 +532,20 @@ D9B7ADF92130048E009B0564 /* ExchangeRates.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D9B7ADEE2130048E009B0564 /* ExchangeRates.storyboard */; }; D9B7ADFA2130048E009B0564 /* ExchangeRatesViewInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9B7ADEF2130048E009B0564 /* ExchangeRatesViewInterface.swift */; }; D9B7ADFD2130073A009B0564 /* WireframeInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9B7ADFC2130073A009B0564 /* WireframeInput.swift */; }; + D9BE020E21E2DB64003AA8C7 /* PaymentSelections.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D9BE020D21E2DB64003AA8C7 /* PaymentSelections.storyboard */; }; + D9BE021021E2DC01003AA8C7 /* PaymentSelectionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE020F21E2DC01003AA8C7 /* PaymentSelectionsViewController.swift */; }; + D9BE022821E2DD45003AA8C7 /* PaymentSelectionModuleInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE021521E2DD44003AA8C7 /* PaymentSelectionModuleInterface.swift */; }; + D9BE022921E2DD45003AA8C7 /* PaymentSelectionService.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE021821E2DD44003AA8C7 /* PaymentSelectionService.swift */; }; + D9BE022A21E2DD45003AA8C7 /* PaymentSelectionServiceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE021921E2DD44003AA8C7 /* PaymentSelectionServiceType.swift */; }; + D9BE022B21E2DD45003AA8C7 /* PaymentSelectionInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE021B21E2DD44003AA8C7 /* PaymentSelectionInteractor.swift */; }; + D9BE022C21E2DD45003AA8C7 /* PaymentSelectionInteractorIO.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE021C21E2DD44003AA8C7 /* PaymentSelectionInteractorIO.swift */; }; + D9BE022D21E2DD45003AA8C7 /* PaymentSelectionPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE021F21E2DD44003AA8C7 /* PaymentSelectionPresenter.swift */; }; + D9BE022E21E2DD45003AA8C7 /* PaymentSelectionWireframeInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE022121E2DD44003AA8C7 /* PaymentSelectionWireframeInput.swift */; }; + D9BE022F21E2DD45003AA8C7 /* PaymentSelectionWireframe.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE022221E2DD44003AA8C7 /* PaymentSelectionWireframe.swift */; }; + D9BE023021E2DD45003AA8C7 /* PaymentSelectionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE022521E2DD44003AA8C7 /* PaymentSelectionViewController.swift */; }; + D9BE023121E2DD45003AA8C7 /* PaymentSelectionViewInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE022621E2DD44003AA8C7 /* PaymentSelectionViewInterface.swift */; }; + D9BE023221E2DD45003AA8C7 /* PaymentSelection.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D9BE022721E2DD44003AA8C7 /* PaymentSelection.storyboard */; }; + D9BE023521E2DDEC003AA8C7 /* PaymentSelectionTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BE023421E2DDEC003AA8C7 /* PaymentSelectionTableViewCell.swift */; }; D9BF7EE12137CECF00264387 /* CurrencyPickerCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BF7EDE2137CECE00264387 /* CurrencyPickerCell.swift */; }; D9BF7EE22137CECF00264387 /* CurrencyPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9BF7EDF2137CECE00264387 /* CurrencyPickerViewController.swift */; }; D9BF7EE32137CECF00264387 /* CurrencyPicker.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D9BF7EE02137CECE00264387 /* CurrencyPicker.storyboard */; }; @@ -1137,6 +1151,20 @@ D9B7ADEE2130048E009B0564 /* ExchangeRates.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = ExchangeRates.storyboard; sourceTree = ""; }; D9B7ADEF2130048E009B0564 /* ExchangeRatesViewInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExchangeRatesViewInterface.swift; sourceTree = ""; }; D9B7ADFC2130073A009B0564 /* WireframeInput.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WireframeInput.swift; sourceTree = ""; }; + D9BE020D21E2DB64003AA8C7 /* PaymentSelections.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = PaymentSelections.storyboard; sourceTree = ""; }; + D9BE020F21E2DC01003AA8C7 /* PaymentSelectionsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentSelectionsViewController.swift; sourceTree = ""; }; + D9BE021521E2DD44003AA8C7 /* PaymentSelectionModuleInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionModuleInterface.swift; sourceTree = ""; }; + D9BE021821E2DD44003AA8C7 /* PaymentSelectionService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionService.swift; sourceTree = ""; }; + D9BE021921E2DD44003AA8C7 /* PaymentSelectionServiceType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionServiceType.swift; sourceTree = ""; }; + D9BE021B21E2DD44003AA8C7 /* PaymentSelectionInteractor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionInteractor.swift; sourceTree = ""; }; + D9BE021C21E2DD44003AA8C7 /* PaymentSelectionInteractorIO.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionInteractorIO.swift; sourceTree = ""; }; + D9BE021F21E2DD44003AA8C7 /* PaymentSelectionPresenter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionPresenter.swift; sourceTree = ""; }; + D9BE022121E2DD44003AA8C7 /* PaymentSelectionWireframeInput.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionWireframeInput.swift; sourceTree = ""; }; + D9BE022221E2DD44003AA8C7 /* PaymentSelectionWireframe.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionWireframe.swift; sourceTree = ""; }; + D9BE022521E2DD44003AA8C7 /* PaymentSelectionViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionViewController.swift; sourceTree = ""; }; + D9BE022621E2DD44003AA8C7 /* PaymentSelectionViewInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaymentSelectionViewInterface.swift; sourceTree = ""; }; + D9BE022721E2DD44003AA8C7 /* PaymentSelection.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = PaymentSelection.storyboard; sourceTree = ""; }; + D9BE023421E2DDEC003AA8C7 /* PaymentSelectionTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentSelectionTableViewCell.swift; sourceTree = ""; }; D9BF7EDE2137CECE00264387 /* CurrencyPickerCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CurrencyPickerCell.swift; sourceTree = ""; }; D9BF7EDF2137CECE00264387 /* CurrencyPickerViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CurrencyPickerViewController.swift; sourceTree = ""; }; D9BF7EE02137CECE00264387 /* CurrencyPicker.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = CurrencyPicker.storyboard; sourceTree = ""; }; @@ -1821,6 +1849,8 @@ 041AEACD1FF4F081004FEF06 /* Savings.xib */, 041AEACF1FF5EECE004FEF06 /* PopUpSavingViewController.swift */, D90D55B2213270DD00EEEE04 /* ReciepientServcie.swift */, + D9BE020D21E2DB64003AA8C7 /* PaymentSelections.storyboard */, + D9BE020F21E2DC01003AA8C7 /* PaymentSelectionsViewController.swift */, ); path = Recipient; sourceTree = ""; @@ -2084,6 +2114,7 @@ D907AB96212AA8A300915A87 /* Module */ = { isa = PBXGroup; children = ( + D9BE021321E2DD44003AA8C7 /* PaymentSelection */, 04702FF121CA3EAE00B6C9C3 /* AutoDebit */, FF6E7D7921BF951D00A003B9 /* AppUpdate */, 04E36E0421AE585100783685 /* PennyTestSubmit */, @@ -4077,6 +4108,105 @@ path = Base; sourceTree = ""; }; + D9BE021321E2DD44003AA8C7 /* PaymentSelection */ = { + isa = PBXGroup; + children = ( + D9BE021421E2DD44003AA8C7 /* Module Interface */, + D9BE021621E2DD44003AA8C7 /* Application Logic */, + D9BE021D21E2DD44003AA8C7 /* User Interface */, + ); + path = PaymentSelection; + sourceTree = ""; + }; + D9BE021421E2DD44003AA8C7 /* Module Interface */ = { + isa = PBXGroup; + children = ( + D9BE021521E2DD44003AA8C7 /* PaymentSelectionModuleInterface.swift */, + ); + path = "Module Interface"; + sourceTree = ""; + }; + D9BE021621E2DD44003AA8C7 /* Application Logic */ = { + isa = PBXGroup; + children = ( + D9BE021721E2DD44003AA8C7 /* Service */, + D9BE021A21E2DD44003AA8C7 /* Interactor */, + ); + path = "Application Logic"; + sourceTree = ""; + }; + D9BE021721E2DD44003AA8C7 /* Service */ = { + isa = PBXGroup; + children = ( + D9BE021821E2DD44003AA8C7 /* PaymentSelectionService.swift */, + D9BE021921E2DD44003AA8C7 /* PaymentSelectionServiceType.swift */, + ); + path = Service; + sourceTree = ""; + }; + D9BE021A21E2DD44003AA8C7 /* Interactor */ = { + isa = PBXGroup; + children = ( + D9BE021B21E2DD44003AA8C7 /* PaymentSelectionInteractor.swift */, + D9BE021C21E2DD44003AA8C7 /* PaymentSelectionInteractorIO.swift */, + ); + path = Interactor; + sourceTree = ""; + }; + D9BE021D21E2DD44003AA8C7 /* User Interface */ = { + isa = PBXGroup; + children = ( + D9BE021E21E2DD44003AA8C7 /* Presenter */, + D9BE022021E2DD44003AA8C7 /* Wireframe */, + D9BE022321E2DD44003AA8C7 /* View */, + ); + path = "User Interface"; + sourceTree = ""; + }; + D9BE021E21E2DD44003AA8C7 /* Presenter */ = { + isa = PBXGroup; + children = ( + D9BE021F21E2DD44003AA8C7 /* PaymentSelectionPresenter.swift */, + ); + path = Presenter; + sourceTree = ""; + }; + D9BE022021E2DD44003AA8C7 /* Wireframe */ = { + isa = PBXGroup; + children = ( + D9BE022121E2DD44003AA8C7 /* PaymentSelectionWireframeInput.swift */, + D9BE022221E2DD44003AA8C7 /* PaymentSelectionWireframe.swift */, + ); + path = Wireframe; + sourceTree = ""; + }; + D9BE022321E2DD44003AA8C7 /* View */ = { + isa = PBXGroup; + children = ( + D9BE023321E2DDA0003AA8C7 /* Cells */, + D9BE022421E2DD44003AA8C7 /* ViewModels */, + D9BE022521E2DD44003AA8C7 /* PaymentSelectionViewController.swift */, + D9BE022621E2DD44003AA8C7 /* PaymentSelectionViewInterface.swift */, + D9BE022721E2DD44003AA8C7 /* PaymentSelection.storyboard */, + ); + path = View; + sourceTree = ""; + }; + D9BE022421E2DD44003AA8C7 /* ViewModels */ = { + isa = PBXGroup; + children = ( + ); + path = ViewModels; + sourceTree = ""; + }; + D9BE023321E2DDA0003AA8C7 /* Cells */ = { + isa = PBXGroup; + children = ( + D9BE023421E2DDEC003AA8C7 /* PaymentSelectionTableViewCell.swift */, + ); + path = Cells; + sourceTree = ""; + }; D9BF7EDD2137CECE00264387 /* CurrencyPicker */ = { isa = PBXGroup; children = ( @@ -4443,6 +4573,7 @@ 5565FF1E1FE275E5002934E9 /* SanFranciscoText-RegularItalic.otf in Resources */, D9DC1060216314BC008F3C51 /* SideMenu.storyboard in Resources */, 042F98E8204838590069F638 /* wallet.html in Resources */, + D9BE020E21E2DB64003AA8C7 /* PaymentSelections.storyboard in Resources */, D937037A21490C3800D93077 /* KycForm2.storyboard in Resources */, 5565FF2E1FE275E5002934E9 /* SanFranciscoText-Semibold.otf in Resources */, 9FD260FF1FD00458007A511D /* Assets.xcassets in Resources */, @@ -4475,6 +4606,7 @@ D90D55D321327CD600EEEE04 /* AddReciepient.storyboard in Resources */, D90A9D67213696E400A96E45 /* BankPicker.storyboard in Resources */, 5565FF2D1FE275E5002934E9 /* SanFranciscoText-MediumItalic.otf in Resources */, + D9BE023221E2DD45003AA8C7 /* PaymentSelection.storyboard in Resources */, D922D9492135124200D43053 /* SendMoneyPaymentMode.storyboard in Resources */, 043770F121AD04240005B22D /* PennyTest.storyboard in Resources */, D937038521490C3800D93077 /* KycForm1.storyboard in Resources */, @@ -4800,6 +4932,8 @@ D92B80262140C3CB00A25B26 /* MainService.swift in Sources */, D9B414422161AE2800A53D9D /* DatePickerViewController.swift in Sources */, 0428DC682048FF91008355D7 /* WalletTransactionTableViewCell.swift in Sources */, + D9BE022E21E2DD45003AA8C7 /* PaymentSelectionWireframeInput.swift in Sources */, + D9BE023121E2DD45003AA8C7 /* PaymentSelectionViewInterface.swift in Sources */, 9F23DF512074A02B0025D6DF /* MyCollectionViewCell.swift in Sources */, A28D38F0202D49C90012EF6A /* TransactionSearchViewController.swift in Sources */, 9FD260F81FD00458007A511D /* AppDelegate.swift in Sources */, @@ -4817,6 +4951,7 @@ D903113C214786EA00AD5BA9 /* ForgotPasswordModuleInterface.swift in Sources */, D946719D21426DFB003924DB /* LoginViewInterface.swift in Sources */, 04CDC57E20809DCE0081BE50 /* Reward.swift in Sources */, + D9BE021021E2DC01003AA8C7 /* PaymentSelectionsViewController.swift in Sources */, D922D9AB21351B7400D43053 /* SendMoneyVerificationInteractorIO.swift in Sources */, D96A4FD721460B4A00CFD507 /* SplashScreenInteractor.swift in Sources */, D97785A7215DC55F00754079 /* TransactionHistoryViewInterface.swift in Sources */, @@ -4890,9 +5025,11 @@ 044124C71FEBA1BD00FD4240 /* FillRecoveryCodeViewController.swift in Sources */, FF6E7D9621BF951D00A003B9 /* AppUpdateViewInterface.swift in Sources */, A2E3379D20485825002DB015 /* PendingTableViewCell.swift in Sources */, + D9BE023521E2DDEC003AA8C7 /* PaymentSelectionTableViewCell.swift in Sources */, D937037421490C3800D93077 /* KycForm2InteractorIO.swift in Sources */, D9031143214786EA00AD5BA9 /* ForgotPasswordWireframeInput.swift in Sources */, D92C24A721477EA600F6876F /* ResponseMessage.swift in Sources */, + D9BE022C21E2DD45003AA8C7 /* PaymentSelectionInteractorIO.swift in Sources */, 045CB0C6202F2A3D008DD982 /* _MessageComposeViewController.swift in Sources */, D96BD11C216479E200DFE7D8 /* WalletStatementWireframeInput.swift in Sources */, D97785A1215DC55F00754079 /* TransactionHistoryInteractor.swift in Sources */, @@ -4928,6 +5065,7 @@ D90D55CC21327CD600EEEE04 /* AddReciepientServiceType.swift in Sources */, D9DAFE2C21354D8900483E71 /* SendMoenyPaymentModeCollectionViewCell.swift in Sources */, D95B7043213F9A2C0053CC3D /* CALayerExtension.swift in Sources */, + D9BE023021E2DD45003AA8C7 /* PaymentSelectionViewController.swift in Sources */, A25CF60920467BA40029BC12 /* InviteViewController.swift in Sources */, D922D9AD21351B7400D43053 /* SendMoneyVerificationPresenter.swift in Sources */, D92B802D2140C3CB00A25B26 /* MainViewInterface.swift in Sources */, @@ -4958,6 +5096,7 @@ D950BED221549242008367A1 /* HomeServiceType.swift in Sources */, A2E33795204813C0002DB015 /* SendMoneyViewController.swift in Sources */, D937034621490C1A00D93077 /* KycForm3ViewController.swift in Sources */, + D9BE022B21E2DD45003AA8C7 /* PaymentSelectionInteractor.swift in Sources */, D937037721490C3800D93077 /* KycForm2Wireframe.swift in Sources */, D937037F21490C3800D93077 /* KycForm1InteractorIO.swift in Sources */, 041AEAC81FF4D6C4004FEF06 /* CustomPrintPageRenderer.swift in Sources */, @@ -5057,10 +5196,13 @@ A2266A5D2028451700E890A6 /* AgentViewModel.swift in Sources */, D922D9652135145F00D43053 /* SendMoneyParentInteractor.swift in Sources */, 04E36E1921AE585200783685 /* PennyTestSubmitModuleInterface.swift in Sources */, + D9BE022A21E2DD45003AA8C7 /* PaymentSelectionServiceType.swift in Sources */, 04BED13A2015BC6300B4CEB7 /* CDDenum.swift in Sources */, + D9BE022F21E2DD45003AA8C7 /* PaymentSelectionWireframe.swift in Sources */, D92B80292140C3CB00A25B26 /* MainInteractorIO.swift in Sources */, 0496B84F1FE7DFCD0044810E /* StringExtension.swift in Sources */, D9B7ADF52130048E009B0564 /* ExchangeRatesPresenter.swift in Sources */, + D9BE022821E2DD45003AA8C7 /* PaymentSelectionModuleInterface.swift in Sources */, A2E3379720483C84002DB015 /* InviteViewModel.swift in Sources */, 0448C2A11FF34D9C001FEA77 /* RecipientViewModel.swift in Sources */, D977859F215DC55F00754079 /* TransactionHistoryServiceType.swift in Sources */, @@ -5134,6 +5276,7 @@ 9F2E45A2204E8A3F00D0B28C /* CalendarViewController.swift in Sources */, D90A9D66213696E400A96E45 /* BankPickerViewController.swift in Sources */, 04DC27EE21A51E83003714F5 /* autoRefundService.swift in Sources */, + D9BE022D21E2DD45003AA8C7 /* PaymentSelectionPresenter.swift in Sources */, 0428DC6A204910F9008355D7 /* WalletTransactionListViewController.swift in Sources */, 049E61A51FF0AE9D00817C76 /* UrlManager.swift in Sources */, D9AFE856215C7166005F3A25 /* HomeCollectionTableViewCell.swift in Sources */, @@ -5250,6 +5393,7 @@ D922D9672135145F00D43053 /* SendMoneyParentPresenter.swift in Sources */, D9B39678214F7DDC0072A9B8 /* MultiMediaManager.swift in Sources */, A2266A5920281E3C00E890A6 /* AgentTableViewCell.swift in Sources */, + D9BE022921E2DD45003AA8C7 /* PaymentSelectionService.swift in Sources */, 04358CCE204EBD8000055813 /* WalletPopUpViewController.swift in Sources */, D950BED621549242008367A1 /* HomePresenter.swift in Sources */, 9F03D22C1FECFC22002E132E /* RecipientFormViewController.swift in Sources */, diff --git a/GMERemittance/Module/AutoDebit/User Interface/View/AutoDebit.storyboard b/GMERemittance/Module/AutoDebit/User Interface/View/AutoDebit.storyboard index 0f69d1cd..acbf0903 100644 --- a/GMERemittance/Module/AutoDebit/User Interface/View/AutoDebit.storyboard +++ b/GMERemittance/Module/AutoDebit/User Interface/View/AutoDebit.storyboard @@ -1,11 +1,11 @@ - + - + @@ -175,7 +175,7 @@ - + diff --git a/GMERemittance/Module/PaymentSelection/Application Logic/Interactor/PaymentSelectionInteractor.swift b/GMERemittance/Module/PaymentSelection/Application Logic/Interactor/PaymentSelectionInteractor.swift new file mode 100644 index 00000000..dd48df35 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/Application Logic/Interactor/PaymentSelectionInteractor.swift @@ -0,0 +1,31 @@ +// +// PaymentSelectionInteractor.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import Foundation + +class PaymentSelectionInteractor { + + // MARK: Properties + + weak var output: PaymentSelectionInteractorOutput? + private let service: PaymentSelectionServiceType + + // MARK: Initialization + + init(service: PaymentSelectionServiceType) { + self.service = service + } + + // MARK: Converting entities +} + +// MARK: PaymentSelection interactor input interface + +extension PaymentSelectionInteractor: PaymentSelectionInteractorInput { + +} diff --git a/GMERemittance/Module/PaymentSelection/Application Logic/Interactor/PaymentSelectionInteractorIO.swift b/GMERemittance/Module/PaymentSelection/Application Logic/Interactor/PaymentSelectionInteractorIO.swift new file mode 100644 index 00000000..93547364 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/Application Logic/Interactor/PaymentSelectionInteractorIO.swift @@ -0,0 +1,15 @@ +// +// PaymentSelectionInteractorIO.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +protocol PaymentSelectionInteractorInput: class { + +} + +protocol PaymentSelectionInteractorOutput: class { + +} diff --git a/GMERemittance/Module/PaymentSelection/Application Logic/Service/PaymentSelectionService.swift b/GMERemittance/Module/PaymentSelection/Application Logic/Service/PaymentSelectionService.swift new file mode 100644 index 00000000..e8c68118 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/Application Logic/Service/PaymentSelectionService.swift @@ -0,0 +1,18 @@ +// +// PaymentSelectionService.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import Foundation + +class PaymentSelectionService: PaymentSelectionServiceType { + + // MARK: Properties + + // MARK: Initialization + + // MARK: Data management +} diff --git a/GMERemittance/Module/PaymentSelection/Application Logic/Service/PaymentSelectionServiceType.swift b/GMERemittance/Module/PaymentSelection/Application Logic/Service/PaymentSelectionServiceType.swift new file mode 100644 index 00000000..b26f350e --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/Application Logic/Service/PaymentSelectionServiceType.swift @@ -0,0 +1,13 @@ +// +// PaymentSelectionServiceType.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import Foundation + +protocol PaymentSelectionServiceType: class { + +} diff --git a/GMERemittance/Module/PaymentSelection/Module Interface/PaymentSelectionModuleInterface.swift b/GMERemittance/Module/PaymentSelection/Module Interface/PaymentSelectionModuleInterface.swift new file mode 100644 index 00000000..a6490694 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/Module Interface/PaymentSelectionModuleInterface.swift @@ -0,0 +1,11 @@ +// +// PaymentSelectionModuleInterface.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +protocol PaymentSelectionModuleInterface: class { + +} diff --git a/GMERemittance/Module/PaymentSelection/User Interface/Presenter/PaymentSelectionPresenter.swift b/GMERemittance/Module/PaymentSelection/User Interface/Presenter/PaymentSelectionPresenter.swift new file mode 100644 index 00000000..a2926c8a --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/Presenter/PaymentSelectionPresenter.swift @@ -0,0 +1,32 @@ +// +// PaymentSelectionPresenter.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import Foundation + +class PaymentSelectionPresenter { + + // MARK: Properties + + weak var view: PaymentSelectionViewInterface? + var interactor: PaymentSelectionInteractorInput? + var wireframe: PaymentSelectionWireframeInput? + + // MARK: Converting entities +} + + // MARK: PaymentSelection module interface + +extension PaymentSelectionPresenter: PaymentSelectionModuleInterface { + +} + +// MARK: PaymentSelection interactor output interface + +extension PaymentSelectionPresenter: PaymentSelectionInteractorOutput { + +} diff --git a/GMERemittance/Module/PaymentSelection/User Interface/View/Cells/PaymentSelectionTableViewCell.swift b/GMERemittance/Module/PaymentSelection/User Interface/View/Cells/PaymentSelectionTableViewCell.swift new file mode 100644 index 00000000..23a67c56 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/View/Cells/PaymentSelectionTableViewCell.swift @@ -0,0 +1,20 @@ +// +// PaymentSelectionTableViewCell.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import UIKit + +class PaymentSelectionTableViewCell: UITableViewCell { + + @IBOutlet weak var titlelabel: UILabel! + @IBOutlet weak var accountLabel: UILabel! + + override func awakeFromNib() { + super.awakeFromNib() + // Initialization code + } +} diff --git a/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelection.storyboard b/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelection.storyboard new file mode 100644 index 00000000..3215f3b5 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelection.storyboard @@ -0,0 +1,129 @@ + + + + + + + + + + + + + SanFranciscoDisplay-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelectionViewController.swift b/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelectionViewController.swift new file mode 100644 index 00000000..9da1f835 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelectionViewController.swift @@ -0,0 +1,41 @@ +// +// PaymentSelectionViewController.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import UIKit + +class PaymentSelectionViewController: UIViewController { + + // MARK: IBOutlets + + + // MARK: Properties + + var presenter: PaymentSelectionModuleInterface? + + + // MARK: VC's Life cycle + + override func viewDidLoad() { + super.viewDidLoad() + self.setup() + } + + // MARK: IBActions + + // MARK: Other Functions + + private func setup() { + // all setup should be done here + + } +} + +// MARK: PaymentSelectionViewInterface +extension PaymentSelectionViewController: PaymentSelectionViewInterface { + +} diff --git a/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelectionViewInterface.swift b/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelectionViewInterface.swift new file mode 100644 index 00000000..0d37d9a8 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/View/PaymentSelectionViewInterface.swift @@ -0,0 +1,10 @@ +// +// PaymentSelectionViewInterface.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +protocol PaymentSelectionViewInterface: class { +} diff --git a/GMERemittance/Module/PaymentSelection/User Interface/Wireframe/PaymentSelectionWireframe.swift b/GMERemittance/Module/PaymentSelection/User Interface/Wireframe/PaymentSelectionWireframe.swift new file mode 100644 index 00000000..04d97729 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/Wireframe/PaymentSelectionWireframe.swift @@ -0,0 +1,34 @@ +// +// PaymentSelectionWireframe.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import UIKit + +class PaymentSelectionWireframe { + weak var view: UIViewController! +} + +extension PaymentSelectionWireframe: PaymentSelectionWireframeInput { + + var storyboardName: String {return "PaymentSelection"} + + func getMainView() -> UIViewController { + let service = PaymentSelectionService() + let interactor = PaymentSelectionInteractor(service: service) + let presenter = PaymentSelectionPresenter() + let viewController = viewControllerFromStoryboard(of: PaymentSelectionViewController.self) + + viewController.presenter = presenter + interactor.output = presenter + presenter.interactor = interactor + presenter.wireframe = self + presenter.view = viewController + + self.view = viewController + return viewController + } +} diff --git a/GMERemittance/Module/PaymentSelection/User Interface/Wireframe/PaymentSelectionWireframeInput.swift b/GMERemittance/Module/PaymentSelection/User Interface/Wireframe/PaymentSelectionWireframeInput.swift new file mode 100644 index 00000000..2868a7d2 --- /dev/null +++ b/GMERemittance/Module/PaymentSelection/User Interface/Wireframe/PaymentSelectionWireframeInput.swift @@ -0,0 +1,13 @@ +// +// PaymentSelectionWireframeInput.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import Foundation + +protocol PaymentSelectionWireframeInput: WireframeInput { + +} diff --git a/GMERemittance/Recipient/PaymentSelections.storyboard b/GMERemittance/Recipient/PaymentSelections.storyboard new file mode 100644 index 00000000..53998910 --- /dev/null +++ b/GMERemittance/Recipient/PaymentSelections.storyboard @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + SanFranciscoDisplay-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GMERemittance/Recipient/PaymentSelectionsViewController.swift b/GMERemittance/Recipient/PaymentSelectionsViewController.swift new file mode 100644 index 00000000..1b29f79a --- /dev/null +++ b/GMERemittance/Recipient/PaymentSelectionsViewController.swift @@ -0,0 +1,30 @@ +// +// PaymentSelectionViewController.swift +// GME Remit +// +// Created by gme_2 on 07/01/2019. +// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import UIKit + +class PaymentSelectionsViewController: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + // Do any additional setup after loading the view. + } + + + /* + // MARK: - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + // Get the new view controller using segue.destination. + // Pass the selected object to the new view controller. + } + */ + +} diff --git a/GMERemittance/Recipient/RecipientListViewController.swift b/GMERemittance/Recipient/RecipientListViewController.swift index 43a20657..3afec33e 100644 --- a/GMERemittance/Recipient/RecipientListViewController.swift +++ b/GMERemittance/Recipient/RecipientListViewController.swift @@ -87,9 +87,15 @@ extension RecipientListViewController: UITableViewDelegate,UITableViewDataSource } func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + // show the action sheet to choose the payment method. + startSendMoneyProcess(index: indexPath.row) } + private func showMethodSelection(for index: Int) { + + } + private func startSendMoneyProcess(index: Int) { if let navigation = self.navigationController { if let reciepient = self.reciepients?.elementAt(index: index) { @@ -128,13 +134,6 @@ extension RecipientListViewController: UITableViewDelegate,UITableViewDataSource } -// self.fetchReciepientList(username: myUsername, success: { (_recipients) in -// self.hideProgressHud() -// self.reciepients = _recipients -// }, failure: { (error) in -// self.hideProgressHud() -// self.alert(message: error.localizedDescription) -// }) }, failure: { (error) in self.alert(message: error.localizedDescription) self.hideProgressHud()