无故事王国
2023-10-25 5c244d5766b17c33da14b134fb6d20556a4c2d1d
修复BUG
22个文件已修改
376 ■■■■■ 已修改文件
WanPai/Common/View/CommonBannerView.swift 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Model/CommonModels.swift 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Network/Services.swift 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/TCell/CourseBooking_1_TCell.swift 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/TCell/CourseBooking_1_TCell.xib 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/TCell/CourseChargeTCell.swift 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseBookingSubListVC.swift 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseDetailApplyVC.swift 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseInfoVC.swift 146 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseInfoVC.xib 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseOnlineListVC.swift 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/StudentCourseDetailVC.swift 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/View/CourseBookingFuncView.xib 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/View/StudentCourseDetailHeadView.swift 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/View/StudentCourseDetailHeadView.xib 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Home/VC/HomeVC.swift 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/CCell/CouponCCell.swift 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/CCell/CouponCCell.xib 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Welfare/TCell/WelfareCouponsTCell.swift 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Welfare/VC/WelfareCouponsListVC.swift 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Yard/VC/YardDetailDateTimeVC.swift 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Yard/VC/YardDetailVC.swift 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Common/View/CommonBannerView.swift
@@ -68,6 +68,7 @@
        self.addSubview(scrollView)
        var image = UIImageView()
        image.sizeToFit()
        image.frame = CGRect(x:0,y:0,width:width,height:height)
        image.contentMode = .scaleToFill
        image.isUserInteractionEnabled = true
@@ -84,6 +85,7 @@
            addTapGesWithImage(image: image)
        }
        image = UIImageView()
        image.sizeToFit()
        image.frame = CGRect(x:width * CGFloat(images.count +
                                               1),y:0,width:width,height:height)
        image.contentMode = .scaleToFill
WanPai/Model/CommonModels.swift
@@ -543,9 +543,9 @@
struct CouponModelRuleModel:HandyJSON{
        /// 满X元 条件
    var conditionalAmount: Double = 0
    var conditionalAmount: String = ""
        /// (减)抵扣金额
    var deductionAmount: Double = 0
    var deductionAmount: String = ""
        /// 名称
    var experienceName: String = ""
@@ -689,7 +689,7 @@
}
struct CourseRecordModel:HandyJSON{
    var purchaseAmount:Double = 0
    var purchaseAmount:String = ""
    var purchaseTime = ""
    var purchaseType = ""
}
@@ -768,6 +768,7 @@
    var type: CouponType = .discount
    var userPopulation: Int = 0
    var useScope: Int = 0
    var available:String = ""
}
struct YardBookingDetailModel:HandyJSON{
WanPai/Network/Services.swift
@@ -266,7 +266,7 @@
        let params = ParamsAppender.build(url: All_Url)
            .interface(url: "/activity/api/coupon/queryCouponPackage")
            .append(key: "couponType", value: type)
            .append(key: "yearMonth", value: useStatus)
            .append(key: "useStatus", value: useStatus)
        return NetworkRequest.request(params: params, method: .post, progress: false)
    }
