Robert
3 小时以前 c547797c9267e2f3e3c24c7acb31502517f3b6e6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
//
//  WelfareExchangeRecordDetailVC.swift
//  WanPai
//
//  Created by 无故事王国 on 2023/6/30.
//
 
import UIKit
import JQTools
import WebKit
 
class WelfareExchangeRecordDetailVC: BaseVC {
 
    private var id:Int!
    private var goodsType:ExchangeType!
 
    @IBOutlet weak var label_cardType: UILabel!
    @IBOutlet weak var view_banner: UIView!
    @IBOutlet weak var label_course: UILabel!
    @IBOutlet weak var label_title: UILabel!
    @IBOutlet weak var label_price: UILabel!
    @IBOutlet weak var label_duetime: UILabel!
    @IBOutlet weak var view_duetime: UIView!
    @IBOutlet weak var view_course: UIView!
    @IBOutlet weak var view_ordertime: UIView!
    @IBOutlet weak var label_ordertime: UILabel!
    @IBOutlet weak var label_verifitime: UILabel!
    @IBOutlet weak var view_verifitime: UIView!
    @IBOutlet weak var view_verifiStore: UIView!
    @IBOutlet weak var label_verifiStore: UILabel!
    @IBOutlet weak var view_assignStore: UIView!
    @IBOutlet weak var img_state: UIImageView!
    @IBOutlet weak var img_state1: UIImageView!
    @IBOutlet weak var webView: WKWebView!
    @IBOutlet weak var cons_webHeight: NSLayoutConstraint!
    @IBOutlet weak var view_ticket: UIView!
    
    private let bannerView = CommonBannerView()
    private var recordsDetailModel:RecordsDetailModel?
 
    required init(id:Int,goodsType:ExchangeType) {
        super.init(nibName: nil, bundle: nil)
        self.id = id
        self.goodsType = goodsType
    }
 
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
 
    override func viewDidLoad() {
        super.viewDidLoad()
        title = "兑换详情"
 
        Services.exchangeRecordDetail(id: id, goodType: goodsType).subscribe(onNext: { [weak self] data in
            if let model = data.data{
                self?.recordsDetailModel = model
                self?.label_title.text = model.goodName
                self?.label_duetime.text = String(format: "%@ 至 %@", model.startTime,model.endTime)
                self?.label_course.text = "\(model.classHours)课时"
                self?.label_ordertime.text = model.orderTime
                self?.label_verifitime.text = model.writeOffTime
                self?.label_verifiStore.text = model.writeOffName
                switch model.exchangeType{
                    case .coin:
                        self?.label_price.text = "\(model.integral)积分"
                    case .cashAndCoin:
                        self?.label_price.text = String(format: "%ld积分+%@", model.integral,model.cash.currency())
                    case .cash:
                        self?.label_price.text = model.cash.currency()
                }
 
                self?.img_state.isHidden = model.useType == .unUsed
                self?.img_state1.isHidden = model.useType == .unUsed
                self?.label_cardType.text = model.cardType.strTitle
 
 
                switch model.goodType{
                    case .coupon:break
                    case .course:
                        self?.view_duetime.isHidden = true
                        self?.view_course.isHidden = false
                    case .goods:
                        self?.view_course.isHidden = true
                    case .ticket:
                        self?.view_ticket.isHidden = false
                        self?.view_course.isHidden = true
                }
 
                self?.view_verifiStore.isHidden = model.writeOffName.isEmpty
                self?.view_verifitime.isHidden = model.writeOffTime.isEmpty
                self?.view_ordertime.isHidden = model.orderTime.isEmpty
                self?.view_assignStore.isHidden = model.belongs.isEmpty || model.useType == .used
 
                if model.contents.isEmpty{
                    self?.webView.loadHTMLString("暂无说明".jq_wrapHtml(), baseURL: nil)
                }else{
                    self?.webView.loadHTMLString(model.contents.jq_wrapHtml(), baseURL: nil)
                }
 
                let imgs = model.pics
                var items = [CommonBannerModel]()
                for (index,img) in imgs.enumerated(){
                    items.append(CommonBannerModel(index: index,resource: img,mediaType: .imageUrl))
                }
                self?.bannerView.setItems(items: items)
            }
        }).disposed(by: disposeBag)
    }
 
    override func setUI() {
        view_banner.addSubview(bannerView)
        bannerView.frame = CGRect(x: 0, y: 0, width: JQ_ScreenW, height: JQ_ScreenW * 0.56)
        view_ticket.isHidden = true
    }
 
 
    @IBAction func showStoreDetailAction(_ sender: Any) {
        AgreentView.show(type: .other,content:recordsDetailModel?.belongs ?? "")
    }
 
    override func setRx() {
        self.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_webHeight.constant = height
            }
        }).disposed(by: disposeBag)
    }
}