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.
141 lines
4.3 KiB
141 lines
4.3 KiB
//
|
|
// DetailOrderViewController.swift
|
|
// GME Remit
|
|
//
|
|
// Created by InKwon Devik Kim on 15/05/2019.
|
|
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
class DetailOrderViewController: UIViewController {
|
|
|
|
// MARK: Properties
|
|
|
|
var presenter: DetailOrderModuleInterface?
|
|
|
|
// MARK: Computed Properties
|
|
|
|
private var order: Order? {
|
|
didSet{
|
|
guard
|
|
let order = order,
|
|
let statusCode = order.orderStatus,
|
|
let status = OrderCell.Status(rawValue: statusCode)
|
|
else { return }
|
|
|
|
receiverNameLabel.text = order.recvName
|
|
mobileNumberLabel.text = order.recvPhoneNumber
|
|
pickupBranchLabel.text = order.branchName
|
|
|
|
productNameLabel.text = order.productName
|
|
productPointLabel.text = order.usePoint?.likeCommaMoney()
|
|
|
|
orderStatusLabel.text = status.message
|
|
orderDateLabel.text = order.createdDate
|
|
orderIDNumberLabel.text = order.orderID
|
|
orderTypeLabel.text = order.orderType == "9" ? "canceled_text".localized() : "pickup_from_branch_text".localized()
|
|
|
|
switch order.orderStatus {
|
|
case "9" :
|
|
orderStatusDateLabel.text = order.modifiedDate
|
|
orderStatusDateTitleLabel.text = "order_canceled_date_text".localized()
|
|
default :
|
|
orderStatusDateLabel.text = order.recvDate
|
|
orderStatusDateTitleLabel.text = "order_receive_date_text".localized()
|
|
}
|
|
}
|
|
}
|
|
|
|
// MARK: IBOutlets - value Label
|
|
@IBOutlet weak var orderStatusLabel: UILabel!
|
|
@IBOutlet weak var orderDetailContentView: UIView!
|
|
|
|
@IBOutlet weak var receiverNameLabel: UILabel!
|
|
@IBOutlet weak var pickupBranchLabel: UILabel!
|
|
@IBOutlet weak var mobileNumberLabel: UILabel!
|
|
|
|
@IBOutlet weak var productNameLabel: UILabel!
|
|
@IBOutlet weak var productPointLabel: UILabel!
|
|
|
|
@IBOutlet weak var orderDateLabel: UILabel!
|
|
@IBOutlet weak var orderStatusDateLabel: UILabel!
|
|
@IBOutlet weak var orderIDNumberLabel: UILabel!
|
|
@IBOutlet weak var orderTypeLabel: UILabel!
|
|
|
|
// MARK: IBOutlets - Title Label
|
|
@IBOutlet weak var receiverNameTitleLabel: UILabel!
|
|
@IBOutlet weak var pickupBranchTitleLabel: UILabel!
|
|
@IBOutlet weak var mobileNumberTitleLabel: UILabel!
|
|
|
|
@IBOutlet weak var productNameTitleLabel: UILabel!
|
|
@IBOutlet weak var productPointTitleLabel: UILabel!
|
|
|
|
@IBOutlet weak var orderDateTitleLabel: UILabel!
|
|
@IBOutlet weak var orderStatusDateTitleLabel: UILabel!
|
|
@IBOutlet weak var orderIDNumberTitleLabel: UILabel!
|
|
@IBOutlet weak var orderTypeTitleLabel: UILabel!
|
|
|
|
@IBOutlet weak var summaryView: UIView!
|
|
// MARK: VC's Life cycle
|
|
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
setup()
|
|
setMultiLanguage()
|
|
}
|
|
|
|
override func viewWillAppear(_ animated: Bool) {
|
|
super.viewWillAppear(animated)
|
|
|
|
title = "detail_order_title_text".localized()
|
|
}
|
|
|
|
override func viewWillDisappear(_ animated: Bool) {
|
|
super.viewWillDisappear(animated)
|
|
|
|
title = ""
|
|
}
|
|
|
|
// MARK: IBActions
|
|
|
|
}
|
|
|
|
// MARK: DetailOrderViewInterface
|
|
extension DetailOrderViewController: DetailOrderViewInterface {
|
|
func setOrder(_ order: Order?) {
|
|
self.order = order
|
|
}
|
|
}
|
|
|
|
// MARK: Other Functions
|
|
extension DetailOrderViewController {
|
|
private func setup() {
|
|
// all setup should be done here
|
|
presenter?.fetchOrder()
|
|
|
|
summaryView.layer.cornerRadius = 10
|
|
|
|
navigationController?.interactivePopGestureRecognizer?.delegate = self
|
|
navigationController?.interactivePopGestureRecognizer?.isEnabled = true
|
|
}
|
|
|
|
private func setMultiLanguage(){
|
|
receiverNameTitleLabel.text = "receiver_text".localized()
|
|
mobileNumberTitleLabel.text = "mobile_number_text".localized()
|
|
pickupBranchTitleLabel.text = "pickup_banch_text".localized()
|
|
productNameTitleLabel.text = "product_name_text".localized()
|
|
productPointTitleLabel.text = "product_point_text".localized()
|
|
orderIDNumberTitleLabel.text = "order_no_text".localized()
|
|
orderDateTitleLabel.text = "order_date_text".localized()
|
|
orderTypeTitleLabel.text = "order_type_text".localized()
|
|
|
|
}
|
|
}
|
|
|
|
// MARK: - UIGestureRecognizerDelegate
|
|
extension DetailOrderViewController: UIGestureRecognizerDelegate {
|
|
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldBeRequiredToFailBy otherGestureRecognizer: UIGestureRecognizer) -> Bool {
|
|
return true
|
|
}
|
|
}
|