Преглед на файлове

Merge branch 'develop' into feature/jeremy

南鑫林 преди 5 години
родител
ревизия
22d6e1b5ff

+ 1 - 1
RainbowPlanet/RainbowPlanet/Model/CommunityModel/CommunityPublishModel.swift

@@ -12,7 +12,7 @@ import ObjectMapper
 
 class CommunityPublishModel : NSObject, Mappable{
     
-    var bean : String?
+    var bean : Int?
     var h5url : String?
     var postId : Int?
     

+ 21 - 1
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishEditController/Controller/PublishEditController.swift

@@ -392,10 +392,30 @@ extension PublishEditController {
         SwiftMoyaNetWorkServiceCommunity.shared().communityPublishApi(type: typeStr, img: majorImageUrl ?? "", topic_ids: topicJsonStr, video: paraVideo, title: pubTitle, content: pubContent, location: locationStr, imgs: imgsJsonStr) {
             [weak self] (communityPublishModel) -> (Void) in
             let communityPublishModel = communityPublishModel as? CommunityPublishModel
-            print("----发布成功")
+            
+            self?.publishSuccessAction(communityPublishModel!)
         }
     }
     
+    func publishSuccessAction(_ pubModel: CommunityPublishModel) {
+        let sucVc = PublishSuccessController()
+        sucVc.postId   = pubModel.postId
+        sucVc.bean     = pubModel.bean
+        sucVc.H5UrlStr = pubModel.h5url
+        sucVc.imgUrl   = majorImageUrl
+        sucVc.titleStr = pubTitle
+        sucVc.contentStr = pubContent
+//        var topicStr : String = ""
+        
+        let userMdl = UserModel.shared().getModel()
+        sucVc.nameStr = userMdl?.username
+        sucVc.avatarStr = userMdl?.avatarurl
+        sucVc.uid = userMdl?.uid
+//        var type : String?
+        
+        self.navigationController?.pushViewController(sucVc, animated: true)
+    }
+    
 }
 
 // MARK: - 视频相关处理

+ 274 - 29
RainbowPlanet/RainbowPlanet/Modules/PublishModule/PublishSuccess/PublishSuccessController.swift

@@ -7,58 +7,303 @@
 //
 
 import UIKit
