AplikasiCell.swift 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. //
  2. // AplikasiCell.swift
  3. // Sirani
  4. //
  5. // Created by Hendi on 21/06/23.
  6. // Copyright © 2023 PT. Mitra Sinerji Teknoindo. All rights reserved.
  7. //
  8. import UIKit
  9. import MaterialComponents.MaterialCards
  10. protocol AplikasiCellDelegate: NSObjectProtocol {
  11. func openAplikasiDetail(data : Aplikasi?)
  12. }
  13. class AplikasiCell: UITableViewCell {
  14. @IBOutlet weak var card: MDCCard!
  15. @IBOutlet weak var lblIdIzin : UILabel!
  16. @IBOutlet weak var lblAplId : UILabel!
  17. @IBOutlet weak var lblResiNo : UILabel!
  18. @IBOutlet weak var lblResiDate : UILabel!
  19. @IBOutlet weak var lblCustName : UILabel!
  20. @IBOutlet weak var lblEqpName : UILabel!
  21. @IBOutlet weak var lblMerk : UILabel!
  22. @IBOutlet weak var lblModel : UILabel!
  23. @IBOutlet weak var lblBrand : UILabel!
  24. @IBOutlet weak var lblDisposisi : UILabel!
  25. @IBOutlet weak var lblStatusStr : UILabel!
  26. var cellDelegate: AplikasiCellDelegate?
  27. var dataAplikasi: Aplikasi?
  28. func updateViews(aplData: Aplikasi) {
  29. card.isInteractable = true
  30. let gesture = UITapGestureRecognizer(target: self, action: #selector(self.onItemTap))
  31. card.addGestureRecognizer(gesture)
  32. lblIdIzin.text = aplData.id_izin
  33. lblAplId.text = String(aplData.apl_id)
  34. lblResiNo.text = aplData.resi_no
  35. lblCustName.text = aplData.cust_name
  36. lblEqpName.text = aplData.eqp_name
  37. lblMerk.text = aplData.merk
  38. lblModel.text = aplData.model
  39. lblBrand.text = aplData.brand
  40. lblDisposisi.text = aplData.disposisi
  41. lblStatusStr.text = aplData.StatusStr
  42. var resiDate = ""
  43. if (aplData.resi_date == "null" || aplData.resi_date.isEmpty) {
  44. resiDate = ""
  45. } else {
  46. let inputFormatter = DateFormatter()
  47. inputFormatter.dateFormat = "yyyy-MM-dd"
  48. let expDateString = String(aplData.resi_date.prefix(10))
  49. if let output = inputFormatter.date(from: expDateString) {
  50. let outputFormatter = DateFormatter()
  51. outputFormatter.dateFormat = "dd MMM yyyy"
  52. resiDate = outputFormatter.string(from: output)
  53. }
  54. }
  55. lblResiDate.text = resiDate
  56. self.dataAplikasi = aplData
  57. }
  58. @objc func onItemTap(sender : UITapGestureRecognizer) {
  59. cellDelegate?.openAplikasiDetail(data: dataAplikasi)
  60. }
  61. }