|
@ -7,6 +7,7 @@ |
|
|
// |
|
|
// |
|
|
|
|
|
|
|
|
import UIKit |
|
|
import UIKit |
|
|
|
|
|
import IQKeyboardManagerSwift |
|
|
|
|
|
|
|
|
class AutoDebitViewController: UIViewController { |
|
|
class AutoDebitViewController: UIViewController { |
|
|
|
|
|
|
|
@ -32,14 +33,15 @@ class AutoDebitViewController: UIViewController { |
|
|
@IBOutlet weak var refreshAccountButton: UIBarButtonItem! |
|
|
@IBOutlet weak var refreshAccountButton: UIBarButtonItem! |
|
|
|
|
|
|
|
|
// MARK:- properties |
|
|
// MARK:- properties |
|
|
var presenter: AutoDebitPresenter? |
|
|
|
|
|
|
|
|
var presenter: AutoDebitModuleInterface? |
|
|
|
|
|
|
|
|
var languages: [String] = ["--- Select Language ---"] |
|
|
var languages: [String] = ["--- Select Language ---"] |
|
|
lazy var languageTextField = UITextField(frame: .zero) |
|
|
lazy var languageTextField = UITextField(frame: .zero) |
|
|
|
|
|
|
|
|
var selectedLanguage: KftcLanguage? { |
|
|
var selectedLanguage: KftcLanguage? { |
|
|
didSet { |
|
|
didSet { |
|
|
print("\(selectedLanguage?.value ?? "undefined")") |
|
|
|
|
|
|
|
|
// print("\(selectedLanguage?.value ?? "undefined")") |
|
|
|
|
|
// presenter?.goRefreshToken(selectedLanguage: selectedLanguage) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -48,9 +50,11 @@ class AutoDebitViewController: UIViewController { |
|
|
accounts = kftcDetail?.model |
|
|
accounts = kftcDetail?.model |
|
|
tableView.reloadData() |
|
|
tableView.reloadData() |
|
|
|
|
|
|
|
|
let originalLanguages = kftcDetail?.languages?.map { $0.value ?? ""} |
|
|
|
|
|
languages.append(contentsOf: originalLanguages ?? []) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if languages.count < 2 { |
|
|
|
|
|
let originalLanguages = kftcDetail?.languages?.map { $0.value ?? ""} |
|
|
|
|
|
languages.append(contentsOf: originalLanguages ?? []) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -60,11 +64,16 @@ class AutoDebitViewController: UIViewController { |
|
|
let account = accounts, |
|
|
let account = accounts, |
|
|
!account.isEmpty |
|
|
!account.isEmpty |
|
|
else { |
|
|
else { |
|
|
|
|
|
refreshAccountButton.isEnabled = false |
|
|
|
|
|
refreshAccountButton.tintColor = .clear |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
tableView.isHidden = false |
|
|
tableView.isHidden = false |
|
|
labelSwipeInfo.isHidden = false |
|
|
labelSwipeInfo.isHidden = false |
|
|
|
|
|
|
|
|
|
|
|
refreshAccountButton.isEnabled = true |
|
|
|
|
|
refreshAccountButton.tintColor = .black |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -94,12 +103,13 @@ class AutoDebitViewController: UIViewController { |
|
|
super.viewWillDisappear(animated) |
|
|
super.viewWillDisappear(animated) |
|
|
navigationItem.title = "" |
|
|
navigationItem.title = "" |
|
|
|
|
|
|
|
|
|
|
|
view.endEditing(true) |
|
|
|
|
|
|
|
|
if #available(iOS 11.0, *) { |
|
|
if #available(iOS 11.0, *) { |
|
|
navigationController?.navigationBar.prefersLargeTitles = false |
|
|
navigationController?.navigationBar.prefersLargeTitles = false |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// MARK:- IBAction |
|
|
// MARK:- IBAction |
|
|
@IBAction func touchAddAccountButton(_ sender: UIBarButtonItem) { |
|
|
@IBAction func touchAddAccountButton(_ sender: UIBarButtonItem) { |
|
|
addNewAccount(UITapGestureRecognizer()) |
|
|
addNewAccount(UITapGestureRecognizer()) |
|
@ -107,15 +117,32 @@ class AutoDebitViewController: UIViewController { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@IBAction func touchRefreshAccountButton(_ sender: UIBarButtonItem) { |
|
|
@IBAction func touchRefreshAccountButton(_ sender: UIBarButtonItem) { |
|
|
let languagePickerView = UIPickerView() |
|
|
|
|
|
languagePickerView.delegate = self |
|
|
|
|
|
languagePickerView.dataSource = self |
|
|
|
|
|
|
|
|
|
|
|
languageTextField.inputView = languagePickerView |
|
|
|
|
|
languageTextField.placeholder = "Select Language for Refresh AutoDebit" |
|
|
|
|
|
languageTextField.becomeFirstResponder() |
|
|
|
|
|
|
|
|
alertWithOkCancel( |
|
|
|
|
|
type: .normal, |
|
|
|
|
|
message: "Do you try to renew token of registered Auto Debit Accounts?\n(It must be renewed every one year.)", |
|
|
|
|
|
title: "Token Renewal", |
|
|
|
|
|
okTitle: "yes_text".localized(), |
|
|
|
|
|
style: .alert, |
|
|
|
|
|
cancelTitle: "no_text".localized(), |
|
|
|
|
|
okAction: { |
|
|
|
|
|
let languagePickerView = UIPickerView() |
|
|
|
|
|
languagePickerView.delegate = self |
|
|
|
|
|
languagePickerView.dataSource = self |
|
|
|
|
|
languagePickerView.backgroundColor = .white |
|
|
|
|
|
|
|
|
|
|
|
self.languageTextField.inputView = languagePickerView |
|
|
|
|
|
self.languageTextField.placeholder = "Select Language for Refresh AutoDebit" |
|
|
|
|
|
self.languageTextField.becomeFirstResponder() |
|
|
|
|
|
|
|
|
|
|
|
self.languageTextField.keyboardToolbar.doneBarButton.setTarget(self, action: #selector(self.editingDidEnd(_:))) |
|
|
|
|
|
}, |
|
|
|
|
|
cancelAction: nil |
|
|
|
|
|
) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@objc func editingDidEnd(_ textField: UITextField) { |
|
|
|
|
|
presenter?.goRefreshToken(selectedLanguage: selectedLanguage) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@IBAction |
|
|
@IBAction |
|
|
private func addNewAccount(_ sender: UITapGestureRecognizer) { |
|
|
private func addNewAccount(_ sender: UITapGestureRecognizer) { |
|
@ -201,6 +228,10 @@ extension AutoDebitViewController: UITableViewDelegate { |
|
|
// MARK: - AutoDebitViewInterface |
|
|
// MARK: - AutoDebitViewInterface |
|
|
|
|
|
|
|
|
extension AutoDebitViewController: AutoDebitViewInterface { |
|
|
extension AutoDebitViewController: AutoDebitViewInterface { |
|
|
|
|
|
func didFailRefreshToken(with error: Error) { |
|
|
|
|
|
alert(message: error.localizedDescription) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
func didDeleteAccount() { |
|
|
func didDeleteAccount() { |
|
|
presenter?.fetchKFTCBankAccountList() |
|
|
presenter?.fetchKFTCBankAccountList() |
|
|
} |
|
|
} |
|
|