| | |
| | | private let topMenuView = HomeTopMenuView.jq_loadNibView() |
| | | private var titleItems = [TitleItem]() |
| | | private var viewModel = HomeViewModel() |
| | | private var timer:Timer? |
| | | |
| | | private var cellularData:CTCellularData! |
| | | |
| | |
| | | if let m = data.data{UserViewModel.saveAvatarInfo(m)} |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | self.navigationController?.interactivePopGestureRecognizer?.isEnabled = true |
| | | } |
| | | |
| | | override func viewDidLoad() { |
| | | super.viewDidLoad() |
| | | |
| | | titleItems.removeAll() |
| | | |
| | | timer = Timer.scheduledTimer(timeInterval: 60, target: self, selector: #selector(autoUpdate), userInfo: nil, repeats: true) |
| | | RunLoop.current.add(timer!, forMode: .default) |
| | | |
| | | titleItems.append(TitleItem(title: "每日疗愈", subTitle: "Daily Meditation")) |
| | | titleItems.append(TitleItem(title: "私人订制", subTitle: "Private Customization",hasMore: true)) |
| | |
| | | }) |
| | | |
| | | if let m = UserDefaultSettingViewModel.getSetting()?.bgm { |
| | | topMenuView.image_top.sd_setImage(with: URL(string: m.imageUrl)) |
| | | topMenuView.image_top.sd_setImage(with: URL(string: m.imageUrl.jq_urlEncoded())) |
| | | } |
| | | |
| | | getData() |
| | |
| | | if !state{ |
| | | exit(0) |
| | | }else{ |
| | | |
| | | if var m = UserDefaultSettingViewModel.getSetting(){ |
| | | m.userFirstLaunch = false |
| | | UserDefaultSettingViewModel.saveSetting(m) |
| | | } |
| | | |
| | | //跳转计划引导 |
| | | let nav = BaseNav(rootViewController: PlanGuideVC()) |
| | | let nav = BaseNav(rootViewController: PlanGuideVC(isFromFist: true)) |
| | | nav.modalPresentationStyle = .fullScreen |
| | | weakSelf.present(nav, animated: true) |
| | | } |
| | |
| | | |
| | | override func setRx() { |
| | | topMenuView.clickItemAt {[unowned self] item in |
| | | let vc = HomeItemListVC(topTitle: item.title, id: item.id, showType:.horizontal) |
| | | let vc = HomeItemListVC(topTitle: item.title, id: item.id, showType:.vertical) |
| | | self.push(vc: vc) |
| | | } |
| | | |
| | |
| | | Services.isFirst().subscribe(onNext: {data in |
| | | if data.data == true{ |
| | | weakSelf.navigationController?.tabBarController?.selectedIndex = 2 |
| | | var viewModel = UserDefaultSettingViewModel.getSetting() |
| | | viewModel?.userFirstOpenTreeTask = false |
| | | let viewModel = UserDefaultSettingViewModel.getSetting() |
| | | // viewModel?.userFirstOpenTreeTask = false |
| | | UserDefaultSettingViewModel.saveSetting(viewModel!) |
| | | } |
| | | }).disposed(by: weakSelf.disposeBag) |
| | |
| | | }).disposed(by: disposeBag) |
| | | |
| | | NotificationCenter.default.rx.notification(LoginSuccess_Noti).take(until: self.rx.deallocated).subscribe(onNext: {data in |
| | | self.getData() |
| | | }).disposed(by: disposeBag) |
| | | |
| | | NotificationCenter.default.rx.notification(LoginQuit_Noti).take(until: self.rx.deallocated).subscribe(onNext: {data in |
| | | self.getData() |
| | | }).disposed(by: disposeBag) |
| | | } |
| | |
| | | self.tableView.reloadRows(at: [IndexPath(row: 0, section: 0)], with: .none) |
| | | }).disposed(by: disposeBag) |
| | | |
| | | Services.getPersonalityPlan().subscribe(onNext: { data in |
| | | if let m = data.data{ |
| | | if m.count > 0{ |
| | | self.viewModel.privateTodyModels = m |
| | | }else{ |
| | | let m = MeditationModel() |
| | | m.id = 0 |
| | | self.viewModel.privateTodyModels = [m] |
| | | |
| | | if !(UserViewModel.getLoginInfo()?.accessToken.isEmpty ?? true){ |
| | | Services.getPersonalityPlan().subscribe(onNext: { data in |
| | | if let m = data.data{ |
| | | if m.count > 0{ |
| | | self.viewModel.privateTodyModels = m |
| | | }else{ |
| | | let m = MeditationModel() |
| | | m.id = 0 |
| | | self.viewModel.privateTodyModels = [m] |
| | | } |
| | | self.tableView.reloadRows(at: [IndexPath(row: 1, section: 0)], with: .none) |
| | | } |
| | | self.tableView.reloadRows(at: [IndexPath(row: 1, section: 0)], with: .none) |
| | | } |
| | | }).disposed(by: disposeBag) |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | |
| | | Services.getMeditationAndCateList().subscribe(onNext: { data in |
| | | if let m = data.data{ |
| | |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | |
| | | |
| | | @objc func autoUpdate(){ |
| | | print("--->") |
| | | Services.getTopdayMedita().subscribe(onNext: { data in |
| | | self.viewModel.todyModel = data.data?.clientMeditationVO |
| | | self.tableView.reloadRows(at: [IndexPath(row: 0, section: 0)], with: .none) |
| | | }).disposed(by: disposeBag) |
| | | } |
| | | |
| | | @objc func searchAction(){ |
| | | let vc = SearchVC(serchType: .muse) |
| | | push(vc: vc) |
| | | } |
| | | |
| | | @objc func settingvoiceAction(){ |
| | | let vc = BackgroundVoiceVC() |
| | | let vc = BackgroundVoiceVC(isFromFist: false) |
| | | push(vc: vc) |
| | | } |
| | | |
| | | @objc func jumpMoreAction(_ sender:UIButton){ |
| | | switch sender.tag { |
| | | case 201: |
| | | guard sceneDelegate!.checkisLoginState() else {return} |
| | | //跳转计划引导 |
| | | let nav = BaseNav(rootViewController: PlanGuideVC()) |
| | | let nav = BaseNav(rootViewController: PlanGuideVC(isFromFist: false)) |
| | | nav.modalPresentationStyle = .fullScreen |
| | | present(nav, animated: true) |
| | | break |
| | |
| | | |
| | | if indexPath.section == 0{ |
| | | if let m = viewModel.todyModel{ |
| | | let vc = HomeItemDetailVC(id: m.id) |
| | | push(vc: vc) |
| | | Services.getMeditationDetail(id: m.id).subscribe(onNext: {[weak self]data in |
| | | guard let weakSelf = self else { return } |
| | | if let m = data.data{ |
| | | |
| | | if AudioPlayer.getSharedInstance().meditationModel?.id == m.id && AudioPlayer.getSharedInstance().bgmPlayer?.timeControlStatus == .playing{ |
| | | return |
| | | } |
| | | |
| | | AudioPlayer.getSharedInstance().playBGMAt(firstPlayIndex: 0, model: m, delegate: self) |
| | | PayMusicVC.show(model: m,isHidden: false) |
| | | self?.tableView.reloadData() |
| | | } |
| | | }).disposed(by: disposeBag) |
| | | }else{ |
| | | alert(msg: "平台暂未设置今日疗愈") |
| | | } |
| | |
| | | |
| | | if indexPath.section == 2{ |
| | | let vc = WebVC(type: .guide) |
| | | vc.title = "心泉·疗愈" |
| | | vc.title = "泉疗愈" |
| | | push(vc: vc) |
| | | } |
| | | } |
| | |
| | | if viewModel.todyModel?.id != 0{ |
| | | cell.model = viewModel.todyModel |
| | | cell.view_data.isHidden = false |
| | | cell.img_play.isHidden = AudioPlayer.getSharedInstance().meditationModel?.id == viewModel.todyModel?.id |
| | | |
| | | }else{ |
| | | cell.img_cover.image = UIImage(named: "bg_today") |
| | | cell.view_data.isHidden = true |
| | |
| | | navigationController?.navigationBar.scrollEdgeAppearance?.backgroundColor = .white |
| | | } |
| | | } |
| | | |
| | | extension HomeVC:PayMusicDelegate{ |
| | | func playState(_ state: PlayMusicState) { |
| | | |
| | | } |
| | | |
| | | |
| | | } |