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.6 KiB
102 lines
2.6 KiB
//
|
|
// OrderCell.swift
|
|
// GME Remit
|
|
//
|
|
// Created by InKwon Devik Kim on 14/05/2019.
|
|
// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
class OrderCell: UITableViewCell {
|
|
|
|
@IBOutlet weak var orderDateLabel: UILabel!
|
|
@IBOutlet weak var orderStatusLabel: UILabel!
|
|
@IBOutlet weak var branchNameLabel: UILabel!
|
|
|
|
@IBOutlet weak var orderedProductNameLabel: UILabel!
|
|
@IBOutlet weak var orderedProductPointLabel: UILabel!
|
|
|
|
@IBOutlet weak var orderIDLabel: UILabel!
|
|
|
|
@IBOutlet weak var cellContentView: UIView!
|
|
|
|
enum Status: String{
|
|
case orderCompleted = "1"
|
|
case delivered = "2"
|
|
case received = "3"
|
|
case orderCanceled = "9"
|
|
|
|
var color: UIColor {
|
|
switch self {
|
|
case .orderCanceled:
|
|
return .themeRed
|
|
case .delivered:
|
|
return .init(hex: "#08a384")
|
|
case .received:
|
|
return .themeBlue
|
|
case .orderCompleted:
|
|
return .init(hex: "#08a384")
|
|
}
|
|
}
|
|
|
|
var shortMessage: String {
|
|
switch self {
|
|
case .orderCanceled:
|
|
return "canceled_text".localized()
|
|
case .delivered:
|
|
return "DELIVERED".localized()
|
|
case .received:
|
|
return "received_text".localized()
|
|
case .orderCompleted:
|
|
return "ordered_text".localized()
|
|
}
|
|
}
|
|
|
|
var message: String {
|
|
switch self {
|
|
case .orderCanceled:
|
|
return "your_order_canceled_text".localized()
|
|
case .delivered:
|
|
return "Delivered_text".localized()
|
|
case .received:
|
|
return "you_received_reward_text".localized()
|
|
case .orderCompleted:
|
|
return "your_order_completed_text".localized()
|
|
}
|
|
}
|
|
}
|
|
|
|
override func awakeFromNib() {
|
|
super.awakeFromNib()
|
|
// Initialization code
|
|
}
|
|
|
|
override func setSelected(_ selected: Bool, animated: Bool) {
|
|
super.setSelected(selected, animated: animated)
|
|
|
|
// Configure the view for the selected state
|
|
}
|
|
|
|
func setModel(with model: Order?) {
|
|
guard
|
|
let model = model,
|
|
let statusCode = model.orderStatus,
|
|
let status = Status(rawValue: statusCode)
|
|
else {return}
|
|
|
|
orderIDLabel.text = model.orderID
|
|
orderDateLabel.text = model.createdDate
|
|
orderStatusLabel.text = status.shortMessage
|
|
|
|
branchNameLabel.text = model.branchName
|
|
|
|
orderedProductNameLabel.text = model.productName
|
|
orderedProductPointLabel.text = model.usePoint?.likeCommaMoney()
|
|
|
|
orderStatusLabel.layer.cornerRadius = 5
|
|
orderStatusLabel.backgroundColor = status.color
|
|
cellContentView.layer.cornerRadius = 5
|
|
}
|
|
|
|
}
|