fix
杨锴
2024-10-30 aad7ea65994d33014308fd24dadc4308b35053e6
XQMuse/Root/Pavilion/VC/PavilionDetailVC.swift
@@ -8,6 +8,7 @@
import UIKit
import JQTools
import WebKit
import MapKit
class PavilionDetailVC: BaseVC {
@@ -21,6 +22,7 @@
            @IBOutlet weak var cons_webHei: NSLayoutConstraint!
            private var id:Int!
    private var detailModel:PavilionDetailModel?
            override func viewWillAppear(_ animated: Bool) {
                        super.viewWillAppear(animated)
@@ -44,6 +46,7 @@
                        Services.getPavlilonDetail(id: id).subscribe(onNext: {data in
                                    if let m = data.data{
                self.detailModel = m
                                                self.label_title.text = m.hallName
                                                self.label_phone.text = m.contactNumber
                                                self.label_address.text = m.addressDetail
@@ -64,6 +67,77 @@
                        }).disposed(by: disposeBag)
    }
    @IBAction func gotoThereAction(_ sender: Any) {
        guard let model = detailModel else {return}
        let items = JQ_MapNavigationTool.mapList()
        var formatItems = items.map { type in
            switch type {
                case .BaiduMap:return "百度地图" //BD-09
                case .Amap:return "高德地图" //GCJ-02
                case .GoogleMap:return "谷歌地图" //GCJ-02
                case .qqMap:return "腾讯地图" //GCJ-02
            }
        }
        formatItems.insert("苹果地图", at: 0)
        CommonAlertSheetView.show(items: formatItems) { index in
            switch index{
                case 0:
                    let item = MKMapItem(placemark: MKPlacemark(coordinate: CLLocationCoordinate2D(latitude: CLLocationDegrees(model.latitude), longitude: CLLocationDegrees(model.longitude))))
                    item.name = model.hallName
                    item.openInMaps(launchOptions: [MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving])
                case 1:
                    var components = URLComponents()
                    components.scheme = "iosamap"
                    components.host = "path"
                    components.queryItems = [URLQueryItem]()
                    components.queryItems?.append(URLQueryItem(name: "sourceApplication", value: "疗愈"))
                    components.queryItems?.append(URLQueryItem(name: "dlat", value: "\(model.latitude)"))
                    components.queryItems?.append(URLQueryItem(name: "dlon", value: "\(model.longitude)"))
                    components.queryItems?.append(URLQueryItem(name: "dname", value: model.hallName))
                    UIApplication.shared.open(components.url!)
                case 2:
                    var components = URLComponents()
                    components.scheme = "comgooglemaps"
                    components.host = ""
                    components.queryItems = [URLQueryItem]()
                    components.queryItems?.append(URLQueryItem(name: "daddr", value: "\(model.latitude),\(model.longitude)"))
                    components.queryItems?.append(URLQueryItem(name: "zoom", value: "14"))
                    components.queryItems?.append(URLQueryItem(name: "views", value: "traffic"))
                    components.queryItems?.append(URLQueryItem(name: "resume", value: "true"))
                    UIApplication.shared.open(components.url!)
                case 3:
                    var components = URLComponents()
                    components.scheme = "baidumap"
                    components.host = "map"
                    components.path = "/direction"
                    components.queryItems = [URLQueryItem]()
                    components.queryItems?.append(URLQueryItem(name: "origin", value: "{{我的位置}}"))
                    components.queryItems?.append(URLQueryItem(name: "destination", value: "latlng:\(model.latitude),\(model.longitude)|name:\(model.hallName)"))
                    components.queryItems?.append(URLQueryItem(name: "coord_type", value: "gcj02"))
                    components.queryItems?.append(URLQueryItem(name: "mode", value: "driving"))
                    UIApplication.shared.open(components.url!)
                case 4:
                    var components = URLComponents()
                    components.scheme = "qqmap"
                    components.host = "map"
                    components.path = "/routeplan"
                    components.queryItems = [URLQueryItem]()
                    components.queryItems?.append(URLQueryItem(name: "fromcoord", value: "CurrentLocation"))
                    components.queryItems?.append(URLQueryItem(name: "type", value: "drive"))
                    components.queryItems?.append(URLQueryItem(name: "to", value: model.hallName))
                    components.queryItems?.append(URLQueryItem(name: "tocoord", value: "\(model.latitude),\(model.longitude)"))
                    UIApplication.shared.open(components.url!)
                default:break
            }
        }
    }
            override func setRx() {
                        webView.scrollView.rx.observe(CGSize.self, "contentSize").map { (size) -> CGFloat? in
                                    if let size = size{