MVMineViewModel.swift 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. //
  2. // MVMineViewModel.swift
  3. // MusicVideoPlus
  4. //
  5. // Created by SanW on 2021/6/22.
  6. //
  7. import BFFramework
  8. import UIKit
  9. class MVMineViewModel: NSObject {
  10. /// 分页获取我的视频
  11. /// - Parameters:
  12. /// - pageNum: 第几页
  13. /// - pageSize: 一页多少
  14. /// - completeHander: <#completeHander description#>
  15. class func userVideoListData(pageNum: Int = 1, pageSize: Int = 20, completeHander: @escaping (_ videoLists: [PQVideoListModel]?, _ msg: String?) -> Void) {
  16. SWNetRequest.postRequestData(url: PQENVUtil.shared.clipapiapi + userVideoListUrl, parames: ["pageNum": pageNum, "pageSize": pageSize]) { response, _, error, _ in
  17. if response is NSNull || response == nil {
  18. completeHander(nil, error?.msg)
  19. } else {
  20. let temResponseArr: [[String: Any]]? = response as? [[String: Any]]
  21. if temResponseArr != nil {
  22. var videoLists = Array<PQVideoListModel>.init()
  23. temResponseArr?.forEach { dic in
  24. let tempModel = PQVideoListModel(jsonDict: dic)
  25. let userInfo = PQUserInfoModel()
  26. userInfo.nickName = BFLoginUserInfo.shared.nickName
  27. tempModel.userInfo = userInfo
  28. videoLists.append(tempModel)
  29. }
  30. completeHander(videoLists, error?.msg)
  31. } else {
  32. completeHander(nil, error?.msg)
  33. }
  34. }
  35. }
  36. }
  37. /// 获取用户信息
  38. /// - Parameter completeHander: <#completeHander description#>
  39. class func userInfoData(completeHander: @escaping (_ videoCount: Int?, _ avatarUrl: String?, _ nickName: String?, _ msg: String?) -> Void) {
  40. SWNetRequest.postRequestData(url: PQENVUtil.shared.clipapiapi + userInfoUrl, parames: nil) { response, _, error, _ in
  41. if response is NSNull || response == nil {
  42. completeHander(nil, nil, nil, error?.msg ?? "加载失败")
  43. } else {
  44. let videoCount: Int? = Int("\((response as? [String: Any])?["videoCount"] ?? "0")")
  45. let avatarUrl: String? = "\((response as? [String: Any])?["avatarUrl"] ?? "")"
  46. let nickName: String? = "\((response as? [String: Any])?["nickName"] ?? "")"
  47. completeHander(videoCount, avatarUrl, nickName, nil)
  48. }
  49. }
  50. }
  51. }