杨锴
2024-09-12 e15c976316feef72ff9bcabce38e0a078f9505db
XQMuse/Root/Pavilion/VC/PavilionDetailVC.swift
@@ -13,21 +13,72 @@
            @IBOutlet weak var scrollView: UIScrollView!
            @IBOutlet weak var webView: WKWebView!
            @IBOutlet weak var view_bannerBg: UIView!
            @IBOutlet weak var view_bannerBg: CommonBannerView!
            @IBOutlet weak var label_title: UILabel!
            @IBOutlet weak var label_phone: UILabel!
            @IBOutlet weak var label_address: UILabel!
            @IBOutlet weak var label_openTime: UILabel!
            @IBOutlet weak var cons_webHei: NSLayoutConstraint!
            private var id:Int!
            override func viewWillAppear(_ animated: Bool) {
                        super.viewWillAppear(animated)
                        (navigationItem.leftBarButtonItem?.customView as? UIButton)?.setImage(UIImage(named: "btn_back")?.withTintColor(.white), for: .normal)
            }
            required init(id:Int) {
                        super.init(nibName: nil, bundle: nil)
                        self.id = id
            }
            required init?(coder: NSCoder) {
                        fatalError("init(coder:) has not been implemented")
            }
            override func viewDidLoad() {
        super.viewDidLoad()
                        title = "疗愈馆详情"
                        scrollView.contentInsetAdjustmentBehavior = .never
                        view_bannerBg.backgroundColor = .jq_randomColor
                        webView.scrollView.isScrollEnabled = false
                        Services.getPavlilonDetail(id: id).subscribe(onNext: {data in
                                    if let m = data.data{
                                                self.label_title.text = m.hallName
                                                self.label_phone.text = m.contactNumber
                                                self.label_address.text = m.addressDetail
                                                self.label_openTime.text = "营业时间:\(m.businessHours)"
                                                let bannerUrl = m.detailBannerUrl.components(separatedBy: ",").filter({$0.jq_isURL})
                                                if bannerUrl.count > 0{
                                                            var items = [CommonBannerModel]()
                                                            for (index,v) in bannerUrl.enumerated(){
                                                                        items.append(CommonBannerModel(index: index, id: index, name: nil, resource: v, mediaType: .imageUrl))
                                                            }
                                                            self.view_bannerBg.setItems(items: items)
                                                            self.view_bannerBg.collectionView.backgroundColor = .clear
                                                }
                                                self.webView.loadHTMLString(m.briefIntroduction.jq_wrapHtml(), baseURL: nil)
                                    }
                        }).disposed(by: disposeBag)
    }
            override func setRx() {
                        webView.scrollView.rx.observe(CGSize.self, "contentSize").map { (size) -> CGFloat? in
                                    if let size = size{
                                                return size.height
                                    }
                                    return nil
                        }.subscribe(onNext: { [unowned self](height) in
                                    if let height = height{
                                                self.cons_webHei.constant = height
                                    }
                        }).disposed(by: disposeBag)
            }
            override var preferredStatusBarStyle: UIStatusBarStyle{
                        return .lightContent