// // IHPanelApi.swift // Inhealth // // Created by weclouds on 2020/7/27. // Copyright © 2020 weclouds. All rights reserved. // import UIKit import Moya let PanelProvider = MoyaProvider(plugins: [NetworkLoggerPlugin(verbose: true, responseDataFormatter: JSONResponseDataFormatter),networkActivityPlugin]) enum PanelApi { //获取灯控模式 case school_get_panel_mode(username:String,client_key:String,os:String,version:String,token:String, id:String) //设置灯控模式 case school_set_panel_mode(username:String,client_key:String,os:String,version:String,token:String, id:String,key1:String,key2:String,key3:String,key4:String,key5:String,key6:String,clientId:String) } extension PanelApi : TargetType { var base :String { return moyaBase } var baseURL: URL { return URL.init(string: base)! } var path: String { switch self { case .school_get_panel_mode: return "school/get_panel_mode" case .school_set_panel_mode: return "school/set_panel_mode" } } var method: Moya.Method { return .post } // 多用于单元测试 var sampleData: Data { switch self { case .school_get_panel_mode: return stubbedResponse("school/get_panel_mode") case .school_set_panel_mode: return stubbedResponse("school/set_panel_mode") } } // parameters,upload or download var task: Task { switch self { case .school_get_panel_mode(username: let username, client_key: let client_key, os: let os, version: let version, token: let token, id: let id): let p = ["username" :username, "client_key":client_key, "os":os, "version":version , "token":token, "id":id] return .requestParameters(parameters: p, encoding: URLEncoding.default) case .school_set_panel_mode(username: let username , client_key: let client_key, os: let os, version: let version, token: let token, id: let id, key1: let key1, key2: let key2, key3: let key3, key4: let key4, key5: let key5, key6: let key6, clientId: let clientId) : let p = ["username": username,"client_key":client_key,"os":os,"version":version,"token":token,"id":id,"key1":key1,"key2":key2,"key3":key3,"key4":key4,"key5":key5,"key6":key6,"clientId":clientId] return .requestParameters(parameters: p, encoding: URLEncoding.default) } } var headers: [String : String]? { return nil } }