|
|
@ -72,8 +72,8 @@ class SetupRecipientViewModel: ViewModelType { |
|
|
|
private let selectedRecipientLinker = BehaviorSubject<Recipient?>(value: nil) |
|
|
|
private let selectedCountryServicesLinker = BehaviorSubject<CountryAndServiceModel?>(value: nil) |
|
|
|
private let selectedPaymentModeTypesLinker = BehaviorSubject<PaymentServiceType?>(value: nil) |
|
|
|
private let selectedBankLinker = BehaviorSubject<SendMoneyBank?>(value: nil) |
|
|
|
private let selectedBranchLinker = BehaviorSubject<SendMoneyBankBranch?>(value: nil) |
|
|
|
let selectedBankLinker = BehaviorSubject<SendMoneyBank?>(value: nil) |
|
|
|
let selectedBranchLinker = BehaviorSubject<SendMoneyBankBranch?>(value: nil) |
|
|
|
private let selectedIDTypeLinker = BehaviorSubject<ReceiverIdType?>(value: nil) |
|
|
|
private let selectedStateProvinceLinker = BehaviorSubject<Provience?>(value: nil) |
|
|
|
private let selectedDistrictLinker = BehaviorSubject<District?>(value: nil) |
|
|
@ -81,6 +81,8 @@ class SetupRecipientViewModel: ViewModelType { |
|
|
|
private let selectedReasonLinker = BehaviorSubject<TransferReason?>(value: nil) |
|
|
|
private let selectedNativeCountryLinker = BehaviorSubject<NativeCountryModel?>(value: nil) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Properties |
|
|
|
var presenter: SetupRecipientModuleInterface? |
|
|
|
var isFirst = true |
|
|
@ -310,6 +312,7 @@ extension SetupRecipientViewModel: SetupRecipientViewModelInterface { |
|
|
|
with: selectedCountry?.availableServices?.filter({$0.id == recipient.paymentMethod?.id}).first, |
|
|
|
type: .paymentMode |
|
|
|
) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
func setDynamicFields(with model: DynamicFieldModel, nativeCountires: [NativeCountryModel]) { |
|
|
@ -331,7 +334,7 @@ extension SetupRecipientViewModel: SetupRecipientViewModelInterface { |
|
|
|
|
|
|
|
guard let recipient = try? selectedRecipientLinker.value() else { return } |
|
|
|
|
|
|
|
let selectedBank = model.banks?.filter({$0.id == recipient.agent?.id}).first |
|
|
|
let selectedBank = model.banks?.filter({$0.name == recipient.paymentMethod?.agent?.name}).first |
|
|
|
// let selectedBranch = selectedBank?.branches?.filter({$0.id == recipient.agent?.branch?.id}).first |
|
|
|
let selectedIDType = model.idTypes?.filter({$0.id == recipient.idType}).first |
|
|
|
let selectedStateProvince = model.provinces?.filter({$0.id == recipient.stateID}).first |
|
|
@ -340,8 +343,12 @@ extension SetupRecipientViewModel: SetupRecipientViewModelInterface { |
|
|
|
// let selectedReason = model.transferReasons?.filter({$0.title == recipient.purposeOfRemitID}).first |
|
|
|
let selectedNativeCountry = nativeCountires.filter({$0.text == recipient.nativeCountry}).first |
|
|
|
|
|
|
|
let selbank = recipient.paymentMethod?.agent |
|
|
|
let toBranch = SendMoneyBankBranch(id: selbank?.branch?.id ?? "", name: selbank?.branch?.name ?? "", code: selbank?.branch?.code ?? "", localizedName: selbank?.branch?.localizedName ?? "") |
|
|
|
|
|
|
|
|
|
|
|
setSelectedData(with: selectedBank, type: .bank) |
|
|
|
setSelectedData(with: recipient.agent?.branch?.toSendMoneyBankBranch(), type: .branch) |
|
|
|
setSelectedData(with: toBranch, type: .branch) |
|
|
|
setSelectedData(with: selectedIDType, type: .idType) |
|
|
|
setSelectedData(with: selectedStateProvince, type: .stateProvince) |
|
|
|
setSelectedData(with: selectedDistrict, type: .district) |
|
|
@ -376,7 +383,7 @@ extension SetupRecipientViewModel: SetupRecipientViewModelInterface { |
|
|
|
|
|
|
|
selectedRecipientLinker.onNext(selectedRecipient) |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
case .paymentMode: |
|
|
|
guard let model = model as? PaymentServiceType else { return } |
|
|
|
selectedPaymentModeTypesLinker.onNext(model) |
|
|
|