Commit 7655f492 authored by David黄金龙's avatar David黄金龙

Merge commit '1b440ceb' into davidhuang

* commit '1b440ceb':
  //  职业选择
  // 父母信息
  // 证件信息
parents b0cf7a41 1b440ceb
This diff is collapsed.
//
// File.swift
// galaxy
//
// Created by edy on 2024/2/4.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import Alamofire
struct ArrayEncoding: ParameterEncoding {
func encode(_ urlRequest: URLRequestConvertible, with parameters: Parameters?) throws -> URLRequest {
var request = try URLEncoding().encode(urlRequest, with: parameters)
request.url = URL(string: request.url!.absoluteString.replacingOccurrences(of: "%5B%5D=", with: "="))
return request
}
}
...@@ -436,39 +436,40 @@ extension YHFamilyMemberFormVC : UITableViewDelegate, UITableViewDataSource { ...@@ -436,39 +436,40 @@ 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 == .spouse {
let vc = YHSpouseInfoContainerVC()
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)
return
}
// 子女
if detailItem.relationType == .child {
let vc = YHChildInitialInfoVC()
vc.child = detailItem
self.navigationController?.pushViewController(vc)
return
}
// 兄弟姐妹
if detailItem.relationType == .brother {
let vc = YHBrotherInfoVC()
vc.brotherInfo = detailItem
self.navigationController?.pushViewController(vc)
return
}
// 配偶
if detailItem.relationType == .spouse {
let vc = YHSpouseInfoVC()
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)
return
}
// 子女
if detailItem.relationType == .child {
let vc = YHChildInitialInfoVC()
vc.child = detailItem
self.navigationController?.pushViewController(vc)
return
}
// 兄弟姐妹
if detailItem.relationType == .brother {
let vc = YHBrotherInfoVC()
vc.brotherInfo = detailItem
self.navigationController?.pushViewController(vc)
return
}
} }
} }
......
...@@ -25,9 +25,8 @@ enum HKFormItemCellType: Int { ...@@ -25,9 +25,8 @@ enum HKFormItemCellType: Int {
class YHSpouseBasicInfoVC: YHBaseViewController { class YHSpouseBasicInfoVC: YHBaseViewController {
var spouse:YHFamilyMember? var spouse:YHFamilyMember?
weak var delegate:YHSpouseInfoVCProtocol?
var cardInfo: YHCNIdentityCard?
var items:[[YHFormItemProtocol]] = [[YHFormItemProtocol]]() var items:[[YHFormItemProtocol]] = [[YHFormItemProtocol]]()
lazy var tableView: UITableView = { lazy var tableView: UITableView = {
...@@ -292,7 +291,7 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -292,7 +291,7 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
cell.title = detailItem.getTitle() cell.title = detailItem.getTitle()
cell.text = detailItem.value cell.text = detailItem.value
cell.textChange = { cell.textChange = {
[weak self] text in [weak self] (text, isEditEnd) in
guard let self = self else { return } guard let self = self else { return }
if detailItem.type == .spouseName { if detailItem.type == .spouseName {
self.spouse?.subsetName = text self.spouse?.subsetName = text
......
...@@ -11,10 +11,11 @@ import UIKit ...@@ -11,10 +11,11 @@ import UIKit
@objc protocol YHSpouseInfoVCProtocol { @objc protocol YHSpouseInfoVCProtocol {
@objc optional func updateStepView() @objc optional func updateStepView()
@objc optional func saveInfo()
} }
class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { class YHSpouseInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol {
let familyRequest:YHFamilyRequestViewModel = YHFamilyRequestViewModel() let familyRequest:YHFamilyRequestViewModel = YHFamilyRequestViewModel()
...@@ -23,13 +24,12 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -23,13 +24,12 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
var spouse:YHFamilyMember? { var spouse:YHFamilyMember? {
didSet { didSet {
initalInfoVC.spouse = spouse initalInfoVC.spouse = spouse
passportInfoVC.familyMember = spouse certificateVC.familyMember = spouse
basicInfoVC.spouse = spouse basicInfoVC.spouse = spouse
} }
} }
var currentIndex = 0 { var currentIndex = 0 {
didSet { didSet {
currentIndex %= self.children.count currentIndex %= self.children.count
stepView.currentIndex = currentIndex stepView.currentIndex = currentIndex
...@@ -53,7 +53,7 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -53,7 +53,7 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
let initalInfoVC = YHSpouseInitialInfoVC() let initalInfoVC = YHSpouseInitialInfoVC()
let uploadVC = UIViewController() let uploadVC = UIViewController()
let passportInfoVC = YHCertificateViewController() let certificateVC = YHCertificateInfoController()
let basicInfoVC = YHSpouseBasicInfoVC() let basicInfoVC = YHSpouseBasicInfoVC()
override func viewDidLoad() { override func viewDidLoad() {
...@@ -66,7 +66,8 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -66,7 +66,8 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
guard let spouse = spouse else { return } guard let spouse = spouse else { return }
initalInfoVC.delegate = self initalInfoVC.delegate = self
certificateVC.delegate = self
basicInfoVC.delegate = self
updateStepView() updateStepView()
...@@ -84,7 +85,7 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -84,7 +85,7 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
bottomView.saveBlock = { bottomView.saveBlock = {
[weak self] in [weak self] in
guard let self = self else { return } guard let self = self else { return }
self.save() self.saveInfo()
} }
stepView.snp.makeConstraints { make in stepView.snp.makeConstraints { make in
...@@ -118,11 +119,11 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -118,11 +119,11 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
self.addChild(initalInfoVC) self.addChild(initalInfoVC)
self.addChild(uploadVC) self.addChild(uploadVC)
self.addChild(passportInfoVC) self.addChild(certificateVC)
self.addChild(basicInfoVC) self.addChild(basicInfoVC)
self.view.addSubview(basicInfoVC.view) self.view.addSubview(basicInfoVC.view)
self.view.addSubview(passportInfoVC.view) self.view.addSubview(certificateVC.view)
self.view.addSubview(uploadVC.view) self.view.addSubview(uploadVC.view)
self.view.addSubview(initalInfoVC.view) self.view.addSubview(initalInfoVC.view)
...@@ -152,15 +153,23 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -152,15 +153,23 @@ class YHSpouseInfoVC: YHBaseViewController, YHSpouseInfoVCProtocol {
} }
} }
extension YHSpouseInfoVC { extension YHSpouseInfoContainerVC {
func save() { func saveInfo() {
guard let spouse = spouse else { return } guard let spouse = spouse else { return }
guard let info = spouse.toDictionary() else { return } guard var info = spouse.toDictionary() else { return }
let arr = info["has_degree_json"] as! [[String:Any]] // let certi = [ "cnIdentityCard":
let parmas:[String:Any] = info // ["id":116871,"number":"421087199005010811","issue_at":"深圳","issue_date_start_at":"2017-01-01","issue_date_end_at":"2029-01-01","img_front":"","img_back":""],
// "passport":["id":116872,"number":"421087199005010811","issue_at":"深圳","issue_date_start_at":"2020-01-01","issue_date_end_at":"2023-01-01","img_front":"","img_back":"","passport_type":3],
// "hkMacaoPass":["id":118182,"number":"P103265(1)","issue_at":"SFAA","issue_date_start_at":"2024-01-31","issue_date_end_at":"2024-01-31","img_front":"","img_back":""]
// ]
//
// if let cer = info["certificates"] {
// info["certificates"] = certi
// }
let cer = info["certificates"]
let dict:[String: Any] = ["orderId":self.orderId, let dict:[String: Any] = ["orderId":self.orderId,
"relation":spouse.relationType.rawValue, "relation":spouse.relationType.rawValue,
"step":0, "step":0,
......
...@@ -240,7 +240,7 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -240,7 +240,7 @@ extension YHSpouseInitialInfoVC : UITableViewDelegate, UITableViewDataSource {
cell.text = detailItem.value cell.text = detailItem.value
cell.placeHolder = detailItem.placeHolder cell.placeHolder = detailItem.placeHolder
cell.textChange = { cell.textChange = {
[weak self] text in [weak self] (text, isEditEnd) in
guard let self = self else { return } guard let self = self else { return }
self.spouse?.address?.details = text self.spouse?.address?.details = text
......
...@@ -536,6 +536,8 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol { ...@@ -536,6 +536,8 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol {
var childStepchild: YHChildStepchildClass? var childStepchild: YHChildStepchildClass?
// 在港信息 // 在港信息
var childInHk: YHChildStepchildClass? var childInHk: YHChildStepchildClass?
// 证件数组 (中国身份证、香港身份证、护照等)
var certificates: YHCertificates?
// mark any // mark any
var countryIdentity: SmartAny? var countryIdentity: SmartAny?
...@@ -556,11 +558,6 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol { ...@@ -556,11 +558,6 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol {
// 婚前刑事 // 婚前刑事
var surname: String? var surname: String?
// mark any
// var certificates: YHCertificates?
var certificates: SmartAny?
var certificatesd: YHCertificates?
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case id = "id" case id = "id"
case deceased = "deceased" case deceased = "deceased"
...@@ -700,6 +697,19 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol { ...@@ -700,6 +697,19 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol {
self.hasDegree = val ? "1" : "0" self.hasDegree = val ? "1" : "0"
} }
// 是否已故
func isDead() -> Bool {
return self.deceased == 1
}
func setIsDead(_ val:Bool) {
self.deceased = (val ? 1 : 0)
}
// 是否在职
func isNowHaveJob() -> Bool {
return self.occupation == "在职"
}
var relationType:YHFamilyMemberType { var relationType:YHFamilyMemberType {
......
...@@ -14,7 +14,8 @@ class YHFormItemInputTextCell: UITableViewCell { ...@@ -14,7 +14,8 @@ class YHFormItemInputTextCell: UITableViewCell {
// 是否必填 如必填title会展示红色* // 是否必填 如必填title会展示红色*
var isMust = false var isMust = false
var textChange:((String?)->Void)? // BOOL值表示编辑是否结束
var textChange:((String?, Bool)->Void)?
var title:String? { var title:String? {
didSet { didSet {
...@@ -70,6 +71,7 @@ class YHFormItemInputTextCell: UITableViewCell { ...@@ -70,6 +71,7 @@ class YHFormItemInputTextCell: UITableViewCell {
textField.tintColor = UIColor.mainTextColor textField.tintColor = UIColor.mainTextColor
textField.textColor = UIColor.mainTextColor textField.textColor = UIColor.mainTextColor
textField.addTarget(self, action: #selector(textFieldChanged(textField:)), for: .editingChanged) textField.addTarget(self, action: #selector(textFieldChanged(textField:)), for: .editingChanged)
textField.addTarget(self, action: #selector(textFieldEditEnd(textField:)), for: .editingDidEnd)
return textField return textField
}() }()
...@@ -105,8 +107,13 @@ class YHFormItemInputTextCell: UITableViewCell { ...@@ -105,8 +107,13 @@ class YHFormItemInputTextCell: UITableViewCell {
@objc func textFieldChanged(textField:UITextField) { @objc func textFieldChanged(textField:UITextField) {
if let textChange = textChange { if let textChange = textChange {
textChange(textField.text) textChange(textField.text, false)
}
}
@objc func textFieldEditEnd(textField:UITextField) {
if let textChange = textChange {
textChange(textField.text, true)
} }
} }
} }
...@@ -11,11 +11,27 @@ import UIKit ...@@ -11,11 +11,27 @@ import UIKit
class YHSaveAndSubmitView: UIView { class YHSaveAndSubmitView: UIView {
static let submitBtnHeight = 48.0 static let submitBtnHeight = 48.0
static let saveBtnWidth = 86.0
static let gap = 8.0 static let gap = 8.0
static let height = submitBtnHeight+gap*2 static let height = submitBtnHeight+gap*2
var saveBlock:(()->Void)? var saveBlock:(()->Void)?
var submitBlock:(()->Void)? var submitBlock:(()->Void)?
// 是否隐藏保存按钮
var isHiddenSave:Bool = false {
didSet {
self.saveBtn.isHidden = isHiddenSave
self.saveBtn.snp.updateConstraints { make in
make.width.equalTo(isHiddenSave ? 0 : Self.saveBtnWidth)
}
self.submitBtn.snp.updateConstraints { make in
make.left.equalTo(saveBtn.snp.right).offset(isHiddenSave ? 0.0 : 10)
}
self.setNeedsLayout()
self.layoutIfNeeded()
}
}
lazy var submitBtn:UIButton = { lazy var submitBtn:UIButton = {
let btn = UIButton() let btn = UIButton()
...@@ -71,7 +87,8 @@ class YHSaveAndSubmitView: UIView { ...@@ -71,7 +87,8 @@ class YHSaveAndSubmitView: UIView {
saveBtn.snp.makeConstraints { make in saveBtn.snp.makeConstraints { make in
make.left.equalToSuperview().offset(16) make.left.equalToSuperview().offset(16)
make.size.equalTo(CGSize(width: 86.0, height: Self.submitBtnHeight)) make.height.equalTo(Self.submitBtnHeight)
make.width.equalTo(Self.saveBtnWidth)
make.top.equalTo(Self.gap) make.top.equalTo(Self.gap)
} }
......
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