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.
102 lines
2.5 KiB
102 lines
2.5 KiB
//
|
|
// AutoDebitService.swift
|
|
// GME Remit
|
|
//
|
|
// Created by Mac on 12/19/18.
|
|
//Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
import Alamofire
|
|
|
|
class AutoDebitService: AutoDebitServiceType {
|
|
|
|
// MARK: Properties
|
|
|
|
// MARK: Initialization
|
|
|
|
// MARK: Data management
|
|
|
|
// MARK: Netword Service
|
|
func fetchAccountList(
|
|
username: String,
|
|
success: @escaping (KFTCModel?) -> Void,
|
|
failure: @escaping (Error) -> Void
|
|
) {
|
|
let url = baseUrl + "/kftc/GetKftcParameters/" + username
|
|
auth.request(
|
|
method: .get,
|
|
url: url,
|
|
params: nil,
|
|
encoding: URLEncoding.default,
|
|
success: { (response: KftcAccountContainer) in
|
|
if (response.errorCode ?? "") == "1" {
|
|
let error = NSError.init(domain: "Network", code: 0, userInfo: [NSLocalizedDescriptionKey : response.message ?? ""])
|
|
failure(error)
|
|
}else {
|
|
let model = response.data
|
|
success(model)
|
|
}
|
|
},
|
|
failure: { (error) in
|
|
failure(error)
|
|
}
|
|
)
|
|
}
|
|
|
|
func deleteAccount(
|
|
username: String,
|
|
account: Account,
|
|
success: @escaping () -> Void,
|
|
failure: @escaping (Error) -> Void
|
|
) {
|
|
let url = baseUrl + "/kftc/DeleteAccount/\(username)"
|
|
|
|
let params = ["KftcLogId" : account.kftcLogId ?? ""]
|
|
|
|
auth.request(
|
|
method: .post,
|
|
url: url,
|
|
params: params,
|
|
encoding: JSONEncoding.default,
|
|
success: { (response: KftcAccountContainer) in
|
|
if (response.errorCode ?? "") == "1" {
|
|
let error = NSError.init(domain: "Network", code: 0, userInfo: [NSLocalizedDescriptionKey : response.message ?? ""])
|
|
failure(error)
|
|
}else {
|
|
success()
|
|
}
|
|
},
|
|
failure:{ (error) in
|
|
failure(error)
|
|
}
|
|
)
|
|
}
|
|
|
|
func refreshTokenStep1(
|
|
username: String,
|
|
success: @escaping (KFTCModel?) -> Void,
|
|
failure: @escaping (Error) -> Void
|
|
) {
|
|
let url = baseUrl + "/kftc/CheckKFTCAccounts/" + username
|
|
|
|
auth.request(
|
|
method: .get,
|
|
url: url,
|
|
params: nil,
|
|
encoding: URLEncoding.default,
|
|
success: { (response: KftcAccountContainer) in
|
|
if (response.errorCode ?? "") == "1" {
|
|
let error = NSError.init(domain: "Network", code: 0, userInfo: [NSLocalizedDescriptionKey : response.message ?? ""])
|
|
failure(error)
|
|
}else {
|
|
let model = response.data
|
|
success(model)
|
|
}
|
|
},
|
|
failure: { (error) in
|
|
failure(error)
|
|
}
|
|
)
|
|
}
|
|
}
|