// // CreateBubbleVC.swift // QuickLocation // // Created by 八条 on 2026/6/26. // import UIKit import RxSwift import RxCocoa class CreateBubbleVC: BaseViewController { fileprivate var rootView: CreateBubbleView! override func loadView() { rootView = CreateBubbleView(frame: UIScreen.main.bounds) view = rootView } private var doneBtn: UIButton { rootView.createBubbleTipsView.doneBtn } private var popupBtn: UIButton { rootView.createBubbleDoneView.popupBtn } override func viewDidLoad() { super.viewDidLoad() doneBtn.rx.tap.subscribe(onNext: { [weak self] in guard let self = self else { return } if AppContextManager.shared.vip > 1 { let hours = self.rootView.createBubbleTiemView.selectedHour.value requestSetBubble(enable: true, keep_time: hours) } else { CreateBubblePopView.show() } }).disposed(by: disposeBag) popupBtn.rx.tap.subscribe(onNext: { [weak self] in guard let self = self else { return } self.showConfirmPop(title: "温馨提醒", message: "您确定要弹出这个气泡吗?", confirmText: "爆裂", confirmBlock: { self.requestSetBubble(enable: false, keep_time: -1) }, cancelText: "取消") }).disposed(by: disposeBag) } private func requestSetBubble(enable: Bool, keep_time: Int) { DLToast.showLoading() UserService.setBubble(enable: enable, keep_time: keep_time).subscribe(onNext: { response in DLToast.dismiss() guard enable else { DLToast.show(text: "气泡已弹出") { AppRouter.shared.popOrDismiss() } return } self.rootView.navTitleLabel.text = "活动气泡" self.rootView.createBubbleDoneView.messageLab.text = self.rootView.createBubbleTipsView.messageText let endDate = Calendar.current.date(byAdding: .hour, value: keep_time, to: Date()) ?? Date() self.rootView.createBubbleDoneView.startCountdown(endDate: endDate) self.rootView.createBubbleTipsView.isHidden = true self.rootView.createBubbleDoneView.isHidden = false }).disposed(by: disposeBag) } }