// // 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! @IBOutlet weak var lblNegara: 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 lblNegara.text = certificateData.negara 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 lblStatus?.layer.cornerRadius = 6 lblStatus?.layer.masksToBounds = true lblStatus.text = certificateData.statusBerlaku if let statusColor = UIColor(hexString: certificateData.statusBgColor) { lblStatus.backgroundColor = statusColor } self.dataSertifikat = certificateData } @objc func onItemTap(sender : UITapGestureRecognizer) { cellDelegate?.openSertifikatDetail(data: dataSertifikat) } }