Browse Source

音乐相关接口 to be continued

Chris 5 years ago
parent
commit
f352a95ee8

+ 4 - 0
RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj

@@ -463,6 +463,7 @@
 		BD0FAA6322C4C35E00DDFB37 /* AliyunCropViewBottomView.m in Sources */ = {isa = PBXBuildFile; fileRef = BD0FAA5D22C4C35D00DDFB37 /* AliyunCropViewBottomView.m */; };
 		BD0FAA6422C4C35E00DDFB37 /* AliyunCropThumbnailView.m in Sources */ = {isa = PBXBuildFile; fileRef = BD0FAA5F22C4C35D00DDFB37 /* AliyunCropThumbnailView.m */; };
 		BD0FAA6522C4C35E00DDFB37 /* AliyunCycleProgressView.m in Sources */ = {isa = PBXBuildFile; fileRef = BD0FAA6122C4C35E00DDFB37 /* AliyunCycleProgressView.m */; };
+		BD10121122DEBAF0008DF528 /* CommunityRecommendMusicListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD10121022DEBAF0008DF528 /* CommunityRecommendMusicListModel.swift */; };
 		BD108C9322A60C2100837DAB /* HGImageCompleteButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD108C8E22A60C2100837DAB /* HGImageCompleteButton.swift */; };
 		BD108C9422A60C2100837DAB /* HGImageCollectionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD108C8F22A60C2100837DAB /* HGImageCollectionViewController.swift */; };
 		BD108C9522A60C2100837DAB /* HGImageCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD108C9022A60C2100837DAB /* HGImageCollectionViewCell.swift */; };
@@ -1179,6 +1180,7 @@
 		BD0FAA6022C4C35E00DDFB37 /* AliyunCropThumbnailView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AliyunCropThumbnailView.h; sourceTree = "<group>"; };
 		BD0FAA6122C4C35E00DDFB37 /* AliyunCycleProgressView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AliyunCycleProgressView.m; sourceTree = "<group>"; };
 		BD0FAA6222C4C35E00DDFB37 /* AliyunCropViewBottomView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AliyunCropViewBottomView.h; sourceTree = "<group>"; };
+		BD10121022DEBAF0008DF528 /* CommunityRecommendMusicListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityRecommendMusicListModel.swift; sourceTree = "<group>"; };
 		BD108C8E22A60C2100837DAB /* HGImageCompleteButton.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HGImageCompleteButton.swift; sourceTree = "<group>"; };
 		BD108C8F22A60C2100837DAB /* HGImageCollectionViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HGImageCollectionViewController.swift; sourceTree = "<group>"; };
 		BD108C9022A60C2100837DAB /* HGImageCollectionViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HGImageCollectionViewCell.swift; sourceTree = "<group>"; };
@@ -4139,6 +4141,7 @@
 				A7C2567B22CD8EEE00420828 /* CommunityPostCommentsModel.swift */,
 				A7C2567D22CD90D700420828 /* CommunityPostReplysModel.swift */,
 				A770E5E822D383E500CBD0A4 /* CommunityCustomCommnetModel.swift */,
+				BD10121022DEBAF0008DF528 /* CommunityRecommendMusicListModel.swift */,
 			);
 			path = CommunityModel;
 			sourceTree = "<group>";
@@ -5994,6 +5997,7 @@
 				A770E5F522D5BC2000CBD0A4 /* CommonH5.swift in Sources */,
 				A739121D229F75F50033177E /* JXPagingListContainerView.swift in Sources */,
 				A72A7386223396CB00B21995 /* SwiftMoyaNetWorkManager.swift in Sources */,
+				BD10121122DEBAF0008DF528 /* CommunityRecommendMusicListModel.swift in Sources */,
 				A7E19FAA22BA2CF1009BCCE1 /* SearchUserListViewController.swift in Sources */,
 				A7D07CCD22B77D2E00186014 /* UserPersonalCenterOrderView.swift in Sources */,
 				A70B2C252286C03800B2449F /* NXLPageControl.swift in Sources */,

