IHGatewayApi.swift 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. //
  2. // IHGatewayApi.swift
  3. // Inhealth
  4. //
  5. // Created by weclouds on 2020/4/7.
  6. // Copyright © 2020 weclouds. All rights reserved.
  7. //
  8. import UIKit
  9. import Moya
  10. import Alamofire
  11. //import RxSwift
  12. //import RxCocoa
  13. let GatewayProvider = MoyaProvider<GatewayApi>(plugins: [NetworkLoggerPlugin(verbose: true, responseDataFormatter: JSONResponseDataFormatter),
  14. networkActivityPlugin])
  15. enum GatewayApi {
  16. case network_getlist(username:String,client_key:String,os:String,version:String,token:String,page:String, count:String,keywords:String?,buildid:String)
  17. case network_addRoomNet(username:String,client_key:String,os:String,version:String,token:String,id:String?, gatewayId:String,network_name:String,floorId:String,roomId:String,inspecTime:String?)
  18. case network_delRoomNet(username:String,client_key:String,os:String,version:String,token:String,id:String)
  19. case network_getLamp(username:String,client_key:String,os:String,version:String,token:String,floorId:String,roomId:String,gatewayid:String,bindLamp:String)
  20. case network_inspec_time_nav(username:String,client_key:String,os:String,version:String,token:String)
  21. }
  22. extension GatewayApi: TargetType{
  23. var base :String {
  24. return moyaBase
  25. }
  26. var baseURL: URL {
  27. return URL(string:base)!
  28. }
  29. var path: String {
  30. switch self {
  31. case .network_getlist:
  32. return "network/getlist"
  33. case .network_addRoomNet:
  34. return "network/addRoomNet"
  35. case .network_delRoomNet:
  36. return "network/delRoomNet"
  37. case .network_getLamp:
  38. return "network/getLamp"
  39. case .network_inspec_time_nav:
  40. return "network/inspec_time_nav"
  41. }
  42. }
  43. var method: Moya.Method {
  44. return .post
  45. }
  46. var sampleData: Data {
  47. switch self {
  48. // return stubbedResponse("common_get_code_image")
  49. case .network_getlist:
  50. return stubbedResponse("network_getlist")
  51. case .network_addRoomNet:
  52. return stubbedResponse("network_addRoomNet")
  53. case .network_delRoomNet:
  54. return stubbedResponse("network_delRoomNet")
  55. case .network_getLamp:
  56. return stubbedResponse("network_getLamp")
  57. case .network_inspec_time_nav:
  58. return stubbedResponse("network_inspec_time_nav")
  59. }
  60. }
  61. var task: Task {
  62. switch self {
  63. case .network_getlist(let username, let client_key, let os, let version, let token, let page, let count, let keywords, let buildid):
  64. var p = ["username" :username,
  65. "client_key":client_key,
  66. "os":os,
  67. "version":version ,
  68. "token":token,
  69. "page":page,
  70. "count":count,
  71. "buildId":buildid]
  72. if let keywords = keywords{
  73. p["keywords"] = keywords
  74. }
  75. return .requestParameters(parameters: p,
  76. encoding: URLEncoding.default)
  77. case .network_addRoomNet(let username, let client_key, let os, let version, let token, let id, let gatewayId, let network_name, let floorId, let roomId, let inspecTime):
  78. var p = ["username" :username,
  79. "client_key":client_key,
  80. "os":os,
  81. "version":version ,
  82. "token":token,
  83. "gatewayId":gatewayId,
  84. "network_name":network_name,
  85. "floorId":floorId,
  86. "roomId":roomId]
  87. if let id = id{
  88. p["id"] = id
  89. }
  90. if let inspecTime = inspecTime {
  91. p["inspecTime"] = inspecTime
  92. }
  93. return .requestParameters(parameters: p,
  94. encoding: URLEncoding.default)
  95. case .network_delRoomNet(let username, let client_key, let os, let version, let token, let id):
  96. let p = ["username" :username,
  97. "client_key":client_key,
  98. "os":os,
  99. "version":version ,
  100. "token":token,
  101. "id":id ]
  102. return .requestParameters(parameters: p,
  103. encoding: URLEncoding.default)
  104. case .network_getLamp(let username, let client_key, let os, let version, let token, let floorId, let roomId, let gatewayid, let bindLamp):
  105. let p = ["username" :username,
  106. "client_key":client_key,
  107. "os":os,
  108. "version":version ,
  109. "token":token,
  110. "floorId":floorId ,
  111. "roomId":roomId,
  112. "gatewayId":gatewayid,
  113. "bindLamp":bindLamp]
  114. return .requestParameters(parameters: p,
  115. encoding: URLEncoding.default)
  116. case .network_inspec_time_nav(let username, let client_key, let os, let version, let token):
  117. let p = ["username" :username,
  118. "client_key":client_key,
  119. "os":os,
  120. "version":version ,
  121. "token":token]
  122. return .requestParameters(parameters: p,
  123. encoding: URLEncoding.default)
  124. }
  125. }
  126. var headers: [String : String]? {
  127. return nil
  128. }
  129. }