@@ -533,13 +533,15 @@
        /// 学员预约课程列表
    static func studentAppointList(stuId:Int,status:StudentAppointType?,search:String,timeType:StudentAppointDateType)->Observable<BaseResponse<[StudentAppointModel]>>{
    static func studentAppointList(page:Int,stuId:Int,status:StudentAppointType?,search:String,timeType:StudentAppointDateType)->Observable<BaseResponse<[StudentAppointModel]>>{
        let params = ParamsAppender.build(url: All_Url)
            .interface(url: "/account/api/startCource/stuAppointList")
            .append(key: "status", value: status?.rawValue)
            .append(key: "timeType", value: timeType.rawValue)
            .append(key: "search", value: search)
            .append(key: "stuId", value: stuId)
            .append(key: "page", value: page)
            .append(key: "size", value: 20)
        return NetworkRequest.request(params: params, method: .post, progress: false)
    }
WanPai/Root/Course/TCell/CourseBooking_1_TCell.swift
@@ -17,6 +17,7 @@
        didSet{
            label_title.text = studentAppointModel.coursePackageName
            label_courseNum.text = "\(studentAppointModel.courseHours)课时"
            view_courseNum.isHidden = studentAppointModel.courseHours == 0
            label_address.text = studentAppointModel.storeNameAddr
            label_datetime.text = studentAppointModel.timeFrame
            label_status.text = studentAppointModel.status.strTitle
@@ -34,7 +35,8 @@
    @IBOutlet weak var label_title: UILabel!
    @IBOutlet weak var label_courseNum: UILabel!
    @IBOutlet weak var label_address: UILabel!
    @IBOutlet weak var view_courseNum: UIView!
    @IBOutlet weak var label_address: UILabel!
    @IBOutlet weak var label_datetime: UILabel!
    @IBOutlet weak var btn_exercise: UIButton!
    @IBOutlet weak var label_status: UILabel!
@@ -82,7 +84,7 @@
        var times = [OpenDoorTimeModel]()
        for (index,v) in a1.enumerated(){
            let startTime = Date.jq_StringToTimeInterval(String(format: "%@ %@", date!,v), "yyyy.MM.dd HH:mm:ss") - 15 * 3600
            let startTime = Date.jq_StringToTimeInterval(String(format: "%@ %@", date!,v), "yyyy.MM.dd HH:mm:ss")
            let endTime = Date.jq_StringToTimeInterval(String(format: "%@ %@", date!,b1[index]),"yyyy.MM.dd HH:mm:ss")
            times.append(OpenDoorTimeModel(start_time: startTime, end_time: endTime))
        }
WanPai/Root/Course/TCell/CourseBooking_1_TCell.xib
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22154" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22130"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
@@ -221,6 +221,7 @@
                <outlet property="label_datetime" destination="Ezt-vJ-DRh" id="eSv-rM-t8Y"/>
                <outlet property="label_status" destination="99b-Wb-RuW" id="VWI-IV-HY9"/>
                <outlet property="label_title" destination="LvX-FX-4Fb" id="bgZ-DE-fLm"/>
                <outlet property="view_courseNum" destination="gIS-0j-Yxd" id="Ub0-a6-Sdh"/>
            </connections>
            <point key="canvasLocation" x="157.25190839694656" y="52.464788732394368"/>
        </tableViewCell>
WanPai/Root/Course/TCell/CourseChargeTCell.swift
@@ -14,13 +14,12 @@
        didSet{
            label_typeName.text = courseRecordModel.purchaseType
            label_datetime.text = courseRecordModel.purchaseTime
            label_price.text = courseRecordModel.purchaseAmount
            if courseRecordModel.purchaseAmount > 0{
                label_price.text = "+\(courseRecordModel.purchaseAmount.jq_formatFloat)"
                label_price.textColor = UIColor(hexStr: "#6CC366")
            if courseRecordModel.purchaseAmount.contains("-"){
                label_price.textColor = UIColor(hexStr: "#E32910")
            }else{
                label_price.text = "-\(courseRecordModel.purchaseAmount.jq_formatFloat)"
                label_price.textColor = UIColor(hexStr: "#E32910")
                label_price.textColor = UIColor(hexStr: "#6CC366")
            }
        }
    }
WanPai/Root/Course/VC/CourseBookingSubListVC.swift
@@ -18,7 +18,7 @@
    let timeType = BehaviorRelay<StudentAppointDateType>(value: .all)
    override func api() -> (Observable<BaseResponse<[StudentAppointModel]>>)? {
        Services.studentAppointList(stuId: studentId.value, status: status.value,search: search.value,timeType: timeType.value)
        Services.studentAppointList(page:page,stuId: studentId.value, status: status.value,search: search.value,timeType: timeType.value)
    }
}
@@ -51,7 +51,7 @@
    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = .white
        viewModel.configure(tableView,needMore: false)
        viewModel.configure(tableView,needMore: true)
        viewModel.beginRefresh()
    }
WanPai/Root/Course/VC/CourseDetailApplyVC.swift
@@ -54,16 +54,17 @@
        super.viewDidLoad()
        title = "课程详情"
        if let m = detailModel{
        if let m = detailModel{
            view_banner.setImages(images: m.detailDrawing.components(separatedBy: ","), type: .URL) { index in
            }
            label_title.text = m.name
            label_listenWeek.text = "每" + m.weeks.joined(separator: "、")
            label_title.text = m.name
            label_listenWeek.text = "每" + m.weeks.joined(separator: "、")
            label_listenTime.text = m.times.joined(separator: "|")
            label_store.text = m.storeName
            label_address.text = m.storeAddress
            label_store.text = m.storeName
            label_address.text = m.storeAddress
            label_vaild.text = m.time
            label_courseType.text = m.type.strTitle
@@ -84,13 +85,13 @@
                studentModels.append(m.student!)
            }
            cons_collHei.constant = ceil(Double(m.list.count) / 3.0) * CellH + floor(Double(m.list.count) / 3.0) * 21.0
            collectionView.reloadData()
            cons_collHei.constant = ceil(Double(m.list.count) / 3.0) * CellH + floor(Double(m.list.count) / 3.0) * 21.0
            collectionView.reloadData()
            cons_tableHei.constant = CGFloat(studentModels.count * 87)
            tableView.reloadData()
            changePrice(selectClassIndex)
        }
            cons_tableHei.constant = CGFloat(studentModels.count * 87)
            tableView.reloadData()
            changePrice(selectClassIndex)
        }
        btn_addStudent.isHidden = isExtend
