Browse Source

音乐相关接口调通

Chris 5 years ago
parent
commit
a8b20649a8

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

@@ -547,6 +547,7 @@
 		BD2FCBE622B2586C0006D974 /* CommunityTagCollectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD2FCBE522B2586C0006D974 /* CommunityTagCollectionCell.swift */; };
 		BD2FCBEA22B267280006D974 /* RecommendNoneCommentCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD2FCBE922B267280006D974 /* RecommendNoneCommentCell.swift */; };
 		BD3474F522857B85000908C5 /* CommonPayHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD3474F422857B85000908C5 /* CommonPayHeader.swift */; };
+		BD377DA422DEC2CA00D5B903 /* CommunityMusicCategoryListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD377DA322DEC2CA00D5B903 /* CommunityMusicCategoryListModel.swift */; };
 		BD37E38322CDF5BA003A14A2 /* CommunityVideoTopicView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD37E38222CDF5BA003A14A2 /* CommunityVideoTopicView.swift */; };
 		BD37E38522CDF91A003A14A2 /* CommunityVideoSelTopicCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD37E38422CDF91A003A14A2 /* CommunityVideoSelTopicCell.swift */; };
 		BD37E38722CE200E003A14A2 /* CommunityAllCommentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD37E38622CE200E003A14A2 /* CommunityAllCommentView.swift */; };
@@ -1273,6 +1274,7 @@
 		BD2FCBE522B2586C0006D974 /* CommunityTagCollectionCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityTagCollectionCell.swift; sourceTree = "<group>"; };
 		BD2FCBE922B267280006D974 /* RecommendNoneCommentCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecommendNoneCommentCell.swift; sourceTree = "<group>"; };
 		BD3474F422857B85000908C5 /* CommonPayHeader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommonPayHeader.swift; sourceTree = "<group>"; };
+		BD377DA322DEC2CA00D5B903 /* CommunityMusicCategoryListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityMusicCategoryListModel.swift; sourceTree = "<group>"; };
 		BD37E38222CDF5BA003A14A2 /* CommunityVideoTopicView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityVideoTopicView.swift; sourceTree = "<group>"; };
 		BD37E38422CDF91A003A14A2 /* CommunityVideoSelTopicCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityVideoSelTopicCell.swift; sourceTree = "<group>"; };
 		BD37E38622CE200E003A14A2 /* CommunityAllCommentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommunityAllCommentView.swift; sourceTree = "<group>"; };
@@ -4142,6 +4144,7 @@
 				A7C2567D22CD90D700420828 /* CommunityPostReplysModel.swift */,
 				A770E5E822D383E500CBD0A4 /* CommunityCustomCommnetModel.swift */,
 				BD10121022DEBAF0008DF528 /* CommunityRecommendMusicListModel.swift */,
+				BD377DA322DEC2CA00D5B903 /* CommunityMusicCategoryListModel.swift */,
 			);
 			path = CommunityModel;
 			sourceTree = "<group>";
@@ -6232,6 +6235,7 @@
 				BD13B6C522BA034D008BB323 /* PublishEditAddAddressCell.swift in Sources */,
 				A7B4E71F228131720012914A /* ProductSlidingLeftRightCollectionViewCell.swift in Sources */,
 				BD37E38722CE200E003A14A2 /* CommunityAllCommentView.swift in Sources */,
+				BD377DA422DEC2CA00D5B903 /* CommunityMusicCategoryListModel.swift in Sources */,
 				A7778CA92244904500C7C47A /* Extension+Gifu.GIFImageView.swift in Sources */,
 				A71738AB22898660000AEA6A /* ShopModel.swift in Sources */,
 				A7FF1557228AC3E800A85748 /* ProductAllCommentViewController.swift in Sources */,

+ 53 - 0
RainbowPlanet/RainbowPlanet/Model/CommunityModel/CommunityMusicCategoryListModel.swift

@@ -0,0 +1,53 @@
+//
+//  CommunityMusicCategoryListModel.swift
+//  RainbowPlanet
+//
+//  Created by Christopher on 2019/7/17.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//  音乐分类のModel
+
+import Foundation
+import ObjectMapper
+
+class CommunityMusicCategoryListModel : NSObject, Mappable{
+    
+    var data : [MusicCategoryItemModel]?
+    var pagination : PaginationModel?
+    
+    
+    class func newInstance(map: Map) -> Mappable?{
+        return CommunityMusicCategoryListModel()
+    }
+    required init?(map: Map){}
+    private override init(){}
+    
+    func mapping(map: Map)
+    {
+        data <- map["data"]
+        pagination <- map["pagination"]
+        
+    }
+    
+}
+
+
+class MusicCategoryItemModel : NSObject, Mappable{
+    
+    var id : Int?
+    var name : String?
+    
+    
+    class func newInstance(map: Map) -> Mappable?{
+        return MusicCategoryItemModel()
+    }
+    required init?(map: Map){}
+    private override init(){}
+    
+    func mapping(map: Map)
+    {
+        id <- map["id"]
+        name <- map["name"]
+        
+    }
+    
+}

+ 60 - 5
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishMusicAbout/PublishMusicChooseView.swift

