南鑫林 5 anni fa
parent
commit
3eb6138c4b
30 ha cambiato i file con 898 aggiunte e 256 eliminazioni
  1. 13 1
      RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj
  2. 20 20
      RainbowPlanet/RainbowPlanet/Manager/MJRefreshManager/MJRefreshManager.swift
  3. 93 0
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/View/Cell/CardContent/PicVideo/CardContentPicVideoCollectionViewCell 2.swift
  4. 226 0
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/View/Cell/CardContent/PicVideo/CardContentPicVideoTableViewCell 2.swift
  5. 10 15
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Follow/CommunityFollowViewController.swift
  6. 6 11
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Recommend/CommunityRecommnendViewController.swift
  7. 13 15
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityFeaturedTopics/ViewController/CommunityFeaturedTopicsViewController.swift
  8. 2 6
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityMyFollowTopic/ViewController/CommunityMyFollowTopicController.swift
  9. 11 14
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityRecommendDetail/Controller/CommunityRecommendController.swift
  10. 9 13
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunitySubComment/ViewController/CommunitySubCommentController.swift
  11. 10 12
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityVideoContent/View/CommunityAllCommentView.swift
  12. 8 12
      RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityVideoSubCommentController/CommunityVideoSubCommentController.swift
  13. 6 11
      RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessageList/ViewController/MessageListController.swift
  14. 6 11
      RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessagePlanetActivity/Controller/MessagePlanetActivityController.swift
  15. 6 11
      RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessagePlanetNotification/Controller/MessagePlanetNotiController.swift
  16. 14 23
      RainbowPlanet/RainbowPlanet/Modules/MineModule/MyFollowAndFan/ViewController/MyFollowAndFanViewController.swift
  17. 8 11
      RainbowPlanet/RainbowPlanet/Modules/MineModule/PersonalCenter/PersonalCenterView/PersonViewUserAndOtherListView.swift
  18. 9 13
      RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishAddTopic/Controller/PublishAddTopicController.swift
  19. 7 12
      RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchContentList/ViewController/SearchContentListViewController.swift
  20. 6 11
      RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchTopicList/ViewController/SearchTopicListViewController.swift
  21. 6 11
      RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchUser/ViewController/SearchUserListViewController.swift
  22. 2 1
      RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaNetWorkServiceCommunity.swift
  23. 385 0
      RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaServiceCommunityApi 2.swift
  24. BIN
      RainbowPlanet/RainbowPlanet/Src/Gif/share_iSpt.gif
  25. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/nav_share_poster.imageset/nav_share_poster@2x.png
  26. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/nav_share_poster.imageset/nav_share_poster@3x.png
  27. 0 22
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/share_pic_poster_floating.imageset/Contents.json
  28. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/share_pic_poster_floating.imageset/share_pic_poster_floating@2x.png
  29. BIN
      RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/share_pic_poster_floating.imageset/share_pic_poster_floating@3x.png
  30. 22 0
      RainbowPlanet/RainbowPlanet/Tools/EmptyView/DIYEmptyView.swift

+ 13 - 1
RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj

@@ -287,6 +287,7 @@
 		A7824B042271F10300ABA381 /* EditSelfMentionContactsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7824B032271F10300ABA381 /* EditSelfMentionContactsView.swift */; };
 		A7824B062271F25400ABA381 /* EditAddressTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7824B052271F25400ABA381 /* EditAddressTableViewCell.swift */; };
 		A7824B082271F53A00ABA381 /* EditSetDefaultTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7824B072271F53A00ABA381 /* EditSetDefaultTableViewCell.swift */; };
+		A78A5F7622FAA03800DD1764 /* share_iSpt.gif in Resources */ = {isa = PBXBuildFile; fileRef = A78A5F7522FAA03800DD1764 /* share_iSpt.gif */; };
 		A78CEE0A22E0864100C512A4 /* BaseLottieAnimateContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A78CEE0922E0864100C512A4 /* BaseLottieAnimateContentView.swift */; };
 		A79057022276C9770037F823 /* SetPasswordModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A79057012276C9770037F823 /* SetPasswordModel.swift */; };
 		A79057062276EA3D0037F823 /* OpenCityListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A79057052276EA3D0037F823 /* OpenCityListModel.swift */; };
