StatisticsAPI.swift 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. //
  2. // StatisticsAPI.swift
  3. // JiaPeiManage
  4. //
  5. // Created by Ning.ge on 2023/6/26.
  6. //
  7. import Moya
  8. import SwiftyUserDefaults
  9. enum StatisticsAPI {
  10. //查询每日报名数
  11. case everyDayStuCount(city:String,schoolId:Int,startDate:String, endDate:String,fieldType:Int,sortType:Int)
  12. //查询每月报名数
  13. case everyMonthStuCount(city:String,schoolId:Int,startMonth:String, endMonth:String,fieldType:Int,sortType:Int)
  14. //查询每年报名数
  15. case everyYearStuCount(city:String,schoolId:Int,startYear:String, endYear:String,fieldType:Int,sortType:Int)
  16. //查询驾校ID 报名数
  17. case statisticsStuCount(city:String,schoolId:Int)
  18. }
  19. extension StatisticsAPI: TargetType {
  20. var baseURL: URL {
  21. switch self {
  22. case .everyDayStuCount,.everyMonthStuCount,.everyYearStuCount,.statisticsStuCount:
  23. return URL(string: HttpRequest.api.path)!
  24. }
  25. }
  26. var path: String {
  27. switch self {
  28. case .everyDayStuCount(_,_,_,_,_,_):
  29. return "/jsjp-admin/open-api/tms/coachInfo/getEveryDayStuCountBySchoolId"
  30. case .everyMonthStuCount(_,_,_,_,_,_):
  31. return "/jsjp-admin/open-api/tms/coachInfo/getEveryMonthStuCountBySchoolId"
  32. case .everyYearStuCount(_,_,_,_,_,_):
  33. return "/jsjp-admin/open-api/tms/coachInfo/getEveryYearStuCountBySchoolId"
  34. case .statisticsStuCount(_,_):
  35. return "/jsjp-admin/open-api/tms/coachInfo/getStatisticsStuCountBySchoolId"
  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. return .get
  48. }
  49. var sampleData: Data {
  50. return Data()
  51. }
  52. var task: Moya.Task {
  53. switch self {
  54. case .everyDayStuCount(_,_,_,_,_,_):
  55. if let parameters = parameters {
  56. return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
  57. }
  58. return .requestPlain
  59. case .everyMonthStuCount(_,_,_,_,_,_):
  60. if let parameters = parameters {
  61. return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
  62. }
  63. return .requestPlain
  64. case .everyYearStuCount(_,_,_,_,_,_):
  65. if let parameters = parameters {
  66. return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
  67. }
  68. return .requestPlain
  69. case .statisticsStuCount(_,_):
  70. if let parameters = parameters {
  71. return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
  72. }
  73. return .requestPlain
  74. }
  75. }
  76. var headers: [String: String]? {
  77. return ["Content-Type":"application/json"]
  78. }
  79. var parameters: [String : Any]? {
  80. switch self {
  81. case let .everyDayStuCount(city, schoolId,startDate,endDate,fieldType,sortType):
  82. return ["city": city,
  83. "schoolId": schoolId,
  84. "startDate":startDate,
  85. "endDate":endDate,
  86. "fieldType":fieldType,
  87. "sortType":sortType,]
  88. case let .everyMonthStuCount(city, schoolId,startMonth,endMonth,fieldType,sortType):
  89. return ["city": city,
  90. "schoolId": schoolId,
  91. "startMonth":startMonth,
  92. "endMonth":endMonth,
  93. "fieldType":fieldType,
  94. "sortType":sortType,]
  95. case let .everyYearStuCount(city, schoolId,startYear,endYear,fieldType,sortType):
  96. return ["city": city,
  97. "schoolId": schoolId,
  98. "startYear":startYear,
  99. "endYear":endYear,
  100. "fieldType":fieldType,
  101. "sortType":sortType,]
  102. case let .statisticsStuCount(city, schoolId):
  103. return ["city": city,
  104. "schoolId": schoolId]
  105. default:
  106. return nil
  107. }
  108. }
  109. }