@@ -99,6 +100,8 @@
        }else{
            btn_handleBtn.setTitle("立即报名", for: .normal)
        }
        viewDidLayoutSubviews()
    }
    
    override func setUI() {
@@ -333,11 +336,10 @@
            var price:Double?
            switch subM.payType{
                case .cash:
                case .cash,.cashCoin:
                    price = subM.originalPrice == 0 ? subM.vipPrice : subM.originalPrice
                case .coin:
                    price = Double(subM.playPaiCoin)
                case .cashCoin:break
            }
            guard price != nil else {
WanPai/Root/Course/VC/CourseInfoVC.swift
@@ -97,63 +97,7 @@
    override func viewDidLoad() {
        super.viewDidLoad()
        if let m = startClouseHomeModel{
            img_header.sd_setImage(with: URL(string: m.stuImg))
            label_stu_name.text = m.stuName
            img_gender.image = m.stuSex == .man ? UIImage(named: "icon_man") : UIImage(named: "icon_woman")
            label_age.text = "/\(m.stuAge)岁"
            label_stu_hei.attributedText = setAttribute(t1: "\(m.height)", t2: "cm")
            label_stu_wei.attributedText = setAttribute(t1: "\(m.weight)", t2: "kg")
            label_stu_BMI.attributedText = setAttribute(t1: m.bmi.jq_formatFloat, t2: m.bodyStatus)
            if m.courseList.count > 0{
                pageMenu.frame = CGRect(origin: .zero, size: CGSize(width: JQ_ScreenW - 100, height: 25))
                pageMenu.delegate = self
                view_menu.addSubview(pageMenu)
                cons_menuHeight.constant = 25
                pageMenu.setItems(m.courseList.map({$0.courseName}), selectedItemIndex: 0)
            }
            view_menu.addSubview(btn_dispatchCourse)
            btn_dispatchCourse.snp.makeConstraints { make in
                make.right.equalTo(-19)
                make.centerY.equalToSuperview()
                make.height.equalTo(25)
            }
            exerciseCollectionView.reloadData()
            label_totalNums.text = "总课时数\( m.courseList.first?.totalNums ?? 0)"
            label_deductedNums.text = "已扣课时数\( m.courseList.first?.deductedNums ?? 0)"
            label_remainingNums.text = "剩余课时数\( m.courseList.first?.remainingNums ?? 0)"
            exerciseCollectionView.isHidden = m.exerciseVideoList.isEmpty
            view_exerciseTitle.isHidden = m.exerciseVideoList.isEmpty
            view_footer.isHidden = m.exerciseVideoList.isEmpty
            Services.studMedalList(studentId: m.stuId).subscribe(onNext: {[weak self] data in
                guard let weakSelf = self else { return }
                if let models = data.data{
                    weakSelf.mentals = models
                    weakSelf.mentalCollectionView.reloadData()
                    let he = ceil(Double(models.count) / 3) * 91 + floor(Double(models.count) / 3) * 35
                    weakSelf.cons_mentalViewHei.constant = he
                    UIView.animate(withDuration: 0.3) {
                        weakSelf.view.layoutIfNeeded()
                    }
                }
            }).disposed(by: disposeBag)
            Services.weeksOfGetHours().subscribe(onNext: {[weak self] data in
//                self?.btn_dispatchCourse.isHidden = data.data == 0
                self?.unDispatchNum = data.data
            }) { error in
            }.disposed(by: disposeBag)
            getSelectDayData()
        }
        updateData()
    }
@@ -213,9 +157,7 @@
            Services.startCourseHome().subscribe(onNext: {[weak self] data in
                if let model = data.data{
                    self?.startClouseHomeModel = model
                    if model.courseList.count > 0{
                        self?.pageMenu.setItems(model.courseList.map({$0.courseName}), selectedItemIndex: 0)
                    }
                    self?.updateData()
                }
            }).disposed(by: weakSelf.disposeBag)
        }).disposed(by: disposeBag)
