IHEquipmentListCell.swift 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. //
  2. // IHEquipmentListCell.swift
  3. // Inhealth
  4. //
  5. // Created by weclouds on 2019/12/18.
  6. // Copyright © 2019 weclouds. All rights reserved.
  7. //
  8. import UIKit
  9. import SwipeCellKit
  10. extension String {
  11. var isBlanck :Bool{
  12. //过滤空格
  13. let trimmedStr = self.trimmingCharacters(in: .whitespacesAndNewlines)
  14. return trimmedStr.isEmpty
  15. }
  16. }
  17. class IHEquipmentListCell: UITableViewCell {
  18. var gateway: GatewayData?{
  19. didSet{
  20. if let model = self.gateway {
  21. if let id = model.id ,
  22. let floor = model.floor,
  23. let networkname = model.network_name,
  24. let gatewayId = model.gatewayId,
  25. let firmware = model.firmware,
  26. let software = model.software,
  27. let roomNumber = model.roomNumber
  28. {
  29. idLabel.text = "ID:" + gatewayId
  30. roomNumberLabel.text = roomNumber
  31. //gateway_Information ic_gateway
  32. iconImageV.image = UIImage(named: "gateway_Information")
  33. devTypeLabel.text = "网关"
  34. aNameLabel.text = "硬件版本"
  35. bNameLabel.text = ""
  36. bNameLabel.text = ""
  37. brightnessLabel.text = firmware
  38. aAlertLabel.text = "软件版本"
  39. alertsLabel.text = software
  40. alertsLabel.textColor = .black
  41. alertsLabel.backgroundColor = .clear
  42. nameLabel.text = (networkname.isBlanck == false) ? ( networkname) : ("网关")
  43. colorTempTitle.isHidden = true
  44. colorTempLabel.isHidden = true
  45. }
  46. }
  47. }
  48. }
  49. var devData:DevData?{
  50. didSet{
  51. if let model = self.devData {
  52. if let devId = model.deviceId,
  53. let alarmStatus = model.alarmStatus ,
  54. let name = model.name,
  55. let devType = model.devType,
  56. let image = model.image,
  57. let type = model.type
  58. {
  59. idLabel.text = "ID:" + devId
  60. roomNumberLabel.text = model.number
  61. if alarmStatus == "0"{
  62. alertsLabel.text = "正常"
  63. alertsLabel.backgroundColor = UIColor(hexString: "FFFFFF")
  64. alertsLabel.textColor = UIColor(hexString: "#525F79")
  65. }else if alarmStatus == "1"{
  66. alertsLabel.text = model.alarmInfo
  67. alertsLabel.backgroundColor = UIColor(hexString: "#FF0C4D", transparency: 0.1)
  68. alertsLabel.textColor = UIColor(hexString: "#FF0C4D")
  69. }
  70. if devType == "1"{
  71. // iconImageV.image = UIImage(named: "Ordinary light")
  72. iconImageV.netImage(url: image, placeholder: "ic_ordinary_light")
  73. devTypeLabel.text = "灯控"
  74. aNameLabel.text = "亮度"
  75. bNameLabel.text = ""
  76. bNameLabel.text = ""
  77. nameLabel.text = (name.isBlanck == false) ? ( name) : ("灯控")
  78. brightnessLabel.text = "\(model.light!)%"
  79. colorTempTitle.isHidden = false
  80. colorTempLabel.isHidden = false
  81. colorTempLabel.text = model.color ?? "0" + "k"
  82. }else if devType == "2"{
  83. // iconImageV.image = UIImage(named: "Circadian light")
  84. iconImageV.netImage(url: image, placeholder: "ic_circadian_light")
  85. devTypeLabel.text = "HCL灯控"
  86. aNameLabel.text = "亮度"
  87. bNameLabel.text = ""
  88. nameLabel.text = (name.isBlanck == false) ? ( name) : ("HCL灯控")
  89. brightnessLabel.text = "\(model.light!)%"
  90. colorTempTitle.isHidden = false
  91. colorTempLabel.isHidden = false
  92. colorTempLabel.text = model.color ?? "0" + "k"
  93. }else if devType == "3"{
  94. // iconImageV.image = UIImage(named: "Sensor")
  95. iconImageV.netImage(url: image, placeholder: "ic_sensor")
  96. devTypeLabel.text = "感应器"
  97. aNameLabel.text = "在线状态"
  98. bNameLabel.text = ""
  99. nameLabel.text = (name.isBlanck == false) ? ( name) : ("感应器")
  100. if model.online == "0" {
  101. brightnessLabel.text = "离线"
  102. }else if model.online == "1"{
  103. brightnessLabel.text = "在线"
  104. }
  105. colorTempTitle.isHidden = true
  106. colorTempLabel.isHidden = true
  107. }else if devType == "4"{
  108. // iconImageV.image = UIImage(named: "Purifier")
  109. iconImageV.netImage(url: image, placeholder: "ic_purifier")
  110. //iconImageV.netImage(url: image, placeholder: nil)
  111. devTypeLabel.text = "空气净化器"
  112. aNameLabel.text = "开启状态"
  113. bNameLabel.text = ""
  114. nameLabel.text = (name.isBlanck == false) ? ( name) : ("空气净化器")
  115. if model.status == "0"{
  116. brightnessLabel.text = "关"
  117. }else if model.status == "1"{
  118. brightnessLabel.text = "开"
  119. }
  120. colorTempTitle.isHidden = false
  121. colorTempTitle.text = "风扇转速"
  122. colorTempLabel.isHidden = false
  123. if model.level == "1"{
  124. colorTempLabel.text = "低"
  125. }else if model.level == "2"{
  126. colorTempLabel.text = "中"
  127. }else{
  128. colorTempLabel.text = "高"
  129. }
  130. }
  131. //学校的内容展示
  132. if type == "4" {
  133. iconImageV.netImage(url: image, placeholder: "灯控")
  134. devTypeLabel.text = "教室灯"
  135. aNameLabel.text = "亮度"
  136. bNameLabel.text = ""
  137. bNameLabel.text = ""
  138. nameLabel.text = name
  139. brightnessLabel.text = "\(model.brightness!)%"
  140. }else if type == "5"{
  141. iconImageV.netImage(url: image, placeholder: "黑板灯")
  142. devTypeLabel.text = "黑板灯"
  143. aNameLabel.text = "亮度"
  144. bNameLabel.text = ""
  145. bNameLabel.text = ""
  146. nameLabel.text = name
  147. brightnessLabel.text = "\(model.brightness!)%"
  148. }else if type == "6" {
  149. iconImageV.netImage(url: image, placeholder: "窗帘")
  150. devTypeLabel.text = "窗帘"
  151. aNameLabel.text = "在线状态"
  152. bNameLabel.text = ""
  153. nameLabel.text = (name.isBlanck == false) ? ( name) : ("感应器")
  154. if model.online == "0" {
  155. brightnessLabel.text = "离线"
  156. }else if model.online == "1"{
  157. brightnessLabel.text = "在线"
  158. }
  159. } else if type == "7"{
  160. iconImageV.netImage(url: image, placeholder: "面板")
  161. devTypeLabel.text = "面板"
  162. aNameLabel.text = "在线状态"
  163. bNameLabel.text = ""
  164. nameLabel.text = (name.isBlanck == false) ? ( name) : ("感应器")
  165. if model.online == "0" {
  166. brightnessLabel.text = "离线"
  167. }else if model.online == "1"{
  168. brightnessLabel.text = "在线"
  169. }
  170. }
  171. }
  172. }
  173. }
  174. }
  175. @IBOutlet weak var nameLabel: UILabel!
  176. @IBOutlet weak var idLabel: UILabel!
  177. @IBOutlet weak var roomNumberLabel: UILabel!
  178. @IBOutlet weak var iconImageV: UIImageView!
  179. @IBOutlet weak var devTypeLabel: UILabel!
  180. @IBOutlet weak var brightnessLabel: UILabel!
  181. @IBOutlet weak var illumianceLabel: UILabel!
  182. @IBOutlet weak var alertsLabel: UILabel!
  183. @IBOutlet weak var aAlertLabel: UILabel!
  184. @IBOutlet weak var aNameLabel: UILabel!
  185. @IBOutlet weak var bNameLabel: UILabel!
  186. @IBOutlet weak var colorTempLabel: UILabel!
  187. @IBOutlet weak var colorTempTitle: UILabel!
  188. override func awakeFromNib() {
  189. super.awakeFromNib()
  190. let lineView = IHDashView(strokeColor: UIColor(hexString: "C6CDD5", transparency: 0.5)?.cgColor, gap: 3, lineWith: 1)
  191. lineView.frame = CGRect(x: 20, y: bounds.size.height - 1, width: KSCREENWIDTH - 40 , height: 1)
  192. addSubview(lineView)
  193. }
  194. override func setSelected(_ selected: Bool, animated: Bool) {
  195. super.setSelected(selected, animated: animated)
  196. // Configure the view for the selected state
  197. }
  198. }