+ 63 - 0
RainbowPlanet/RainbowPlanet/Model/CommunityModel/CommunityRecommendMusicListModel.swift

@@ -0,0 +1,63 @@
+//
+//  CommunityRecommendMusicListModel.swift
+//  RainbowPlanet
+//
+//  Created by Christopher on 2019/7/17.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//
+
+import Foundation
+import ObjectMapper
+
+// 热门推荐ModelList
+class CommunityRecommendMusicListModel : NSObject, Mappable{
+    
+    var data : [CommunityMusicItemModel]?
+    var pagination : PaginationModel?
+    
+    
+    class func newInstance(map: Map) -> Mappable?{
+        return CommunityRecommendMusicListModel()
+    }
+    required init?(map: Map){}
+    private override init(){}
+    
+    func mapping(map: Map)
+    {
+        data <- map["data"]
+        pagination <- map["pagination"]
+        
+    }
+    
+}
+
+
+// 歌曲Model
+class CommunityMusicItemModel : NSObject, Mappable{
+    
+    var id : Int?
+    var img : String?
+    var musicDuration : Int?
+    var name : String?
+    var singer : String?
+    var url : String?
+    
+    
+    class func newInstance(map: Map) -> Mappable?{
+        return CommunityMusicItemModel()
+    }
+    required init?(map: Map){}
+    private override init(){}
+    
+    func mapping(map: Map)
+    {
+        id <- map["id"]
+        img <- map["img"]
+        musicDuration <- map["music_duration"]
+        name <- map["name"]
+        singer <- map["singer"]
+        url <- map["url"]
+        
+    }
+    
+}

+ 3 - 1
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishMusicAbout/PublishRecommendMusicController.swift

@@ -147,7 +147,9 @@ extension PublishRecommendMusicController {
         let uid = UserModel.shared().getModel()?.uid ?? 0
         
         SwiftMoyaNetWorkServiceCommunity.shared().communityUploadMusicApi(name: name, username: userName, url: url, uid: uid) { (data) -> (Void) in
-            print("------data == \(data)")
+            // 上传成功,返回
+            SwiftProgressHUD.shared().showText("提交成功")
+            self.navigationController?.popViewController(animated: true)
         }
         
     }

+ 19 - 7
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaNetWorkServiceCommunity.swift

@@ -182,11 +182,14 @@ public class SwiftMoyaNetWorkServiceCommunity: NSObject {
         }
     }
     
+    // MARK: - 音乐相关
     /// 用户上传音乐
     ///
     /// - Parameters:
-    ///   - postId: 内容id
-    ///   - page: 分页
+    ///   - name: 音乐名称
+    ///   - username: 上传用户
+    ///   - url: 音乐路径
+    ///   - uid: 用户ID
     ///   - completion: 回调
     func communityUploadMusicApi(name:String = "", username:String = "", url:String = "", uid:Int = 0, completion: @escaping apiCallBack) {
         var parameters = Dictionary<String,Any>()
@@ -202,12 +205,21 @@ public class SwiftMoyaNetWorkServiceCommunity: NSObject {
                 completion("")
             }
         }
+    }
+    
+    /// 热门推荐音乐列表
+    ///
+    /// - Parameters:
+    ///   - page: 分页
+    ///   - completion: 回调
+    func communityRecMusicListApi(page:Int = 1,completion: @escaping apiCallBack) {
+        var parameters = Dictionary<String,Any>()
+        parameters.updateValue(page, forKey: "page")
         
-        
-//        SwiftMoyaNetWorkManager.shared.requestObject(CommunityPostCommentsModel.self,target: MultiTarget(SwiftMoyaServiceCommunityApi.communityPostComments(parameters: parameters))) {  (communityPostCommentsModel) in
-//            SwiftProgressHUD.shared().hide()
-//            completion(communityPostCommentsModel)
-//        }
+        SwiftMoyaNetWorkManager.shared.requestObject(CommunityRecommendMusicListModel.self, target: MultiTarget(SwiftMoyaServiceCommunityApi.communityRecMusicList(parameters: parameters))) { (communityRecommendMusicListModel) in
+            SwiftProgressHUD.shared().hide()
+            completion(communityRecommendMusicListModel)
+        }
     }
     
     // MARK: - 多关注页面feed流

