No Description

CreateGroupConfirmViewModel.swift 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. //
  2. // CreateGroupConfirmViewModel.swift
  3. // PaiAi
  4. //
  5. // Created by ffib on 2018/12/17.
  6. // Copyright © 2018 yb. All rights reserved.
  7. //
  8. import Foundation
  9. import RxSwift
  10. import RxCocoa
  11. fileprivate let DefaultGroupNames = ["苹果", "香蕉", "西兰花",
  12. "杨梅", "胡萝卜", "樱桃",
  13. "玉米", "火龙果", "茄子",
  14. "无花果", "葡萄", "柠檬",
  15. "山竹", "橘子", "木瓜",
  16. "水蜜桃", "菠萝", "草莓",
  17. "西瓜"]
  18. public final class CreateGroupConfirmViewModel {
  19. private var item: BehaviorRelay<GroupItem?>
  20. private var repository: PhotoGroupRepository
  21. public var avatar: Observable<String>
  22. public var name: Observable<String>
  23. public var groupModelUntilNotNil: Observable<GroupItem?>
  24. public init() {
  25. repository = PhotoGroupRepository()
  26. let random = Int(arc4random_uniform(19))
  27. avatar = Observable.create({ (observer) -> Disposable in
  28. observer.onNext(DefaultGroupNames[random])
  29. return Disposables.create()
  30. })
  31. name = avatar.flatMapLatest({ (currentAvatar) in
  32. // Observable.just("\(UserInfoViewModel)的\(currentAvatar)群")
  33. Observable.just("群")
  34. }).share()
  35. item = BehaviorRelay<GroupItem?>(value: nil)
  36. groupModelUntilNotNil = item.filter { $0 != nil }
  37. name.bind { (groupName) in
  38. // self.parameter = ["group_name": groupName as AnyObject,
  39. // "group_default_avatar": random as AnyObject]
  40. }.dispose()
  41. }
  42. public func createGroup() {
  43. // repository.create(groupName: avatar, avatar: <#T##String#>)
  44. // NetworkApi.share.post(resource: self) { (result) in
  45. // guard case let .success(item) = result else { return }
  46. // self.groupModel.accept(item)
  47. // }
  48. }
  49. }