|
|
@ -50,7 +50,7 @@ class KYCVerifyStep1Presenter: ViewModelType { |
|
|
|
|
|
|
|
let isValidPictures: Driver<Bool> |
|
|
|
let editingPictureInfo: Driver<Void> |
|
|
|
|
|
|
|
let viewController: KYCVerifyStep1ViewController? |
|
|
|
let submit: Driver<Void> |
|
|
|
} |
|
|
|
|
|
|
@ -88,7 +88,7 @@ class KYCVerifyStep1Presenter: ViewModelType { |
|
|
|
private let termsAccepted = PublishSubject<Bool>() |
|
|
|
|
|
|
|
func transform(input: Input) -> Output { |
|
|
|
|
|
|
|
let viewController = input.viewController |
|
|
|
let newPicturesInfo = Driver.combineLatest( |
|
|
|
input.isValidPictures, |
|
|
|
input.frontIDImage, |
|
|
@ -219,6 +219,31 @@ class KYCVerifyStep1Presenter: ViewModelType { |
|
|
|
input.personalInfoSave |
|
|
|
.withLatestFrom(newPersonalInfo) { $1 } |
|
|
|
.drive(onNext: {[weak self] in |
|
|
|
if viewController?.addressTextField.text == nil || viewController?.addressTextField.text == "" { |
|
|
|
viewController?.alert(message: "Please Enter Additional Address") |
|
|
|
} |
|
|
|
if viewController?.mobileNumberTextField.text == nil || viewController?.mobileNumberTextField.text == "" { |
|
|
|
viewController?.alert(message: "mobile_placeholder_text".localized()) |
|
|
|
} |
|
|
|
if viewController?.monthlyIncomeTextField.text == nil || viewController?.monthlyIncomeTextField.text == "" { |
|
|
|
viewController?.alert(message: "Please Enter Monthly Income") |
|
|
|
} |
|
|
|
if viewController?.businessTypeTextField.text == nil || viewController?.businessTypeTextField.text == "" { |
|
|
|
viewController?.alert(message: "select_business_type".localized()) |
|
|
|
} |
|
|
|
if viewController?.idTypeTextField.text == nil || viewController?.idTypeTextField.text == "" { |
|
|
|
viewController?.alert(message: "kyc_verification_id_error".localized()) |
|
|
|
} |
|
|
|
if viewController?.puroposeOfRegisterField.text == nil || viewController?.puroposeOfRegisterField.text == "" { |
|
|
|
viewController?.alert(message: "select_purpose_of_registration_text".localized()) |
|
|
|
} |
|
|
|
if viewController?.additionalIDTextField.text == nil || viewController?.additionalIDTextField.text == "" { |
|
|
|
viewController?.alert(message: "Please Select Additional ID Type") |
|
|
|
} |
|
|
|
if viewController?.occupationTxtField.text == nil || viewController?.occupationTxtField.text == "" { |
|
|
|
viewController?.alert(message: "kyc_occupation_error".localized()) |
|
|
|
} |
|
|
|
else if (viewController?.occupationTxtField.text != nil || viewController?.occupationTxtField.text != "") && (viewController?.additionalIDTextField.text != nil || viewController?.additionalIDTextField.text != "") && (viewController?.puroposeOfRegisterField.text != nil || viewController?.puroposeOfRegisterField.text != "") && (viewController?.idTypeTextField.text != nil || viewController?.idTypeTextField.text != "") && (viewController?.businessTypeTextField.text != nil || viewController?.businessTypeTextField.text != "") && (viewController?.monthlyIncomeTextField.text != nil || viewController?.monthlyIncomeTextField.text != "") && (viewController?.mobileNumberTextField.text != nil || viewController?.mobileNumberTextField.text != "") && (viewController?.addressTextField.text != nil || viewController?.addressTextField.text != "") { |
|
|
|
let saveModel = KYCSaveInformation( |
|
|
|
type: Step.innerStep1.rawValue, |
|
|
|
personalInformation: $0, |
|
|
@ -226,12 +251,29 @@ class KYCVerifyStep1Presenter: ViewModelType { |
|
|
|
) |
|
|
|
self?.progressLinker.onNext(true) |
|
|
|
self?.interactor?.saveInformation(with: saveModel) |
|
|
|
} |
|
|
|
|
|
|
|
}).disposed(by: disposeBag) |
|
|
|
|
|
|
|
input.submit |
|
|
|
.withLatestFrom(newPersonalInfo) { $1 } |
|
|
|
.withLatestFrom(newPicturesInfo) { ($0, $1) } |
|
|
|
.drive(onNext: {[weak self] in |
|
|
|
let defaultImage = UIImage(named: "passport_new") |
|
|
|
if viewController?.frontIDImageButton.currentImage == defaultImage { |
|
|
|
viewController?.alert(message: "Please Select Front ID Image") |
|
|
|
} |
|
|
|
if viewController?.backIDImageButton.currentImage == defaultImage { |
|
|
|
viewController?.alert(message: "Please Select Back ID Image") |
|
|
|
} |
|
|
|
if viewController?.anotherIDImageButton.currentImage == defaultImage { |
|
|
|
viewController?.alert(message: "Please Select Another ID Front Image") |
|
|
|
} |
|
|
|
if viewController?.anotherIDBackImageButton.currentImage == defaultImage { |
|
|
|
viewController?.alert(message: "Please Select Another ID Back Image") |
|
|
|
} |
|
|
|
|
|
|
|
else if (viewController?.frontIDImageButton != defaultImage) && (viewController?.backIDImageButton != defaultImage) && (viewController?.anotherIDImageButton != defaultImage) && (viewController?.anotherIDBackImageButton != defaultImage) { |
|
|
|
let saveModel = KYCSaveInformation( |
|
|
|
type: Step.innerStep2.rawValue, |
|
|
|
personalInformation: $0, |
|
|
@ -239,6 +281,8 @@ class KYCVerifyStep1Presenter: ViewModelType { |
|
|
|
) |
|
|
|
self?.progressLinker.onNext(true) |
|
|
|
self?.interactor?.saveInformation(with: saveModel) |
|
|
|
} |
|
|
|
|
|
|
|
}).disposed(by: disposeBag) |
|
|
|
|
|
|
|
return Output( |
|
|
|