From f7e33a3255d9f87b20e4a06fc32012eaad77cad5 Mon Sep 17 00:00:00 2001
From: 无故事王国 <841720330@qq.com>
Date: 星期三, 11 十月 2023 14:52:37 +0800
Subject: [PATCH] 完善

---
 WanPai/Root/Other/View/StudentChooseView.swift |   39 +++++++++++++++++++++++++++++++++++----
 1 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/WanPai/Root/Other/View/StudentChooseView.swift b/WanPai/Root/Other/View/StudentChooseView.swift
index b618d2e..a1f96ec 100644
--- a/WanPai/Root/Other/View/StudentChooseView.swift
+++ b/WanPai/Root/Other/View/StudentChooseView.swift
@@ -31,11 +31,13 @@
     @IBOutlet weak var view_container: UIView!
     @IBOutlet weak var cons_bottom: NSLayoutConstraint!
     @IBOutlet weak var btn_add: QMUIButton!
-    
+	@IBOutlet weak var cons_tableHei: NSLayoutConstraint!
+	
     private var clickClouse:(([Any])->Void)!
     private var needAddClouse:(()->Void)!
     private var itemType:ItemType!
     private var selectStudents = [Any]()
+	private var disposeBag = DisposeBag()
 
 
     private lazy var stuViewModel:StudentViewModel = {
@@ -56,6 +58,7 @@
         tableView.separatorStyle = .none
         alpha = 0
         layoutIfNeeded()
+		setRx()
     }
     
     static func show(itemType:ItemType,defaultStu:[Any]? = nil,clickClouse:@escaping ([Any])->Void,needAddClouse:@escaping ()->Void){
@@ -90,7 +93,26 @@
             studentChooseView.tableView.reloadData()
         }
     }
-    
+
+	private func setRx(){
+		stuViewModel.dataSource.subscribe(onNext: {[weak self] data in
+
+			let hei = min(360,Double(data.count) * 90.0)
+			self?.cons_tableHei.constant = hei
+			UIView.animate(withDuration: 0.4) {
+				self?.layoutIfNeeded()
+			}
+		}).disposed(by: disposeBag)
+
+		actViewModel.dataSource.subscribe(onNext: {[weak self] data in
+			let hei = min(360,Double(data.count) * 90.0)
+			self?.cons_tableHei.constant = hei
+			UIView.animate(withDuration: 0.4) {
+				self?.layoutIfNeeded()
+			}
+		}).disposed(by: disposeBag)
+	}
+
     @IBAction func closeAction(_ sender: UIButton) {
         closeAction()
     }
@@ -133,7 +155,9 @@
                if self.selectStudents.count == 1{
                    alert(msg: "至少选择一位学员");return
                }
-               self.selectStudents.remove(at: indexPath.row)
+			   if let index = self.selectStudents.firstIndex(where: {($0 as! CourseDetailStudentModel).id == item.id}){
+				   self.selectStudents.remove(at: index)
+			   }
            }else{
                self.selectStudents.append(item)
            }
@@ -143,7 +167,9 @@
                if self.selectStudents.count == 1{
                    alert(msg: "至少选择一位参赛学员");return
                }
-               self.selectStudents.remove(at: indexPath.row)
+			   if let index = self.selectStudents.firstIndex(where: {($0 as! ActivityDetailPartModel).id == item.id}){
+				   self.selectStudents.remove(at: index)
+			   }
            }else{
                self.selectStudents.append(item)
            }
@@ -166,10 +192,13 @@
         if itemType == .course{
             let item = stuViewModel.dataSource.value[indexPath.row]
             let cell = tableView.dequeueReusableCell(withIdentifier: "_StudentInfoTCell") as! StudentInfoTCell
+			cell.cons_handleCenterY.constant = -7
             if self.selectStudents.contains(where: {($0 as! CourseDetailStudentModel).id == item.id}){
                 cell.btn_handle.setImage(UIImage(named: "btn_choose_s"), for: .normal)
+				cell.view_container.borderColor = UIColor(hexStr: "#FD7902").withAlphaComponent(0.28)
             }else{
                 cell.btn_handle.setImage(nil, for: .normal)
+				cell.view_container.borderColor = UIColor(hexStr: "#ADADAD").withAlphaComponent(0.28)
             }
             cell.studentModel = item
             return cell
@@ -181,8 +210,10 @@
             cell.activityDetailPartModel = item
             if self.selectStudents.contains(where: {($0 as! ActivityDetailPartModel).id == item.id}){
                 cell.img_radio.image = UIImage(named: "btn_choose_s")
+				cell.view_container.borderColor = UIColor(hexStr: "#FD7902").withAlphaComponent(0.28)
             }else{
                 cell.img_radio.image = UIImage(named: "")
+				cell.view_container.borderColor = UIColor(hexStr: "#ADADAD").withAlphaComponent(0.28)
             }
             return cell
         }

--
Gitblit v1.7.1