// // IHRepairDetailManager.swift // Inhealth // // Created by weclouds on 2019/12/19. // Copyright © 2019 weclouds. All rights reserved. // import UIKit let KNotifiRepairDetailManagerRepairDispatch = "KNotifiRepairDetailManagerRepairDispatch" class IHRepairDetailManager: NSObject ,IHViewManagerProtocolDelegate{ var alarm :AlarmData? lazy var repairMainView: IHServiceRepairView = { let mainView = IHServiceRepairView() return mainView }() lazy var detailMainView: IHServiceDetailView = { let mainView = IHServiceDetailView() return mainView }() private weak var vc : UIViewController? func bindController(_ vc: UIViewController) { self.vc = vc let iVC = self.vc as! IHrepairAndDetailVCtr self.alarm = iVC.alarm createUI() } func createUI(){ let service = self.vc as! IHrepairAndDetailVCtr switch service.style { case .detail: createDetailUI() case .repair: createRepairUI() default: break } } func createRepairUI() { repairMainView.frame = CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: KSCREENHEIGHT - KNavBarHeight ) self.vc?.view.addSubview(repairMainView) self.repairMainView.alarmInfo = self.alarm requestRepairMan(self.alarm!.devId!) } func createDetailUI() { detailMainView.frame = CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: KSCREENHEIGHT - KNavBarHeight ) self.vc?.view.addSubview(detailMainView) requestDetail(alarm!.id!) } func requestDetail(_ alarmId :String) { IHAlarmService.share.getAlarmDetail(alarmId) { (detail) in self.detailMainView.alarmDetail = detail } } func requestRepairMan(_ devId:String) { IHAlarmService.share.getRepairMan(devId) { (repairmanList) in self.repairMainView.repairmanList = repairmanList } } } extension IHRepairDetailManager : IHServiceRepairViewDelegate{ //维修调度 func saveRepair(alarmId: String, repairId: String) { IHAlarmService.share.repairDispatch(alarmId, repairId: repairId) { //返回 self.vc?.navigationController?.popViewController(animated: true) NotificationCenter.default.post(name: NSNotification.Name(KNotifiRepairDetailManagerRepairDispatch), object: nil) } } }