-import RxSwift
+import EFQRCode
 
 class PublishSuccessController: BaseViewController {
     
+    var imgUrl : String?
+    var topicStr : String = ""
+    var titleStr : String = ""
+    var avatarStr : String?
+    var nameStr : String?
+    var H5UrlStr : String?
+    var bean : Int?
+    
+    var postId : Int?
+    var uid : Int?
+    var type : String?
+    var contentStr : String?
+    
+    
+    
     override func viewDidLoad() {
         super.viewDidLoad()
         setupViews()
+        setupLayouts()
         setupData()
     }
     
     override func setupViews() {
-        self.view.backgroundColor = kffffffColor
         
-        view.addSubview(shareView)
-        view.addSubview(iconImageView)
+        statusBarStyle = .lightContent
+        navigationBar.barBackgroundColor = UIColor.black
+        navigationBar.title = "分享动态卡片"
+        navigationBar.titleLabelColor = kffffffColor
+        navigationBar.wr_setLeftButton(image: kImage(name: "navbar_back_white")!)
+        view.addSubview(shareCommunityContentView)
+        view.addSubview(scrollView)
+        scrollView.addSubview(bgImageView)
+        scrollView.addSubview(bgView)
+        bgView.addSubview(logoImageView)
+        bgView.addSubview(topicLabel)
+        bgView.addSubview(titleLabel)
+        bgView.addSubview(lineLable)
+        bgView.addSubview(avatarImageView)
+        bgView.addSubview(nameLable)
+        scrollView.addSubview(lineImageView)
+        scrollView.addSubview(QRCodeImageView)
+        scrollView.addSubview(nickLable)
+        scrollView.addSubview(scanLabel)
         
-        shareView.snp.makeConstraints { (make) in
-            make.left.right.equalToSuperview()
-            make.bottom.equalTo(-kSafeTabBarHeight)
-            make.height.equalTo(185)
-        }
-        iconImageView.snp.makeConstraints { (make) in
-            make.top.left.right.equalToSuperview()
-            make.bottom.equalTo(shareView.snp_top)
-        }
     }
     
     override func setupLayouts() {
-        
+        bgImageView.snp.makeConstraints { (make) in
+            make.centerX.equalTo(scrollView)
+            make.top.equalTo(scrollView.snp.top)
+            make.width.equalTo(kScreenWidth)
+            make.height.equalTo(481*kScaleWidth)
+        }
+        bgView.snp.makeConstraints { (make) in
+            make.centerX.equalTo(scrollView)
+            make.top.equalTo(scrollView.snp.top)
+            make.width.equalTo(kScreenWidth)
+            make.height.equalTo(481*kScaleWidth)
+        }
+        logoImageView.snp.makeConstraints { (make) in
+            make.top.equalTo(30*kScaleWidth)
+            make.left.equalTo(27*kScaleWidth)
+        }
+        topicLabel.snp.makeConstraints { (make) in
+            make.top.equalTo(logoImageView.snp.bottom).offset(66*kScaleWidth)
+            make.left.equalTo(27*kScaleWidth)
+        }
+        titleLabel.snp.makeConstraints { (make) in
+            make.top.equalTo(topicLabel.snp.bottom).offset(15*kScaleWidth)
+            make.left.equalTo(27*kScaleWidth)
+            make.right.equalTo(-27*kScaleWidth)
+        }
+        lineLable.snp.makeConstraints { (make) in
+            make.top.equalTo(titleLabel.snp.bottom).offset(30*kScaleWidth)
+            make.left.equalTo(27*kScaleWidth)
+            make.height.equalTo(1)
+            make.width.equalTo(20*kScaleWidth)
+        }
+        avatarImageView.snp.makeConstraints { (make) in
+            make.centerY.equalTo(lineLable)
+            make.size.equalTo(20*kScaleWidth)
+            make.left.equalTo(lineLable.snp.right).offset(5*kScaleWidth)
+        }
+        nameLable.snp.makeConstraints { (make) in
+            make.centerY.equalTo(lineLable)
+            make.left.equalTo(avatarImageView.snp.right).offset(5*kScaleWidth)
+        }
+        lineImageView.snp.makeConstraints { (make) in
+            make.top.equalTo(bgView.snp.bottom).offset(10*kScaleWidth)
+            make.centerX.equalToSuperview()
+        }
+        QRCodeImageView.snp.makeConstraints { (make) in
+            make.left.equalTo(27*kScaleWidth)
+            make.top.equalTo(lineImageView.snp.bottom).offset(40*kScaleWidth)
+            make.size.equalTo(90*kScaleWidth)
+        }
+        nickLable.snp.makeConstraints { (make) in
+            make.top.equalTo(QRCodeImageView).offset(7*kScaleWidth)
+            make.left.equalTo(QRCodeImageView.snp.right).offset(27*kScaleWidth)
+            make.height.equalTo(25*kScaleWidth)
+        }
+        scanLabel.snp.makeConstraints { (make) in
+            make.bottom.equalTo(QRCodeImageView).offset(-7*kScaleWidth)
+            make.height.equalTo(34*kScaleWidth)
+            make.left.equalTo(QRCodeImageView.snp.right).offset(23*kScaleWidth)
+            make.width.equalTo(210*kScaleWidth)
+        }
     }
     
     override func setupData() {
+        bgImageView.kf.setImage(with: kURLImage(name: imgUrl ?? ""), placeholder: kImage(name: "pic_preload"))
+        topicLabel.text = "#\(topicStr)#"
+        titleLabel.text = titleStr
+        avatarImageView.kf.setImage(with: kURLImage(name: avatarStr ?? ""), placeholder: kImage(name: "pic_preload"))
+        nameLable.text = nameStr ?? ""
+        
+        if let tryImage = EFQRCode.generate(
+            content: H5UrlStr ?? "",
+            size: EFIntSize(width: Int(90*kScaleWidth), height: Int(90*kScaleWidth))
+            ) {
+            QRCodeImageView.image = UIImage(cgImage: tryImage)
+        } else {
+        }
+        scanLabel.text = "扫码查看内容 领取\(bean ?? 0)彩虹豆"
+        scrollView.swContentScrollCapture {
+            [weak self] (image) in
+            self?.shareCommunityContentView.image = image
+        }
+        
+        shareCommunityContentView.completion = {
+            [weak self] in
+            VirusViewModel.shared.forwarVirueRecordAddApi(postId: self?.postId, postAuthorUid: "\(self?.uid ?? 0)", title: self?.titleStr, content: self?.contentStr, postType: self?.type, postCover: self?.imgUrl)
+        }
         
     }
     
-    lazy var iconImageView: UIImageView = {
-        let iconImageView = UIImageView()
-        iconImageView.image = kImage(name: "pic_example_12")
-        return iconImageView
+    lazy var scrollView : UIScrollView = {
+        let scrollView = UIScrollView(frame: CGRect(x: 0, y: kNavBarTotalHeight, width: kScreenWidth, height: kScreenHeight-kNavBarTotalHeight-152))
+        scrollView.contentSize = CGSize(width: kScreenWidth, height: 667*kScaleWidth)
+        scrollView.backgroundColor = kffffffColor
+        return scrollView
     }()
     
-    lazy var shareView: PublishShareBottomView = {
-        let shareView = PublishShareBottomView()
-        
-//        shareView.orderPayBlock = {
-//            [weak self] in
-//            if let orderPayTransBlock = self?.orderPayTransBlock {
-//                orderPayTransBlock(self!.selModelArr, self!.totalPrice)
-//            }
-//        }
-        
-        return shareView
+    lazy var bgImageView: UIImageView = {
+        let bgImageView = UIImageView()
+        bgImageView.isUserInteractionEnabled = true
+        return bgImageView
+    }()
+    
+    lazy var bgView: UIView = {
+        let bgView = UIView()
+        bgView.backgroundColor = UIColor(hexString: "000000", alpha: 0.2)
+        bgView.isUserInteractionEnabled = true
+        return bgView
+    }()
+    
+    lazy var logoImageView: UIImageView = {
+        let logoImageView = UIImageView()
+        logoImageView.image = kImage(name: "posters_pic_logo")
+        logoImageView.isUserInteractionEnabled = true
+        return logoImageView
+    }()
+    
+    lazy var topicLabel: UILabel = {
+        let topicLabel = UILabel()
+        topicLabel.textColor = kffffffColor
+        topicLabel.font = kRegularFont13
+        return topicLabel
+    }()
+    
+    lazy var titleLabel: UILabel = {
+        let titleLabel = UILabel()
+        titleLabel.textColor = kffffffColor
+        titleLabel.font = kBoldFont18
+        titleLabel.numberOfLines = 2
+        return titleLabel
     }()
     
+    lazy var lineLable: UILabel = {
+        let lineLable = UILabel()
+        lineLable.backgroundColor = UIColor.white
+        return lineLable
+    }()
+    
+    lazy var avatarImageView: UIImageView = {
+        let avatarImageView = UIImageView()
+        avatarImageView.cornerRadius = 10 * kScaleWidth
+        avatarImageView.masksToBounds = true
+        avatarImageView.isUserInteractionEnabled = true
+        return avatarImageView
+    }()
+    
+    lazy var nameLable: UILabel = {
+        let nameLable = UILabel()
+        nameLable.textColor = kffffffColor
+        nameLable.font = kRegularFont12
+        return nameLable
+    }()
+    
+    lazy var lineImageView: UIImageView = {
+        let lineImageView = UIImageView()
+        lineImageView.image = kImage(name: "posters_pic_text")
+        lineImageView.isUserInteractionEnabled = true
+        return lineImageView
+    }()
+    
+    lazy var QRCodeImageView: UIImageView = {
+        let QRCodeImageView = UIImageView()
+        QRCodeImageView.isUserInteractionEnabled = true
+        return QRCodeImageView
+    }()
+    
+    lazy var nickLable: UILabel = {
+        let nickLable = UILabel()
+        nickLable.textColor = k333333Color
+        nickLable.font = kMediumFont18
+        nickLable.text = "彩虹星球 · 开启美好生活"
+        return nickLable
+    }()
+    
+    lazy var scanLabel: UILabel = {
+        let scanLabel = UILabel()
+        scanLabel.textColor = kffffffColor
+        scanLabel.font = kMediumFont14
+        scanLabel.backgroundColor = kThemeColor
+        scanLabel.cornerRadius = 34/2 * kScaleWidth
+        scanLabel.masksToBounds = true
+        scanLabel.textAlignment = .center
+        return scanLabel
+    }()
+    
+    lazy var shareCommunityContentView: ShareCommunityContentView = {
+        let shareCommunityContentView = ShareCommunityContentView(frame: CGRect(x: 0, y: kScreenHeight - 157, width: kScreenWidth, height: 157))
+        return shareCommunityContentView
+    }()
+    
+    
 }
+
+
+//import UIKit
+//import RxSwift
+//
+//class PublishSuccessController: BaseViewController {
+//
+//    override func viewDidLoad() {
+//        super.viewDidLoad()
+//        setupViews()
+//        setupData()
+//    }
+//
+//    override func setupViews() {
+//        self.view.backgroundColor = kffffffColor
+//
+//        view.addSubview(shareView)
+//        view.addSubview(iconImageView)
+//
+//        shareView.snp.makeConstraints { (make) in
+//            make.left.right.equalToSuperview()
+//            make.bottom.equalTo(-kSafeTabBarHeight)
+//            make.height.equalTo(185)
+//        }
+//        iconImageView.snp.makeConstraints { (make) in
+//            make.top.left.right.equalToSuperview()
+//            make.bottom.equalTo(shareView.snp_top)
+//        }
+//    }
+//
+//    override func setupLayouts() {
+//
+//    }
+//
+//    override func setupData() {
+//
+//    }
+//
+//    lazy var iconImageView: UIImageView = {
+//        let iconImageView = UIImageView()
+//        iconImageView.image = kImage(name: "pic_example_12")
+//        return iconImageView
+//    }()
+//
+//    lazy var shareView: PublishShareBottomView = {
+//        let shareView = PublishShareBottomView()
+//
+////        shareView.orderPayBlock = {
+////            [weak self] in
+////            if let orderPayTransBlock = self?.orderPayTransBlock {
+////                orderPayTransBlock(self!.selModelArr, self!.totalPrice)
+////            }
+////        }
+//
+//        return shareView
+//    }()
+//
+//}