LoginAPI.swift 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. //
  2. // LoginAPI.swift
  3. // JiaPeiManage
  4. //
  5. // Created by Ning.ge on 2023/6/12.
  6. //
  7. import Moya
  8. import SwiftyUserDefaults
  9. enum LoginAPI {
  10. //登录
  11. case loginUser(user_name:String, user_password:String ,city:String)
  12. //修改密码
  13. case updateUser(user_name:String, user_password:String, new_password:String,city:String)
  14. //根据字典类型查询字典数据信息
  15. case dictUser(dictType:String)
  16. }
  17. extension LoginAPI: TargetType {
  18. var isShowLoading:Bool { return true }
  19. var baseURL: URL {
  20. switch self {
  21. case .loginUser,.updateUser,.dictUser:
  22. return URL(string: HttpRequest.api.path)!
  23. }
  24. }
  25. var path: String {
  26. switch self {
  27. case .loginUser(_,_,_):
  28. return "/jsjp-admin/open-api/tms/coachInfo/coachInfoLogin"
  29. case .updateUser(_,_,_,_):
  30. return "/jsjp-admin/open-api/tms/coachInfo/updateCoachPassword"
  31. case .dictUser(_):
  32. if let parameters = parameters {
  33. return "/jsjp-admin/open-api/gzpt/userInfo/type/\(parameters["dictType"] ?? "")"
  34. }
  35. return ""
  36. }
  37. }
  38. var method: Moya.Method {
  39. switch self {
  40. case .loginUser,.dictUser:
  41. return .get
  42. case .updateUser:
  43. return .put
  44. default:
  45. return .get
  46. }
  47. }
  48. var sampleData: Data {
  49. return Data()
  50. }
  51. var task: Moya.Task {
  52. switch self {
  53. case .loginUser(_,_,_):
  54. if let parameters = parameters {
  55. return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
  56. }
  57. return .requestPlain
  58. case .updateUser(_,_,_,_):
  59. if let parameters = parameters {
  60. return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
  61. }
  62. return .requestPlain
  63. case .dictUser(_):
  64. return .requestPlain
  65. }
  66. }
  67. var headers: [String: String]? {
  68. switch self {
  69. case .updateUser:
  70. return ["Content-Type":"application/x-www-form-urlencoded"]
  71. default:
  72. return ["Content-Type":"application/json"]
  73. }
  74. }
  75. var parameters: [String : Any]? {
  76. switch self {
  77. case let .loginUser(user_name, user_password,city):
  78. return ["city": city,
  79. "idcard": user_name,
  80. "password":user_password,]
  81. case let .updateUser(user_name, user_password,new_password, city):
  82. return ["city": city,
  83. "idcard": user_name,
  84. "password":user_password,
  85. "newPassword":new_password,]
  86. case let .dictUser(dictType):
  87. return ["dictType": dictType]
  88. default:
  89. return nil
  90. }
  91. }
  92. var urlParameters: [String: Any]? {
  93. var parameters = parameters
  94. // if let extendsParameters = ["":""] {
  95. // parameters = parameters?.merging(extendsParameters) { $1 } //组合
  96. // }
  97. return parameters
  98. }
  99. }