无故事王国
2 天以前 fe460485972623f9ffcd4d29cb956bfddf9c97e3
DolphinEnglishLearnStudent/Moudle/Home/Listen/VC/HomeListenFightVC.swift
@@ -26,11 +26,11 @@
    var rawTitle:String{
        switch self {
        case .lesson1:return "自主学习1-听音选图"
        case .lesson2:return "自主学习2-看图选音"
        case .lesson3:return "自主学习3-归纳排除"
        case .lesson4:return "自主学习4-有问有答"
        case .lesson5:return "自主学习5-音图相配"
        case .lesson1:return "听音选图"
        case .lesson2:return "看图选音"
        case .lesson3:return "归纳排除"
        case .lesson4:return "有问有答"
        case .lesson5:return "音图相配"
        case .game1:return "游戏类型1-超级听力"
        case .game2:return "游戏类型2-超级记忆"
        case .story1:return "自主故事1-看图配音"
@@ -103,7 +103,13 @@
    var data:Any?
    var maxPage = 0 //最大页记录
    var teamScheduleModel:TeamScheduleModel? //上次中途退出,答题记录
    //上次中途退出,答题记录
    var teamScheduleModel:TeamScheduleModel?{
        didSet{
            setPages()
            btn_random.isHidden = (viewModel.listenType.value == .game1 ||  viewModel.listenType.value == .game2)
        }
    }
    var pages = [[ListenSubCardModel]]() //分页显示
    private var notiObject:Dictionary<String,Any>?
@@ -199,6 +205,19 @@
        return btn
    }()
    private lazy var btn_random:UIButton = {
        let btn = UIButton(type: .custom)
        btn.setTitle("随机答题", for: .normal)
        btn.titleLabel?.font = .systemFont(ofSize: 14, weight: .medium)
        btn.setTitleColor(Config.ThemeColor, for: .normal)
        btn.jq_borderColor = Config.ThemeColor
        btn.backgroundColor = .white
        btn.jq_borderWidth = 1
        btn.jq_cornerRadius = 4
        btn.isHidden = true
        return btn
    }()
    private lazy var pageVC:FFPageViewController = {
        let vc = FFPageViewController()
        vc.scrollview.isScrollEnabled = false
@@ -244,8 +263,9 @@
        btn_forward_mini.addTarget(self, action: #selector(beforeAction_mini), for: .touchUpInside)
        btn_next.addTarget(self, action: #selector(nextAction), for: .touchUpInside)
        btn_beAgain.addTarget(self, action: #selector(beAgaionAction), for: .touchUpInside)
        btn_random.addTarget(self, action: #selector(randomAnsterAction), for: .touchUpInside)
        setPages()
//        setPages()
//        pageVC.reloadData()
        timer = Timer(fire: .distantPast, interval: 1.0, repeats: true, block: {[weak self] _ in
@@ -254,12 +274,16 @@
        timer.fire()
        RunLoop.current.add(timer, forMode: .common)
        setPages()
        if let teamSchedule = teamScheduleModel{
            viewModel.correctNum = viewModel.correctNum + teamSchedule.correctNumber
            viewModel.errorNum = teamSchedule.answerNumber - teamSchedule.correctNumber
            maxPage   = teamSchedule.schedule
        if let m = data as? ListenNewModel{
            viewModel.correctNum = viewModel.correctNum + (teamScheduleModel?.correctNumber ?? 0)
            viewModel.errorNum = (teamScheduleModel?.answerNumber ?? 0) - (teamScheduleModel?.correctNumber ?? 0)
            maxPage   = teamScheduleModel?.schedule ?? 0
            btn_random.isHidden = (viewModel.listenType.value == .game1 ||  viewModel.listenType.value == .game2)
            print("---->>>>>2:\((data as? ListenNewModel)!.list.count)")
            switch viewModel.listenType.value{
            case .lesson1:
@@ -412,6 +436,11 @@
            make.width.equalTo(124)
        }
        btn_random.snp.makeConstraints { make in
            make.width.equalTo(124)
            make.height.equalTo(40)
        }
        let stackView = UIStackView(arrangedSubviews: [btn_beAgain,label_pageNum,btn_exit])
        if viewModel.listenType.value == .story2{
@@ -428,6 +457,12 @@
            make.bottom.equalTo(self.view.safeAreaLayoutGuide.snp.bottom).offset(-5)
            make.centerX.equalToSuperview()
            make.height.equalTo(40)
        }
        view.addSubview(btn_random)
        btn_random.snp.makeConstraints { make in
            make.centerY.equalTo(stackView)
            make.trailing.equalToSuperview().offset(-18)
        }
        switch viewModel.listenType.value{
@@ -604,7 +639,7 @@
        timer.invalidate()
        let vc = HomeStudyCompleteVC(viewModel: viewModel,studyScheduleModel: studyScheduleModel!)
        let vc = HomeStudyCompleteVC(viewModel: viewModel,studyScheduleModel: nil)
        vc.title = viewModel.listenType.value.rawTitle
        vc.viewModel = viewModel
        push(vc: vc)
@@ -763,6 +798,26 @@
        }
    }
    @objc func randomAnsterAction(){
        var count:Int = 0
        if data is ListenNewModel{
            if viewModel.listenType.value == .lesson1{
                count = (data as! ListenNewModel).subjectList.count
            }
            if viewModel.listenType.value == .lesson2{
                count = (data as! ListenNewModel).subjectList.count
            }
            count = pages.count
        }
        RandromAnsterView.show(count) { index in
            self.pageVC.scroll(toPage: index, animation: true)
        }
    }
    @objc func nextAction(){
        listenFightLine = .next
        if viewModel.listenType.value == .story2{