@@ -157,16 +157,13 @@ class PublishMusicChooseView: FWPopupView {
         view.vProperty = vProperty
         view.show()
         
-        view.cancelButton.rx.tap.subscribe(onNext: { (data) in
-            print("----点击了-取消")
+        view.cancelButton.rx.tap.subscribe(onNext: { (data) in            
             view.hide()
             
         }).disposed(by: view.disposeBag)
         
         
-        view.recommendButton.rx.tap.subscribe(onNext: {
-            [weak view] (data) in
-//            view?.hide()
+        view.recommendButton.rx.tap.subscribe(onNext: { (data) in
             Mediator.push(PublishRouterModuleType.push)
             
         }).disposed(by: view.disposeBag)
@@ -185,3 +182,61 @@ class PublishMusicChooseView: FWPopupView {
     }
     
 }
+
+// MARK: - 网络请求
+extension PublishMusicChooseView {
+    /// 热门推荐音乐列表
+    func communityRecMusicListApi(page:Int) {
+        SwiftMoyaNetWorkServiceCommunity.shared().communityRecMusicListApi(page: page) { (recommendMusicListModel) -> (Void) in
+            let recommendMusicListModel = recommendMusicListModel as? CommunityRecommendMusicListModel
+            if recommendMusicListModel?.pagination?.currentPage ?? 1 <= recommendMusicListModel?.pagination?.totalPages ?? 1 {
+                
+            } else {
+                
+            }                        
+            
+//            if communityRecommendFeedModel?.pagination?.currentPage ?? 1  <= communityRecommendFeedModel?.pagination?.totalPages ?? 1 {
+//                if communityRecommendFeedModel?.pagination?.currentPage == 1{
+//                    self?.communityRecommendDataModels.removeAll()
+//                }
+//                self?.communityRecommendDataModels = (self?.communityRecommendDataModels)! + (communityRecommendFeedModel?.data!)!
+//                self?.tableView.reloadData()
+//                if  self?.communityRecommendDataModels.count ?? 0 >= communityRecommendFeedModel?.pagination?.total ?? 0 {
+//                    self?.tableView.endFooterNoMoreData()
+//                }
+//            }else {
+//                self?.tableView.endFooterNoMoreData()
+//            }
+        }
+        
+    }
+    
+    /// 获取音乐分类
+    func communityGetMusicCategoryApi(page:Int) {
+        SwiftMoyaNetWorkServiceCommunity.shared().communityGetMusicCategoryApi(page: page) { (musicCategoryListModel) -> (Void) in
+            let musicCategoryListModel = musicCategoryListModel as? CommunityMusicCategoryListModel
+            if musicCategoryListModel?.pagination?.currentPage ?? 1 <= musicCategoryListModel?.pagination?.totalPages ?? 1 {
+                
+            } else {
+                
+            }
+        }
+        
+        self.communityCateMusicListApi(page: 1, categoryId: 1)
+        
+    }
+    
+    /// 获取分类下所有音乐
+    func communityCateMusicListApi(page:Int, categoryId:Int) {
+        SwiftMoyaNetWorkServiceCommunity.shared().communityCateMusicListApi(categoryID: categoryId, page: page) { (categoryMusicListModel) -> (Void) in
+            let categoryMusicListModel = categoryMusicListModel as? CommunityRecommendMusicListModel
+            if categoryMusicListModel?.pagination?.currentPage ?? 1 <= categoryMusicListModel?.pagination?.totalPages ?? 1 {
+                
+            } else {
+                
+            }
+        }
+        
+    }
+}
+

+ 32 - 0
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaNetWorkServiceCommunity.swift

@@ -222,6 +222,38 @@ public class SwiftMoyaNetWorkServiceCommunity: NSObject {
         }
     }
     
+    /// 获取音乐分类
+    ///
+    /// - Parameters:
+    ///   - page: 分页
+    ///   - completion: 回调
+    func communityGetMusicCategoryApi(page:Int = 1,completion: @escaping apiCallBack) {
+        var parameters = Dictionary<String,Any>()
+        parameters.updateValue(page, forKey: "page")
+        
+        SwiftMoyaNetWorkManager.shared.requestObject(CommunityMusicCategoryListModel.self, target: MultiTarget(SwiftMoyaServiceCommunityApi.communityGetMusicCategory(parameters: parameters))) { (communityMusicCategoryListModel) in
+            SwiftProgressHUD.shared().hide()
+            completion(communityMusicCategoryListModel)
+        }
+    }
+    
+    /// 获取分类下所有音乐
+    ///
+    /// - Parameters:
+    ///   - category_id: 分类ID
+    ///   - page: 分页
+    ///   - completion: 回调
+    func communityCateMusicListApi(categoryID:Int = 0, page:Int = 1, completion: @escaping apiCallBack) {
+        var parameters = Dictionary<String,Any>()
+        parameters.updateValue(categoryID, forKey: "category_id")
+        parameters.updateValue(page, forKey: "page")
+        
+        SwiftMoyaNetWorkManager.shared.requestObject(CommunityRecommendMusicListModel.self, target: MultiTarget(SwiftMoyaServiceCommunityApi.communityCateMusicList(parameters: parameters))) { (communityMusicListModel) in
+            SwiftProgressHUD.shared().hide()
+            completion(communityMusicListModel)
+        }
+    }
+    
     // MARK: - 多关注页面feed流
     /// 多关注页面feed流
     ///