//
|
// CourseBooking_1_TCell.swift
|
// WanPai
|
//
|
// Created by 无故事王国 on 2023/6/27.
|
//
|
|
import UIKit
|
import JQTools
|
import RxSwift
|
|
class CourseBooking_1_TCell: UITableViewCell {
|
|
var indexPath:IndexPath!
|
|
var studentAppointModel:StudentAppointModel!{
|
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
|
|
btn_exercise.isHidden = studentAppointModel.status != .complete
|
btn_cancel.isHidden = true
|
btn_qrCode.isHidden = studentAppointModel.status != .pedding
|
btn_qrCode.isHidden = false
|
|
switch studentAppointModel.status{
|
case .pedding:label_status.textColor = UIColor(hexStr: "#FD7402")
|
default:label_status.textColor = UIColor(hexStr: "#3D3E45")
|
}
|
}
|
}
|
|
@IBOutlet weak var label_title: UILabel!
|
@IBOutlet weak var label_courseNum: 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!
|
@IBOutlet weak var btn_cancel: UIButton!
|
@IBOutlet weak var btn_qrCode: UIButton!
|
|
|
private var disposeBag = DisposeBag()
|
|
override func awakeFromNib() {
|
super.awakeFromNib()
|
selectionStyle = .none
|
}
|
|
|
@IBAction func exerciseAction(_ sender: UIButton) {
|
let vc = CourseExerciseSubListVC()
|
JQ_currentViewController().jq_push(vc: vc)
|
}
|
|
@IBAction func cancelAction(_ sender: UIButton) {
|
CommonAlertView.show(title: "取消预约", content: "是否取消当前预约?") {[weak self] status in
|
guard let weakSelf = self else { return }
|
if status{
|
Services.cancelCourse(courseStuRecordId: weakSelf.studentAppointModel.courseStuRecordId).subscribe(onNext: { data in
|
NotificationCenter.default.post(name: CourseBooking_Noti, object: weakSelf.indexPath)
|
}).disposed(by: weakSelf.disposeBag)
|
}
|
}
|
}
|
|
@IBAction func QRCodeAction(_ sender: UIButton) {
|
|
let date = studentAppointModel.timeFrame.components(separatedBy: " ").first
|
let timesList = studentAppointModel.timeFrame.components(separatedBy: " ").last
|
|
|
if let t = timesList{
|
let startTime = t.components(separatedBy: "-").first!
|
let endTime = t.components(separatedBy: "-").last!
|
let startDateTime = Date.jq_StringToTimeInterval(String(format: "%@ %@", date!,startTime), "yyyy.MM.dd HH:mm:ss")
|
let endDateTime = Date.jq_StringToTimeInterval(String(format: "%@ %@", date!,endTime), "yyyy.MM.dd HH:mm:ss")
|
|
var times = [OpenDoorTimeModel]()
|
times.append(OpenDoorTimeModel(start_time: startDateTime, end_time: endDateTime))
|
let openDoorModel = OpenDoorModel(sid: studentAppointModel.sid, rid: studentAppointModel.rid , uid: studentAppointModel.userId, time: times, type: 2)
|
if let modelStr = openDoorModel.toJSONString(){
|
QRPreview.show(modelStr)
|
}
|
}
|
|
|
|
|
|
|
|
// var a1 = [String]()
|
// var b1 = [String]()
|
//
|
// for v in timesList?.components(separatedBy: "-") ?? []{
|
// let a = v.components(separatedBy: ",").first!
|
// let b = v.components(separatedBy: ",").last!
|
// a1.append(a);b1.append(b)
|
// }
|
//
|
// var times = [OpenDoorTimeModel]()
|
// for (index,v) in a1.enumerated(){
|
// 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))
|
// }
|
// let openDoorModel = OpenDoorModel(sid: [studentAppointModel.siteId], rid: studentAppointModel.ids , uid: studentAppointModel.userId, time: times, type: 2)
|
// if let modelStr = openDoorModel.toJSONString(){
|
// QRPreview.show(modelStr)
|
// }
|
}
|
}
|