From 29ca792f9cd6216f5618cf8706d35a51b57b1376 Mon Sep 17 00:00:00 2001 From: 无故事王国 <841720330@qq.com> Date: 星期一, 23 十月 2023 17:37:24 +0800 Subject: [PATCH] 修复BUG --- WanPai/Root/Course/VC/ExperienceCourseVC.swift | 54 +++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 37 insertions(+), 17 deletions(-) diff --git a/WanPai/Root/Course/VC/ExperienceCourseVC.swift b/WanPai/Root/Course/VC/ExperienceCourseVC.swift index 3151f0c..2703150 100644 --- a/WanPai/Root/Course/VC/ExperienceCourseVC.swift +++ b/WanPai/Root/Course/VC/ExperienceCourseVC.swift @@ -17,7 +17,8 @@ @IBOutlet weak var collectionView: UICollectionView! @IBOutlet weak var cons_collectionHei: NSLayoutConstraint! @IBOutlet weak var label_needNum: UILabel! - + @IBOutlet weak var hei_cons: NSLayoutConstraint! + private var courseId:Int! private var experienceCourseModel:ExperienceCourseModel? private var cellW:Double = 0 @@ -27,11 +28,12 @@ override func viewDidLoad() { super.viewDidLoad() title = "体验购课" - cellW = ((view.width - 28.0) - 11.0 * 3) / 4 + cellW = ((view.width - 40.0) - 11.0 * 3) / 4 cellH = cellW * 0.439 collectionView.delegate = self collectionView.dataSource = self + collectionView.isScrollEnabled = false collectionView.register(UINib(nibName: "Common_1_CCell", bundle: nil), forCellWithReuseIdentifier: "_Common_1_CCell") collectionView.contentInset = UIEdgeInsets(top: 0, left: 14, bottom: 0, right: 14) @@ -40,7 +42,7 @@ if let model = data.data{ self?.label_name.text = model.name self?.label_num.text = "\(model.num)课时" - self?.label_week.text = model.week + self?.label_week.text = "每" + model.week self?.label_times.text = model.time.joined(separator: "|") self?.experienceCourseModel = model self?.collectionView.reloadData() @@ -62,20 +64,23 @@ } @IBAction func paymenAction(_ sender: UIButton) { + guard selectIndexs.count > 0 else {alert(msg: "请选择上课时间");return} let n = (experienceCourseModel?.num ?? 0) * (experienceCourseModel?.time.count ?? 0) * selectIndexs.count - if let storeId = UserDefaults.standard.value(forKey: "Current_StoreID") as? Int{ - PaymentCourseView.show(storeId: storeId, number: n) {[weak self] s in - guard let weakSelf = self else { return } + if let storeStr = UserDefaults.standard.object(forKey: "CurrentStore") as? String{ + if let deserModel = HomeStoreModel.deserialize(from: storeStr){ + PaymentCourseView.show(storeId: deserModel.storeId, number: n) {[weak self] s in + guard let weakSelf = self else { return } - var t = [String]() - for selectIndex in weakSelf.selectIndexs { - t.append(weakSelf.experienceCourseModel!.day[selectIndex]) + var t = [String]() + for selectIndex in weakSelf.selectIndexs { + t.append(weakSelf.experienceCourseModel!.day[selectIndex]) + } + Services.payCourse(courseId: weakSelf.courseId, num: n, oldCourseId: s, time: t).subscribe(onNext: {data in + alertSuccess(msg: "购买成功") + }) { error in + + }.disposed(by: weakSelf.disposeBag) } - Services.payCourse(courseId: weakSelf.courseId, num: n, oldCourseId: s, time: t).subscribe(onNext: {data in - alertSuccess(msg: "购买成功") - }) { error in - - }.disposed(by: weakSelf.disposeBag) } } } @@ -84,9 +89,23 @@ extension ExperienceCourseVC:UICollectionViewDelegate{ func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { if selectIndexs.contains(indexPath.row){ - selectIndexs.remove(indexPath.row) + if indexPath.row == 0 || (indexPath.row == (experienceCourseModel!.day.count - 1)){ + selectIndexs.remove(indexPath.row) + }else if selectIndexs.contains(indexPath.row + 1) && selectIndexs.contains(indexPath.row - 1){ + alert(msg: "必须连续选择") + }else{ + selectIndexs.remove(indexPath.row) + } }else{ - selectIndexs.insert(indexPath.row) + if selectIndexs.count != 0{ + if selectIndexs.contains(indexPath.row - 1) || selectIndexs.contains(indexPath.row + 1){ + selectIndexs.insert(indexPath.row) + }else{ + alert(msg: "必须连续选择") + } + }else{ + selectIndexs.insert(indexPath.row) + } } let n = (experienceCourseModel?.num ?? 0) * (experienceCourseModel?.time.count ?? 0) * selectIndexs.count label_needNum.text = "\(n)" @@ -106,6 +125,7 @@ cell.label_content.backgroundColor = isSelected ? Def_ThemeColor : .white cell.label_content.textColor = isSelected ? .white : UIColor(hexStr: "#898989") cell.label_content.borderWidth = isSelected ? 0:1 + cell.label_content.borderColor = UIColor(hexStr: "#F2E9E9") return cell } } @@ -116,7 +136,7 @@ } func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat { - return 11 + return 13 } func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { -- Gitblit v1.7.1