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

6 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
  1. //
  2. // SendMoneyPaymentModeModel.swift
  3. // GMERemittance
  4. //
  5. // Created by gme_2 on 28/08/2018.
  6. // Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved.
  7. //
  8. import Foundation
  9. import ObjectMapper
  10. class SendMoneyPaymentModelContainer: Mappable {
  11. var errorCode: String?
  12. var message: String?
  13. var id: String?
  14. var data: SendMoneyPaymentModel?
  15. required init?(map: Map) {
  16. }
  17. func mapping(map: Map) {
  18. errorCode <- map["ErrorCode"]
  19. message <- map["Msg"]
  20. id <- map["Id"]
  21. data <- map["Data"]
  22. }
  23. }
  24. class SendMoneyPaymentModel: Mappable {
  25. var name: String?
  26. var id: String?
  27. var code: String?
  28. var payoutMode: [SendMoneyPayoutMode]?
  29. required init?(map: Map) {
  30. }
  31. func mapping(map: Map) {
  32. name <- map["Name"]
  33. id <- map["Id"]
  34. code <- map["Code"]
  35. payoutMode <- map["PayoutMode"]
  36. }
  37. }
  38. class SendMoneyPayoutMode: Mappable {
  39. var id: String?
  40. var mode: String?
  41. var modeDescription: String?
  42. var payoutPartner: String?
  43. var payCurrency: [String]?
  44. var bankRequired: String?
  45. var bankList: [SendMoneyBank]?
  46. var accountNumber: String?
  47. required init?(map: Map) {
  48. }
  49. init() {}
  50. func mapping(map: Map) {
  51. id <- map["Id"]
  52. mode <- map["Mode"]
  53. modeDescription <- map["ModeDescription"]
  54. bankList <- map["BankList"]
  55. payoutPartner <- map["PayoutPartner"]
  56. payCurrency <- map["PayCurrency"]
  57. bankRequired <- map["Bankrequired"]
  58. }
  59. }
  60. class SendMoneyBank: Mappable {
  61. var id: String?
  62. var name: String?
  63. var branchRequired: String?
  64. var branches: [SendMoneyBankBranch]?
  65. var accountRequired: String?
  66. var accountValidationRequired: String?
  67. var payCurrency: [String]?
  68. var code: String?
  69. var payoutPartner: String?
  70. var agentCurrency: [String]?
  71. init() {
  72. }
  73. required init?(map: Map) {
  74. }
  75. func mapping(map: Map) {
  76. id <- map["Id"]
  77. name <- map["Name"]
  78. branchRequired <- map["BranchRequired"]
  79. accountRequired <- map["IsAccountRequired"]
  80. accountValidationRequired <- map["IsAccountValidation"]
  81. payCurrency <- map["PayCurrency"]
  82. branches <- map["BranchList"]
  83. code <- map["Code"]
  84. payoutPartner <- map["PayoutPartner"]
  85. agentCurrency <- map["AgentCurrency"]
  86. }
  87. func toAgentModel() -> AgentModel {
  88. let useCurrency = agentCurrency?.count != 0 ? agentCurrency : payCurrency
  89. return AgentModel(
  90. id: id,
  91. name: name,
  92. localizedName: nil,
  93. branch: nil,
  94. accountNumber: nil,
  95. currency: useCurrency
  96. )
  97. }
  98. }
  99. extension SendMoneyBank: TablePresenterProtocol {
  100. var cellTitle: String? {
  101. return name
  102. }
  103. var cellImage: UIImage? {
  104. return nil
  105. }
  106. }
  107. class SendMoneyBankBranch: Mappable {
  108. var id: String?
  109. var name: String?
  110. var code: String?
  111. var localizedName: String?
  112. required init?(map: Map) {
  113. }
  114. init () {}
  115. init(
  116. id: String?,
  117. name: String?,
  118. code: String?,
  119. localizedName: String?) {
  120. self.id = id
  121. self.name = name
  122. self.code = code
  123. self.localizedName = localizedName
  124. }
  125. func mapping(map: Map) {
  126. id <- map["Id"]
  127. name <- map["Name"]
  128. code <- map["BranchCode"]
  129. localizedName <- map["localizedName"]
  130. }
  131. func toBranchModel() -> BranchModel {
  132. return BranchModel(id: id, name: name, code: code ,localizedName: localizedName)
  133. }
  134. }
  135. extension SendMoneyBankBranch: TablePresenterProtocol {
  136. var cellTitle: String? {
  137. return name
  138. }
  139. var cellImage: UIImage? {
  140. return nil
  141. }
  142. }
  143. class SendMoneyBankBranchContainer: Mappable {
  144. var errorCode: String?
  145. var message: String?
  146. var id: String?
  147. var data: [SendMoneyBankBranch]?
  148. required init?(map: Map) {
  149. }
  150. func mapping(map: Map) {
  151. errorCode <- map["ErrorCode"]
  152. message <- map["Msg"]
  153. id <- map["Id"]
  154. data <- map["Data"]
  155. }
  156. }