IHFloorMapView.swift 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. //
  2. // IHFloorMapView.swift
  3. // Inhealth
  4. //
  5. // Created by weclouds on 2019/12/13.
  6. // Copyright © 2019 weclouds. All rights reserved.
  7. //
  8. import UIKit
  9. class IHFloorMapView: UIView {
  10. //楼房信息
  11. var buildListData : [DropDownData]?{
  12. didSet{
  13. let firstBuild = self.buildListData?.first
  14. getFloorList(firstBuild!) //获取第一个楼房 显示用
  15. }
  16. }
  17. deinit {
  18. log.debug("IHFloorMapView销毁")
  19. }
  20. @IBOutlet weak var selectedBox: UIView!
  21. @IBOutlet weak var floorLabel: UILabel!
  22. @IBOutlet weak var floorImageView: UIImageView!
  23. override func awakeFromNib() {
  24. super.awakeFromNib()
  25. //添加手势
  26. let tap = UITapGestureRecognizer(target: self, action: #selector(tapBox))
  27. selectedBox.addGestureRecognizer(tap)
  28. }
  29. @objc func tapBox() {
  30. if buildListData != nil{
  31. let pickerView = IHFloorMapSelectedView(buildListData: buildListData!)
  32. pickerView.delegate = self
  33. pickerView.show()
  34. }else{
  35. g_showHUD("无数据")
  36. }
  37. }
  38. //获取楼房
  39. func getFloorList(_ build:DropDownData) {
  40. IHAreaService.share.getRoomListData(buildId: build.id!, keyworkds: nil, requestSuccess: { (floorlist ) in
  41. //第一个
  42. if floorlist.count == 0{
  43. self.floorImageView.image = nil
  44. }else {
  45. let floor = floorlist.first
  46. self.floorLabel.text = "\(build.name ?? "") · \(floor?.name ?? "")"
  47. self.getFloorImage((floor?.id)!)
  48. }
  49. }) {
  50. }
  51. }
  52. func getFloorImage(_ floorId:String){
  53. IHFloorMapService.share.getfloorImage(floorId, requestSuccess: { (image) in
  54. self.floorImageView.netImage(url: image, placeholder: nil)
  55. IHShowHelper.show(imageView: self.floorImageView)
  56. }) {
  57. }
  58. }
  59. }
  60. extension IHFloorMapView : IHFloorMapSelectedViewDelegate{
  61. func selected(build: DropDownData, floor: RoomListData) {
  62. self.floorLabel.text = "\(build.name ?? "") · \(floor.name ?? "")"
  63. getFloorImage(floor.id!)
  64. }
  65. }