@@ -1010,6 +1011,7 @@
 		A7824B032271F10300ABA381 /* EditSelfMentionContactsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditSelfMentionContactsView.swift; sourceTree = "<group>"; };
 		A7824B052271F25400ABA381 /* EditAddressTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditAddressTableViewCell.swift; sourceTree = "<group>"; };
 		A7824B072271F53A00ABA381 /* EditSetDefaultTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditSetDefaultTableViewCell.swift; sourceTree = "<group>"; };
+		A78A5F7522FAA03800DD1764 /* share_iSpt.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = share_iSpt.gif; sourceTree = "<group>"; };
 		A78CEE0922E0864100C512A4 /* BaseLottieAnimateContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseLottieAnimateContentView.swift; sourceTree = "<group>"; };
 		A79057012276C9770037F823 /* SetPasswordModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SetPasswordModel.swift; sourceTree = "<group>"; };
 		A79057052276EA3D0037F823 /* OpenCityListModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OpenCityListModel.swift; sourceTree = "<group>"; };
@@ -2526,6 +2528,7 @@
 		A72C011E227539800065E0C3 /* Src */ = {
 			isa = PBXGroup;
 			children = (
+				A78A5F7422FAA01F00DD1764 /* Gif */,
 				A763BE7A22F28376000CE594 /* Video */,
 				A75B787522E079BC007B986A /* AnimationJSON */,
 				A75B783422DFFDFE007B986A /* json */,
@@ -2739,8 +2742,8 @@
 		A757C9312274882E00226355 /* MJRefreshEX */ = {
 			isa = PBXGroup;
 			children = (
-				A757C9322274882E00226355 /* UIScrollView+MJRefreshEX.m */,
 				A757C9332274882E00226355 /* UIScrollView+MJRefreshEX.h */,
+				A757C9322274882E00226355 /* UIScrollView+MJRefreshEX.m */,
 				A76068F422E4BCF4008DF18F /* MJDIYHeader.swift */,
 				A74DF74822EAAF17007FB505 /* MJDIYFullScreenHeader.swift */,
 			);
@@ -3441,6 +3444,14 @@
 			path = View;
 			sourceTree = "<group>";
 		};
+		A78A5F7422FAA01F00DD1764 /* Gif */ = {
+			isa = PBXGroup;
+			children = (
+				A78A5F7522FAA03800DD1764 /* share_iSpt.gif */,
+			);
+			path = Gif;
+			sourceTree = "<group>";
+		};
 		A79057032276D5FE0037F823 /* ConfigModel */ = {
 			isa = PBXGroup;
 			children = (
@@ -5865,6 +5876,7 @@
 				A75B787C22E07A51007B986A /* shoppingMallModuleTabbar.json in Resources */,
 				A7D77DE922DDBEF70048D5F6 /* RedemptionAreaModule.xcassets in Resources */,
 				A75B787A22E07A51007B986A /* messageModuleTabbar.json in Resources */,
+				A78A5F7622FAA03800DD1764 /* share_iSpt.gif in Resources */,
 				BDD5483422C31752005BBE19 /* AlivcShortVideoImage.bundle in Resources */,
 				A7CC74DE22703B4A003C4F38 /* MineModule.xcassets in Resources */,
 				A7BF202422B392D600396DB3 /* CommunityModule.xcassets in Resources */,

+ 20 - 20
RainbowPlanet/RainbowPlanet/Manager/MJRefreshManager/MJRefreshManager.swift

@@ -27,22 +27,19 @@ class MJRefreshManager: NSObject {
         tableView?.ly_endLoading()
     }
     
-    class func hiddenFooterNoMoreData(tableView : UITableView?) {
-        tableView?.endFooterNoMoreData()
-        tableView?.ly_endLoading()
-    }
-    
     
-    class func hiddenHeaderWithFooter(tableView : UITableView?,currentPage:Int?,totalPages:Int?) {
+    class func hiddenHeaderWithFooter(tableView : UITableView?,pagination : PaginationModel?) {
         
         tableView?.endHeaderRefresh()
         tableView?.endFooterRefresh()
-
-        if totalPages == 1 && currentPage == 1 {
-            tableView?.endFooterNoMoreData()
-        }
-        if  currentPage ?? 1  >= totalPages ?? 1 {
-            tableView?.endFooterNoMoreData()
+        
+        if pagination?.total == 0 {
+            tableView?.isHiddenFooter(true)
+        }else {
+            if  pagination?.currentPage ?? 1  >= pagination?.totalPages ?? 1  {
+                tableView?.endFooterNoMoreData()
+                tableView?.mj_footer.pullingPercent = 1
+            }
         }
         
         tableView?.ly_endLoading()
@@ -56,11 +53,6 @@ class MJRefreshManager: NSObject {
         collectionView?.ly_endLoading()
     }
     
-    class func hiddenFooterNoMoreData(collectionView : UICollectionView?) {
-        collectionView?.endFooterNoMoreData()
-        collectionView?.ly_endLoading()
-    }
-    
     class func hiddenHeaderWithFooterNONetWork(collectionView : UICollectionView?) {
         DIYEmptyView.emptyNoDataActionCollectionView(collectionView: collectionView, btnClickBlock: {
             [weak collectionView] in
@@ -71,12 +63,20 @@ class MJRefreshManager: NSObject {
         collectionView?.ly_endLoading()
     }
     
-    class func hiddenHeaderWithFooter(collectionView : UICollectionView?,currentPage:Int?,totalPages:Int?) {
+    class func hiddenHeaderWithFooter(collectionView : UICollectionView?,pagination : PaginationModel?) {
+        
         collectionView?.endHeaderRefresh()
         collectionView?.endFooterRefresh()
-        if  currentPage ?? 1  >= totalPages ?? 1 {
-            collectionView?.endFooterNoMoreData()
+        
+        if pagination?.total == 0 {
+            collectionView?.isHiddenFooter(true)
+        }else {
+            if  pagination?.currentPage ?? 1  >= pagination?.totalPages ?? 1  {
+                collectionView?.endFooterNoMoreData()
+                collectionView?.mj_footer.pullingPercent = 1
+            }
         }
+
         collectionView?.ly_endLoading()
     }
 }

+ 93 - 0
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/View/Cell/CardContent/PicVideo/CardContentPicVideoCollectionViewCell 2.swift

@@ -0,0 +1,93 @@
+//
+//  CardContentPicVideoCollectionViewCell.swift
+//  RainbowPlanet
+//
+//  Created by 南鑫林 on 2019/6/13.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//
+
+import UIKit
+
+class CardContentPicVideoCollectionViewCell: UICollectionViewCell {
+    class func cellWith(collectionView:UICollectionView,indexPath:IndexPath) -> CardContentPicVideoCollectionViewCell {
+        let ID = "CardContentPicVideoCollectionViewCell"
+        collectionView.register(CardContentPicVideoCollectionViewCell.self, forCellWithReuseIdentifier: ID)
+        let cell : CardContentPicVideoCollectionViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: ID, for: indexPath) as! CardContentPicVideoCollectionViewCell
+        cell.indexPath = indexPath
+        return cell
+    }
+    //MARK: - indexPath
+    var indexPath: IndexPath?{
+        didSet {
+            
+        }
+    }
+    //MARK: - 初始化
+    override init(frame: CGRect) {
+        super.init(frame: frame)
+        setupViews()
+        setupLayouts()
+    }
+    
+    required init?(coder aDecoder: NSCoder) {
+        fatalError("init(coder:) has not been implemented")
+    }
+    
+    //MARK: - 设置view
+    private func setupViews() {
+        backgroundColor = .gray
+        self.cornerRadius = 2
+        self.masksToBounds = true
+        addSubview(iconImageView)
+        addSubview(pauseImageView)
+    }
+    
+    private func setupLayouts() {
+        iconImageView.snp_makeConstraints { (make) in
+            make.edges.equalToSuperview()
+        }
+        pauseImageView.snp_makeConstraints { (make) in
+            make.center.equalToSuperview()
+        }
+    }
+    
+    private lazy var iconImageView: UIImageView = {
+        let iconImageView = UIImageView.init(image: kImage(name: "default_pic"))
+        iconImageView.contentMode = .scaleAspectFill
+        iconImageView.isUserInteractionEnabled = true
+        return iconImageView
+    }()
+    
+    private lazy var pauseImageView: UIImageView = {
+        let pauseImageView = UIImageView.init(image: kImage(name: "btn_pause"))
+        pauseImageView.isUserInteractionEnabled = true
+        return pauseImageView
+    }()
+    
+    var imgStr: String? {
+        didSet {
+            iconImageView.kf.setImage(with: kURLImage(name: imgStr ?? ""), placeholder: kImage(name: "default_pic"))
+        }
+    }
+    
+    var communityRecommendDataModel: CommunityRecommendDataModel? {
+        didSet {
+            if PostType(rawValue: communityRecommendDataModel?.type ?? "") == .video {
+                pauseImageView.isHidden = false
+            }else {
+                pauseImageView.isHidden = true
+            }
+        }
+    }
+    
+    var communityFollowDataModel: CommunityFollowDataModel? {
+        didSet {
+            if PostType(rawValue: communityFollowDataModel?.relateData?.type ?? "") == .video {
+                pauseImageView.isHidden = false
+            }else {
+                pauseImageView.isHidden = true
+                
+            }
+        }
+    }
+}

+ 226 - 0
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/View/Cell/CardContent/PicVideo/CardContentPicVideoTableViewCell 2.swift

@@ -0,0 +1,226 @@
+//
+//  CardContentPicTableViewCell.swift
+//  RainbowPlanet
+//
+//  Created by 南鑫林 on 2019/6/13.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//
+
+import UIKit
+
+class CardContentPicVideoTableViewCell: UITableViewCell {
+    
+    class func cellWith(tableView:UITableView,indexPath:IndexPath) -> CardContentPicVideoTableViewCell {
+        let ID = "CardContentPicVideoTableViewCell"
+        tableView.register(CardContentPicVideoTableViewCell.self, forCellReuseIdentifier: ID)
+        let cell : CardContentPicVideoTableViewCell = tableView.dequeueReusableCell(withIdentifier: ID, for: indexPath) as! CardContentPicVideoTableViewCell
+        cell.indexPath = indexPath
+        return cell
+    }
+    
+    override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
+        super.init(style: style, reuseIdentifier: reuseIdentifier)
+        setupViews()
+        setupLayouts()
+    }
+    
+    required init?(coder aDecoder: NSCoder) {
+        fatalError("init(coder:) has not been implemented")
+    }
+    
+    var indexPath: IndexPath? {
+        didSet {
+            
+        }
+    }
+    //MRAK: - 设置View
+    private func setupViews() {
+        self.selectionStyle = .none
+        addSubview(collectionView)
+    }
+    
+    private func setupLayouts() {
+       
+        
+    }
+    private lazy var collectionView: UICollectionView = {
+        let collectionView = UICollectionView.init(frame: CGRect.zero, collectionViewLayout: collectionViewLayout)
+        collectionView.backgroundColor = .white
+        collectionView.delegate = self;
+        collectionView.dataSource = self;
+        collectionView.showsVerticalScrollIndicator = false
+        collectionView.showsHorizontalScrollIndicator = false
+        collectionView.isScrollEnabled = false
+        collectionView.isUserInteractionEnabled = false
+        return collectionView
+    }()
+    
+    private lazy var collectionViewLayout: CardContentPicVideoCollectionViewLayout = {
+        let collectionViewLayout = CardContentPicVideoCollectionViewLayout.init()
+        return collectionViewLayout
+    }()
+    
+    var communityRecommendDataModel: CommunityRecommendDataModel? {
+        didSet {
+            let cardContentPicVideoModel = CardContentPicVideoModel()
+            let imgStr = communityRecommendDataModel?.img
+            
+            if communityRecommendDataModel?.imgs?.isEmpty ?? true {
+                if communityRecommendDataModel?.img != "" && communityRecommendDataModel?.img != nil {
+                    cardContentPicVideoModel.number = 1
+                    cardContentPicVideoModel.width = getImageWidth(imgStr: (imgStr)!)
+                    cardContentPicVideoModel.height = getImageHeight(imgStr: (imgStr)!)
+                    cardContentPicVideoModel.postType = PostType(rawValue: communityRecommendDataModel?.type ?? "image")!
+                    self.cardContentPicVideoModel = cardContentPicVideoModel
+                }
+            }else {
+                
+                if communityRecommendDataModel?.imgs?.count ?? 0 == 1 {
+                    if communityRecommendDataModel?.img != "" || communityRecommendDataModel?.img != nil {
+                        cardContentPicVideoModel.number = 1
+                        cardContentPicVideoModel.width = getImageWidth(imgStr: (imgStr)!)
+                        cardContentPicVideoModel.height = getImageHeight(imgStr: (imgStr)!)
+                        cardContentPicVideoModel.postType = PostType(rawValue: communityRecommendDataModel?.type ?? "image")!
+                        self.cardContentPicVideoModel = cardContentPicVideoModel
+                    }
+                }else {
+                    cardContentPicVideoModel.number = communityRecommendDataModel?.imgs?.count ?? 1
+                    cardContentPicVideoModel.postType = PostType(rawValue: communityFollowDataModel?.relateData?.type ?? "image")!
+                    self.cardContentPicVideoModel = cardContentPicVideoModel
+                }
+            }
+        }
+    }
+    
+    var communityFollowDataModel : CommunityFollowDataModel? {
+        didSet {
+            let cardContentPicVideoModel = CardContentPicVideoModel()
+            let imgStr = communityFollowDataModel?.relateData?.img
+            
+            if communityFollowDataModel?.relateData?.imgs?.isEmpty ?? true {
+                if communityFollowDataModel?.relateData?.img != "" && communityFollowDataModel?.relateData?.img != nil {
+                    cardContentPicVideoModel.number = 1
+                    cardContentPicVideoModel.width = getImageWidth(imgStr: (imgStr)!)
+                    cardContentPicVideoModel.height = getImageHeight(imgStr: (imgStr)!)
+                    cardContentPicVideoModel.postType = PostType(rawValue: communityFollowDataModel?.relateData?.type ?? "image")!
+                    self.cardContentPicVideoModel = cardContentPicVideoModel
+                }
+            }else {
+                if communityFollowDataModel?.relateData?.imgs?.count ?? 0 == 1 {
+                    if imgStr != "" || imgStr != nil {
+                        cardContentPicVideoModel.number = 1
+                        cardContentPicVideoModel.width = getImageWidth(imgStr: (imgStr)!)
+                        cardContentPicVideoModel.height = getImageHeight(imgStr: (imgStr)!)
+                        cardContentPicVideoModel.postType = PostType(rawValue: communityFollowDataModel?.relateData?.type ?? "image")!
+                        self.cardContentPicVideoModel = cardContentPicVideoModel
+                    }
+                }else {
+                    cardContentPicVideoModel.number = communityFollowDataModel?.relateData?.imgs?.count ?? 1
+                    cardContentPicVideoModel.postType = PostType(rawValue: communityFollowDataModel?.relateData?.type ?? "image")!
+                    self.cardContentPicVideoModel = cardContentPicVideoModel
+                }
+                
+            }
+        }
+    }
+    
+    
+    var cardContentPicVideoModel: CardContentPicVideoModel? {
+        didSet {
+            collectionViewLayout.cardContentPicVideoModel = cardContentPicVideoModel
+            addSubview(collectionView)
+            collectionView.snp_makeConstraints { (make) in
+                make.top.equalToSuperview()
+                make.left.equalTo(14)
+                make.right.equalTo(-14)
+                make.bottom.equalTo(-20)
+            }
+            collectionView.reloadData()
+        }
+    }
+    var type : CommunityRecommendFollowTableViewCellType?
+    
+}
+
+extension CardContentPicVideoTableViewCell: UICollectionViewDelegateFlowLayout,UICollectionViewDataSource {
+    func numberOfSections(in collectionView: UICollectionView) -> Int {
+        return 1
+    }
+    
+    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
+        if type == .recommend {
+            if communityRecommendDataModel?.imgs?.isEmpty ?? true {
+                if communityRecommendDataModel?.img == "" || communityRecommendDataModel?.img == nil {
+                    return 0
+                }else {
+                   return 1
+                }
+            }else {
+                return communityRecommendDataModel?.imgs?.count ?? 0
+            }
+        } else if type == .follow {
+            if communityFollowDataModel?.relateData?.imgs?.isEmpty ?? true {
+                if communityFollowDataModel?.relateData?.img == "" || communityFollowDataModel?.relateData?.img == nil {
+                    return 0
+                }else {
+                    return 1
+                }
+            }else {
+                return communityFollowDataModel?.relateData?.imgs?.count ?? 0
+            }
+        } else {
+            return 0
+        }
+        
+    }
+    
+    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
+        let cell = CardContentPicVideoCollectionViewCell.cellWith(collectionView: collectionView, indexPath: indexPath)
+        
+        if type == .recommend {
+            if (PostType(rawValue: (communityRecommendDataModel?.type)!)) != .video {
+                if communityRecommendDataModel?.imgs?.isEmpty ?? true {
+                    if communityRecommendDataModel?.img == "" || communityRecommendDataModel?.img == nil {
+                        
+                    }else {
+                        let imgStr = getImageUrlStr(imgStr: communityRecommendDataModel?.img ?? "", width: cell.width, height: cell.height)
+                        cell.imgStr = imgStr
+                        
+                    }
+                }else {
+                    let imgStr = getImageUrlStr(imgStr: communityRecommendDataModel?.imgs?[indexPath.row] ?? "", width: cell.width, height: cell.height)
+                    cell.imgStr =  imgStr
+                }
+            }else {
+                let imgStr = getImageUrlStr(imgStr: communityRecommendDataModel?.img ?? "", width: cell.width, height: cell.height)
+                cell.imgStr = imgStr
+            }
+            cell.communityRecommendDataModel = communityRecommendDataModel
+        } else if type == .follow {
+            if (PostType(rawValue: (communityFollowDataModel?.relateData?.type)!) ?? .video) != .video {
+                if communityFollowDataModel?.relateData?.imgs?.isEmpty ?? true {
+                    if communityFollowDataModel?.relateData?.img == "" || communityFollowDataModel?.relateData?.img == nil {
+                    }else {
+                        let imgStr = getImageUrlStr(imgStr: communityFollowDataModel?.relateData?.img ?? "", width: cell.width, height: cell.height)
+                        cell.imgStr = imgStr
+                    }
+                }else {
+                    
+                    let imgStr = getImageUrlStr(imgStr: communityFollowDataModel?.relateData?.imgs?[indexPath.row] ?? "", width: cell.width, height: cell.height)
+                    cell.imgStr = imgStr
+                    
+                }
+            }else {
+                let imgStr = getImageUrlStr(imgStr: communityFollowDataModel?.relateData?.img ?? "", width: cell.width, height: cell.height)
+                cell.imgStr = imgStr
+            }
+            cell.communityFollowDataModel = communityFollowDataModel
+        }
+        return cell
+    }
+    
+    func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
+        
+    }
+    
+}

+ 10 - 15
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Follow/CommunityFollowViewController.swift

@@ -231,24 +231,19 @@ extension CommunityFollowViewController {
         SwiftMoyaNetWorkServiceCommunity.shared().communityFollowFeedApi(page:page,completion:{
             [weak self] (communityFollowFeedModel) -> (Void) in
             let communityFollowFeedModel = communityFollowFeedModel as? CommunityFollowFeedModel
-            if communityFollowFeedModel?.pagination?.currentPage ?? 1  <= communityFollowFeedModel?.pagination?.totalPages ?? 1 {
-                if communityFollowFeedModel?.pagination?.currentPage == 1{
-                    self?.communityFollowDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.communityFollowDataModels = (self?.communityFollowDataModels)! + (communityFollowFeedModel?.data!)!
-                if (self?.communityFollowDataModels.isEmpty)! {
-                    self?.tableView.tableHeaderView = self?.followTableHeaderView
-                }
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityFollowFeedModel?.pagination?.currentPage, totalPages: communityFollowFeedModel?.pagination?.totalPages)
-
-            }else {
-                self?.tableView.endFooterNoMoreData()
+            if communityFollowFeedModel?.pagination?.currentPage == 1{
+                self?.communityFollowDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
+            }
+            self?.communityFollowDataModels = (self?.communityFollowDataModels)! + (communityFollowFeedModel?.data!)!
+            if (self?.communityFollowDataModels.isEmpty)! {
+                self?.tableView.tableHeaderView = self?.followTableHeaderView
             }
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityFollowFeedModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
-            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)
+            MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
         }
     }
     

+ 6 - 11
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/Community/ViewController/Recommend/CommunityRecommnendViewController.swift

@@ -180,18 +180,13 @@ extension CommunityRecommnendViewController {
             [weak self] (communityRecommendFeedModel) -> (Void) in
             DIYEmptyView.emptyNoDataTableView(tableView: self?.tableView)
             let communityRecommendFeedModel = communityRecommendFeedModel as? CommunityRecommendFeedModel
-            if communityRecommendFeedModel?.pagination?.currentPage ?? 1  <= communityRecommendFeedModel?.pagination?.totalPages ?? 1 {
-                if communityRecommendFeedModel?.pagination?.currentPage == 1{
-                    self?.communityRecommendDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.communityRecommendDataModels = (self?.communityRecommendDataModels)! + (communityRecommendFeedModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityRecommendFeedModel?.pagination?.currentPage, totalPages: communityRecommendFeedModel?.pagination?.totalPages)
-
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if communityRecommendFeedModel?.pagination?.currentPage == 1{
+                self?.communityRecommendDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.communityRecommendDataModels = (self?.communityRecommendDataModels)! + (communityRecommendFeedModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityRecommendFeedModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 13 - 15
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityFeaturedTopics/ViewController/CommunityFeaturedTopicsViewController.swift

@@ -167,11 +167,12 @@ class CommunityFeaturedTopicsViewController: BaseViewController {
     override func setupData() {
         communityPostTopicApi(page: 1)
         //下拉刷新
-        tableView.addHeader(withBeginRefresh: false, animation: false) {
+        tableView.addFullScreenHeader(withBeginRefresh: true, animation: true) {
             [weak self] (page) in
-            self?.communityPostTopicApi(page: page)
             self?.communityTopicDetailApi()
+            self?.communityPostTopicApi(page: page)
         }
+
         tableView.addAutoNormalFooter(withAutomaticallyRefresh: true, loadMoreBlock: {
             [weak self] (page) in
             self?.communityPostTopicApi(page: page)
@@ -324,22 +325,19 @@ extension CommunityFeaturedTopicsViewController {
     
     /// 话题帖子
     func communityPostTopicApi(page:Int) {
-        SwiftMoyaNetWorkServiceCommunity.shared().communityPostTopicApi(id: id, page: page) {
+        SwiftMoyaNetWorkServiceCommunity.shared().communityPostTopicApi(id: id, page: page, completion: {
             [weak self] (communityRecommendFeedModel) -> (Void) in
             let communityRecommendFeedModel = communityRecommendFeedModel as? CommunityRecommendFeedModel
-            if communityRecommendFeedModel?.pagination?.currentPage ?? 1  <= communityRecommendFeedModel?.pagination?.totalPages ?? 1 {
-                if communityRecommendFeedModel?.pagination?.currentPage == 1{
-                    self?.communityRecommendDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                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()
+            if communityRecommendFeedModel?.pagination?.currentPage == 1{
+                self?.communityRecommendDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.communityRecommendDataModels = (self?.communityRecommendDataModels)! + (communityRecommendFeedModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityRecommendFeedModel?.pagination)
+        }) {
+            [weak self] _ in
+            MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
         }
     }
     

+ 2 - 6
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityMyFollowTopic/ViewController/CommunityMyFollowTopicController.swift

@@ -69,19 +69,15 @@ extension CommunityMyFollowTopicController {
             [weak self] (communityMemberFollowTopicListModel) -> (Void) in
             DIYEmptyView.emptyNoDataTableView(tableView: self?.tableView, imageStr: .twelve, detailStr: .twelve)
             let communityMemberFollowTopicListModel = communityMemberFollowTopicListModel as? CommunityMemberFollowTopicListModel
-            if communityMemberFollowTopicListModel?.pagination?.currentPage ?? 1  <= communityMemberFollowTopicListModel?.pagination?.totalPages ?? 1 {
                 if communityMemberFollowTopicListModel?.pagination?.currentPage == 1{
                     self?.communityMemberFollowTopicListDataModels.removeAll()
                     self?.tableView.resetNoMoreData()
                 }
                 self?.communityMemberFollowTopicListDataModels = (self?.communityMemberFollowTopicListDataModels)! + (communityMemberFollowTopicListModel?.data!)!
                 self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityMemberFollowTopicListModel?.pagination?.currentPage, totalPages: communityMemberFollowTopicListModel?.pagination?.totalPages)
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
-            }
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination:communityMemberFollowTopicListModel?.pagination)
         }) {[weak self] _ in
-            MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
         }
     }
 }

+ 11 - 14
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityRecommendDetail/Controller/CommunityRecommendController.swift

@@ -93,8 +93,8 @@ class CommunityRecommendController: BaseViewController {
         }
         sharedButton.snp.makeConstraints { (make) in
             make.bottom.equalTo(commentView.snp_top).offset(-20)
-            make.height.equalTo(71)
-            make.width.equalTo(78)
+            make.height.equalTo(99.5)
+            make.width.equalTo(82)
             make.right.equalTo(-14)
         }
     }
@@ -149,7 +149,7 @@ class CommunityRecommendController: BaseViewController {
     
     lazy var sharedButton: UIButton = {
         let sharedButton = UIButton(type: UIButton.ButtonType.custom)
-        sharedButton.setImage(kImage(name: "share_pic_poster_floating"), for: UIControl.State.normal)
+        sharedButton.setImage(UIImage.gif(name: "share_iSpt"), for: UIControl.State.normal)
         return sharedButton
     }()
 
@@ -444,18 +444,15 @@ extension CommunityRecommendController {
         SwiftMoyaNetWorkServiceCommunity.shared().communityPostsApi(topicIds:"[\(self.communityPostDetailModel?.topicIds ?? "")]", page: page, completion: {
             [weak self] (communityPostsModel) -> (Void) in
             let communityPostsModel = communityPostsModel as? CommunityPostsModel
-            if communityPostsModel?.pagination?.currentPage ?? 1  <= communityPostsModel?.pagination?.totalPages ?? 1 {
-                if communityPostsModel?.pagination?.currentPage == 1{
-                    self?.communityPostDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.communityPostDataModels = (self?.communityPostDataModels)! + (communityPostsModel?.data!)!
-                self?.heightList()
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityPostsModel?.pagination?.currentPage, totalPages: communityPostsModel?.pagination?.totalPages)
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if communityPostsModel?.pagination?.currentPage == 1{
+                self?.communityPostDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.communityPostDataModels = (self?.communityPostDataModels)! + (communityPostsModel?.data!)!
+            self?.heightList()
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityPostsModel?.pagination)
+
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 9 - 13
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunitySubComment/ViewController/CommunitySubCommentController.swift

@@ -108,22 +108,18 @@ extension CommunitySubCommentController {
         SwiftMoyaNetWorkServiceCommunity.shared().communityPostReplyApi(postId: communityPostCommentModel?.id ?? 0, page: page,completion: {
             [weak self] (communityPostReplysModel) -> (Void) in
             let communityPostReplysModel = communityPostReplysModel as? CommunityPostReplysModel
-            
-            if communityPostReplysModel?.pagination?.currentPage ?? 1  <= communityPostReplysModel?.pagination?.totalPages ?? 1 {
-                if communityPostReplysModel?.pagination?.currentPage == 1{
-                    self?.communityPostReplyModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.communityPostReplyModels = (self?.communityPostReplyModels)! + (communityPostReplysModel?.data!)!
-                self?.tableView.reloadData()
-                self?.navigationBar.title = "\(self?.communityPostReplyModels.count ?? 0)条评论"
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityPostReplysModel?.pagination?.currentPage, totalPages: communityPostReplysModel?.pagination?.totalPages)
-            }else {
-                self?.tableView.endFooterNoMoreData()
+            if communityPostReplysModel?.pagination?.currentPage == 1{
+                self?.communityPostReplyModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.communityPostReplyModels = (self?.communityPostReplyModels)! + (communityPostReplysModel?.data!)!
+            self?.tableView.reloadData()
+            self?.navigationBar.title = "\(self?.communityPostReplyModels.count ?? 0)条评论"
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityPostReplysModel?.pagination)
+
         }) {
             [weak self] loadingStauts in
-            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)
+            MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
         }
     }
     

+ 10 - 12
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityVideoContent/View/CommunityAllCommentView.swift

@@ -283,21 +283,19 @@ extension CommunityAllCommentView {
                 self?.noCommentsLabel.isHidden = true
             }
             
-            if self?.communityPostCommentsModel?.pagination?.currentPage ?? 1  <= self?.communityPostCommentsModel?.pagination?.totalPages ?? 1 {
-                if self?.communityPostCommentsModel?.pagination?.currentPage == 1{
-                    self?.communityPostCommentModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                    
-                }
-                self?.communityPostCommentModels = (self?.communityPostCommentModels)! + (self?.communityPostCommentsModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: self?.communityPostCommentsModel?.pagination?.currentPage, totalPages: self?.communityPostCommentsModel?.pagination?.totalPages)
-            }else {
-                self?.tableView.endFooterNoMoreData()
+            if self?.communityPostCommentsModel?.pagination?.currentPage == 1{
+                self?.communityPostCommentModels.removeAll()
+                self?.tableView.resetNoMoreData()
+                
             }
+            self?.communityPostCommentModels = (self?.communityPostCommentModels)! + (self?.communityPostCommentsModel?.data!)!
+            self?.tableView.reloadData()
+            
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityPostCommentsModel?.pagination)
+            
         }) {
             [weak self] loadingStaus in
-            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)
+            MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
         }
     }
     

+ 8 - 12
RainbowPlanet/RainbowPlanet/Modules/CommunityModule/CommunityVideoSubCommentController/CommunityVideoSubCommentController.swift

@@ -105,21 +105,17 @@ extension CommunityVideoSubCommentController {
             [weak self] (communityPostReplysModel) -> (Void) in
             let communityPostReplysModel = communityPostReplysModel as? CommunityPostReplysModel
             
-            if communityPostReplysModel?.pagination?.currentPage ?? 1  <= communityPostReplysModel?.pagination?.totalPages ?? 1 {
-                if communityPostReplysModel?.pagination?.currentPage == 1{
-                    self?.communityPostReplyModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.communityPostReplyModels = (self?.communityPostReplyModels)! + (communityPostReplysModel?.data!)!
-                self?.navigationBar.title = "\(communityPostReplysModel?.pagination?.total ?? 0)条评论"
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityPostReplysModel?.pagination?.currentPage, totalPages: communityPostReplysModel?.pagination?.totalPages)
-            }else {
-                self?.tableView.endFooterNoMoreData()
+            if communityPostReplysModel?.pagination?.currentPage == 1{
+                self?.communityPostReplyModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.communityPostReplyModels = (self?.communityPostReplyModels)! + (communityPostReplysModel?.data!)!
+            self?.navigationBar.title = "\(communityPostReplysModel?.pagination?.total ?? 0)条评论"
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityPostReplysModel?.pagination)
         }) {
             [weak self] loadingStatus in
-            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)
+            MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
         }
     }
     

+ 6 - 11
RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessageList/ViewController/MessageListController.swift

@@ -103,18 +103,13 @@ extension MessageListController {
             }
             
             let messageListModel = messageListModel as? MessageListModel
-            if messageListModel?.pagination?.currentPage ?? 1  <= messageListModel?.pagination?.totalPages ?? 1 {
-                if messageListModel?.pagination?.currentPage == 1{
-                    self?.messageDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.messageDataModels = (self?.messageDataModels)! + (messageListModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: messageListModel?.pagination?.currentPage, totalPages: messageListModel?.pagination?.totalPages)
-                
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if messageListModel?.pagination?.currentPage == 1{
+                self?.messageDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.messageDataModels = (self?.messageDataModels)! + (messageListModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination:messageListModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 6 - 11
RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessagePlanetActivity/Controller/MessagePlanetActivityController.swift

@@ -74,18 +74,13 @@ extension MessagePlanetActivityController {
             [weak self] (messageListModel) -> (Void) in
             DIYEmptyView.emptyNoDataTableView(tableView: (self?.tableView)!)
             let messageListModel = messageListModel as? MessageListModel
-            if messageListModel?.pagination?.currentPage ?? 1  <= messageListModel?.pagination?.totalPages ?? 1 {
-                if messageListModel?.pagination?.currentPage == 1{
-                    self?.messageDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.messageDataModels = (self?.messageDataModels)! + (messageListModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: messageListModel?.pagination?.currentPage, totalPages: messageListModel?.pagination?.totalPages)
-                
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if messageListModel?.pagination?.currentPage == 1{
+                self?.messageDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.messageDataModels = (self?.messageDataModels)! + (messageListModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView,pagination: messageListModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 6 - 11
RainbowPlanet/RainbowPlanet/Modules/MessageModule/MessagePlanetNotification/Controller/MessagePlanetNotiController.swift

@@ -68,18 +68,13 @@ extension MessagePlanetNotiController {
             DIYEmptyView.emptyNoDataTableView(tableView: self?.tableView,imageStr: .ten,detailStr: .ten)
             
             let messageListModel = messageListModel as? MessageListModel
-            if messageListModel?.pagination?.currentPage ?? 1  <= messageListModel?.pagination?.totalPages ?? 1 {
-                if messageListModel?.pagination?.currentPage == 1{
-                    self?.messageDataModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.messageDataModels = (self?.messageDataModels)! + (messageListModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: messageListModel?.pagination?.currentPage, totalPages: messageListModel?.pagination?.totalPages)
-                
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if messageListModel?.pagination?.currentPage == 1{
+                self?.messageDataModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.messageDataModels = (self?.messageDataModels)! + (messageListModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView,pagination: messageListModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 14 - 23
RainbowPlanet/RainbowPlanet/Modules/MineModule/MyFollowAndFan/ViewController/MyFollowAndFanViewController.swift

@@ -104,22 +104,17 @@ extension MyFollowAndFanViewController {
         SwiftMoyaNetWorkServiceUser.shared().userFollowsApi(uid: self.userDetailModel?.uid ?? 0, page: page, completion: { [weak self] (userFollowsModel) -> (Void) in
             DIYEmptyView.emptyNoDataActionTableView(tableView: self?.tableView, imageStr: .eight, detailStr: .eight, btnTitleStr: .five, btnClickBlock: {
                 Mediator.push(CommunityRouterModuleType.pushFindFriends)
-
             })
             
             let userFollowsModel = userFollowsModel as? UserFollowsModel
-            if userFollowsModel?.pagination?.currentPage ?? 1  <= userFollowsModel?.pagination?.totalPages ?? 1 {
-                if userFollowsModel?.pagination?.currentPage == 1{
-                    self?.userFollowModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.userFollowModels = (self?.userFollowModels)! + (userFollowsModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: userFollowsModel?.pagination?.currentPage, totalPages: userFollowsModel?.pagination?.totalPages)
-
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if userFollowsModel?.pagination?.currentPage == 1{
+                self?.userFollowModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.userFollowModels = (self?.userFollowModels)! + (userFollowsModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination:userFollowsModel?.pagination)
+
         }, fail: {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)
@@ -138,18 +133,14 @@ extension MyFollowAndFanViewController {
                 })
             })
             let userFansModel = userFansModel as? UserFansModel
-            if userFansModel?.pagination?.currentPage ?? 1  <= userFansModel?.pagination?.totalPages ?? 1 {
-                if userFansModel?.pagination?.currentPage == 1{
-                    self?.userFanModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-
-                }
-                self?.userFanModels = (self?.userFanModels)! + (userFansModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: userFansModel?.pagination?.currentPage, totalPages: userFansModel?.pagination?.totalPages)
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if userFansModel?.pagination?.currentPage == 1{
+                self?.userFanModels.removeAll()
+                self?.tableView.resetNoMoreData()
+                
             }
+            self?.userFanModels = (self?.userFanModels)! + (userFansModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: userFansModel?.pagination)
         }, fail: {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 8 - 11
RainbowPlanet/RainbowPlanet/Modules/MineModule/PersonalCenter/PersonalCenterView/PersonViewUserAndOtherListView.swift

@@ -96,19 +96,16 @@ extension PersonViewUserAndOtherListView {
         }
         SwiftMoyaNetWorkServiceCommunity.shared().communityPostMyApi(type: type,uid:uid ?? 0,page:page, completion: {
             [weak self] (communityPostMyModel) -> (Void) in
-            DIYEmptyView.emptyNoDataCollectionView(collectionView: self?.collectionView)
+            DIYEmptyView.emptyNoDataCollectionView(collectionView: self?.collectionView, detailStr: .one)
+            
             let communityPostMyModel = communityPostMyModel as? CommunityPostMyModel
-            if communityPostMyModel?.pagination?.currentPage ?? 1  <= communityPostMyModel?.pagination?.totalPages ?? 1 {
-                if communityPostMyModel?.pagination?.currentPage == 1{
-                    self?.postMyModels.removeAll()
-                    self?.collectionView.resetNoMoreData()
-                }
-                self?.postMyModels = (self?.postMyModels)! + (communityPostMyModel?.data!)!
-                self?.collectionView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(collectionView: self?.collectionView, currentPage: communityPostMyModel?.pagination?.currentPage, totalPages: communityPostMyModel?.pagination?.totalPages)
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(collectionView: self?.collectionView)
+            if communityPostMyModel?.pagination?.currentPage == 1{
+                self?.postMyModels.removeAll()
+                self?.collectionView.resetNoMoreData()
             }
+            self?.postMyModels = (self?.postMyModels)! + (communityPostMyModel?.data!)!
+            self?.collectionView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(collectionView: self?.collectionView, pagination: communityPostMyModel?.pagination)
         }) {
             [weak self] _ in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(collectionView: self?.collectionView)

+ 9 - 13
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishAddTopic/Controller/PublishAddTopicController.swift

@@ -229,20 +229,16 @@ extension PublishAddTopicController {
         SwiftMoyaNetWorkServiceCommunity.shared().communityTopicsApi(categoryId: categoryId, isSuggest: isSuggest, page: page, completion: {
             [weak self] (communityTopicsModel) -> (Void) in
             let communityTopicsModel = communityTopicsModel as? CommunityTopicsModel
-            if communityTopicsModel?.pagination?.currentPage ?? 1  <= communityTopicsModel?.pagination?.totalPages ?? 1 {
-                if communityTopicsModel?.pagination?.currentPage == 1{
-                    self?.topicListModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                    self?.tableView.isHiddenFooter(true)
-                }
-                self?.topicListModels = (self?.topicListModels)! + (communityTopicsModel?.data!)!
-                // 更新选中状态
-                self?.fixTopicSelectedStatus()
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: communityTopicsModel?.pagination?.currentPage, totalPages: communityTopicsModel?.pagination?.totalPages)
-            }else {
-                self?.tableView.endFooterNoMoreData()
+            if communityTopicsModel?.pagination?.currentPage == 1{
+                self?.topicListModels.removeAll()
+                self?.tableView.resetNoMoreData()
+                self?.tableView.isHiddenFooter(true)
             }
+            self?.topicListModels = (self?.topicListModels)! + (communityTopicsModel?.data!)!
+            // 更新选中状态
+            self?.fixTopicSelectedStatus()
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: communityTopicsModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView)

+ 7 - 12
RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchContentList/ViewController/SearchContentListViewController.swift

@@ -94,19 +94,14 @@ extension SearchContentListViewController {
             })
             
             let communityPostsModel = communityPostsModel as? CommunityPostsModel
-            if communityPostsModel?.pagination?.currentPage ?? 1  <= communityPostsModel?.pagination?.totalPages ?? 1 {
-                if communityPostsModel?.pagination?.currentPage == 1{
-                    self?.communityPostDataModels.removeAll()
-                    self?.collectionView.resetNoMoreData()
-                }
-                self?.communityPostDataModels = (self?.communityPostDataModels)! + (communityPostsModel?.data!)!
-                self?.heightList()
-                self?.collectionView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(collectionView: self?.collectionView, currentPage: communityPostsModel?.pagination?.currentPage, totalPages: communityPostsModel?.pagination?.totalPages)
-
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(collectionView: self?.collectionView)
+            if communityPostsModel?.pagination?.currentPage == 1{
+                self?.communityPostDataModels.removeAll()
+                self?.collectionView.resetNoMoreData()
             }
+            self?.communityPostDataModels = (self?.communityPostDataModels)! + (communityPostsModel?.data!)!
+            self?.heightList()
+            self?.collectionView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(collectionView: self?.collectionView, pagination: communityPostsModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(collectionView: self?.collectionView)

+ 6 - 11
RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchTopicList/ViewController/SearchTopicListViewController.swift

@@ -75,18 +75,13 @@ extension SearchTopicListViewController {
             [weak self] (communityTopicsModel) -> (Void) in
             DIYEmptyView.emptyNoDataTableView(tableView: self?.tableView, imageStr: .twelve, detailStr: .twelve)
             self?.communityTopicsModel = communityTopicsModel as? CommunityTopicsModel
-            if self?.communityTopicsModel?.pagination?.currentPage ?? 1  <= self?.communityTopicsModel?.pagination?.totalPages ?? 1 {
-                if self?.communityTopicsModel?.pagination?.currentPage == 1{
-                    self?.communityTopicModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.communityTopicModels = (self?.communityTopicModels)! + (self?.communityTopicsModel?.data!)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: self?.communityTopicsModel?.pagination?.currentPage, totalPages: self?.communityTopicsModel?.pagination?.totalPages)
-
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView:self?.tableView)
+            if self?.communityTopicsModel?.pagination?.currentPage == 1{
+                self?.communityTopicModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.communityTopicModels = (self?.communityTopicModels)! + (self?.communityTopicsModel?.data!)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: self?.communityTopicsModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 6 - 11
RainbowPlanet/RainbowPlanet/Modules/SearchModule/SearchUser/ViewController/SearchUserListViewController.swift

@@ -93,18 +93,13 @@ extension SearchUserListViewController {
             })
             let searchMemberListModel = searchMemberListModel as? SearchMemberListModel
             
-            if searchMemberListModel?.pagination?.currentPage ?? 1  <= searchMemberListModel?.pagination?.totalPages ?? 1 {
-                if searchMemberListModel?.pagination?.currentPage == 1{
-                    self?.searchMemberModels.removeAll()
-                    self?.tableView.resetNoMoreData()
-                }
-                self?.searchMemberModels = (self?.searchMemberModels)!  + (searchMemberListModel?.data)!
-                self?.tableView.reloadData()
-                MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, currentPage: searchMemberListModel?.pagination?.currentPage, totalPages: searchMemberListModel?.pagination?.totalPages)
-
-            }else {
-                MJRefreshManager.hiddenFooterNoMoreData(tableView: self?.tableView)
+            if searchMemberListModel?.pagination?.currentPage == 1{
+                self?.searchMemberModels.removeAll()
+                self?.tableView.resetNoMoreData()
             }
+            self?.searchMemberModels = (self?.searchMemberModels)!  + (searchMemberListModel?.data)!
+            self?.tableView.reloadData()
+            MJRefreshManager.hiddenHeaderWithFooter(tableView: self?.tableView, pagination: searchMemberListModel?.pagination)
         }) {
             [weak self] (loadingStatus) in
             MJRefreshManager.hiddenHeaderWithFooterNONetWork(tableView: self?.tableView)

+ 2 - 1
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaNetWorkServiceCommunity.swift

@@ -399,7 +399,7 @@ public class SwiftMoyaNetWorkServiceCommunity: NSObject {
     ///   - id: 话题Id
     ///   - page: 分页
     ///   - completion: 回调
-    func communityPostTopicApi(id:Int,page:Int = 1,completion: @escaping successCallBack) {
+    func communityPostTopicApi(id:Int,page:Int = 1,completion: @escaping successCallBack,fail:@escaping failCallback) {
         var parameters = Dictionary<String,Any>()
         parameters.updateValue(page, forKey: "page")
         parameters.updateValue(id, forKey: "id")
@@ -410,6 +410,7 @@ public class SwiftMoyaNetWorkServiceCommunity: NSObject {
         }
         SwiftMoyaNetWorkManager.shared.failCallback = {
             (loadingStatus) in
+            fail(loadingStatus)
         }
     }
     

+ 385 - 0
RainbowPlanet/RainbowPlanet/Service/SwiftMoyaService/SwiftMoyaServiceApi/SwiftMoyaServiceCommunity/SwiftMoyaServiceCommunityApi 2.swift

@@ -0,0 +1,385 @@
+//
+//  SwiftMoyaServiceCommunityApi.swift
+//  RainbowPlanet
+//
+//  Created by 南鑫林 on 2019/6/24.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//
+
+import Foundation
+import Moya
+
+// MARK: - 话题组列表
+/// 话题组列表
+public let kCommunityTopicCategoryApi = "/community/topicCategory"
+
+// MARK: - 关注推荐话题
+/// 关注推荐话题
+public let kCommunityMemberFollowTopicApi = "/community/memberFollowTopic"
+
+// MARK: - 个人中心内容
+/// 个人中心内容
+public let kCommunityPostMyApi = "/community/post/my"
+
+// MARK: - 话题列表
+/// 话题列表
+public let kCommunityTopicsApi = "/community/topic"
+
+// MARK: - 内容列表
+/// 内容列表(Get)
+public let kCommunityPostsApi = "/community/post"
+
+// MARK: - 发布内容
+/// 发布内容(Post)
+public let kCommunityPublishApi = "/community/post"
+
+// MARK: - 删除内容
+/// 删除内容(Post)
+public let kCommunityDeleteApi = "/community/post"
+
+// MARK: - 获取上传地址和凭证
+/// 获取上传地址和凭证(视频)
+public let kCommunityVideoUploadAuthApi = "/community/getVodUploadAuth"
+
+/// 获取上传地址和凭证(图片)
+public let kCommunityImageUploadAuthApi = "/community/vod/upload/image"
+
+// MARK: - 视频列表
+/// 视频列表
+public let kCommunityVideoListApi = "/community/post/video"
+
+// MARK: - 关注页面feed流
+/// 关注页面feed流
+public let kCommunityFollowFeedApi = "/community/feed"
+
+// MARK: - 推荐内容
+/// 推荐内容
+public let kCommunityPostSuggestApi = "/community/post/suggest"
+
+// MARK: - 话题详情
+/// 话题详情
+public let kCommunityTopicDetailApi = "/community/topic/detail"
+
+// MARK: - 话题内容列表
+/// 话题内容列表
+public let kCommunityPostTopicApi = "/community/post/topic"
+
+// MARK: - 我关注的话题列表
+/// 我关注的话题列表
+public let kCommunityMemberFollowTopicListApi = "/community/memberFollowTopic"
+
+// MARK: - 关注话题(单个)
+/// 关注话题(单个)
+public let kCommunityMemberFollowTopicFollowApi = "/community/memberFollowTopic/follow"
+
+// MARK: - 取消关注话题
+/// 取消关注话题
+public let kCommunityMemberFollowTopicCancelFollowApi = "/community/memberFollowTopic/cancel"
+
+// MARK: - 内容详情
+/// 内容详情
+public let kCommunityPostDetailApi = "/community/post/detail"
+
+// MARK: - 评论列表
+/// 评论列表
+public let kCommunityPostCommentsApi = "/community/post/comment"
+
+// MARK: - 回复列表
+/// 回复列表
+public let kCommunityPostReplyApi = "/community/post/reply"
+
+//// MARK: - 评论&回复
+///// 评论&回复
+public let kCommunityPostCommentApi = "/community/post/comment"
+
+//// MARK: - 删除评论
+///// 删除评论
+public let kCommunityPostDeleteCommentApi = "/community/post/comment"
+
+//// MARK: - 用户上传音乐
+///// 用户上传音乐
+public let kCommunityUploadMusicApi = "/community/music/upload"
+
+//// MARK: - 热门推荐音乐列表
+///// 热门推荐音乐列表
+public let kCommunityRecMusicListApi = "/community/musicList"
+
+//// MARK: - 获取音乐分类
+///// 获取音乐分类
+public let kCommunityGetMusicCategoryApi = "/community/category/list"
+
+//// MARK: - 获取分类下所有音乐
+///// 获取分类下所有音乐
+public let kCommunityCateMusicListApi = "/community/music"
+
+/// 社区
+///
+/// - communityTopicCategory: 话题组列表
+/// - communityMemberFollowTopic: 关注推荐话题
+/// - communityPostMy: 个人中心内容
+/// - communityTopics: 话题列表
+/// - communityPosts: 内容列表
+/// - communityPublish: 发布内容
+/// - communityVideoUploadAuth: 视频上传凭证
+/// - communityImageUploadAuth: 图片上传凭证
+/// - communityVideoList: 视频列表
+/// - communityFeed: 关注页面feed流
+/// - communityPostSuggest: 关注页面feed流
+/// - communityTopicDetail: 话题详情
+/// - communityPostTopic: 话题内容列表
+/// - communityMemberFollowTopicList: 我关注的话题列表
+/// - communityMemberFollowTopicFollow: 关注话题(单个)
+/// - communityMemberFollowTopicCancelFollow: 取消关注话题
+/// - communityPostDetail: 内容详情
+/// - communityPostComments : 评论列表
+/// - communityPostReply : 回复列表
+/// - communityPostComment : 评论&回复
+/// - communityPostDeleteComment : 删除评论
+/// - communityUploadMusic : 用户上传音乐
+/// - communityRecMusicList : 热门推荐音乐列表
+/// - communityGetMusicCategory : 获取音乐分类
+/// - communityCateMusicList : 获取分类下所有音乐
+
+public enum SwiftMoyaServiceCommunityApi {
+    case communityTopicCategory(parameters:Dictionary<String, Any>)
+    case communityMemberFollowTopic(parameters:Dictionary<String, Any>)
+    case communityPostMy(parameters:Dictionary<String, Any>)
+    case communityTopics(parameters:Dictionary<String, Any>)
+    case communityPosts(parameters:Dictionary<String, Any>)
+    case communityPublish(parameters:Dictionary<String, Any>)
+    case communityDelete(parameters:Dictionary<String, Any>)
+    case communityVideoUploadAuth(parameters:Dictionary<String, Any>)
+    case communityImageUploadAuth(parameters:Dictionary<String, Any>)
+    case communityVideoList(parameters:Dictionary<String, Any>)
+    case communityFollowFeed(parameters:Dictionary<String, Any>)
+    case communityPostSuggest(parameters:Dictionary<String, Any>)
+    case communityTopicDetail(parameters:Dictionary<String, Any>)
+    case communityPostTopic(parameters:Dictionary<String, Any>)
+    case communityMemberFollowTopicList(parameters:Dictionary<String, Any>)
+    case communityMemberFollowTopicFollow(parameters:Dictionary<String, Any>)
+    case communityMemberFollowTopicCancelFollow(parameters:Dictionary<String, Any>)
+    case communityPostDetail(parameters:Dictionary<String, Any>)
+    case communityPostComments(parameters:Dictionary<String, Any>)
+    case communityPostReply(parameters:Dictionary<String, Any>)
+    case communityPostComment(parameters:Dictionary<String, Any>)
+    case communityPostDeleteComment(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 {
+    
+    public var baseURL: URL {
+        switch self {
+        case .communityTopicCategory,
+             .communityMemberFollowTopic,
+             .communityPostMy,
+             .communityTopics,
+             .communityPosts,
+             .communityPublish,
+             .communityDelete,
+             .communityVideoUploadAuth,
+             .communityImageUploadAuth,
+             .communityVideoList,
+             .communityFollowFeed,
+             .communityPostSuggest,
+             .communityTopicDetail,
+             .communityPostTopic,
+             .communityMemberFollowTopicList,
+             .communityMemberFollowTopicFollow,
+             .communityMemberFollowTopicCancelFollow,
+             .communityPostDetail,
+             .communityPostComments,
+             .communityPostReply,
+             .communityPostComment,
+             .communityPostDeleteComment,
+             .communityUploadMusic,
+             .communityRecMusicList,
+             .communityGetMusicCategory,
+             .communityCateMusicList
+            :
+            return URL(string: kApiDataPrefix())!
+        }
+    }
+    
+    public var path: String {
+        switch self {
+        case .communityTopicCategory:
+            return kCommunityTopicCategoryApi
+        case .communityMemberFollowTopic:
+            return kCommunityMemberFollowTopicApi
+        case .communityPostMy:
+            return kCommunityPostMyApi
+        case .communityTopics:
+            return kCommunityTopicsApi
+        case .communityPosts:
+            return kCommunityPostsApi
+        case .communityPublish:
+            return kCommunityPublishApi
+        case .communityDelete:
+            return kCommunityDeleteApi
+        case .communityVideoUploadAuth:
+            return kCommunityVideoUploadAuthApi
+        case .communityImageUploadAuth:
+            return kCommunityImageUploadAuthApi
+        case .communityVideoList:
+            return kCommunityVideoListApi
+        case .communityFollowFeed:
+            return kCommunityFollowFeedApi
+        case .communityPostSuggest:
+            return kCommunityPostSuggestApi
+        case .communityTopicDetail:
+            return kCommunityTopicDetailApi
+        case .communityPostTopic:
+            return kCommunityPostTopicApi
+        case .communityMemberFollowTopicList:
+            return kCommunityMemberFollowTopicListApi
+        case .communityMemberFollowTopicFollow:
+            return kCommunityMemberFollowTopicFollowApi
+        case .communityMemberFollowTopicCancelFollow:
+            return kCommunityMemberFollowTopicCancelFollowApi
+        case .communityPostDetail:
+            return kCommunityPostDetailApi
+        case .communityPostComments:
+            return kCommunityPostCommentsApi
+        case .communityPostReply:
+            return kCommunityPostReplyApi
+        case .communityPostComment:
+            return kCommunityPostCommentApi
+        case .communityPostDeleteComment:
+            return kCommunityPostDeleteCommentApi
+        case .communityUploadMusic:
+            return kCommunityUploadMusicApi
+        case .communityRecMusicList:
+            return kCommunityRecMusicListApi
+        case .communityGetMusicCategory:
+            return kCommunityGetMusicCategoryApi
+        case .communityCateMusicList:
+            return kCommunityCateMusicListApi
+        }
+    }
+    
+    public var method: Moya.Method {
+        switch self {
+        case .communityMemberFollowTopic,
+             .communityPublish,
+             .communityMemberFollowTopicFollow,
+             .communityPostComment,
+             .communityUploadMusic
+            :
+            return .post
+        case .communityTopicCategory,
+             .communityPostMy,
+             .communityTopics,
+             .communityPosts,
+             .communityVideoUploadAuth,
+             .communityImageUploadAuth,
+             .communityVideoList,
+             .communityFollowFeed,
+             .communityPostSuggest,
+             .communityTopicDetail,
+             .communityPostTopic,
+             .communityMemberFollowTopicList,
+             .communityPostDetail,
+             .communityPostComments,
+             .communityPostReply,
+             .communityRecMusicList,
+             .communityGetMusicCategory,
+             .communityCateMusicList
+            :
+            return .get
+        case .communityMemberFollowTopicCancelFollow,
+             .communityDelete,
+             .communityPostDeleteComment
+            :
+            return .delete
+
+        }
+    }
+    
+    // MARK: - 请求任务事件(这里附带上参数)
+    public var task: Task {
+        switch self {
+        case .communityTopicCategory(var parameters),
+             .communityMemberFollowTopic(var parameters),
+             .communityPostMy(var parameters),
+             .communityTopics(var parameters),
+             .communityPosts(var parameters),
+             .communityPublish(var parameters),
+             .communityDelete(var parameters),
+             .communityVideoUploadAuth(var parameters),
+             .communityImageUploadAuth(var parameters),
+             .communityVideoList(var parameters),
+             .communityFollowFeed(var parameters),
+             .communityPostSuggest(var parameters),
+             .communityTopicDetail(var parameters),
+             .communityPostTopic(var parameters),
+             .communityMemberFollowTopicList(var parameters),
+             .communityMemberFollowTopicFollow(var parameters),
+             .communityMemberFollowTopicCancelFollow(var parameters),
+             .communityPostDetail(var parameters),
+             .communityPostComments(var parameters),
+             .communityPostReply(var parameters),
+             .communityPostComment(var parameters),
+             .communityPostDeleteComment(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")
+            return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
+        }
+    }
+    
+    
+    // MARK: - 是否执行Alamofire验证
+    public var validate: Bool {
+        return false
+    }
+    
+    // MARK: - 这个就是做单元测试模拟的数据,只会在单元测试文件中有作用
+    public var sampleData: Data {
+        return "{}".data(using: String.Encoding.utf8)!
+    }
+    
+    // MARK: - 请求头
+    public var headers: [String : String]? {
+        //同task,具体选择看后台 有application/x-www-form-urlencoded 、application/json
+        switch self {
+        case .communityTopicCategory,
+             .communityMemberFollowTopic,
+             .communityPostMy,
+             .communityTopics,
+             .communityPosts,
+             .communityPublish,
+             .communityDelete,
+             .communityVideoUploadAuth,
+             .communityImageUploadAuth,
+             .communityVideoList,
+             .communityFollowFeed,
+             .communityPostSuggest,
+             .communityTopicDetail,
+             .communityPostTopic,
+             .communityMemberFollowTopicList,
+             .communityMemberFollowTopicFollow,
+             .communityMemberFollowTopicCancelFollow,
+             .communityPostDetail,
+             .communityPostComments,
+             .communityPostReply,
+             .communityPostComment,
+             .communityPostDeleteComment,
+             .communityUploadMusic,
+             .communityRecMusicList,
+             .communityGetMusicCategory,
+             .communityCateMusicList
+            :
+            return (headerParameters(headerType: .tokenHeader) as! [String : String])
+        }
+    }
+    
+}
+

BIN
RainbowPlanet/RainbowPlanet/Src/Gif/share_iSpt.gif


BIN
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/nav_share_poster.imageset/nav_share_poster@2x.png


BIN
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/nav_share_poster.imageset/nav_share_poster@3x.png


+ 0 - 22
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/share_pic_poster_floating.imageset/Contents.json

@@ -1,22 +0,0 @@
-{
-  "images" : [
-    {
-      "idiom" : "universal",
-      "scale" : "1x"
-    },
-    {
-      "idiom" : "universal",
-      "filename" : "share_pic_poster_floating@2x.png",
-      "scale" : "2x"
-    },
-    {
-      "idiom" : "universal",
-      "filename" : "share_pic_poster_floating@3x.png",
-      "scale" : "3x"
-    }
-  ],
-  "info" : {
-    "version" : 1,
-    "author" : "xcode"
-  }
-}

BIN
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/share_pic_poster_floating.imageset/share_pic_poster_floating@2x.png


BIN
RainbowPlanet/RainbowPlanet/Supporting Files/CommunityModule.xcassets/share_pic_poster_floating.imageset/share_pic_poster_floating@3x.png


+ 22 - 0
RainbowPlanet/RainbowPlanet/Tools/EmptyView/DIYEmptyView.swift

@@ -105,6 +105,17 @@ class DIYEmptyView: LYEmptyView {
         
     }
     
+    /// tableView上的默认字
+    ///
+    /// - Parameters:
+    ///   - tableView: tableView
+    ///   - detailStr: 标题
+    class func emptyNoDataTableView(tableView:UITableView?,detailStr:DIYEmptyViewDetailString = .one) {
+        let emptyView = DIYEmptyView.empty(withImageStr: nil, titleStr: nil, detailStr: detailStr.rawValue)
+        tableView?.ly_emptyView = emptyView
+        tableView?.ly_startLoading()
+    }
+    
     /// tableView上的默认图
     ///
     /// - Parameters:
@@ -131,6 +142,17 @@ class DIYEmptyView: LYEmptyView {
         tableView?.ly_startLoading()
     }
     
+    /// collectionView上的默认字
+    ///
+    /// - Parameters:
+    ///   - tableView: tableView
+    ///   - detailStr: 标题
+    class func emptyNoDataCollectionView(collectionView:UICollectionView?,detailStr:DIYEmptyViewDetailString = .one) {
+        let emptyView = DIYEmptyView.empty(withImageStr: nil, titleStr: nil, detailStr: detailStr.rawValue)
+        collectionView?.ly_emptyView = emptyView
+        collectionView?.ly_startLoading()
+    }
+    
     /// collectionView上的默认图 不带button
     ///
     /// - Parameters: