123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322 |
- //
- // IHRoomLightService.swift
- // Inhealth
- //
- // Created by weclouds on 2019/12/20.
- // Copyright © 2019 weclouds. All rights reserved.
- //
- import UIKit
- import SwiftyJSON
- import PKHUD
- class IHRoomLightService: NSObject {
- static let share = IHRoomLightService()
- //调光
- func
- individualDimming(lightId:String,light:String, requestSuccess:@escaping (Bool)->Void,requestFail:@escaping (()->Void)) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
- let url = moyaBase + "lamp/lamp_light_asy"
- let parameter :NSDictionary = ["username":username,
- "client_key":client_key,
- "os":os,
- "version":version,
- "token":token,
- "lightId":lightId,
- "light":"\(light)"]
-
- //connectHandle 链接成功 回掉·;; completehandle 设置成功回调
- IHWebSocketManager.shareInstance().contectToSokect(url, parameter: parameter) { (isSuccess) in
- requestSuccess(isSuccess)
- if isSuccess == false{
- requestFail()
- }
- }
- // g_lamp_lamp_lighttHttpRequest(username, client_key: client_key, os: os, version: version, token: token, lightId: lightId, light: light, success: { (json) -> (Void) in
- // requestSuccess(true)
- // let info = Operation_Info.fromJSON(json)
- // let result = info?.result
- // let msg = result?.msg
- // self.showHUD(msg ?? "")
- //
- // }, fail: requestFail)
- }
-
- func setLampColor(lightId:String,color:String, requestSuccess:@escaping (Bool)->Void,requestFail:@escaping (()->Void)) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
-
- let url = moyaBase + "lamp/lamp_color_asy"
- let parameter :NSDictionary = ["username":username,
- "client_key":client_key,
- "os":os,
- "version":version,
- "token":token,
- "lightId":lightId,
- "color":"\(color)"]
- //connectHandle 链接成功 回掉·;; completehandle 设置成功回调
- IHWebSocketManager.shareInstance().contectToSokect(url, parameter: parameter) { (isSuccess) in
- requestSuccess(isSuccess)
- if isSuccess == false{
- requestFail()
- }
- }
-
- // g_lamp_lamp_colorHttpRequest(username, client_key: client_key, os: os, version: version, token: token, lightId: lightId, color: color, success: { (json) -> (Void) in
- // requestSuccess(true)
- // let info = Operation_Info.fromJSON(json)
- // let result = info?.result
- // let msg = result?.msg
- // self.showHUD(msg ?? "")
- // }, fail: requestFail)
- }
-
- func setLampColorRGB(_ lightId:String,colorR:String,colorG:String,colorB:String, requestSuccess:@escaping (Bool)->Void,requestFail:@escaping (()->Void)) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
-
-
- let url = moyaBase + "lamp/lamp_color_rgb"
- let parameter :NSDictionary = ["username":username,
- "client_key":client_key,
- "os":os,
- "version":version,
- "token":token,
- "lightId":lightId,
- "type":"0",
- "colorR":"\(colorR)",
- "colorG":"\(colorG)",
- "colorB":"\(colorB)"]
- //connectHandle 链接成功 回掉·;; completehandle 设置成功回调
- IHWebSocketManager.shareInstance().contectToSokect(url, parameter: parameter) { (isSuccess) in
- requestSuccess(isSuccess)
- if isSuccess == false{
- requestFail()
- }
- }
- // g_lamp_lamp_color_rgbHttpRequest(username, client_key: client_key, os: os, version: version, token: token, lightId: lightId, colorR: colorR, colorG: colorG, colorB: colorB, success: { (json) -> (Void) in
- // requestSuccess(true)
- // let info = Operation_Info.fromJSON(json)
- // let result = info?.result
- // let msg = result?.msg
- // // g_showHUD(msg ?? "")
- // }) { () -> (Void) in
- // requestFail()
- // }
- }
-
-
- ///灯控详情
- func getLightInfo(_ lightId:String,requestSuccess:@escaping (LightInfodata)->Void,requestFail:@escaping (()->Void)) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
- g_lamp_light_infoHttpRequest(username, client_key: client_key, os: os, version: version, token: token, lightId: lightId, success: { (json) -> (Void) in
- let mlightInfo = LightInfo_Info.fromJSON(json)
- let result = mlightInfo?.result
- var _data = LightInfodata()
- guard let data = result?.data else { return}
- if let name = data.name,
- let deviceId = data.deviceId,
- let floorId = data.floorId,
- let roomId = data.roomId,
- let status = data.status ,
- let light = data.light,
- let color = data.color,
- let colorR = data.colorR,
- let colorG = data.colorG,
- let colorB = data.colorB,
- let alarmStatus = data.alarmStatus,
- let alarmInfo = data.alarmInfo,
- let model = data.model{
- _data.name = name
- _data.deviceId = deviceId
- _data.roomId = roomId
- _data.status = status
- _data.light = light
- _data.color = color
- _data.colorR = colorR
- _data.colorG = colorG
- _data.colorB = colorB
- _data.alarmStatus = alarmStatus
- _data.floorId = floorId
- _data.alarmInfo = alarmInfo
- _data.model = model
- requestSuccess(_data)
- }
-
-
- }) { () -> (Void) in
- requestFail()
- }
- }
-
- ///设备日志
- //dataType 图表类型 0 energy_consumptin 用电量统计信息表 ; 1 lighting_use_schedule 亮灯时间统计信息
- //
- func getLampReport(_ lightId :String,dateType:String,dataType:String,date:String?,requestSuccess:@escaping (ReportData)->Void,requestFail:@escaping (()->Void)) {
- if dataType == "0" {
- getEnergyConsumption(nil, devId: lightId, dateType: dateType, date: date, requestSuccess: { (report) in
- requestSuccess(report)
- }) {
- requestFail()
- }
- }else if dataType == "1"{
- getLightingUseSchedule(nil, devId: lightId, dateType: dateType, date: date, requestSuccess: { (report) in
- requestSuccess(report)
- }) {
- requestFail()
- }
- }
- }
-
-
-
- private func getEnergyConsumption(_ hotelId:String?,devId:String?,dateType:String,date:String?,requestSuccess:@escaping (ReportData)->Void,requestFail:@escaping (()->Void)) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
- g_lamp_energy_consumptionHttpRequest(username, client_key: client_key, os: os, version: version, token: token, hotelId: hotelId, devId: devId, dateType: dateType, date: date, success: { (json) -> (Void) in
- let info = Report_Info.fromJSON(json)
- let result = info?.result
-
- if result?.code == .Success {
- let data = result?.data
- requestSuccess(data!)
- }else{
- requestFail()
- }
- }) { () -> (Void) in
- requestFail()
- }
- }
-
- private func getLightingUseSchedule(_ hotelId:String?,devId:String?,dateType:String,date:String?,requestSuccess:@escaping (ReportData)->Void,requestFail:@escaping (()->Void)) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
- g_lamp_lighting_use_scheduleHttpRequest(username, client_key: client_key, os: os, version: version, token: token, hotelId: hotelId, devId: devId, dateType: dateType, date: date, success: { (json) -> (Void) in
- let info = Report_Info.fromJSON(json)
- let result = info?.result
- if result?.code == .Success {
- let data = result?.data
- requestSuccess(data!)
- }else{
- requestFail()
- }
- }) { () -> (Void) in
- requestFail()
- }
- }
- private func showHUD(_ message: String) {
- HUD.flash(.label(message), delay: 0.5) { _ in
- print("License Obtained.")
- }
- }
-
- //教室灯的色温 -- 调
- func lightsColor(lightId : String,color : String,success: @escaping((String,String)->())){
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
- HUD.show(.progress)
- IHWebSocketManager.shareInstance().schoolDeviceOpation(isSchool: true) { (isSuccess, responeStr,code) in
- if isSuccess == 2 {
- log.debug("websocket-教室灯的色温")
- // guard let responeStr = responeStr else {return}
- success(responeStr,code)
- g_showHUD(responeStr)
- HUD.hide(afterDelay: 1.0)
- }else{
- // guard let clientId = responeStr else{return}
- g_school_set_colorHttpRequest(username, client_key: client_key, os: os, version: version, token: token, id: lightId, color: color, clientId: responeStr, success: { (json) -> (Void) in
- log.debug("----")
- }) { () -> (Void) in
- log.debug("----")
- }
-
- }
- }
- }
-
- //学校灯的亮度
- func lightsBright(lightId : String,light : String,success: @escaping((String,String)->())){
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
- HUD.show(.progress)
- IHWebSocketManager.shareInstance().schoolDeviceOpation(isSchool: true) { (isSuccess, responeStr,code) in
- if isSuccess == 2 {
- log.debug("websocket-教室灯的亮度")
- // guard let responeStr = responeStr else {return}
- success(responeStr,code)
- g_showHUD(responeStr)
- HUD.hide(afterDelay: 1)
-
- }else{
- // guard let clientId = responeStr else{return}
- g_school_set_lightHttpRequest(username, client_key: client_key, os: os, version: version, token: token, id: lightId, light: light, clientId: responeStr, success: { (json) -> (Void) in
-
- }) { () -> (Void) in
-
- }
-
- }
- }
- }
-
-
-
- //学校单个灯 - 开关
- func
- setSchoolLightOn_off(lightId:String,status:String,success: @escaping((String,String)->())) {
- let username = AppShare.username
- let client_key = AppShare.client_key
- let os = AppShare.os
- let token = AppShare.token
- let version = AppShare.version
-
- // HUD.show(.progress)
- IHWebSocketManager.shareInstance().schoolDeviceOpation(isSchool: true) { (isSuccess, responeStr,code) in
- if isSuccess == 2 {
- log.debug("websocket-教室单个灯的开关")
- // guard let responeStr = responeStr else {return}
- success(responeStr,code)
- g_showHUD(responeStr)
- HUD.hide(afterDelay: 1.5)
-
- }else{
- // guard let clientId = responeStr else{return}
- g_school_single_on_offHttpRequest(username, client_key: client_key, os: os, version: version, token: token, id: lightId, status: status, clientId: responeStr, success: { (json) -> (Void) in
-
- }) { () -> (Void) in
-
- }
-
- }
- }
- }
-
- }
|