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.
 
 
 
 

75 lines
2.1 KiB

//
// RechargeHistoryCell.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/11/04.
// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
class RechargeHistoryCell: UITableViewCell {
private enum Status: String {
case success = "0"
case failure = "1"
case waiting = "5"
var name: String {
switch self {
case .success:
return "success_uppercase_text".localized()
case .failure:
return "failure_uppercase_text".localized()
case .waiting:
return "waiting_uppercase_text".localized()
}
}
var color: UIColor {
switch self {
case .success:
return .themeBlue
case .failure:
return .themeRed
case .waiting:
return .themeGreen
}
}
}
@IBOutlet private weak var dateLabel: UILabel!
@IBOutlet private weak var cellPhoneLabel: UILabel!
@IBOutlet private weak var cellPhoneCarrierLabel: UILabel!
@IBOutlet private weak var rechargeTypeLabel: UILabel!
@IBOutlet private weak var rechargeAmountLabel: UILabel!
@IBOutlet private weak var rechargeStatusLabel: UILabel!
@IBOutlet private weak var controlNoLabel: UILabel!
@IBOutlet private weak var errorMessage: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
func setModel(with model: RechargeHistory) {
dateLabel.text = model.requestTime
cellPhoneLabel.text = model.phoneNo
cellPhoneCarrierLabel.text = model.chargeType
rechargeTypeLabel.text = model.cardName
rechargeAmountLabel.text = model.productPrice?.decimalToCurrency()
controlNoLabel.text = model.controlNo
errorMessage.text = model.errorMessage
guard let type = Status(rawValue: model.status ?? "0") else {
rechargeStatusLabel.text = Status.failure.name
rechargeStatusLabel.backgroundColor = Status.failure.color
rechargeStatusLabel.layer.cornerRadius = 5
return
}
rechargeStatusLabel.text = type.name
rechargeStatusLabel.backgroundColor = type.color
rechargeStatusLabel.layer.cornerRadius = 5
}
}