class="lines-num lines-num-new"> 27
     override func start() -> Observable<Void> {
28 28
         photoDetailViewController.viewModel.delegate = self
29
-        return .never()
29
+        return didCancel
30 30
     }
31 31
 }
32 32
 

+ 18 - 1
PaiAi/Paiai_iOS/Reusable/BaseCoordinator.swift

@@ -14,11 +14,19 @@ public class BaseCoordinator<ResultType> {
14 14
     typealias CoordinationResult = ResultType
15 15
     
16 16
     let disposeBag = DisposeBag()
17
-    let didCancel = PublishSubject<Void>()
17
+    var didCancel = PublishSubject<Void>()
18
+    var navigationController: UINavigationController
19
+    var viewController: UIViewController
18 20
     
19 21
     private let identifier = UUID()
20 22
     private var childCoordinators = [UUID: Any]()
21 23
     
24
+    init(navigationController: UINavigationController, viewController: UIViewController) {
25
+        self.viewController = viewController
26
+        self.navigationController = navigationController
27
+        listenDeallocate()
28
+    }
29
+    
22 30
     private func store<T>(coordinator: BaseCoordinator<T>) {
23 31
         childCoordinators[coordinator.identifier] = coordinator
24 32
     }
@@ -38,4 +46,13 @@ public class BaseCoordinator<ResultType> {
38 46
     func start() -> Observable<ResultType> {
39 47
         fatalError("Start method should be implemented.")
40 48
     }
49
+    
50
+    func listenDeallocate() {
51
+        navigationController.rx.willShow.subscribe(onNext: {[weak self] (_, _) in
52
+            guard let `self` = self else { return }
53
+            if !self.navigationController.viewControllers.contains(self.viewController) {
54
+                self.didCancel.onNext(())
55
+            }
56
+        }).disposed(by: disposeBag)
57
+    }
41 58
 }

+ 40 - 0
PaiAi/Paiai_iOS/Reusable/Extension/UIViewController+Rx.swift

@@ -0,0 +1,40 @@
1
+//
2
+//  UIViewController+Rx.swift
3
+//  Paiai_iOS
4
+//
5
+//  Created by ffib on 2019/5/6.
6
+//  Copyright © 2019 FFIB. All rights reserved.
7
+//
8
+
9
+import UIKit
10
+import RxCocoa
11
+import RxSwift
12
+
13
+public extension Reactive where Base: UIViewController {
14
+    var viewDidLoad: ControlEvent<Void> {
15
+        let source = self.methodInvoked(#selector(Base.viewDidLoad)).map { _ in }
16
+        return ControlEvent(events: source)
17
+    }
18
+    
19
+    var viewWillAppear: ControlEvent<Bool> {
20
+        let source = self.methodInvoked(#selector(Base.viewWillAppear))
21
+            .map { $0.first as? Bool ?? false }
22
+        return ControlEvent(events: source)
23
+    }
24
+    var viewDidAppear: ControlEvent<Bool> {
25
+        let source = self.methodInvoked(#selector(Base.viewDidAppear))
26
+            .map { $0.first as? Bool ?? false }
27
+        return ControlEvent(events: source)
28
+    }
29
+    
30
+    var viewWillDisappear: ControlEvent<Bool> {
31
+        let source = self.methodInvoked(#selector(Base.viewWillDisappear))
32
+            .map { $0.first as? Bool ?? false }
33
+        return ControlEvent(events: source)
34
+    }
35
+    var viewDidDisappear: ControlEvent<Bool> {
36
+        let source = self.methodInvoked(#selector(Base.viewDidDisappear))
37
+            .map { $0.first as? Bool ?? false }
38
+        return ControlEvent(events: source)
39
+    }
40
+}

kodo - Gogs: Go Git Service

Nenhuma Descrição

huangqimin001: 6a7865b4bd :art: Change to use walk 1 ano atrás
.venv 06caafb5e7 新增摄影师类型字段 2 anos atrás
.vscode 16935a36d3 小程序接口,新增经销商列表,销售员注册,获取销售信息 2 anos atrás
account 06caafb5e7 新增摄影师类型字段 2 anos atrás
api 743fc13605 新增解绑记录删除功能 1 ano atrás
apps 06caafb5e7 新增摄影师类型字段 2 anos atrás
commands 6a7865b4bd :art: Change to use walk 1 ano atrás
coupon cefcead4b4 coupon 图片返回七牛云链接 3 anos atrás
docs 212e3994d1 MP verify file 9 anos atrás
guideline 1da9278ecd :art: Change user avatar url 3 anos atrás
integral 189368f5ed filefield 增加max_length 3 anos atrás
kodo 7ecd5dbbe4 :bug: Params for file upload parse error 1 ano atrás
logs acba74980f :art: Opt ComplementCodeLogInfo's image 2 anos atrás
maintenance c6f7c0d550 :art: iSort & PEP8 2 anos atrás
marketcode 28f8bc3cb9 :art: Models update for tenancy 4 anos atrás
mch 743fc13605 新增解绑记录删除功能 1 ano atrás
member c6f7c0d550 :art: iSort & PEP8 2 anos atrás
miniapp 99057eda84 :art: Update get branch_id 3 anos atrás
operation e7da55aaf2 :art: Add complement_code 5 anos atrás
page 96cbf029bb :art: Make tag normal 2 anos atrás
pre df68566eea 发送模板消息,结果写入日志 3 anos atrás
sales 1da9278ecd :art: Change user avatar url 3 anos atrás
server 018d52f61d Update package django_xxx 8 anos atrás
shells 6270484a89 :art: fix_user_coupon_info 5 anos atrás
simditor 3e9628d0c9 iSort & Pycodestyle 6 anos atrás
src b2c06ede0d 新增摄影师模块 2 anos atrás
staff 1ffa40b747 :art: Makemigrations 4 anos atrás
statistic e9c4ba1497 :art: Opt year data 2 anos atrás
tenancy 49b5100661 fix request_status_at bug 2 anos atrás
utils c744c23819 输出照片结果 1 ano atrás
website 597ee33ba6 Pai2 => Kodo 8 anos atrás
.editorconfig 4defb80fdc gogs first init 11 anos atrás
.gitignore 4ce7f5c87b :art: Member Relative APIs 7 anos atrás
.isort.cfg afcdf74a49 add api group_data_api 10 anos atrás
12167620_tamron.kodo.com.cn_nginx.zip 648c227b37 :art: SSH 2 anos atrás
TODO.md d31ffaa118 Update TODO 9 anos atrás
check.sh 95c1d32792 put isort and pep8 in check.sh 10 anos atrás
isort.sh 3e9628d0c9 iSort & Pycodestyle 6 anos atrás
manage.py 597ee33ba6 Pai2 => Kodo 8 anos atrás
pep8.sh b580e80550 :art: iSort & iCheck 2 anos atrás
requirements.txt 5d34bd84b1 :art: Support ess_callback 2 anos atrás
requirements_deploy.txt 5f84d39769 :art: Update requirements_xxx.txt 4 anos atrás
requirements_dev.txt 5f84d39769 :art: Update requirements_xxx.txt 4 anos atrás
requirements_dj.txt 48fd84ce1d :bug: Fix Bug: TypeError: can only concatenate str (not relativedelta) to str 4 anos atrás
requirements_pywe.txt 1a5de6e1cb :art: get_wxa_code 4 anos atrás
requirements_redis.txt 48fd84ce1d :bug: Fix Bug: TypeError: can only concatenate str (not relativedelta) to str 4 anos atrás
sysctl.sh 34c6774438 Opt 8 anos atrás
:art: Update course_register · f15d31ff2b - Gogs: Go Git Service

:art: Update course_register

huangqimin001 5 ans auparavant
Parent
Commettre
f15d31ff2b
1 fichiers modifiés avec 2 ajouts et 0 suppressions
  1. 2 0
      api/course_register_views.py

+ 2 - 0
api/course_register_views.py

@@ -42,6 +42,7 @@ def course_register(request):
42 42
         course_register.admin_name = admin.admin_name if admin else ''
43 43
     course_register.course_name = course_name
44 44
     course_register.fields = fields
45
+    course_register.save()
45 46
 
46 47
     registers = CourseRegisterInfo.objects.filter(user_id=user_id, course_id=course_id, status=True)
47 48
     registers = [register.data for register in registers]
@@ -66,6 +67,7 @@ def course_register(request):
66 67
         user_course_register.admin_name = admin.admin_name if admin else ''
67 68
     user_course_register.course_name = course_name
68 69
     user_course_register.fields = registers
70
+    user_course_register.save()
69 71
 
70 72
     return response()
71 73