123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268 |
- //
- // IHSensorModel.swift
- // Inhealth
- //
- // Created by weclouds on 2019/12/10.
- // Copyright © 2019 weclouds. All rights reserved.
- //
- import UIKit
- import SwiftyJSON
- struct SensorData {
- var id : String? // 设备id Y
- var name : String? // 设备名称 Y
- var deviceId : String? // 设备ID Y
- var floor : String? // 楼层 Y
- var roomNumber : String? // 房间号 Y
- var pm25 : String? // PM2.5 Y
- var pm10 : String? // PM10 Y
- var temperature : String? // 温度 Y
- var humidity : String? // 湿度 Y
- var co2 : String? // 二氧化碳浓度 Y
- var noise : String? // 噪声 Y
- var online : String? // 在线状态(0 离线,1 在线) Y
- var alarmStatus : String? // 故障状态(0 正常,1 故障) Y
-
- }
- struct Sensor_list_Result {
- var code : HttpApiStatus?
- var msg : String?
- var list : [SensorData]?
- var total : String? // 设备总数
- }
- class Sensor_list_Info: NSObject {
- var result : Sensor_list_Result?
- var isSuccess : Bool
- var status : HttpApiStatus?
-
- init(result:Sensor_list_Result?, isSuccess:Bool, status:HttpApiStatus?) {
- self.result = result; self.isSuccess = isSuccess; self.status = status
- }
-
- static func fromJSON(_ json:JSON) -> Sensor_list_Info? {
- let code = HttpApiStatus(rawValue: json["code"].stringValue)
- let msg = json["msg"].stringValue
- let data = json["data"]
- let list = data["list"]
- var mList = [SensorData]()
- guard let sensorlist = list.array else { return nil }
- for vJSON in sensorlist {
- var sensor = SensorData()
- sensor.id = vJSON["id"].stringValue
- sensor.name = vJSON["name"].stringValue
- sensor.deviceId = vJSON["deviceId"].stringValue
- sensor.floor = vJSON["floor"].stringValue
- sensor.roomNumber = vJSON["roomNumber"].stringValue
- sensor.pm25 = vJSON["pm25"].stringValue
- sensor.pm10 = vJSON["pm10"].stringValue
- sensor.temperature = vJSON["temperature"].stringValue
- sensor.humidity = vJSON["humidity"].stringValue
- sensor.co2 = vJSON["co2"].stringValue
- sensor.noise = vJSON["noise"].stringValue
- sensor.online = vJSON["online"].stringValue
- sensor.alarmStatus = vJSON["alarmStatus"].stringValue
-
- mList.append(sensor)
- }
-
- var isSuccess = false
- if code == .Success {
- isSuccess = true
- }
- let total = json["total"].stringValue
- let result = Sensor_list_Result(code: code, msg: msg, list: mList,total: total)
- return Sensor_list_Info(result: result, isSuccess: isSuccess, status: code)
- }
-
- }
- //设备详情
- struct SensorInfodata {
- var name : String? // 设备名称 Y
- var deviceId : String? // 设备ID Y
- var floorId : String? // 楼层 Y
- var roomId : String? // 房间id Y
- var pm25 : String? // PM2.5 Y
- // var pm10 : String? // PM10 Y
- var formaldehyde: String? //甲醛
- var temperature : String? // 温度 Y
- var humidity : String? // 湿度 Y
- var co2 : String? //二氧化碳浓度 Y
- var illuminance: String? // 光照强度 Y
- var noise : String? // 噪声 Y
- var voc :String?// 挥发性有机化合物tvoc
- var batteryLevel : String? // 剩余电量 Y
- var batteryStatus : String? // 电池状态(0 正常,1 故障) Y
- var online : String? // 在线状态(0 离线,1 在线) Y
- var wifiLevel : String? // 信号强度(0 弱,1 中,2 强) Y
- var useTime : String? // 使用时长(h) Y
- var alarmStatus : String? // 故障状态(0 正常,1 故障) Y
- var alarmInfo : String? // 故障信息 Y
- var status : String? //探头3秒巡检开关状态(0 关,1 开)
- }
- struct SensorInfo_Result {
- var code : HttpApiStatus?
- var msg : String?
- var data : SensorInfodata?
- }
- class SensorInfo_Info: NSObject {
- var result : SensorInfo_Result?
- var isSuccess : Bool
- var status : HttpApiStatus?
-
- init(result:SensorInfo_Result?, isSuccess:Bool, status:HttpApiStatus?) {
- self.result = result; self.isSuccess = isSuccess; self.status = status
- }
-
- static func fromJSON(_ json:JSON) -> SensorInfo_Info? {
- let code = HttpApiStatus(rawValue: json["code"].stringValue)
- let msg = json["msg"].stringValue
- let data = json["data"]
- var result = SensorInfo_Result()
- result.msg = msg
- result.code = code
- let name = data["name"].stringValue
- let deviceId = data["deviceId"].stringValue
- let floorId = data["floorId"].stringValue
- let roomId = data["roomId"].stringValue
- let pm25 = data["pm25"].stringValue
- let voc = data["voc"].stringValue
- let formaldehyde = data["formaldehyde"].stringValue
- let temperature = data["temperature"].stringValue
- let humidity = data["humidity"].stringValue
- let co2 = data["co2"].stringValue
- let illuminance = data["illuminance"].stringValue
- let noise = data["noise"].stringValue
- let batteryLevel = data["batteryLevel"].stringValue
- let batteryStatus = data["batteryStatus"].stringValue
- let online = data["online"].stringValue
- let wifiLevel = data["wifiLevel"].stringValue
- let useTime = data["useTime"].stringValue
- let alarmStatus = data["alarmStatus"].stringValue
- let alarmInfo = data["alarmInfo"].stringValue
- let status = data["status"].stringValue
- let sensordata = SensorInfodata(name: name, deviceId: deviceId, floorId: floorId, roomId: roomId, pm25: pm25,formaldehyde:formaldehyde, temperature: temperature, humidity: humidity, co2: co2, illuminance: illuminance, noise: noise,voc:voc, batteryLevel: batteryLevel, batteryStatus: batteryStatus, online: online, wifiLevel: wifiLevel, useTime: useTime, alarmStatus: alarmStatus, alarmInfo: alarmInfo,status: status)
- result.data = sensordata
- var isSuccess = false
- if code == .Success {
- isSuccess = true
- }
- return SensorInfo_Info(result: result, isSuccess: isSuccess, status: code)
- }
- }
- struct SensorHistory {
- var pm25:[String]?
- var temperature:[String]?
- var humidity:[String]?
- var formaldehyde:[String]?
- var co2:[String]?
- var illuminance:[String]?
- var noise:[String]?
- var updateTime:[String]?
- // var days:[String]?
- }
- struct SensorHistory_Result {
- var code : HttpApiStatus?
- var msg : String?
- var historyData : SensorHistory?
- }
- class SensorHistory_Info: NSObject {
- var result : SensorHistory_Result?
- var isSuccess : Bool
- var status : HttpApiStatus?
-
- init(result:SensorHistory_Result?, isSuccess:Bool, status:HttpApiStatus?) {
- self.result = result; self.isSuccess = isSuccess; self.status = status
- }
-
- static func fromJSON(_ json:JSON) -> SensorHistory_Info? {
- let code = HttpApiStatus(rawValue: json["code"].stringValue)
- let msg = json["msg"].stringValue
- let data = json["data"]
- var result = SensorHistory_Result()
- var historyData = SensorHistory()
- result.msg = msg
- result.code = code
- let pm25jsonArray = data["PM25"].arrayValue
- var pm25s = [String]()
- for p25 in pm25jsonArray {
- let p = p25.stringValue
- pm25s.append(p)
- }
- historyData.pm25 = pm25s
-
-
- let tempjsonArray = data["temperature"].arrayValue
- var temperatures = [String]()
- for temp in tempjsonArray {
- let p = temp.stringValue
- temperatures.append(p)
- }
- historyData.temperature = temperatures
- let humidityjsonArray = data["humidity"].arrayValue
- var humiditys = [String]()
- for humi in humidityjsonArray {
- let p = humi.stringValue
- humiditys.append(p)
- }
- historyData.humidity = humiditys
- let formaldehydejsonArray = data["formaldehyde"].arrayValue
- var formaldehydes = [String]()
- for formald in formaldehydejsonArray {
- let p = formald.stringValue
- formaldehydes.append(p)
- }
- historyData.formaldehyde = formaldehydes
-
- let co2jsonArray = data["CO2"].arrayValue
- var co2s = [String]()
- for co2 in co2jsonArray {
- let p = co2.stringValue
- co2s.append(p)
- }
- historyData.co2 = co2s
-
- let illuminancejsonArray = data["illuminance"].arrayValue
- var illuminances = [String]()
- for illuminance in illuminancejsonArray {
- let p = illuminance.stringValue
- illuminances.append(p)
- }
- historyData.illuminance = illuminances
- let noisejsonArray = data["noise"].arrayValue
- var noises = [String]()
- for noise in noisejsonArray {
- let p = noise.stringValue
- noises.append(p)
- }
- historyData.noise = noises
- let updateTimejsonArray = data["updateTime"].arrayValue
- var updateTimes = [String]()
- for updateTime in updateTimejsonArray {
- let p = updateTime.stringValue
- updateTimes.append(p)
- }
- historyData.updateTime = updateTimes
- result.historyData = historyData
- var isSuccess = false
- if code == .Success {
- isSuccess = true
- }
- return SensorHistory_Info(result: result, isSuccess: isSuccess, status: code)
- }
- }
|