杨锴
2024-11-06 63f7ed967433acee3ae8764c7a077e15c29c41f2
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
//
//  HomeRelaxBannerCCell.swift
//  XQMuse
//
//  Created by 无故事王国 on 2024/8/12.
//
 
import UIKit
import JQTools
 
class HomeRelaxBannerCCell: UICollectionViewCell {
 
                @IBOutlet weak var img_vip: UIImageView!
                @IBOutlet weak var img_cover: UIImageView!
                @IBOutlet weak var label_title: UILabel!
                @IBOutlet weak var label_subTitle: UILabel!
                @IBOutlet weak var label_num: UILabel!
    @IBOutlet weak var image_free: UIImageView!
    @IBOutlet weak var view_price: UIView!
    @IBOutlet weak var label_price: UILabel!
    @IBOutlet weak var img_offine: UIImageView!
    private var showType:DisplayType!
 
                override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
                                jq_cornerRadius = 15
        view_price.jq_cornerRadius = 12.55
    }
 
                func setMeditationModel(_ model:MeditationModel,showType:DisplayType){
        self.showType = showType
        img_offine.isHidden = true
 
        let imageUrls = model.coverUrl.jq_urlEncoded().components(separatedBy: ",")
        if showType == .horizontal{
            img_cover.sd_setImage(with: URL(string: imageUrls.first))
        }else{
            img_cover.sd_setImage(with: URL(string: imageUrls.last))
        }
 
 
                                label_title.text = model.meditationTitle
                                label_subTitle.text = model.coverDescription
                                label_num.text = "\(model.realLearnedNum)"
 
        image_free.isHidden = model.chargeType != .free
        img_vip.isHidden = model.chargeType != .vipFree
        view_price.isHidden = model.chargeType != .payment
 
        switch model.chargeType {
            case .payment:
                image_free.isHidden = true
                view_price.isHidden = false
                label_price.attributedText = AttributedStringbuilder.build().add(string: "¥", withFont: UIFont(name: "DIN-Bold", size: 7.11) ?? UIFont.systemFont(ofSize: 7, weight: .bold), withColor: .white).add(string: "\(model.iosPrice.jq_formatFloat)", withFont: UIFont(name: "DIN-Bold", size: 11.44) ?? .systemFont(ofSize: 11,weight: .bold), withColor: .white).mutableAttributedString
            default:break
        }
 
        
                }
 
                func setCourseModel(_ model:CourseModel){
 
        let imgUrl = model.coverUrl.components(separatedBy: ",").last!
                                img_cover.sd_setImage(with: URL(string: imgUrl.jq_urlEncoded()))
                                label_title.text = model.courseTitle
                                label_subTitle.text = model.briefIntroduction
                                label_num.text = "\(model.count)"
 
        image_free.isHidden = model.chargeType != .free
        img_vip.isHidden = model.chargeType != .vipFree
        view_price.isHidden = model.chargeType != .payment
 
        if model.courseType == .offline{
            img_offine.isHidden = false
            image_free.isHidden = true
            view_price.isHidden = true
            img_vip.isHidden = true
            return
        }else{
            img_offine.isHidden = true
            switch model.chargeType {
                case .payment:
                    image_free.isHidden = true
                    view_price.isHidden = false
                    label_price.attributedText = AttributedStringbuilder.build().add(string: "¥", withFont: UIFont(name: "DIN-Bold", size: 7.11) ?? UIFont.systemFont(ofSize: 7, weight: .bold), withColor: .white).add(string: "\(model.iosPrice.jq_formatFloat)", withFont: UIFont(name: "DIN-Bold", size: 11.44) ?? .systemFont(ofSize: 11,weight: .bold), withColor: .white).mutableAttributedString
                default:break
            }
        }
                }
}