From b063b1160fbc7c243b1aa9cdde1d760403304af1 Mon Sep 17 00:00:00 2001 From: InKwon James Kim Date: Fri, 16 Aug 2019 18:27:22 +0900 Subject: [PATCH] apply recipient list ui --- GME Remit.xcodeproj/project.pbxproj | 28 ++-- ...ndMoneyAccountValidationRequestModel.swift | 3 +- .../{Account.swift => AccountEx.swift} | 3 +- .../{Reciepient.swift => ReciepientEx.swift} | 7 +- .../Response/ResponseContainerWithArray.swift | 29 ---- .../Service/AutoDebitService.swift | 2 +- .../Presenter/AddReciepientPresenter.swift | 15 +- .../View/AddReciepientViewController.swift | 5 +- .../Presenter/EditReciepientPresenter.swift | 42 +++--- .../EditRecipientRecipientViewModel.swift | 3 +- .../View/EditReciepientViewController.swift | 8 +- .../Interactor/RecipientsInteractor.swift | 28 ++-- .../Model/Account/AccountModel.swift | 2 +- .../Model/FetchRecipientsModel.swift | 8 +- .../Model/Recipient/Recipient.swift | 132 ++++++++++++++++++ .../Model/Recipient/RecipientModel.swift | 27 ---- .../Service/RecipientsService.swift | 2 +- .../View/Cell/RecipientCell.swift | 23 +-- .../User Interface/View/Recipients.storyboard | 106 +++++++++----- .../View/ResendExchangeViewController.swift | 8 +- .../Interactor/SendMoneyCodeInteractor.swift | 2 +- .../SendMoneyExchangeRateViewController.swift | 2 +- .../SendMoneyPaymentModeInteractor.swift | 2 +- .../SendMoneyPaymentModePresenter.swift | 5 +- .../SendMoneyPaymentModeViewController.swift | 5 +- .../SendMoneyVerificationInteractor.swift | 8 +- .../SendMoneyVerificationViewController.swift | 4 +- 27 files changed, 322 insertions(+), 187 deletions(-) rename GME Remit/Models/Response/{Account.swift => AccountEx.swift} (99%) rename GME Remit/Models/Response/{Reciepient.swift => ReciepientEx.swift} (97%) delete mode 100644 GME Remit/Models/Response/ResponseContainerWithArray.swift create mode 100644 GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/Recipient.swift delete mode 100644 GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/RecipientModel.swift diff --git a/GME Remit.xcodeproj/project.pbxproj b/GME Remit.xcodeproj/project.pbxproj index a47f92b8..5c63655a 100644 --- a/GME Remit.xcodeproj/project.pbxproj +++ b/GME Remit.xcodeproj/project.pbxproj @@ -25,7 +25,7 @@ 04546C4120329A36007EFE15 /* AboutGMEViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04546C4020329A36007EFE15 /* AboutGMEViewController.swift */; }; 045976B221A3D8F30001E92A /* AutoRefundsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045976B121A3D8F30001E92A /* AutoRefundsViewController.swift */; }; 045976B421A3D90A0001E92A /* autoRefund.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 045976B321A3D90A0001E92A /* autoRefund.storyboard */; }; - 0470301221CA4BD000B6C9C3 /* Account.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0470301121CA4BD000B6C9C3 /* Account.swift */; }; + 0470301221CA4BD000B6C9C3 /* AccountEx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0470301121CA4BD000B6C9C3 /* AccountEx.swift */; }; 0496B8481FE7DFA20044810E /* RestApiManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0496B8451FE7DFA10044810E /* RestApiManager.swift */; }; 0496B84E1FE7DFCD0044810E /* UIViewController+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0496B84C1FE7DFCC0044810E /* UIViewController+Ext.swift */; }; 0496B84F1FE7DFCD0044810E /* String+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0496B84D1FE7DFCD0044810E /* String+Ext.swift */; }; @@ -308,9 +308,8 @@ 73B4C8C522A5F2440078D495 /* CouponCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B4C8B922A5F2430078D495 /* CouponCell.swift */; }; 73B4C8C622A5F2440078D495 /* SelectCouponViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B4C8BA22A5F2430078D495 /* SelectCouponViewController.swift */; }; 73B4C8C722A5F2440078D495 /* SelectCouponViewInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B4C8BB22A5F2430078D495 /* SelectCouponViewInterface.swift */; }; - 73B6D6822306361400A0CB6E /* ResponseContainerWithArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D6812306361400A0CB6E /* ResponseContainerWithArray.swift */; }; 73B6D68423063DFD00A0CB6E /* ResponseContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D68323063DFD00A0CB6E /* ResponseContainer.swift */; }; - 73B6D68623063F7D00A0CB6E /* RecipientModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D68523063F7D00A0CB6E /* RecipientModel.swift */; }; + 73B6D68623063F7D00A0CB6E /* Recipient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D68523063F7D00A0CB6E /* Recipient.swift */; }; 73B6D6882306402200A0CB6E /* PaymentMethodModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D6872306402200A0CB6E /* PaymentMethodModel.swift */; }; 73B6D68A2306406D00A0CB6E /* AgentModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D6892306406D00A0CB6E /* AgentModel.swift */; }; 73B6D68C230640D400A0CB6E /* BranchModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B6D68B230640D400A0CB6E /* BranchModel.swift */; }; @@ -410,7 +409,7 @@ D90A9D65213696E400A96E45 /* BankPickerCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90A9D62213696E400A96E45 /* BankPickerCell.swift */; }; D90A9D66213696E400A96E45 /* BankPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90A9D63213696E400A96E45 /* BankPickerViewController.swift */; }; D90A9D67213696E400A96E45 /* BankPicker.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D90A9D64213696E400A96E45 /* BankPicker.storyboard */; }; - D90D55B121326DA800EEEE04 /* Reciepient.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90D55B021326DA800EEEE04 /* Reciepient.swift */; }; + D90D55B121326DA800EEEE04 /* ReciepientEx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90D55B021326DA800EEEE04 /* ReciepientEx.swift */; }; D90D55CB21327CD600EEEE04 /* AddReciepientModuleInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90D55B821327CD600EEEE04 /* AddReciepientModuleInterface.swift */; }; D90D55CC21327CD600EEEE04 /* AddReciepientServiceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90D55BB21327CD600EEEE04 /* AddReciepientServiceType.swift */; }; D90D55CD21327CD600EEEE04 /* AddReciepientService.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90D55BC21327CD600EEEE04 /* AddReciepientService.swift */; }; @@ -2260,7 +2259,7 @@ 04546C4020329A36007EFE15 /* AboutGMEViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AboutGMEViewController.swift; sourceTree = ""; }; 045976B121A3D8F30001E92A /* AutoRefundsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AutoRefundsViewController.swift; sourceTree = ""; }; 045976B321A3D90A0001E92A /* autoRefund.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = autoRefund.storyboard; sourceTree = ""; }; - 0470301121CA4BD000B6C9C3 /* Account.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Account.swift; sourceTree = ""; }; + 0470301121CA4BD000B6C9C3 /* AccountEx.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountEx.swift; sourceTree = ""; }; 0496B8451FE7DFA10044810E /* RestApiManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RestApiManager.swift; sourceTree = ""; }; 0496B84C1FE7DFCC0044810E /* UIViewController+Ext.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIViewController+Ext.swift"; sourceTree = ""; }; 0496B84D1FE7DFCD0044810E /* String+Ext.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Ext.swift"; sourceTree = ""; }; @@ -2548,9 +2547,8 @@ 73B4C8B922A5F2430078D495 /* CouponCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CouponCell.swift; sourceTree = ""; }; 73B4C8BA22A5F2430078D495 /* SelectCouponViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SelectCouponViewController.swift; sourceTree = ""; }; 73B4C8BB22A5F2430078D495 /* SelectCouponViewInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SelectCouponViewInterface.swift; sourceTree = ""; }; - 73B6D6812306361400A0CB6E /* ResponseContainerWithArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResponseContainerWithArray.swift; sourceTree = ""; }; 73B6D68323063DFD00A0CB6E /* ResponseContainer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResponseContainer.swift; sourceTree = ""; }; - 73B6D68523063F7D00A0CB6E /* RecipientModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecipientModel.swift; sourceTree = ""; }; + 73B6D68523063F7D00A0CB6E /* Recipient.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Recipient.swift; sourceTree = ""; }; 73B6D6872306402200A0CB6E /* PaymentMethodModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentMethodModel.swift; sourceTree = ""; }; 73B6D6892306406D00A0CB6E /* AgentModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AgentModel.swift; sourceTree = ""; }; 73B6D68B230640D400A0CB6E /* BranchModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BranchModel.swift; sourceTree = ""; }; @@ -2661,7 +2659,7 @@ D90A9D62213696E400A96E45 /* BankPickerCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BankPickerCell.swift; sourceTree = ""; }; D90A9D63213696E400A96E45 /* BankPickerViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BankPickerViewController.swift; sourceTree = ""; }; D90A9D64213696E400A96E45 /* BankPicker.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = BankPicker.storyboard; sourceTree = ""; }; - D90D55B021326DA800EEEE04 /* Reciepient.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Reciepient.swift; sourceTree = ""; }; + D90D55B021326DA800EEEE04 /* ReciepientEx.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReciepientEx.swift; sourceTree = ""; }; D90D55B821327CD600EEEE04 /* AddReciepientModuleInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddReciepientModuleInterface.swift; sourceTree = ""; }; D90D55BB21327CD600EEEE04 /* AddReciepientServiceType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddReciepientServiceType.swift; sourceTree = ""; }; D90D55BC21327CD600EEEE04 /* AddReciepientService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddReciepientService.swift; sourceTree = ""; }; @@ -6326,7 +6324,7 @@ isa = PBXGroup; children = ( 73B6D68323063DFD00A0CB6E /* ResponseContainer.swift */, - 0470301121CA4BD000B6C9C3 /* Account.swift */, + 0470301121CA4BD000B6C9C3 /* AccountEx.swift */, 04DC27EB21A51E29003714F5 /* AutoRefund.swift */, D962231D212C126500B7A115 /* ExchangeModel.swift */, D9E57944212E938D00D47AC0 /* ExchangeRateDetailModel.swift */, @@ -6334,7 +6332,7 @@ D94173B2214B40ED00D04BE5 /* KycModel.swift */, D9535CCB2150C14700EDFCD2 /* KYCResponseModel.swift */, 73168A1E22F3CC4B00878038 /* NativeCountry.swift */, - D90D55B021326DA800EEEE04 /* Reciepient.swift */, + D90D55B021326DA800EEEE04 /* ReciepientEx.swift */, D97D58D62240D34900EFB27E /* ResendDetail.swift */, D9D2242A22407EBA00C7313D /* ResendListModel.swift */, D92C24A621477EA600F6876F /* ResponseMessage.swift */, @@ -6347,7 +6345,6 @@ D97785AB215DD23400754079 /* TransactionModel.swift */, D9768C87213BAE92009E01BC /* User.swift */, D96BD1202164828D00DFE7D8 /* WalletStatement.swift */, - 73B6D6812306361400A0CB6E /* ResponseContainerWithArray.swift */, ); path = Response; sourceTree = ""; @@ -6554,7 +6551,7 @@ 73B6D68F230642CA00A0CB6E /* Recipient */ = { isa = PBXGroup; children = ( - 73B6D68523063F7D00A0CB6E /* RecipientModel.swift */, + 73B6D68523063F7D00A0CB6E /* Recipient.swift */, 73B6D6872306402200A0CB6E /* PaymentMethodModel.swift */, 73B6D6892306406D00A0CB6E /* AgentModel.swift */, 73B6D68B230640D400A0CB6E /* BranchModel.swift */, @@ -14281,9 +14278,8 @@ D9DC108121639078008F3C51 /* MessageComposeViewInterface.swift in Sources */, 73168A1F22F3CC4C00878038 /* NativeCountry.swift in Sources */, 73B4C8BE22A5F2440078D495 /* SelectCouponService.swift in Sources */, - 73B6D6822306361400A0CB6E /* ResponseContainerWithArray.swift in Sources */, 739A7781228BB2B40018A1A9 /* DetailOrderModuleInterface.swift in Sources */, - 73B6D68623063F7D00A0CB6E /* RecipientModel.swift in Sources */, + 73B6D68623063F7D00A0CB6E /* Recipient.swift in Sources */, FF6E7D9621BF951D00A003B9 /* AppUpdateViewInterface.swift in Sources */, 73210DB522FC01C200715D6C /* RecipientCell.swift in Sources */, 7301978C22535135001954AB /* KycService.swift in Sources */, @@ -14622,7 +14618,7 @@ D945F11F213E1D5100A24824 /* SendMoneyReceiptServiceType.swift in Sources */, D96BD117216479E200DFE7D8 /* WalletStatementService.swift in Sources */, D922D9262134DCF000D43053 /* EditReciepientViewInterface.swift in Sources */, - D90D55B121326DA800EEEE04 /* Reciepient.swift in Sources */, + D90D55B121326DA800EEEE04 /* ReciepientEx.swift in Sources */, D9790625223F58420025BD5B /* ResendViewController.swift in Sources */, 73FE883A228A4A8C00A5EB56 /* OrderHistoryInteractorIO.swift in Sources */, D950BED821549242008367A1 /* HomeWireframe.swift in Sources */, @@ -14673,7 +14669,7 @@ 73FE883E228A4A8C00A5EB56 /* OrderHistoryWireframeInput.swift in Sources */, D950BED521549242008367A1 /* HomeInteractor.swift in Sources */, D96BD11F216479E200DFE7D8 /* WalletStatementViewController.swift in Sources */, - 0470301221CA4BD000B6C9C3 /* Account.swift in Sources */, + 0470301221CA4BD000B6C9C3 /* AccountEx.swift in Sources */, D94173B3214B40ED00D04BE5 /* KycModel.swift in Sources */, 73BCCDD3228993040057B161 /* RewardGroupInteractorIO.swift in Sources */, D95B7047213FB5F10053CC3D /* WebLinksViewController.swift in Sources */, diff --git a/GME Remit/Models/Request/SendMoneyAccountValidationRequestModel.swift b/GME Remit/Models/Request/SendMoneyAccountValidationRequestModel.swift index 3f76cb23..0c02cbfa 100644 --- a/GME Remit/Models/Request/SendMoneyAccountValidationRequestModel.swift +++ b/GME Remit/Models/Request/SendMoneyAccountValidationRequestModel.swift @@ -15,7 +15,8 @@ class SendMoneyAccountValidationRequestModel { var customerFirstName: String? var customerLastName: String? var reciverFirstName: String? - var reciverLastName: String? + var reciverLastName1: String? + var reciverLastName2: String? var country: String? var accountType: String? var issuerCode: String? diff --git a/GME Remit/Models/Response/Account.swift b/GME Remit/Models/Response/AccountEx.swift similarity index 99% rename from GME Remit/Models/Response/Account.swift rename to GME Remit/Models/Response/AccountEx.swift index 8dc9775b..cb085078 100644 --- a/GME Remit/Models/Response/Account.swift +++ b/GME Remit/Models/Response/AccountEx.swift @@ -27,8 +27,7 @@ class KftcAccountContainer: Mappable { } } -class Account: Mappable { - +class AccountEx: Mappable { var errorCode: String? var accessToken: String? var tokenType: String? diff --git a/GME Remit/Models/Response/Reciepient.swift b/GME Remit/Models/Response/ReciepientEx.swift similarity index 97% rename from GME Remit/Models/Response/Reciepient.swift rename to GME Remit/Models/Response/ReciepientEx.swift index 9f74d288..0ce7762c 100644 --- a/GME Remit/Models/Response/Reciepient.swift +++ b/GME Remit/Models/Response/ReciepientEx.swift @@ -36,7 +36,8 @@ class ReceipientViewModel { var id: String? var firstName: String? var middleName: String? - var lastName: String? + var lastName1: String? + var lastName2: String? var countryId: String? var stateId: String? var districtId: String? @@ -51,7 +52,7 @@ class ReceipientViewModel { var idType: String? } -struct Recipient: Codable, Mappable { +struct RecipientEx: Codable, Mappable { var firstName: String? var middleName: String? var lastName: String? @@ -116,7 +117,7 @@ struct Recipient: Codable, Mappable { init() {} } -extension Recipient: Serializer { +extension RecipientEx: Serializer { func serialize() -> [String : String] { var dict: [String: String] = [:] dict[RecipientModelFields.firstName] = self.firstName ?? "" diff --git a/GME Remit/Models/Response/ResponseContainerWithArray.swift b/GME Remit/Models/Response/ResponseContainerWithArray.swift deleted file mode 100644 index d11c3651..00000000 --- a/GME Remit/Models/Response/ResponseContainerWithArray.swift +++ /dev/null @@ -1,29 +0,0 @@ -// -// ResponseContainer.swift -// GME Remit -// -// Created by InKwon James Kim on 16/08/2019. -// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. -// - -import ObjectMapper - -struct ResponseContainerWithArray: Mappable { - var errorCode: String? - var message: String? - var id: String? - var extra: String? - var extra2: String? - var data: [Mappable]? - - init?(map: Map) {} - - mutating func mapping(map: Map) { - errorCode <- map["ErrorCode"] - message <- map["Msg"] - id <- map["Id"] - extra <- map["Extra"] - extra2 <- map["Extra2"] - data <- map["Data"] - } -} diff --git a/GME Remit/Modules/AutoDebitModules/AutoDebit/Application Logic/Service/AutoDebitService.swift b/GME Remit/Modules/AutoDebitModules/AutoDebit/Application Logic/Service/AutoDebitService.swift index 981785f3..cb6cc9a8 100644 --- a/GME Remit/Modules/AutoDebitModules/AutoDebit/Application Logic/Service/AutoDebitService.swift +++ b/GME Remit/Modules/AutoDebitModules/AutoDebit/Application Logic/Service/AutoDebitService.swift @@ -48,7 +48,7 @@ class AutoDebitService: AutoDebitServiceType { success: @escaping () -> Void, failure: @escaping (Error) -> Void ) { - APIRouter.deleteAutoDebitAccount(username: username, kftcLogID: account.kftcLogId ?? "") + APIRouter.deleteAutoDebitAccount(username: username, kftcLogID: account.kftcAccountId ?? "") .request( success: { (response: KftcAccountContainer) in if (response.errorCode ?? "") == "1" { diff --git a/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/Presenter/AddReciepientPresenter.swift b/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/Presenter/AddReciepientPresenter.swift index b28227e8..55f79bc8 100644 --- a/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/Presenter/AddReciepientPresenter.swift +++ b/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/Presenter/AddReciepientPresenter.swift @@ -80,15 +80,16 @@ class AddReciepientPresenter { var reciepient = Recipient() reciepient.firstName = model.firstName reciepient.middleName = model.middleName - reciepient.lastName = model.lastName - reciepient.countryId = model.countryId - reciepient.stateId = model.stateId - reciepient.districtId = model.districtId + reciepient.lastName1 = model.lastName1 + reciepient.lastName2 = model.lastName2 + reciepient.countryID = model.countryId + reciepient.stateID = model.stateId + reciepient.districtID = model.districtId reciepient.city = model.city reciepient.address = model.address - reciepient.relationId = model.relationId - reciepient.reasonId = model.reasonId - reciepient.mobileNumber = model.mobileNumber + reciepient.relationshipID = model.relationId + reciepient.purposeOfRemitID = model.reasonId + reciepient.mobile = model.mobileNumber reciepient.email = model.email reciepient.idType = model.idType reciepient.idNumber = model.idNumber diff --git a/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/View/AddReciepientViewController.swift b/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/View/AddReciepientViewController.swift index c5f99ca1..39986d29 100644 --- a/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/View/AddReciepientViewController.swift +++ b/GME Remit/Modules/RecipientModules/AddReciepient/User Interface/View/AddReciepientViewController.swift @@ -277,8 +277,9 @@ class AddReciepientViewController: UIViewController { self.reciepient?.firstName = firstNameTextField.text case middleNameTextField: self.reciepient?.middleName = middleNameTextField.text - case lastNameTextField: - self.reciepient?.lastName = lastNameTextField.text + case lastNameTextField: () + //FIXME +// self.reciepient?.lastName1 = lastNameTextField.text case cityTextField: self.reciepient?.city = cityTextField.text case addressTextField: diff --git a/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditReciepientPresenter.swift b/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditReciepientPresenter.swift index bce48f41..b945bff3 100644 --- a/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditReciepientPresenter.swift +++ b/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditReciepientPresenter.swift @@ -79,23 +79,24 @@ class EditReciepientPresenter { func convert(model: EditRecipientRecipientViewModel) { var reciepient = Recipient() - reciepient.recipientId = model.id + reciepient.id = model.id reciepient.firstName = model.firstName reciepient.middleName = model.middleName - reciepient.lastName = model.lastName - reciepient.countryId = model.countryId + reciepient.lastName1 = model.lastName1 + reciepient.lastName2 = model.lastName2 + reciepient.countryID = model.countryId reciepient.country = model.country - reciepient.stateId = model.stateId + reciepient.stateID = model.stateId reciepient.state = model.state reciepient.district = model.district - reciepient.districtId = model.districtId + reciepient.districtID = model.districtId reciepient.city = model.city reciepient.address = model.address - reciepient.relation = model.relation - reciepient.relationId = model.relationId - reciepient.reason = model.reason - reciepient.reasonId = model.reasonId - reciepient.mobileNumber = model.mobileNumber + reciepient.relationship = model.relation + reciepient.relationshipID = model.relationId + reciepient.purposeOfRemit = model.reason + reciepient.purposeOfRemitID = model.reasonId + reciepient.mobile = model.mobileNumber reciepient.email = model.email reciepient.idType = model.idType reciepient.idNumber = model.idNumber @@ -104,24 +105,25 @@ class EditReciepientPresenter { func convert(model: Recipient) { let reciepient = EditRecipientRecipientViewModel() - reciepient.id = model.recipientId + reciepient.id = model.id reciepient.firstName = model.firstName reciepient.middleName = model.middleName - reciepient.lastName = model.lastName + reciepient.lastName1 = model.lastName1 + reciepient.lastName2 = model.lastName2 reciepient.country = model.country - reciepient.countryId = model.countryId + reciepient.countryId = model.countryID reciepient.state = model.state - reciepient.stateId = model.stateId + reciepient.stateId = model.stateID reciepient.city = model.city reciepient.address = model.address - reciepient.relation = model.relation - reciepient.relationId = model.relationId - reciepient.reason = model.reason - reciepient.reasonId = model.reasonId - reciepient.mobileNumber = model.mobileNumber + reciepient.relation = model.relationship + reciepient.relationId = model.relationshipID + reciepient.reason = model.purposeOfRemit + reciepient.reasonId = model.purposeOfRemitID + reciepient.mobileNumber = model.mobile reciepient.email = model.email reciepient.district = model.district - reciepient.districtId = model.districtId + reciepient.districtId = model.districtID reciepient.idType = model.idType reciepient.idNumber = model.idNumber diff --git a/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditRecipientRecipientViewModel.swift b/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditRecipientRecipientViewModel.swift index ecd8364d..76b2adbe 100644 --- a/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditRecipientRecipientViewModel.swift +++ b/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/Presenter/EditRecipientRecipientViewModel.swift @@ -12,7 +12,8 @@ class EditRecipientRecipientViewModel { var id: String? var firstName: String? var middleName: String? - var lastName: String? + var lastName1: String? + var lastName2: String? var country: String? var state: String? var stateId: String? diff --git a/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/View/EditReciepientViewController.swift b/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/View/EditReciepientViewController.swift index ca07efad..c3cda0f5 100644 --- a/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/View/EditReciepientViewController.swift +++ b/GME Remit/Modules/RecipientModules/EditReciepient/User Interface/View/EditReciepientViewController.swift @@ -265,8 +265,9 @@ class EditReciepientViewController: UIViewController { self.reciepient?.firstName = firstNameTextField.text! case middleNameTextField: self.reciepient?.middleName = middleNameTextField.text! - case lastNameTextField: - self.reciepient?.lastName = lastNameTextField.text! + case lastNameTextField: () + //FIXME +// self.reciepient?.lastName = lastNameTextField.text! case cityTextField: self.reciepient?.city = cityTextField.text! case addressTextField: @@ -285,7 +286,8 @@ class EditReciepientViewController: UIViewController { private func populateInformations() { self.firstNameTextField.text = self.reciepient?.firstName self.middleNameTextField.text = self.reciepient?.middleName - self.lastNameTextField.text = self.reciepient?.lastName + //FIXME +// self.lastNameTextField.text = self.reciepient?.lastName let relation = self.relations?.filter({ $0.title == self.reciepient?.relation diff --git a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Interactor/RecipientsInteractor.swift b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Interactor/RecipientsInteractor.swift index b6321258..4b0f64e4 100644 --- a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Interactor/RecipientsInteractor.swift +++ b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Interactor/RecipientsInteractor.swift @@ -27,18 +27,26 @@ class RecipientsInteractor { extension RecipientsInteractor: RecipientsInteractorInput { func fetchRecipients() { - let myUsername = GMEDB.shared.user.string(.userId) ?? "" - - service.fetchReciepientList( - username: myUsername, - success: { (recipients) in - self.output?.setRecipients(using: recipients?.reciepients ?? []) - self.output?.setAccounts(using: recipients?.accounts ?? []) + service.fetchRecipients( + success: { + self.output?.setRecipients(using: $0.recipients ?? []) + self.output?.setAccounts(using: $0.accounts ?? []) }, - failure: { - self.output?.setError(with: $0) - } + failure: { self.output?.setError(with:$0) } ) + +// let myUsername = GMEDB.shared.user.string(.userId) ?? "" + +// service.fetchReciepientList( +// username: myUsername, +// success: { (recipients) in +// self.output?.setRecipients(using: recipients?.reciepients ?? []) +// self.output?.setAccounts(using: recipients?.accounts ?? []) +// }, +// failure: { +// self.output?.setError(with: $0) +// } +// ) } func deleteRecipient(who recipient: Recipient) { diff --git a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Account/AccountModel.swift b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Account/AccountModel.swift index 092a50b5..14610ba2 100644 --- a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Account/AccountModel.swift +++ b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Account/AccountModel.swift @@ -8,7 +8,7 @@ import ObjectMapper -struct AccountModel: Mappable { +struct Account: Mappable { var kftcAccountId: String? var accessToken: String? var tokenType: String? diff --git a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/FetchRecipientsModel.swift b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/FetchRecipientsModel.swift index 63400915..80a8bfe8 100644 --- a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/FetchRecipientsModel.swift +++ b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/FetchRecipientsModel.swift @@ -9,12 +9,10 @@ import ObjectMapper struct FetchRecipientsModel: Mappable { - var recipients: [RecipientModel]? - var accounts: [AccountModel]? + var recipients: [Recipient]? + var accounts: [Account]? - init?(map: Map) { - print("data set") - } + init?(map: Map) {} mutating func mapping(map: Map) { recipients <- map["Receivers"] diff --git a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/Recipient.swift b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/Recipient.swift new file mode 100644 index 00000000..34c63115 --- /dev/null +++ b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/Recipient.swift @@ -0,0 +1,132 @@ +// +// RecipientModel.swift +// GME Remit +// +// Created by InKwon James Kim on 16/08/2019. +// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. +// + +import ObjectMapper + +struct Recipient: Mappable { + var firstName: String? + var middleName: String? + var lastName1: String? + var lastName2: String? + var localFirstName: String? + var localMiddleName: String? + var localLastName1: String? + var localLastName2: String? + var id: String? + var name: String? + var localizedName: String? + var paymentMethod: PaymentMethodModel? + var agent: AgentModel? + var receiverID: String? + var membershipID: String? + var country: String? + var countryCode: String? + var countryID: String? + var address: String? + var state: String? + var stateID: String? + var zipCode: String? + var city: String? + var email: String? + var homePhone: String? + var workPhone: String? + var mobile: String? + var relationship: String? + var relationshipID: String? + var district: String? + var districtID: String? + var purposeOfRemit: String? + var purposeOfRemitID: String? + var fullName: String? + var idType: String? + var idNumber: String? + + init?(map: Map) {} + + init() {} + + mutating func mapping(map: Map) { + firstName <- map["firstName"] + middleName <- map["middleName"] + lastName1 <- map["lastName1"] + lastName2 <- map["lastName2"] + localFirstName <- map["localFirstName"] + localMiddleName <- map["localMiddleName"] + localLastName1 <- map["localLastName1"] + localLastName2 <- map["localLastName2"] + id <- map["id"] + name <- map["name"] + localizedName <- map["localizedName"] + paymentMethod <- map["paymentMethod"] + agent <- map["agent"] + receiverID <- map["receiverId"] + membershipID <- map["membershipId"] + country <- map["country"] + address <- map["address"] + state <- map["state"] + zipCode <- map["zipCode"] + city <- map["city"] + email <- map["email"] + homePhone <- map["homePhone"] + workPhone <- map["workPhone"] + mobile <- map["mobile"] + relationship <- map["relationship"] + district <- map["district"] + purposeOfRemit <- map["purposeOfRemit"] + fullName <- map["fullName"] + idType <- map["idType"] + idNumber <- map["idNumber"] + stateID <- map["stateId"] + countryCode <- map["countryCode"] + countryID <- map["countryId"] + relationshipID <- map["relationshipId"] + districtID <- map["districtId"] + purposeOfRemitID <- map["purposeOfRemitId"] + } + + func serialize() -> [String : String] { + return [ + "firstName": firstName ?? "", + "middleName": middleName ?? "", + "lastName1": lastName1 ?? "", + "lastName2": lastName2 ?? "", + "localFirstName": localFirstName ?? "", + "localMiddleName": localMiddleName ?? "", + "localLastName1": localLastName1 ?? "", + "localLastName2": localLastName2 ?? "", + "id": id ?? "", + "name": name ?? "", + "localizedName": localizedName ?? "", +// "paymentMethod": paymentMethod ?? "", +// "agent": agent ?? "", + "receiverId": receiverID ?? "", + "membershipId": membershipID ?? "", + "country": country ?? "", + "address": address ?? "", + "state": state ?? "", + "zipCode": zipCode ?? "", + "city": city ?? "", + "email": email ?? "", + "homePhone": homePhone ?? "", + "workPhone": workPhone ?? "", + "mobile": mobile ?? "", + "relationship": relationship ?? "", + "district": district ?? "", + "purposeOfRemit": purposeOfRemit ?? "", + "fullName": fullName ?? "", + "idType": idType ?? "", + "idNumber": idNumber ?? "", + "stateId": stateID ?? "", + "countryCode": countryCode ?? "", + "countryId": countryID ?? "", + "relationshipId": relationshipID ?? "", + "districtId": districtID ?? "", + "purposeOfRemitId": purposeOfRemitID ?? "", + ] + } +} diff --git a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/RecipientModel.swift b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/RecipientModel.swift deleted file mode 100644 index 90f9fd45..00000000 --- a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Model/Recipient/RecipientModel.swift +++ /dev/null @@ -1,27 +0,0 @@ -// -// RecipientModel.swift -// GME Remit -// -// Created by InKwon James Kim on 16/08/2019. -// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. -// - -import ObjectMapper - -struct RecipientModel: Mappable { - var id: String? - var name: String? - var localizedName: String? - var paymentMethod: PaymentMethodModel? - var agent: AgentModel? - - init?(map: Map) {} - - mutating func mapping(map: Map) { - id <- map["id"] - name <- map["name"] - localizedName <- map["localizedName"] - paymentMethod <- map["paymentMethod"] - agent <- map["agent"] - } -} diff --git a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Service/RecipientsService.swift b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Service/RecipientsService.swift index 7f67bd62..c23b30fb 100644 --- a/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Service/RecipientsService.swift +++ b/GME Remit/Modules/RecipientModules/Recipients/Application Logic/Service/RecipientsService.swift @@ -51,7 +51,7 @@ class RecipientsService: RecipientsServiceType { success: @escaping () -> Void, failure: @escaping (Error) -> Void ) { - let url = baseUrl + "/mobile/receiver/remove/" + username + "/?receiverId=\(reciepient.recipientId ?? "")" + let url = baseUrl + "/mobile/receiver/remove/" + username + "/?receiverId=\(reciepient.id ?? "")" auth.request( method: .post, diff --git a/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Cell/RecipientCell.swift b/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Cell/RecipientCell.swift index 8c665fc1..d27928d1 100644 --- a/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Cell/RecipientCell.swift +++ b/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Cell/RecipientCell.swift @@ -9,16 +9,23 @@ import UIKit class RecipientCell: UITableViewCell { - - @IBOutlet weak var labelInitial: UILabel! - @IBOutlet weak var labelRecipientName: UILabel! + + @IBOutlet private weak var countryFlagImageView: UIImageView! + @IBOutlet private weak var labelRecipientName: UILabel! + @IBOutlet private weak var paymentMethodNameLabel: UILabel! + @IBOutlet private weak var agentNameLabel: UILabel! + @IBOutlet private weak var branchNameLabel: UILabel! + @IBOutlet private weak var agentAccountLabel: UILabel! func setModel(with model: Recipient?) { - let name = model?.getFullName() - labelRecipientName.text = name - labelInitial.text = name?.prefix(1).uppercased() - labelInitial.layer.cornerRadius = labelInitial.frame.size.width/2 - labelInitial.backgroundColor = UIColor.init(hex: "#DE333C") + let country = CountryEnum(rawValue: model?.countryCode?.lowercased() ?? "") + + countryFlagImageView.image = country?.flag + labelRecipientName.text = model?.localizedName + paymentMethodNameLabel.text = model?.paymentMethod?.localizedName + agentNameLabel.text = model?.agent?.localizedName + branchNameLabel.text = model?.agent?.branch?.localizedName + agentAccountLabel.text = model?.agent?.accountNumber layer.borderColor = UIColor(red:0.91, green:0.93, blue:0.95, alpha:1.0).cgColor layer.borderWidth = 1 diff --git a/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Recipients.storyboard b/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Recipients.storyboard index 486fe2bf..9932d103 100644 --- a/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Recipients.storyboard +++ b/GME Remit/Modules/RecipientModules/Recipients/User Interface/View/Recipients.storyboard @@ -10,6 +10,9 @@ + + SanFranciscoDisplay-Medium + SanFranciscoDisplay-Regular @@ -34,7 +37,7 @@