@@ -249,7 +191,62 @@
    }
    private func updateData(){
        if let m = startClouseHomeModel{
            img_header.sd_setImage(with: URL(string: m.stuImg))
            label_stu_name.text = m.stuName
            img_gender.image = m.stuSex == .man ? UIImage(named: "icon_man") : UIImage(named: "icon_woman")
            label_age.text = "/\(m.stuAge)岁"
            label_stu_hei.attributedText = setAttribute(t1: "\(m.height)", t2: "cm")
            label_stu_wei.attributedText = setAttribute(t1: "\(m.weight)", t2: "kg")
            label_stu_BMI.attributedText = setAttribute(t1: m.bmi.jq_formatFloat, t2: m.bodyStatus)
            if m.courseList.count > 0{
                pageMenu.frame = CGRect(origin: .zero, size: CGSize(width: JQ_ScreenW - 100, height: 25))
                pageMenu.delegate = self
                view_menu.addSubview(pageMenu)
                cons_menuHeight.constant = 25
                pageMenu.setItems(m.courseList.map({$0.courseName}), selectedItemIndex: 0)
            }
            view_menu.addSubview(btn_dispatchCourse)
            btn_dispatchCourse.snp.makeConstraints { make in
                make.right.equalTo(-19)
                make.centerY.equalToSuperview()
                make.height.equalTo(25)
            }
            exerciseCollectionView.reloadData()
            label_totalNums.text = "总课时数\( m.courseList.first?.totalNums ?? 0)"
            label_deductedNums.text = "已扣课时数\( m.courseList.first?.deductedNums ?? 0)"
            label_remainingNums.text = "剩余课时数\( m.courseList.first?.remainingNums ?? 0)"
            exerciseCollectionView.isHidden = m.exerciseVideoList.isEmpty
            view_exerciseTitle.isHidden = m.exerciseVideoList.isEmpty
//            view_footer.isHidden = m.exerciseVideoList.isEmpty
            Services.studMedalList(studentId: m.stuId).subscribe(onNext: {[weak self] data in
                guard let weakSelf = self else { return }
                if let models = data.data{
                    weakSelf.mentals = models
                    weakSelf.mentalCollectionView.reloadData()
                    let he = ceil(Double(models.count) / 3) * 91 + floor(Double(models.count) / 3) * 35
                    weakSelf.cons_mentalViewHei.constant = he
                    UIView.animate(withDuration: 0.3) {
                        weakSelf.view.layoutIfNeeded()
                    }
                }
            }).disposed(by: disposeBag)
            Services.weeksOfGetHours().subscribe(onNext: {[weak self] data in
                    //                self?.btn_dispatchCourse.isHidden = data.data == 0
                self?.unDispatchNum = data.data
            }) { error in
            }.disposed(by: disposeBag)
            getSelectDayData()
        }
    }
    private func setAttribute(t1:String,t2:String)->NSMutableAttributedString{
@@ -282,6 +279,8 @@
        push(vc: vc)
    }
    @IBAction func reportAction(_ sender: UIButton) {
        guard startClouseHomeModel != nil else {return}
        let vc = StudentReportVC(stuId: startClouseHomeModel!.stuId)
@@ -303,6 +302,7 @@
    @IBAction func renewalAction(_ sender: UIButton) {
        let index = pageMenu.selectedItemIndex
        let models = startClouseHomeModel!.courseList
        guard index < models.count else {return}
        Services.queryCourseInfo(id: models[index].courseId).subscribe(onNext: {[weak self] data in
            if let m = data.data{
                let vc = CourseDetailApplyVC(detailModel: m,isExtend: true)
@@ -334,8 +334,13 @@
        let nextPage = pageViewController.currentPage + 1
        pageViewController.scroll(toPage: nextPage, animation: true)
    }
    @IBAction func exerciseAction(_ sender: UITapGestureRecognizer) {
        let vc = CourseExerciseSubListVC()
        push(vc: vc)
    }
    private func getSelectDayData(){
        if let model = startClouseHomeModel{
            if let storeStr = UserDefaults.standard.object(forKey: "CurrentStore") as? String{
@@ -397,15 +402,16 @@
                        if status{
                            Services.startCourceRreverse(courseId: m.id, time: weakSelf.currentDate.jq_format("yyyy-MM-dd"), stuId: stuId).subscribe(onNext: { data in
                                alertSuccess(msg: "请假成功")
                                tableView.beginUpdates()
                                weakSelf.weeklyCourseModel?.data.remove(at: indexPath.row)
                                tableView.deleteRows(at: [indexPath], with: .automatic)
                                tableView.endUpdates()
                                weakSelf.cons_tableHei.constant = 58 + 70 * Double(weakSelf.weeklyCourseModel?.data.count ?? 0)
                                UIView.animate(withDuration: 0.3) {
                                    weakSelf.view.layoutIfNeeded()
                                    weakSelf.viewDidLayoutSubviews()
                                }
                                weakSelf.tableView.reloadData()
//                                tableView.beginUpdates()
//                                weakSelf.weeklyCourseModel?.data.remove(at: indexPath.row)
//                                tableView.deleteRows(at: [indexPath], with: .automatic)
//                                tableView.endUpdates()
//                                weakSelf.cons_tableHei.constant = 58 + 70 * Double(weakSelf.weeklyCourseModel?.data.count ?? 0)
//                                UIView.animate(withDuration: 0.3) {
//                                    weakSelf.view.layoutIfNeeded()
//                                    weakSelf.viewDidLayoutSubviews()
//                                }
                            }).disposed(by: weakSelf.disposeBag)
                        }
                    }
WanPai/Root/Course/VC/CourseInfoVC.xib
@@ -549,9 +549,13 @@
                                                    <nil key="highlightedColor"/>
                                                </label>
                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_more" translatesAutoresizingMaskIntoConstraints="NO" id="QzF-py-N1Y">
                                                    <rect key="frame" x="320" y="13.666666666666742" width="11" height="18"/>
                                                    <rect key="frame" x="338" y="13.666666666666742" width="11" height="18"/>
                                                    <constraints>
                                                        <constraint firstAttribute="width" constant="11" id="kXb-mK-G8o"/>
                                                        <constraint firstAttribute="height" constant="18" id="t4I-dh-vqj"/>
                                                    </constraints>
                                                </imageView>
                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cCf-d4-Lya">
                                                <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cCf-d4-Lya">
                                                    <rect key="frame" x="0.0" y="0.0" width="349" height="1"/>
                                                    <color key="backgroundColor" red="0.59215686274509804" green="0.59215686274509804" blue="0.59215686274509804" alpha="0.25" colorSpace="custom" customColorSpace="sRGB"/>
                                                    <constraints>
@@ -560,9 +564,10 @@
                                                </view>
                                            </subviews>
                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                            <gestureRecognizers/>
                                            <constraints>
                                                <constraint firstItem="ePu-MW-XRF" firstAttribute="leading" secondItem="CO6-fV-eyD" secondAttribute="trailing" constant="5" id="7oH-Sj-65i"/>
                                                <constraint firstAttribute="trailing" secondItem="QzF-py-N1Y" secondAttribute="trailing" constant="18" id="A9R-XH-SY7"/>
                                                <constraint firstAttribute="trailing" secondItem="QzF-py-N1Y" secondAttribute="trailing" id="A9R-XH-SY7"/>
                                                <constraint firstItem="cCf-d4-Lya" firstAttribute="top" secondItem="a77-hD-aIq" secondAttribute="top" id="KVw-as-teS"/>
                                                <constraint firstAttribute="trailing" secondItem="cCf-d4-Lya" secondAttribute="trailing" id="NwP-aE-cVx"/>
                                                <constraint firstItem="CO6-fV-eyD" firstAttribute="leading" secondItem="a77-hD-aIq" secondAttribute="leading" id="SOL-E2-179"/>
@@ -572,6 +577,9 @@
                                                <constraint firstItem="CO6-fV-eyD" firstAttribute="centerY" secondItem="a77-hD-aIq" secondAttribute="centerY" id="o5y-zC-TXv"/>
                                                <constraint firstItem="cCf-d4-Lya" firstAttribute="leading" secondItem="a77-hD-aIq" secondAttribute="leading" id="wJf-Sl-t3g"/>
                                            </constraints>
                                            <connections>
                                                <outletCollection property="gestureRecognizers" destination="7Oy-Qp-JRw" appends="YES" id="Prc-MW-JeP"/>
                                            </connections>
                                        </view>
                                    </subviews>
                                </stackView>
@@ -696,6 +704,11 @@
            </constraints>
            <point key="canvasLocation" x="139.69465648854961" y="20.422535211267608"/>
        </view>
        <tapGestureRecognizer id="7Oy-Qp-JRw">
            <connections>
                <action selector="exerciseAction:" destination="-1" id="pFN-s1-aid"/>
            </connections>
        </tapGestureRecognizer>
    </objects>
    <resources>
        <image name="bg_home_3" width="390" height="206"/>
WanPai/Root/Course/VC/CourseOnlineListVC.swift
@@ -71,7 +71,7 @@
        flowlayout.minimumLineSpacing = 22
//        flowlayout.sectionHeadersPinToVisibleBounds = true
        flowlayout.headerReferenceSize = CGSize(width: JQ_ScreenW, height: 52)
        flowlayout.footerReferenceSize = CGSize(width: JQ_ScreenW, height: 1)
        flowlayout.footerReferenceSize = CGSize(width: JQ_ScreenW, height: 10)
        collectionView = BaseCollectionView(frame: .zero, collectionViewLayout: flowlayout)
        collectionView.register(UINib(nibName: "CourseOnlineCCell", bundle: nil), forCellWithReuseIdentifier: "_CourseOnlineCCell")
        collectionView.register(UINib(nibName: "CourseOnlineHeadView", bundle: nil), forSupplementaryViewOfKind: UICollectionView.elementKindSectionHeader, withReuseIdentifier: "_CourseOnlineHeadView")
@@ -136,7 +136,14 @@
        if kind == UICollectionView.elementKindSectionFooter{
            var footerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "_footer", for: indexPath)
            footerView.backgroundColor = UIColor(hexStr: "#979797").withAlphaComponent(0.29)
            let lineView = UIView()
            lineView.backgroundColor = UIColor(hexStr: "#979797").withAlphaComponent(0.29)
            footerView.addSubview(lineView)
            lineView.snp.makeConstraints { make in
                make.left.right.bottom.equalToSuperview()
                make.height.equalTo(1)
            }
            return footerView
        }
WanPai/Root/Course/VC/StudentCourseDetailVC.swift
@@ -214,14 +214,36 @@
extension StudentCourseDetailVC:SPPageMenuDelegate{
    func pageMenu(_ pageMenu: SPPageMenu, itemSelectedAt index: Int) {
        defaultIndex = index
        var totoalNum = 0
        var totalDeductedNum = 0
        var totalRemainingNum = 0
        for m in models{
            totoalNum += m.totalNums
            totalDeductedNum = m.deductedNums
            totalRemainingNum = m.remainingNums
        }
        let model = models[index]
        headView.label_deductedNums.text = "\(model.deductedNums)"
        headView.label_totalNums.text = "\(model.totalNums)"
        headView.label_remainingNums.text = "\(model.remainingNums)"
        headView.label_deductedNums.text = "\(totalDeductedNum)"
        headView.label_totalNums.text = "\(totoalNum)"
        headView.label_remainingNums.text = "\(totalRemainingNum)"
        headView.label_preDeductedNums.text = "\(model.deductedNums)"
        headView.label_preTotalNums.text = "\(model.totalNums)"
        headView.label_preRemainingNums.text = "\(model.remainingNums)"
        headView.label_datetime.text =  "有效期:\(model.periodOfValidity)"
        headView.label_deductedNums_1.text = "\(model.deductedNums)"
        viewModel.lessionId.accept(model.courseId)
        viewModel.beginRefresh()
//
//        Services.lessonDetails(lessonId: model.courseId, stuId: studentModel.stuId).subscribe(onNext: { data in
//
//        }).disposed(by: disposeBag)
    }
}
WanPai/Root/Course/View/CourseBookingFuncView.xib
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21679"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -19,14 +19,14 @@
                    <rect key="frame" x="0.0" y="0.0" width="393" height="87"/>
                    <subviews>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="741-8S-sGc">
                            <rect key="frame" x="14" y="9" width="326" height="38"/>
                            <rect key="frame" x="14" y="9" width="326" height="30"/>
                            <subviews>
                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_search" translatesAutoresizingMaskIntoConstraints="NO" id="6og-yb-vZ5">
                                    <rect key="frame" x="4" y="10.666666666666668" width="17" height="17"/>
                                    <rect key="frame" x="4" y="6.6666666666666661" width="17" height="17"/>
                                </imageView>
                                <textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="输入场地名称,门店名称" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Mrw-tc-NDG" customClass="QMUITextField">
                                    <rect key="frame" x="25" y="0.0" width="291" height="38"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                <textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="输入课程名称" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Mrw-tc-NDG" customClass="QMUITextField">
                                    <rect key="frame" x="25" y="0.0" width="291" height="30"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="13"/>
                                    <textInputTraits key="textInputTraits" returnKeyType="search"/>
                                    <userDefinedRuntimeAttributes>
                                        <userDefinedRuntimeAttribute type="color" keyPath="placeholderColor">
@@ -38,7 +38,7 @@
                            <color key="backgroundColor" red="0.96470588239999999" green="0.96470588239999999" blue="0.96862745100000003" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstAttribute="trailing" secondItem="Mrw-tc-NDG" secondAttribute="trailing" constant="10" id="BDs-R7-YHd"/>
                                <constraint firstAttribute="height" constant="38" id="BjA-Dw-5pe"/>
                                <constraint firstAttribute="height" constant="30" id="BjA-Dw-5pe"/>
                                <constraint firstItem="6og-yb-vZ5" firstAttribute="leading" secondItem="741-8S-sGc" secondAttribute="leading" constant="4" id="Mff-k6-Q10"/>
                                <constraint firstItem="6og-yb-vZ5" firstAttribute="centerY" secondItem="741-8S-sGc" secondAttribute="centerY" id="X7V-A7-tMd"/>
                                <constraint firstItem="Mrw-tc-NDG" firstAttribute="top" secondItem="741-8S-sGc" secondAttribute="top" id="agy-MK-ZhI"/>
@@ -52,7 +52,7 @@
                            </userDefinedRuntimeAttributes>
                        </view>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="yjj-rT-1Pw">
                            <rect key="frame" x="340" y="9" width="53" height="38"/>
                            <rect key="frame" x="340" y="9" width="53" height="30"/>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="搜索">
@@ -60,10 +60,10 @@
                            </state>
                        </button>
                        <stackView opaque="NO" contentMode="scaleToFill" distribution="fillEqually" translatesAutoresizingMaskIntoConstraints="NO" id="hMR-Pb-2D7">
                            <rect key="frame" x="14" y="47" width="86" height="40"/>
                            <rect key="frame" x="14" y="39" width="79" height="48"/>
                            <subviews>
                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="m0Y-Ci-yzA" customClass="QMUIButton">
                                    <rect key="frame" x="0.0" y="0.0" width="86" height="40"/>
                                    <rect key="frame" x="0.0" y="0.0" width="79" height="48"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                    <state key="normal" title="上课时间" image="icon_down_arrow">
@@ -119,8 +119,8 @@
        </view>
    </objects>
    <resources>
        <image name="icon_down_arrow" width="20" height="14"/>
        <image name="icon_down_arrow_s" width="20" height="14"/>
        <image name="icon_down_arrow" width="13" height="8"/>
        <image name="icon_down_arrow_s" width="13" height="8"/>
        <image name="icon_search" width="17" height="17"/>
        <namedColor name="FE6E0D">
            <color red="0.99199998378753662" green="0.53299999237060547" blue="0.0080000003799796104" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
WanPai/Root/Course/View/StudentCourseDetailHeadView.swift
@@ -19,7 +19,12 @@
    @IBOutlet weak var label_datetime: UILabel!
    @IBOutlet weak var label_stuName: UILabel!
    @IBOutlet weak var img_stuProfile: UIImageView!
    @IBOutlet weak var label_deductedNums_1: UILabel!
    @IBOutlet weak var label_preDeductedNums: UILabel!
    @IBOutlet weak var label_preTotalNums: UILabel!
    @IBOutlet weak var label_preRemainingNums: UILabel!
    var renewalClouse:(()->Void)?
WanPai/Root/Course/View/StudentCourseDetailHeadView.xib
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22154" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22129"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -254,6 +254,8 @@
                <outlet property="label_datetime" destination="wUX-EU-sza" id="8xl-B9-xob"/>
                <outlet property="label_deductedNums" destination="2MH-wg-za7" id="XcX-S4-4IQ"/>
                <outlet property="label_deductedNums_1" destination="Spc-8e-GZC" id="Uxh-Xk-1q9"/>
                <outlet property="label_preRemainingNums" destination="RT1-4p-mDy" id="9YY-hM-VnL"/>
                <outlet property="label_preTotalNums" destination="qub-6X-WLy" id="1kl-3X-88q"/>
                <outlet property="label_remainingNums" destination="jO2-AH-Mno" id="9rd-Fz-8EI"/>
                <outlet property="label_stuName" destination="ctC-Za-6Wl" id="CB4-4t-Skp"/>
                <outlet property="label_totalNums" destination="G2G-fo-yih" id="3nc-RK-Dja"/>
WanPai/Root/Home/VC/HomeVC.swift
@@ -213,7 +213,7 @@
            guard let weakSelf = self else { return }
            weakSelf.storeId = store.id
            weakSelf.label_store.text = store.name
            weakSelf.storeModel = HomeStoreModel(isVip: weakSelf.storeModel!.isVip, storeId: store.id, name: store.name, lon: 0, lat: 0, province: province.name, provinceCode: province.code, city: city.name, cityCode: city.code)
            weakSelf.storeModel = HomeStoreModel(isVip: weakSelf.storeModel?.isVip ?? 0, storeId: store.id, name: store.name, lon: 0, lat: 0, province: province.name, provinceCode: province.code, city: city.name, cityCode: city.code)
            weakSelf.items.removeAll()
            weakSelf.getStoreItemList()
WanPai/Root/Other/CCell/CouponCCell.swift
@@ -15,22 +15,24 @@
    @IBOutlet weak var label_name: UILabel!
    @IBOutlet weak var label_fullMinus: UILabel!
    @IBOutlet weak var label_vaildTime: UILabel!
    @IBOutlet weak var label_useCity: UILabel!
    var showDetailClouse:(()->Void)?
    var courseCouponModel:CourseCouponModel!{
        didSet{
            if let m = courseCouponModel{
                label_name.text = m.type.rawTitle
                label_useCity.text = m.available
                let ruleModel = CouponModelRuleModel.deserialize(from: m.content)
                switch m.type {
                    case .discount:
                        label_money.text = "\(ruleModel?.deductionAmount.jq_formatFloat ?? "")元"
                        label_money.text = ruleModel?.deductionAmount ?? ""
                        label_fullMinus.isHidden = false
                        label_fullMinus.text = String(format: "满%@元可用", ruleModel?.conditionalAmount.jq_formatFloat ?? "--")
                        label_fullMinus.text = ruleModel?.conditionalAmount ?? ""
                    case .voucher:
                        label_money.text = "\(ruleModel?.conditionalAmount.jq_formatFloat ?? "")元"
                        label_money.text = ruleModel?.conditionalAmount ?? ""
                        label_fullMinus.isHidden = true
                    case .experience:
                        label_money.text = ruleModel?.experienceName ?? ""
WanPai/Root/Other/CCell/CouponCCell.xib
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22154" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22130"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
@@ -99,6 +99,12 @@
                                    <action selector="showContentAction:" destination="gTV-IL-0wX" eventType="touchUpInside" id="tE2-yA-Wuz"/>
                                </connections>
                            </button>
                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="c3B-oX-Uzt">
                                <rect key="frame" x="32.666666666666664" y="76.666666666666671" width="31" height="14.333333333333329"/>
                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
                                <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                <nil key="highlightedColor"/>
                            </label>
                        </subviews>
                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                        <constraints>
@@ -114,10 +120,12 @@
                            <constraint firstAttribute="trailing" secondItem="DLn-XT-0Qj" secondAttribute="trailing" constant="9" id="ONW-N8-KWx"/>
                            <constraint firstItem="943-VV-dPw" firstAttribute="trailing" secondItem="OKL-S9-8uc" secondAttribute="trailing" constant="-3" id="WDa-vh-Zz9"/>
                            <constraint firstItem="s4d-Hy-Gra" firstAttribute="leading" secondItem="OKL-S9-8uc" secondAttribute="trailing" id="bZg-Yq-qYQ"/>
                            <constraint firstAttribute="bottom" secondItem="c3B-oX-Uzt" secondAttribute="bottom" constant="12" id="bqW-FM-RlI"/>
                            <constraint firstItem="OKL-S9-8uc" firstAttribute="top" secondItem="mnx-Jv-DFb" secondAttribute="top" id="ctI-2Y-KVB"/>
                            <constraint firstItem="DLn-XT-0Qj" firstAttribute="centerY" secondItem="943-VV-dPw" secondAttribute="centerY" id="fg2-s8-8hM"/>
                            <constraint firstItem="943-VV-dPw" firstAttribute="bottom" secondItem="OKL-S9-8uc" secondAttribute="bottom" constant="-8" id="gDi-cg-pJq"/>
                            <constraint firstAttribute="bottom" secondItem="s4d-Hy-Gra" secondAttribute="bottom" id="pBu-iF-fVd"/>
                            <constraint firstItem="c3B-oX-Uzt" firstAttribute="centerX" secondItem="943-VV-dPw" secondAttribute="centerX" id="yZR-IB-sdY"/>
                            <constraint firstItem="943-VV-dPw" firstAttribute="leading" secondItem="OKL-S9-8uc" secondAttribute="leading" constant="3" id="zzE-HG-7TH"/>
                        </constraints>
                    </view>
@@ -132,9 +140,10 @@
            </constraints>
            <size key="customSize" width="417" height="123"/>
            <connections>
                <outlet property="label_fullMinus" destination="gEm-JU-PoK" id="Hj9-Wb-JqI"/>
                <outlet property="label_fullMinus" destination="c3B-oX-Uzt" id="J1c-9b-uXy"/>
                <outlet property="label_money" destination="943-VV-dPw" id="tMl-vP-5mZ"/>
                <outlet property="label_name" destination="OYF-uW-SFs" id="bRA-ib-61b"/>
                <outlet property="label_useCity" destination="gEm-JU-PoK" id="X6R-hy-ZDD"/>
                <outlet property="label_vaildTime" destination="7Qw-dg-xym" id="rrz-7l-kG2"/>
            </connections>
            <point key="canvasLocation" x="319.84732824427482" y="44.014084507042256"/>
WanPai/Root/Welfare/TCell/WelfareCouponsTCell.swift
@@ -30,11 +30,11 @@
    var indexPath:IndexPath!
    var couponModel:CouponModel!{
        didSet{
            label_price.text = couponModel.ruleModel?.deductionAmount.currency()
            label_useCon.isHidden = couponModel.ruleModel?.conditionalAmount == 0
            label_price.text = couponModel.ruleModel?.deductionAmount
            label_useCon.isHidden = couponModel.ruleModel?.conditionalAmount.isEmpty ?? true
            if let amount = couponModel.ruleModel?.conditionalAmount{
                label_useCon.text = String(format: "满%@可用",amount)
                label_useCon.text = amount
            }
            label_title.text = couponModel.name
@@ -65,6 +65,17 @@
            btn_detail.isHidden = couponModel.useCondition == .nationwide
            label_info.text = couponModel.instructionsForUse
            switch couponModel.type {
                case .none:
                    break
                case .discount:
                    break
                case .voucher:
                    break
                case .experience:
                    label_price.text = "体验"
            }
        }
    }
WanPai/Root/Welfare/VC/WelfareCouponsListVC.swift
@@ -108,7 +108,7 @@
    }
    @objc func fliterAction(){
        JQ_MenuView().show(self, tapView: btn_filter, items: ["全部","已使用","未使用","已过期"], tableHei: 230) {[weak self] index, str in
        JQ_MenuView().show(self, tapView: btn_filter, items: ["全部","未使用","已使用","已过期"], tableHei: 230) {[weak self] index, str in
            self?.btn_filter.setTitle(str, for: .normal)
            if let vc =  self?.pageViewController.currentController as? WelfareCouponsSubListVC{
                if index == 0{
WanPai/Root/Yard/VC/YardDetailDateTimeVC.swift
@@ -10,6 +10,9 @@
import RxRelay
import RxSwift
let UpdateDetailDate_Noti = Notification.Name.init("UpdateDetailDate_Noti")
class YardDetailDateTimeVC: BaseVC {
    private var collectionView:UICollectionView!
@@ -66,6 +69,16 @@
        querySiteTimes(halfName: halfName, siteName: siteName)
    }
    override func setRx() {
        NotificationCenter.default.rx.notification(UpdateDetailDate_Noti, object: nil).take(until: self.rx.deallocated).subscribe(onNext: {[weak self] data in
            guard let weakSelf = self else { return }
            self?.selects.removeAll()
            self?.drop1 = nil
            self?.drop2 = nil
            self?.querySiteTimes(halfName: weakSelf.halfName, siteName: weakSelf.siteName)
        }).disposed(by: disposeBag)
    }
    //清除水
    public func clearALL(){
        drop1 = nil
WanPai/Root/Yard/VC/YardDetailVC.swift
@@ -378,11 +378,13 @@
                                    YYPaymentManager.shared.sendPaymentRequest(YYAlipayRequest(orderString: m.orderString)) { result in
                                        switch result {
                                            case .success:
                                                NotificationCenter.default.post(name: UpdateDetailDate_Noti, object: nil)
                                                let vc = PaymentResultVC(result: .success, objType: .yard,handleVC: nil)
                                                weakSelf.push(vc: vc)
                                            case .cancel:
                                                alert(msg: "交易取消")
                                            case .failure(_):
                                                NotificationCenter.default.post(name: UpdateDetailDate_Noti, object: nil)
                                                let vc = PaymentResultVC(result: .fail("交易失败",0), objType: .yard,handleVC: nil)
                                                weakSelf.push(vc: vc)
                                        }
@@ -390,6 +392,7 @@
                                case .wechat,.integral:break
                                case .coin:
                                    NotificationCenter.default.post(name: UpdateDetailDate_Noti, object: nil)
                                    let vc = PaymentResultVC(result: .success, objType: .yard,handleVC: nil)
                                    weakSelf.push(vc: vc)
                                case .courseNum:break
@@ -399,12 +402,14 @@
                        if let er = error as? NetworkRequest.NetRequestError{
                            switch er {
                                case .Other(let code,let string):
                                    NotificationCenter.default.post(name: UpdateDetailDate_Noti, object: nil)
                                    let vc = PaymentResultVC(result: .fail(string,code), objType: .yard){[weak self] in
                                        let vc1 = YardBookingListVC(page: 5)
                                        self?.push(vc: vc1)
                                    }
                                    self?.push(vc: vc)
                                default:
                                    NotificationCenter.default.post(name: UpdateDetailDate_Noti, object: nil)
                                    let vc = PaymentResultVC(result: .fail("支付失败",0), objType: .yard){[weak self] in
                                        let vc1 = YardBookingListVC(page: 5)
                                        self?.push(vc: vc1)