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.

144 lines
4.7 KiB

  1. //
  2. // SendMoneyReceiptViewController.swift
  3. // GMERemittance
  4. //
  5. // Created by gme_2 on 04/09/2018.
  6. //Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved.
  7. //
  8. import UIKit
  9. class SendMoneyReceiptViewController: UIViewController {
  10. // MARK: IBOutlets
  11. @IBOutlet weak var fullnameLabel: UILabel!
  12. @IBOutlet weak var transactionDateLabel: UILabel!
  13. @IBOutlet weak var transactionNoLabel: UILabel!
  14. @IBOutlet weak var recieverNoLabel: UILabel!
  15. @IBOutlet weak var relationLabel: UILabel!
  16. @IBOutlet weak var addressLabel: UILabel!
  17. @IBOutlet weak var mobileNoLabel: UILabel!
  18. @IBOutlet weak var emailLabel: UILabel!
  19. @IBOutlet weak var agentBankLabel: UILabel!
  20. @IBOutlet weak var branchLabel: UILabel!
  21. @IBOutlet weak var accountNoLabel: UILabel!
  22. @IBOutlet weak var transferFeeLabel: UILabel!
  23. @IBOutlet weak var totalAmountLabel: UILabel!
  24. @IBOutlet weak var gmeControlNumberLabel: UILabel!
  25. @IBOutlet weak var totalAmountHeaderLabel: UILabel!
  26. // MARK: Properties
  27. var presenter: SendMoneyReceiptModuleInterface?
  28. var hudDelegate: HUDStatusDelegate?
  29. var reciept: SendMoneyReciept? {
  30. didSet {
  31. self.showRecipt()
  32. }
  33. }
  34. // MARK: VC's Life cycle
  35. override func viewDidLoad() {
  36. super.viewDidLoad()
  37. self.setup()
  38. self.presenter?.viewIsReady()
  39. }
  40. // MARK: IBActions
  41. @IBAction func done(_ sender: UIButton) {
  42. self.navigationController?.popToRootViewController(animated: true)
  43. }
  44. // MARK: Other Functions
  45. private func setup() {
  46. // all setup should be done here
  47. let button = UIBarButtonItem.init(title: nil, style: UIBarButtonItemStyle.plain, target: nil, action: nil)
  48. self.navigationItem.leftBarButtonItem = button
  49. }
  50. override func viewWillAppear(_ animated: Bool) {
  51. super.viewWillAppear(animated)
  52. self.navigationItem.title = "Receipt"
  53. }
  54. override func viewWillDisappear(_ animated: Bool) {
  55. super.viewWillAppear(animated)
  56. self.navigationItem.title = ""
  57. }
  58. private func createMockModel() -> SendMoneyReciept {
  59. let recipt = SendMoneyReciept()
  60. reciept?.payMode = "pay mode"
  61. reciept?.paymentMode = "payment Mode"
  62. reciept?.controNo = "1234903823783"
  63. reciept?.trnsDate = "02/34/7777"
  64. reciept?.trnId = "id transaction 23422"
  65. recipt.rFirstName = "shishir"
  66. recipt.rMiddleName = "and"
  67. reciept?.rLastName = "sapkota"
  68. reciept?.rAddress = "Mahalaxmisthan"
  69. recipt.rCountryName = "Nepal"
  70. recipt.rContactNo = "9849192759"
  71. recipt.rEmail = "sis.ccr@gmail.com"
  72. recipt.relationWithSender = "Brother"
  73. recipt.rState = "12"
  74. recipt.payoutCountry = "Korea"
  75. recipt.collAmount = "123456"
  76. recipt.exRate = "0.009876776"
  77. recipt.serviceCharge = "5000"
  78. recipt.payoutAmount = "280000"
  79. recipt.paymentMode = "Cash deleverys"
  80. return recipt
  81. }
  82. private func showRecipt() {
  83. let firstName = self.reciept?.rFirstName ?? ""
  84. let lastName = self.reciept?.rLastName ?? ""
  85. let middleName = self.reciept?.rMiddleName ?? ""
  86. let fullName = firstName + " " + middleName + " " + lastName
  87. self.fullnameLabel.text = fullName
  88. self.transactionNoLabel.text = self.reciept?.transactionId
  89. self.recieverNoLabel.text = "reciever no label"
  90. self.relationLabel.text = self.reciept?.relationWithSender
  91. self.addressLabel.text = self.reciept?.rAddress
  92. self.mobileNoLabel.text = self.reciept?.rContactNo
  93. self.emailLabel.text = self.reciept?.rEmail
  94. self.agentBankLabel.text = self.reciept?.agentBank
  95. self.branchLabel.text = self.reciept?.payoutBankBranch
  96. self.accountNoLabel.text = self.reciept?.accountNo
  97. self.transferFeeLabel.text = self.reciept?.serviceCharge
  98. self.totalAmountLabel.text = self.reciept?.recieverAmount
  99. let controlNo = self.reciept?.controNo ?? ""
  100. self.gmeControlNumberLabel.text = "GME Control No: " + controlNo
  101. let totalAmount = self.reciept?.payoutAmount ?? ""
  102. self.totalAmountHeaderLabel.text = "Total Payout Amount: \(totalAmount)"
  103. }
  104. }
  105. // MARK: SendMoneyReceiptViewInterface
  106. extension SendMoneyReceiptViewController: SendMoneyReceiptViewInterface {
  107. func showLoading() {
  108. self.hudDelegate?.showLoading()
  109. }
  110. func hideLoading() {
  111. self.hudDelegate?.hideLoading()
  112. }
  113. func show(error: String) {
  114. // let model = self.createMockModel()
  115. // self.reciept = model
  116. self.alert(message: error)
  117. }
  118. func show(model: SendMoneyReciept) {
  119. self.reciept = model
  120. }
  121. }