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.
 
 
 
 

61 lines
1.9 KiB

//
// RewardItemCollectionViewCell.swift
// GME Remit
//
// Created by InKwon Devik Kim on 11/04/2019.
// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
class RewardItemCollectionViewCell: UICollectionViewCell {
@IBOutlet weak var itemImage: UIImageView!
@IBOutlet weak var itemNameLabel: UILabel!
@IBOutlet weak var itemPriceLabel: UILabel!
@IBOutlet weak var redeemButton: UIButton!
@IBOutlet weak var contentsView: UIView!
private var model: RewardProduct?
var delegate: RewardViewInterface?
func setModel(with model: RewardProduct?, delegate: RewardViewInterface?){
guard
let product = model,
let imageData = model?.imageData,
let data: Data = Data(base64Encoded: imageData) else {return}
self.itemImage.image = UIImage(data: data)
self.itemNameLabel.text = product.productName
self.itemPriceLabel.text = product.pointPrice
self.model = product
self.delegate = delegate
self.setUI()
}
private func setUI(){
self.contentsView.layer.cornerRadius = 10
self.setButton()
}
func setButton(){
self.redeemButton.rounded()
self.redeemButton.addTarget(self, action: #selector(redeemButtonTouch), for: .touchUpInside)
let totalPoint = UserDefaults.standard.integer(forKey: UserKeys.rewardPoint)
let isEnable = totalPoint > Int(self.model?.pointPrice ?? "") ?? 0
self.redeemButton.backgroundColor = isEnable ? AppConstants.themeRedColor : .lightGray
self.redeemButton.isEnabled = isEnable
}
@objc
func redeemButtonTouch() {
print("touched \(self.itemNameLabel.text ?? "") redeem button")
delegate?.goRedeemViewController(with: self.model)
}
}