// // SertifikatNewCell.swift // Sirani // // Created by Hendi on 19/06/23. // Copyright © 2023 PT. Mitra Sinerji Teknoindo. All rights reserved. // import UIKit import MaterialComponents.MaterialCards protocol SertifikatNewCellDelegate: NSObjectProtocol { func openSertifikatDetail(data : CertificateData?) } class SertifikatNewCell: UITableViewCell { @IBOutlet weak var card: MDCCard! @IBOutlet weak var lblNomor: UILabel! @IBOutlet weak var lblPemohon: UILabel! @IBOutlet weak var lblPerangkat: UILabel! @IBOutlet weak var lblMerk: UILabel! @IBOutlet weak var lblModel: UILabel! @IBOutlet weak var lblBrand: UILabel! @IBOutlet weak var lblBerlakuDate: UILabel! @IBOutlet weak var lblBerakhirDate: UILabel! @IBOutlet weak var lblStatus: UILabel! var cellDelegate: SertifikatNewCellDelegate? var dataSertifikat: CertificateData? func updateViews(certificateData: CertificateData) { card.isInteractable = true let gesture = UITapGestureRecognizer(target: self, action: #selector(self.onItemTap)) card.addGestureRecognizer(gesture) lblNomor.text = certificateData.nomor lblPemohon.text = certificateData.cust_name lblPerangkat.text = certificateData.eqp_name lblMerk.text = certificateData.merk lblModel.text = certificateData.model var brand = "" if certificateData.brand != "null" { brand = certificateData.brand } lblBrand.text = brand var expDate = "" if (certificateData.exp_date == "null" || certificateData.exp_date.isEmpty) { expDate = "" } else { let inputFormatter = DateFormatter() inputFormatter.dateFormat = "yyyy-MM-dd" let expDateString = String(certificateData.exp_date.prefix(10)) if let output = inputFormatter.date(from: expDateString) { let outputFormatter = DateFormatter() outputFormatter.dateFormat = "dd MMM yyyy" expDate = outputFormatter.string(from: output) } } lblBerakhirDate.text = expDate var licDate = "" if (certificateData.lic_date == "null" || certificateData.lic_date.isEmpty) { licDate = "" } else { let inputFormatter = DateFormatter() inputFormatter.dateFormat = "yyyy-MM-dd" let expDateString = String(certificateData.lic_date.prefix(10)) if let output = inputFormatter.date(from: expDateString) { let outputFormatter = DateFormatter() outputFormatter.dateFormat = "dd MMM yyyy" licDate = outputFormatter.string(from: output) } } lblBerlakuDate.text = licDate var status = "" lblStatus?.layer.cornerRadius = 6 lblStatus?.layer.masksToBounds = true switch certificateData.berlaku { case "0": status = "Tidak Berlaku" lblStatus.backgroundColor = UIColor.red case "1": status = "Berlaku" lblStatus.backgroundColor = UIColor.green case "3": status = "Revisi" lblStatus.backgroundColor = UIColor.orange default: lblStatus.backgroundColor = UIColor.white } lblStatus.text = status self.dataSertifikat = certificateData } @objc func onItemTap(sender : UITapGestureRecognizer) { cellDelegate?.openSertifikatDetail(data: dataSertifikat) } }