//
|
// GamesVC.swift
|
// WanPai
|
//
|
// Created by 无故事王国 on 2023/9/15.
|
//
|
|
import UIKit
|
import JQTools
|
import HandyJSON
|
|
let StartGame_Noti = Notification.Name.init("StartGame_Noti")
|
|
struct QRCodeModel:HandyJSON {
|
var scan_type:ScanType? //扫码类型
|
var space_id:Int? //场地ID
|
var sutu_id:Int? //设备ID
|
var id:Int? //课程/场地/游戏
|
}
|
|
class GamesVC: BaseVC {
|
|
private var codeModel:QRCodeModel!
|
|
override func viewDidLoad() {
|
super.viewDidLoad()
|
title = "智慧球场"
|
}
|
|
override func setUI() {
|
view.backgroundColor = Def_ThemeColor
|
}
|
|
|
private func checkUnPayGame(_ model:QRCodeModel){
|
let gamesListVC = GamesListVC(model: model)
|
addChild(gamesListVC)
|
view.addSubview(gamesListVC.view)
|
gamesListVC.view.frame = CGRect(x: 0, y: UIDevice.jq_safeEdges.top + navigationController!.navigationBar.height, width: JQ_ScreenW, height: JQ_ScreenH - UIDevice.jq_safeEdges.top - navigationController!.navigationBar.height)
|
gamesListVC.didMove(toParent: self)
|
}
|
|
override func setRx() {
|
// NotificationCenter.default.rx.notification(StartGame_Noti).take(until: self.rx.deallocated).subscribe(onNext: {[weak self] noti in
|
// guard let weakSelf = self else { return }
|
// if let gameId = noti.object as? Int{
|
// Services.userDetails().subscribe(onNext: {[weak self] data in
|
// guard let weakSelf = self else { return }
|
// if let model = data.data{
|
// Services.game_gameStart(gameId: gameId, spaceId: weakSelf.codeModel.space_id!, sutuId: weakSelf.codeModel.sutu_id!, userID: model.userId).subscribe(onNext: { _ in
|
// alertSuccess(msg: "启动成功")
|
// }) { error in
|
//
|
// }.disposed(by: weakSelf.disposeBag)
|
// }
|
// }).disposed(by: weakSelf.disposeBag)
|
// }
|
// }).disposed(by: disposeBag)
|
}
|
|
@IBAction func scanAction(_ sender: UIButton) {
|
let scan = CommonScanQRCodeVC { text, status in
|
if status{
|
|
if let model = QRCodeModel.deserialize(from: text){
|
print("--->\(model.toJSON())")
|
self.codeModel = model
|
self.checkUnPayGame(model)
|
}else{
|
alertError(msg: "识别失败")
|
}
|
|
//暂时关闭【勿删】
|
// GamesPayView.show(price: 120, coin: 99) {
|
// PaymentView.show(money: (ali: 120, wx: 120, coin: 99,course:nil)) { type in
|
// let vc = PaymentResultVC(result: .success, objType: .games, handleVC: self)
|
// vc.modalPresentationStyle = .fullScreen
|
// self.present(vc, animated: true)
|
//
|
// DispatchQueue.main.asyncAfter(deadline: .now()+0.6) {
|
// self.checkUnPayGame()
|
// }
|
// }
|
// }
|
}
|
}
|
present(scan, animated: true)
|
}
|
|
@IBAction func myDatasourceAction(_ sender: UIButton) {
|
let vc = GamesDataSourceVC()
|
push(vc: vc)
|
}
|
|
@IBAction func introAction(_ sender: UIButton) {
|
Services.game_intro().subscribe(onNext: {data in
|
let vc = CommonWebVC(type: .other, content: data.data)
|
vc.title = "步骤说明"
|
self.push(vc: vc)
|
|
}) { error in
|
|
}.disposed(by: disposeBag)
|
|
}
|
|
}
|