//
|
// MineGiveCouponsViewModel.swift
|
// OKProject
|
//
|
// Created by alvin_y on 2020/6/15.
|
// Copyright © 2020 yangwang. All rights reserved.
|
//
|
|
import UIKit
|
import RxSwift
|
import RxCocoa
|
class MineGiveCouponsViewModel: YYViewModel {
|
|
/// 手机号码
|
let phone = BehaviorRelay<String>(value: "")
|
|
/// 优惠券Id
|
let id = BehaviorRelay<Int>(value: 0)
|
|
/// 用户信息
|
let userInfo = BehaviorRelay<UserInfoModel?>(value: nil)
|
|
/// 用户Id
|
let userId = BehaviorRelay<Int>(value: 0)
|
|
/// Subject
|
lazy var handselCouponSubject = PublishSubject<RequestStatus>()
|
|
/// 手机号码获取用户
|
func queryUser() {
|
do {
|
try phone.value.checkPhoneNumber()
|
requestSubject.onNext(.loading)
|
APIManager.shared.provider.rx
|
.request(.queryUser(phone: phone.value))
|
.map(YYModel<UserInfoModel>.self)
|
.validate()
|
.subscribe(onSuccess: { [unowned self] (model) in
|
self.requestSubject.onNext(.success(nil))
|
self.userInfo.accept(model.data)
|
}) {[unowned self] (error) in
|
self.requestSubject.onNext(.error(error))
|
}
|
.disposed(by: disposeBag)
|
} catch {
|
self.requestSubject.onNext(.error(error))
|
}
|
|
}
|
|
|
/// 赠送优惠券
|
func handselCoupon() {
|
handselCouponSubject.onNext(.loading)
|
APIManager.shared.provider.rx
|
.request(.handselCoupon(id: id.value, userId: userId.value))
|
.map(YYModel<Nothing>.self)
|
.validate()
|
.subscribe(onSuccess: { [unowned self] (model) in
|
self.handselCouponSubject.onNext(.success(nil))
|
}) {[unowned self] (error) in
|
self.handselCouponSubject.onNext(.error(error))
|
}
|
.disposed(by: disposeBag)
|
}
|
|
}
|