OOContactExpressAPI.swift 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. //
  2. // OOContactExpressAPI.swift
  3. // O2Platform
  4. //
  5. // Created by FancyLou on 2019/8/13.
  6. // Copyright © 2019 zoneland. All rights reserved.
  7. //
  8. import Moya
  9. import O2OA_Auth_SDK
  10. //x_organization_assemble_express
  11. enum OOContactExpressAPI {
  12. //根据职务列表和组织查询 组织下对应的身份列表
  13. case identityListByUnitAndDuty([String], String)
  14. }
  15. extension OOContactExpressAPI: OOAPIContextCapable {
  16. var apiContextKey: String {
  17. return "x_organization_assemble_express"
  18. }
  19. }
  20. extension OOContactExpressAPI: OOAccessTokenAuthorizable {
  21. var shouldAuthorize: Bool {
  22. return true
  23. }
  24. }
  25. extension OOContactExpressAPI: TargetType {
  26. var baseURL: URL {
  27. let model = O2AuthSDK.shared.o2APIServer(context: .x_organization_assemble_express)
  28. let baseURLString = "\(model?.httpProtocol ?? "http")://\(model?.host ?? ""):\(model?.port ?? 0)\(model?.context ?? "")"
  29. return URL(string: baseURLString)!
  30. }
  31. var path: String {
  32. switch self {
  33. case .identityListByUnitAndDuty(_, _):
  34. return "/jaxrs/unitduty/list/identity/unit/name/object"
  35. }
  36. }
  37. var method: Moya.Method {
  38. switch self {
  39. case .identityListByUnitAndDuty(_, _):
  40. return .post
  41. }
  42. }
  43. var sampleData: Data {
  44. return "".data(using: String.Encoding.utf8)!
  45. }
  46. var task: Task {
  47. switch self {
  48. case .identityListByUnitAndDuty(let dutyList, let unit):
  49. return .requestParameters(parameters: ["nameList": dutyList, "unit": unit], encoding: JSONEncoding.default)
  50. }
  51. }
  52. var headers: [String : String]? {
  53. return nil
  54. }
  55. }