+ 28 - 4
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaServiceCommunityApi.swift

@@ -123,6 +123,9 @@ public let kCommunityCateMusicListApi = "/community/music"
 /// - communityPostReply : 回复列表
 /// - communityPostComment : 评论&回复
 /// - communityUploadMusic : 用户上传音乐
+/// - communityRecMusicList : 热门推荐音乐列表
+/// - communityGetMusicCategory : 获取音乐分类
+/// - communityCateMusicList : 获取分类下所有音乐
 
 public enum SwiftMoyaServiceCommunityApi {
     case communityTopicCategory(parameters:Dictionary<String, Any>)
@@ -145,6 +148,9 @@ public enum SwiftMoyaServiceCommunityApi {
     case communityPostReply(parameters:Dictionary<String, Any>)
     case communityPostComment(parameters:Dictionary<String, Any>)
     case communityUploadMusic(parameters:Dictionary<String, Any>)
+    case communityRecMusicList(parameters:Dictionary<String, Any>)
+    case communityGetMusicCategory(parameters:Dictionary<String, Any>)
+    case communityCateMusicList(parameters:Dictionary<String, Any>)
 }
 
 extension SwiftMoyaServiceCommunityApi: TargetType {
@@ -170,7 +176,10 @@ extension SwiftMoyaServiceCommunityApi: TargetType {
              .communityPostComments,
              .communityPostReply,
              .communityPostComment,
-             .communityUploadMusic
+             .communityUploadMusic,
+             .communityRecMusicList,
+             .communityGetMusicCategory,
+             .communityCateMusicList
             :
             return URL(string: kApiDataPrefix())!
         }
@@ -218,6 +227,12 @@ extension SwiftMoyaServiceCommunityApi: TargetType {
             return kCommunityPostCommentApi
         case .communityUploadMusic:
             return kCommunityUploadMusicApi
+        case .communityRecMusicList:
+            return kCommunityRecMusicListApi
+        case .communityGetMusicCategory:
+            return kCommunityGetMusicCategoryApi
+        case .communityCateMusicList:
+            return kCommunityCateMusicListApi
         }
     }
     
@@ -243,7 +258,10 @@ extension SwiftMoyaServiceCommunityApi: TargetType {
              .communityMemberFollowTopicList,
              .communityPostDetail,
              .communityPostComments,
-             .communityPostReply
+             .communityPostReply,
+             .communityRecMusicList,
+             .communityGetMusicCategory,
+             .communityCateMusicList
             :
             return .get
         case .communityMemberFollowTopicCancelFollow
@@ -275,7 +293,10 @@ extension SwiftMoyaServiceCommunityApi: TargetType {
              .communityPostComments(var parameters),
              .communityPostReply(var parameters),
              .communityPostComment(var parameters),
-             .communityUploadMusic(var parameters)
+             .communityUploadMusic(var parameters),
+             .communityRecMusicList(var parameters),
+             .communityGetMusicCategory(var parameters),
+             .communityCateMusicList(var parameters)
             :
             let sign = SwiftSign.shared().sign(signType:.AccessToken, parameters: parameters)
             parameters.updateValue(sign, forKey: "sign")
@@ -317,7 +338,10 @@ extension SwiftMoyaServiceCommunityApi: TargetType {
              .communityPostComments,
              .communityPostReply,
              .communityPostComment,
-             .communityUploadMusic
+             .communityUploadMusic,
+             .communityRecMusicList,
+             .communityGetMusicCategory,
+             .communityCateMusicList
             :
             return (headerParameters(headerType: .tokenHeader) as! [String : String])
         }