IHRepairDetailManager.swift 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. //
  2. // IHRepairDetailManager.swift
  3. // Inhealth
  4. //
  5. // Created by weclouds on 2019/12/19.
  6. // Copyright © 2019 weclouds. All rights reserved.
  7. //
  8. import UIKit
  9. let KNotifiRepairDetailManagerRepairDispatch = "KNotifiRepairDetailManagerRepairDispatch"
  10. class IHRepairDetailManager: NSObject ,IHViewManagerProtocolDelegate{
  11. var alarm :AlarmData?
  12. lazy var repairMainView: IHServiceRepairView = {
  13. let mainView = IHServiceRepairView()
  14. return mainView
  15. }()
  16. lazy var detailMainView: IHServiceDetailView = {
  17. let mainView = IHServiceDetailView()
  18. return mainView
  19. }()
  20. private weak var vc : UIViewController?
  21. func bindController(_ vc: UIViewController) {
  22. self.vc = vc
  23. let iVC = self.vc as! IHrepairAndDetailVCtr
  24. self.alarm = iVC.alarm
  25. createUI()
  26. }
  27. func createUI(){
  28. let service = self.vc as! IHrepairAndDetailVCtr
  29. switch service.style {
  30. case .detail:
  31. createDetailUI()
  32. case .repair:
  33. createRepairUI()
  34. default:
  35. break
  36. }
  37. }
  38. func createRepairUI() {
  39. repairMainView.frame = CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: KSCREENHEIGHT - KNavBarHeight )
  40. self.vc?.view.addSubview(repairMainView)
  41. self.repairMainView.alarmInfo = self.alarm
  42. requestRepairMan(self.alarm!.devId!)
  43. }
  44. func createDetailUI() {
  45. detailMainView.frame = CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: KSCREENHEIGHT - KNavBarHeight )
  46. self.vc?.view.addSubview(detailMainView)
  47. requestDetail(alarm!.id!)
  48. }
  49. func requestDetail(_ alarmId :String) {
  50. IHAlarmService.share.getAlarmDetail(alarmId) { (detail) in
  51. self.detailMainView.alarmDetail = detail
  52. }
  53. }
  54. func requestRepairMan(_ devId:String) {
  55. IHAlarmService.share.getRepairMan(devId) { (repairmanList) in
  56. self.repairMainView.repairmanList = repairmanList
  57. }
  58. }
  59. }
  60. extension IHRepairDetailManager : IHServiceRepairViewDelegate{
  61. //维修调度
  62. func saveRepair(alarmId: String, repairId: String) {
  63. IHAlarmService.share.repairDispatch(alarmId, repairId: repairId) {
  64. //返回
  65. self.vc?.navigationController?.popViewController(animated: true)
  66. NotificationCenter.default.post(name: NSNotification.Name(KNotifiRepairDetailManagerRepairDispatch), object: nil)
  67. }
  68. }
  69. }