Commit c995226c authored by Steven杜宇's avatar Steven杜宇

// 配偶初始信息

parent f3c50fea
...@@ -17,7 +17,7 @@ class YHTwoOptionAlertView: UIView { ...@@ -17,7 +17,7 @@ class YHTwoOptionAlertView: UIView {
var rightButton: UIButton! var rightButton: UIButton!
var leftButton: UIButton! var leftButton: UIButton!
static func showAlertView(message:String?,leftBtnTitle:String? = "取消".local, rightBtnTitle:String? = "确认".local, callBack: @escaping Block) { static func showAlertView(message:String?,leftBtnTitle:String? = "取消".local, rightBtnTitle:String? = "确认".local, callBack: @escaping Block) {
let view = YHTwoOptionAlertView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: KScreenHeight)) let view = YHTwoOptionAlertView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: KScreenHeight))
view.messageLabel.text = message view.messageLabel.text = message
......
...@@ -70,8 +70,11 @@ class YHFamilyMemberFormVC: YHBaseViewController { ...@@ -70,8 +70,11 @@ class YHFamilyMemberFormVC: YHBaseViewController {
self.gk_navTitle = "家庭成员信息填写".local self.gk_navTitle = "家庭成员信息填写".local
view.backgroundColor = UIColor(hexString:"#F8F8F8") view.backgroundColor = UIColor(hexString:"#F8F8F8")
createUI() createUI()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
requestFamilyInfo() requestFamilyInfo()
} }
init(orderId: Int) { init(orderId: Int) {
...@@ -208,7 +211,7 @@ extension YHFamilyMemberFormVC { ...@@ -208,7 +211,7 @@ extension YHFamilyMemberFormVC {
"not_fill_num":"", "not_fill_num":"",
"follow":0]] "follow":0]]
self.familyRequest.addFamilyMember(params: dict) { [weak self] success, error in self.familyRequest.addOrSaveFamilyMember(params: dict) { [weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
if success { if success {
self.requestFamilyInfo() self.requestFamilyInfo()
...@@ -220,9 +223,7 @@ extension YHFamilyMemberFormVC { ...@@ -220,9 +223,7 @@ extension YHFamilyMemberFormVC {
func deleteFamilyMember(orderId:Int, memberId:Int, callBack:((Bool)->Void)?) { func deleteFamilyMember(orderId:Int, memberId:Int, callBack:((Bool)->Void)?) {
if orderId > 0 && memberId > 0 { if orderId > 0 && memberId > 0 {
let dict = ["id":memberId, "orderId": orderId] let dict = ["id":memberId, "orderId": orderId]
self.familyRequest.deleteFamilyMember(params: dict) { [weak self] success, error in self.familyRequest.deleteFamilyMember(params: dict) { success, error in
guard let self = self else { return }
if let callBack = callBack { if let callBack = callBack {
callBack(success) callBack(success)
} }
...@@ -435,18 +436,20 @@ extension YHFamilyMemberFormVC : UITableViewDelegate, UITableViewDataSource { ...@@ -435,18 +436,20 @@ extension YHFamilyMemberFormVC : UITableViewDelegate, UITableViewDataSource {
if item is YHFamilyMember { if item is YHFamilyMember {
let detailItem = item as! YHFamilyMember let detailItem = item as! YHFamilyMember
// 父母
if detailItem.relationType == .father || detailItem.relationType == .mother {
let vc = YHParentInfoVC()
vc.parentInfo = detailItem
self.navigationController?.pushViewController(vc)
return
}
// 配偶 // 配偶
if detailItem.relationType == .spouse { if detailItem.relationType == .spouse {
let vc = YHSpouseInfoVC() let vc = YHSpouseInfoVC()
vc.spouse = detailItem vc.spouse = detailItem
vc.orderId = orderId
self.navigationController?.pushViewController(vc)
return
}
// 父母
if detailItem.relationType == .father || detailItem.relationType == .mother {
let vc = YHParentInfoVC()
vc.parentInfo = detailItem
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
return return
} }
......
...@@ -8,7 +8,17 @@ ...@@ -8,7 +8,17 @@
import UIKit import UIKit
class YHSpouseInfoVC: YHBaseViewController { @objc protocol YHSpouseInfoVCProtocol {
@objc optional func updateStepView()
}
class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
let familyRequest:YHFamilyRequestViewModel = YHFamilyRequestViewModel()
var orderId:Int = 0
var spouse:YHFamilyMember? { var spouse:YHFamilyMember? {
didSet { didSet {
...@@ -19,8 +29,9 @@ class YHSpouseInfoVC: YHBaseViewController { ...@@ -19,8 +29,9 @@ class YHSpouseInfoVC: YHBaseViewController {
} }
var currentIndex = 0 { var currentIndex = 0 {
didSet { didSet {
currentIndex %= 4 currentIndex %= self.children.count
stepView.currentIndex = currentIndex stepView.currentIndex = currentIndex
for (i, vc) in self.children.enumerated() { for (i, vc) in self.children.enumerated() {
vc.view.isHidden = (currentIndex != i) vc.view.isHidden = (currentIndex != i)
...@@ -33,11 +44,6 @@ class YHSpouseInfoVC: YHBaseViewController { ...@@ -33,11 +44,6 @@ class YHSpouseInfoVC: YHBaseViewController {
var stepView:YHStepView = { var stepView:YHStepView = {
let step = YHStepView() let step = YHStepView()
step.dataSource = ["初始信息", "证件上传", "基本信息", "证件信息"]
step.block = { (index) in
// guard let self = self else { return }
}
return step return step
}() }()
...@@ -56,16 +62,13 @@ class YHSpouseInfoVC: YHBaseViewController { ...@@ -56,16 +62,13 @@ class YHSpouseInfoVC: YHBaseViewController {
} }
func createUI() { func createUI() {
self.addChild(initalInfoVC) guard let spouse = spouse else { return }
self.addChild(uploadVC)
self.addChild(passportInfoVC) initalInfoVC.delegate = self
self.addChild(basicInfoVC)
self.view.addSubview(basicInfoVC.view) updateStepView()
self.view.addSubview(passportInfoVC.view)
self.view.addSubview(uploadVC.view)
self.view.addSubview(initalInfoVC.view)
currentIndex = 0 currentIndex = 0
...@@ -81,7 +84,7 @@ class YHSpouseInfoVC: YHBaseViewController { ...@@ -81,7 +84,7 @@ class YHSpouseInfoVC: YHBaseViewController {
bottomView.saveBlock = { bottomView.saveBlock = {
[weak self] in [weak self] in
guard let self = self else { return } guard let self = self else { return }
self.didClickSaveBtn() self.save()
} }
stepView.snp.makeConstraints { make in stepView.snp.makeConstraints { make in
...@@ -102,7 +105,71 @@ class YHSpouseInfoVC: YHBaseViewController { ...@@ -102,7 +105,71 @@ class YHSpouseInfoVC: YHBaseViewController {
} }
func didClickSaveBtn() { func updateStepView() {
guard let spouse = spouse else { return }
for vc in self.children {
vc.willMove(toParent: nil)
vc.removeFromParent()
}
if spouse.isFollow() {
self.addChild(initalInfoVC)
self.addChild(uploadVC)
self.addChild(passportInfoVC)
self.addChild(basicInfoVC)
self.view.addSubview(basicInfoVC.view)
self.view.addSubview(passportInfoVC.view)
self.view.addSubview(uploadVC.view)
self.view.addSubview(initalInfoVC.view)
stepView.dataSource = ["初始信息".local, "证件上传".local, "基本信息".local, "证件信息".local]
stepView.block = {[weak self] (index) in
guard let self = self else { return }
print("follow:%d", self.orderId)
}
} else {
self.addChild(initalInfoVC)
self.addChild(basicInfoVC)
self.view.addSubview(basicInfoVC.view)
self.view.addSubview(initalInfoVC.view)
stepView.dataSource = ["初始信息".local, "证件信息".local]
stepView.block = {[weak self] (index) in
guard let self = self else { return }
print("follow:%d", self.orderId)
}
}
self.view.bringSubviewToFront(stepView)
}
}
extension YHSpouseInfoVC {
func save() {
guard let spouse = spouse else { return }
guard let info = spouse.toDictionary() else { return }
let follow = spouse.follow
let dict:[String: Any] = ["orderId":self.orderId,
"relation":spouse.relationType.rawValue,
"step":spouse.step,
"next":false,
"info":info]
self.familyRequest.addOrSaveFamilyMember(params:dict) { [weak self] success, error in
guard let self = self else { return }
if success {
}
}
} }
} }
...@@ -12,6 +12,7 @@ import SmartCodable ...@@ -12,6 +12,7 @@ import SmartCodable
class YHSpouseInitialInfoVC: YHBaseViewController { class YHSpouseInitialInfoVC: YHBaseViewController {
var spouse:YHFamilyMember? var spouse:YHFamilyMember?
weak var delegate:YHSpouseInfoVCProtocol?
lazy var items:[[YHFormItemProtocol]] = [[YHFormItemProtocol]]() lazy var items:[[YHFormItemProtocol]] = [[YHFormItemProtocol]]()
...@@ -56,7 +57,7 @@ class YHSpouseInitialInfoVC: YHBaseViewController { ...@@ -56,7 +57,7 @@ class YHSpouseInitialInfoVC: YHBaseViewController {
// 随行 // 随行
let title0 = YHFormTitleItem(type: .accompany) let title0 = YHFormTitleItem(type: .accompany)
let item0 = YHFormDetailItem(type: .isAccompanyToHK) let item0 = YHFormDetailItem(type: .isAccompanyToHK)
item0.value = String(spouse.follow == 1) item0.value = String(spouse.isFollow())
let arr0:[YHFormItemProtocol] = [title0, item0] let arr0:[YHFormItemProtocol] = [title0, item0]
items.append(arr0) items.append(arr0)
...@@ -153,6 +154,7 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -153,6 +154,7 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource {
let detailItem = item as! YHFormDetailItem let detailItem = item as! YHFormDetailItem
// 是否随行到香港 / 是否办理港澳通行证 / // 是否与主申请人同住 均用双项按钮cell
if detailItem.type == .isAccompanyToHK || detailItem.type == .isHandleHKPassPort || detailItem.type == .isLiveTother { if detailItem.type == .isAccompanyToHK || detailItem.type == .isHandleHKPassPort || detailItem.type == .isLiveTother {
let cell = tableView.dequeueReusableCell(withIdentifier: YHFormItemDoubleChoiceCell.cellReuseIdentifier, for: indexPath) as! YHFormItemDoubleChoiceCell let cell = tableView.dequeueReusableCell(withIdentifier: YHFormItemDoubleChoiceCell.cellReuseIdentifier, for: indexPath) as! YHFormItemDoubleChoiceCell
...@@ -175,6 +177,9 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -175,6 +177,9 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource {
self?.spouse?.setFollow(option) self?.spouse?.setFollow(option)
self?.loadSponseInfo() self?.loadSponseInfo()
if let delegate = self?.delegate {
delegate.updateStepView?()
}
} else if detailItem.type == .isHandleHKPassPort { // 是否办理港澳通行证 } else if detailItem.type == .isHandleHKPassPort { // 是否办理港澳通行证
self?.spouse?.setNeedHandleHKPassPort(option) self?.spouse?.setNeedHandleHKPassPort(option)
...@@ -188,6 +193,7 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -188,6 +193,7 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource {
self?.spouse?.address?.area = nil self?.spouse?.address?.area = nil
} }
self?.loadSponseInfo() self?.loadSponseInfo()
} }
} }
return cell return cell
...@@ -286,30 +292,32 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -286,30 +292,32 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource {
if item is YHFormDetailItem { if item is YHFormDetailItem {
let detailItem = item as! YHFormDetailItem let detailItem = item as! YHFormDetailItem
// 选国籍/现居住城市/详细地址
if detailItem.type == .nationOrArea {
// YHSelectCountryViewController
} else if detailItem.type == .liveCity {
if detailItem.type == .nationOrArea || // YHFormPickerView.show(type:.certificate, selectType: .certificate(.passport)) { [weak self] selectType in
detailItem.type == .liveCity || // let res = selectType.title
detailItem.type == .detailAddress // if let self = self {
{ // if detailItem.type == .nationOrArea {
YHFormPickerView.show(type:.certificate, selectType: .certificate(.passport)) { [weak self] selectType in // let title = arr[0] as! YHFormTitleItem
let res = selectType.title // if title.type == .liveInfo {
if let self = self { // self.spouse?.address?.country = res
if detailItem.type == .nationOrArea { // } else if title.type == .country {
let title = arr[0] as! YHFormTitleItem // self.spouse?.nationality = res
if title.type == .liveInfo { // }
self.spouse?.address?.country = res //
} else if title.type == .country { // } else if detailItem.type == .liveCity {
self.spouse?.nationality = res // self.spouse?.address?.area = [res, res]
} // }
// self.loadSponseInfo()
} else if detailItem.type == .liveCity { // }
self.spouse?.address?.area = [res, res] // }
} else if detailItem.type == .detailAddress { } else if detailItem.type == .detailAddress {
self.spouse?.address?.details = res // self.spouse?.address?.details = res
}
self.loadSponseInfo()
}
}
} }
} }
} }
......
...@@ -43,7 +43,7 @@ class YHFamilyRequestViewModel { ...@@ -43,7 +43,7 @@ class YHFamilyRequestViewModel {
} }
// 添加家庭成员 // 添加家庭成员
func addFamilyMember(params:[String:Any], callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) { func addOrSaveFamilyMember(params:[String:Any], callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
YHHUD.show(.progress(message: "数据加载中...")) YHHUD.show(.progress(message: "数据加载中..."))
...@@ -76,9 +76,8 @@ class YHFamilyRequestViewModel { ...@@ -76,9 +76,8 @@ class YHFamilyRequestViewModel {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.familyMemberDeleteApi let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.familyMemberDeleteApi
let _ = YHNetRequest.postRequest(url: strUrl, params:params) {[weak self] json, code in let _ = YHNetRequest.postRequest(url: strUrl, params:params) { json, code in
YHHUD.hide() YHHUD.hide()
guard let self = self else { return }
guard let model = NetBaseModel.deserialize(dict: json) else { guard let model = NetBaseModel.deserialize(dict: json) else {
let error : YHErrorModel = YHErrorModel(errorCode:YHErrorCode.dictParseError.rawValue,errorMsg: YHErrorCode.dictParseError.description()) let error : YHErrorModel = YHErrorModel(errorCode:YHErrorCode.dictParseError.rawValue,errorMsg: YHErrorCode.dictParseError.description())
callBackBlock(false,error) callBackBlock(false,error)
......
...@@ -55,6 +55,7 @@ class YHStepView: UIScrollView { ...@@ -55,6 +55,7 @@ class YHStepView: UIScrollView {
} }
func setUpView(_ array: [String]) { func setUpView(_ array: [String]) {
self.removeSubviews()
for i in 0 ..< array.count { for i in 0 ..< array.count {
let button = UIButton(type: .custom) let button = UIButton(type: .custom)
button.setBackgroundImage(UIImage(named: "service_step_fail"), for: .normal) button.setBackgroundImage(UIImage(named: "service_step_fail"), for: .normal)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment