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.
 
 
 
 

194 lines
3.8 KiB

//
// SendMoneyPaymentModeModel.swift
// GMERemittance
//
// Created by gme_2 on 28/08/2018.
// Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
import ObjectMapper
class SendMoneyPaymentModelContainer: Mappable {
var errorCode: String?
var message: String?
var id: String?
var data: SendMoneyPaymentModel?
required init?(map: Map) {
}
func mapping(map: Map) {
errorCode <- map["ErrorCode"]
message <- map["Msg"]
id <- map["Id"]
data <- map["Data"]
}
}
class SendMoneyPaymentModel: Mappable {
var name: String?
var id: String?
var code: String?
var payoutMode: [SendMoneyPayoutMode]?
required init?(map: Map) {
}
func mapping(map: Map) {
name <- map["Name"]
id <- map["Id"]
code <- map["Code"]
payoutMode <- map["PayoutMode"]
}
}
class SendMoneyPayoutMode: Mappable {
var id: String?
var mode: String?
var modeDescription: String?
var payoutPartner: String?
var payCurrency: [String]?
var bankRequired: String?
var bankList: [SendMoneyBank]?
var accountNumber: String?
required init?(map: Map) {
}
init() {}
func mapping(map: Map) {
id <- map["Id"]
mode <- map["Mode"]
modeDescription <- map["ModeDescription"]
bankList <- map["BankList"]
payoutPartner <- map["PayoutPartner"]
payCurrency <- map["PayCurrency"]
bankRequired <- map["Bankrequired"]
}
}
class SendMoneyBank: Mappable {
var id: String?
var name: String?
var branchRequired: String?
var branches: [SendMoneyBankBranch]?
var accountRequired: String?
var accountValidationRequired: String?
var payCurrency: [String]?
var code: String?
var payoutPartner: String?
var agentCurrency: [String]?
init() {
}
required init?(map: Map) {
}
func mapping(map: Map) {
id <- map["Id"]
name <- map["Name"]
branchRequired <- map["BranchRequired"]
accountRequired <- map["IsAccountRequired"]
accountValidationRequired <- map["IsAccountValidation"]
payCurrency <- map["PayCurrency"]
branches <- map["BranchList"]
code <- map["Code"]
payoutPartner <- map["PayoutPartner"]
agentCurrency <- map["AgentCurrency"]
}
func toAgentModel() -> AgentModel {
let useCurrency = agentCurrency?.count != 0 ? agentCurrency : payCurrency
return AgentModel(
id: id,
name: name,
localizedName: nil,
branch: nil,
accountNumber: nil,
currency: useCurrency
)
}
}
extension SendMoneyBank: TablePresenterProtocol {
var cellTitle: String? {
return name
}
var cellImage: UIImage? {
return nil
}
}
class SendMoneyBankBranch: Mappable {
var id: String?
var name: String?
var code: String?
var localizedName: String?
required init?(map: Map) {
}
init () {}
init(
id: String?,
name: String?,
code: String?,
localizedName: String?) {
self.id = id
self.name = name
self.code = code
self.localizedName = localizedName
}
func mapping(map: Map) {
id <- map["Id"]
name <- map["Name"]
code <- map["BranchCode"]
localizedName <- map["localizedName"]
}
func toBranchModel() -> BranchModel {
return BranchModel(id: id, name: name, code: code ,localizedName: localizedName)
}
}
extension SendMoneyBankBranch: TablePresenterProtocol {
var cellTitle: String? {
return name
}
var cellImage: UIImage? {
return nil
}
}
class SendMoneyBankBranchContainer: Mappable {
var errorCode: String?
var message: String?
var id: String?
var data: [SendMoneyBankBranch]?
required init?(map: Map) {
}
func mapping(map: Map) {
errorCode <- map["ErrorCode"]
message <- map["Msg"]
id <- map["Id"]
data <- map["Data"]
}
}