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

// 证件信息填写

parent b3f702b2
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
041B52DD2B60A889007EBCEB /* YHTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B52DC2B60A889007EBCEB /* YHTest.swift */; }; 041B52DD2B60A889007EBCEB /* YHTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B52DC2B60A889007EBCEB /* YHTest.swift */; };
042FBBB92B627C0F00F9DE23 /* YHCertificateInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042FBBB82B627C0E00F9DE23 /* YHCertificateInfo.swift */; }; 042FBBB92B627C0F00F9DE23 /* YHCertificateInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042FBBB82B627C0E00F9DE23 /* YHCertificateInfo.swift */; };
042FBBBB2B62806D00F9DE23 /* YHCertificateViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042FBBBA2B62806D00F9DE23 /* YHCertificateViewController.swift */; }; 042FBBBB2B62806D00F9DE23 /* YHCertificateViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042FBBBA2B62806D00F9DE23 /* YHCertificateViewController.swift */; };
042FBBBD2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042FBBBC2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift */; };
0468D4202B49320900CFB916 /* YHVerificationCodeLoginController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0468D41F2B49320900CFB916 /* YHVerificationCodeLoginController.swift */; }; 0468D4202B49320900CFB916 /* YHVerificationCodeLoginController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0468D41F2B49320900CFB916 /* YHVerificationCodeLoginController.swift */; };
0468D4222B493A5E00CFB916 /* YHPhoneMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0468D4212B493A5E00CFB916 /* YHPhoneMessageView.swift */; }; 0468D4222B493A5E00CFB916 /* YHPhoneMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0468D4212B493A5E00CFB916 /* YHPhoneMessageView.swift */; };
0468D4242B494BEA00CFB916 /* YHCodeResultViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0468D4232B494BEA00CFB916 /* YHCodeResultViewController.swift */; }; 0468D4242B494BEA00CFB916 /* YHCodeResultViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0468D4232B494BEA00CFB916 /* YHCodeResultViewController.swift */; };
...@@ -174,6 +175,7 @@ ...@@ -174,6 +175,7 @@
041B52DC2B60A889007EBCEB /* YHTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHTest.swift; sourceTree = "<group>"; }; 041B52DC2B60A889007EBCEB /* YHTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHTest.swift; sourceTree = "<group>"; };
042FBBB82B627C0E00F9DE23 /* YHCertificateInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateInfo.swift; sourceTree = "<group>"; }; 042FBBB82B627C0E00F9DE23 /* YHCertificateInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateInfo.swift; sourceTree = "<group>"; };
042FBBBA2B62806D00F9DE23 /* YHCertificateViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateViewController.swift; sourceTree = "<group>"; }; 042FBBBA2B62806D00F9DE23 /* YHCertificateViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateViewController.swift; sourceTree = "<group>"; };
042FBBBC2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHFormItemSelectSheetCell.swift; sourceTree = "<group>"; };
0468D41F2B49320900CFB916 /* YHVerificationCodeLoginController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHVerificationCodeLoginController.swift; sourceTree = "<group>"; }; 0468D41F2B49320900CFB916 /* YHVerificationCodeLoginController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHVerificationCodeLoginController.swift; sourceTree = "<group>"; };
0468D4212B493A5E00CFB916 /* YHPhoneMessageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHPhoneMessageView.swift; sourceTree = "<group>"; }; 0468D4212B493A5E00CFB916 /* YHPhoneMessageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHPhoneMessageView.swift; sourceTree = "<group>"; };
0468D4232B494BEA00CFB916 /* YHCodeResultViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCodeResultViewController.swift; sourceTree = "<group>"; }; 0468D4232B494BEA00CFB916 /* YHCodeResultViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCodeResultViewController.swift; sourceTree = "<group>"; };
...@@ -342,6 +344,7 @@ ...@@ -342,6 +344,7 @@
041B528C2B5E58FA007EBCEB /* YHDoubleChoiceFormCell.swift */, 041B528C2B5E58FA007EBCEB /* YHDoubleChoiceFormCell.swift */,
041B528E2B5E620E007EBCEB /* YHSingleLineInputCell.swift */, 041B528E2B5E620E007EBCEB /* YHSingleLineInputCell.swift */,
041B52902B5E67F3007EBCEB /* YHSingleLineSelectCell.swift */, 041B52902B5E67F3007EBCEB /* YHSingleLineSelectCell.swift */,
042FBBBC2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift */,
041B52922B5E6CBA007EBCEB /* YHFormTitleCell.swift */, 041B52922B5E6CBA007EBCEB /* YHFormTitleCell.swift */,
041B52942B5E7037007EBCEB /* YHFormAddInfoCell.swift */, 041B52942B5E7037007EBCEB /* YHFormAddInfoCell.swift */,
); );
...@@ -1133,6 +1136,7 @@ ...@@ -1133,6 +1136,7 @@
041B52872B5657B3007EBCEB /* IMAppKey.swift in Sources */, 041B52872B5657B3007EBCEB /* IMAppKey.swift in Sources */,
0468D42B2B55019900CFB916 /* YHAnalytics.swift in Sources */, 0468D42B2B55019900CFB916 /* YHAnalytics.swift in Sources */,
A5ACE93C2B4564F7002C94D2 /* UIColor+Extension.swift in Sources */, A5ACE93C2B4564F7002C94D2 /* UIColor+Extension.swift in Sources */,
042FBBBD2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift in Sources */,
041B52982B5E8EA0007EBCEB /* YHFamilyMemberFormVC.swift in Sources */, 041B52982B5E8EA0007EBCEB /* YHFamilyMemberFormVC.swift in Sources */,
A5C382CF2B5F9A9100C5E65C /* YHServiceCenterMainViewModel.swift in Sources */, A5C382CF2B5F9A9100C5E65C /* YHServiceCenterMainViewModel.swift in Sources */,
A5C5B2EA2B4ECA4D00A7C5D1 /* YHDavidModel0.swift in Sources */, A5C5B2EA2B4ECA4D00A7C5D1 /* YHDavidModel0.swift in Sources */,
......
...@@ -12,7 +12,9 @@ class YHCertificateViewController: YHBaseViewController { ...@@ -12,7 +12,9 @@ class YHCertificateViewController: YHBaseViewController {
var spouse:YHSpouse? var spouse:YHSpouse?
lazy var items:[[YHFormItemProtocol]] = [[YHFormItemProtocol]]() var cardInfo: YHCNIdentityCard?
var items:[[YHFormItemProtocol]] = [[YHFormItemProtocol]]()
lazy var tableView: UITableView = { lazy var tableView: UITableView = {
...@@ -32,6 +34,8 @@ class YHCertificateViewController: YHBaseViewController { ...@@ -32,6 +34,8 @@ class YHCertificateViewController: YHBaseViewController {
tableView.register(YHSingleLineSelectCell.self, forCellReuseIdentifier: YHSingleLineSelectCell.cellReuseIdentifier) tableView.register(YHSingleLineSelectCell.self, forCellReuseIdentifier: YHSingleLineSelectCell.cellReuseIdentifier)
tableView.register(YHFormTitleCell.self, forCellReuseIdentifier: YHFormTitleCell.cellReuseIdentifier) tableView.register(YHFormTitleCell.self, forCellReuseIdentifier: YHFormTitleCell.cellReuseIdentifier)
tableView.register(YHFormAddInfoCell.self, forCellReuseIdentifier: YHFormAddInfoCell.cellReuseIdentifier) tableView.register(YHFormAddInfoCell.self, forCellReuseIdentifier: YHFormAddInfoCell.cellReuseIdentifier)
tableView.register(YHFormItemSelectSheetCell.self, forCellReuseIdentifier: YHFormItemSelectSheetCell.cellReuseIdentifier)
return tableView return tableView
}() }()
...@@ -39,6 +43,7 @@ class YHCertificateViewController: YHBaseViewController { ...@@ -39,6 +43,7 @@ class YHCertificateViewController: YHBaseViewController {
super.viewDidLoad() super.viewDidLoad()
gk_navTitle = "配偶信息填写".local gk_navTitle = "配偶信息填写".local
createUI() createUI()
loadCertificateInfo()
} }
func createUI() { func createUI() {
...@@ -54,6 +59,23 @@ class YHCertificateViewController: YHBaseViewController { ...@@ -54,6 +59,23 @@ class YHCertificateViewController: YHBaseViewController {
func loadCertificateInfo() { func loadCertificateInfo() {
let title0 = YHFormTitleItem(type: .chinaIdCardInfo)
let item01 = YHFormDetailItem(type: .certificateNumber)
let item02 = YHFormDetailItem(type: .certificateSignPlace)
let item03 = YHFormDetailItem(type: .certificateSignDate)
let item04 = YHFormDetailItem(type: .certificateValidDate)
let arr0:[YHFormItemProtocol] = [title0, item01, item02, item03, item04]
let title1 = YHFormTitleItem(type: .passPortInfo)
let item10 = YHFormDetailItem(type: .cetificateType)
let item11 = YHFormDetailItem(type: .certificateNumber)
let item12 = YHFormDetailItem(type: .certificateSignPlace)
let item13 = YHFormDetailItem(type: .certificateSignDate)
let item14 = YHFormDetailItem(type: .certificateValidDate)
let arr1:[YHFormItemProtocol] = [title1, item10, item11, item12, item13, item14]
items.append(contentsOf: [arr0, arr1])
tableView.reloadData()
} }
} }
...@@ -84,9 +106,33 @@ extension YHCertificateViewController : UITableViewDelegate, UITableViewDataSour ...@@ -84,9 +106,33 @@ extension YHCertificateViewController : UITableViewDelegate, UITableViewDataSour
return cell return cell
} }
if item is YHFormDetailItem {
let detailItem = item as! YHFormDetailItem
if detailItem.type == .certificateNumber || detailItem.type == .certificateSignPlace { // 证件号码和签发地需要填写
let cell = tableView.dequeueReusableCell(withIdentifier: YHSingleLineInputCell.cellReuseIdentifier, for: indexPath) as! YHSingleLineInputCell
let titleItem = arr[0] as! YHFormTitleItem
if detailItem.type == .certificateNumber {
cell.titleLabel.text = (titleItem.type == .chinaIdCardInfo ? "中国身份证号" : "证件号码")
} else {
cell.titleLabel.text = detailItem.getTitle()
}
return cell
}
if detailItem.type == .cetificateType || detailItem.type == .certificateSignDate || detailItem.type == .certificateValidDate {
let cell = tableView.dequeueReusableCell(withIdentifier: YHSingleLineSelectCell.cellReuseIdentifier, for: indexPath) as! YHSingleLineSelectCell let cell = tableView.dequeueReusableCell(withIdentifier: YHFormItemSelectSheetCell.cellReuseIdentifier, for: indexPath) as! YHFormItemSelectSheetCell
return cell cell.title = detailItem.getTitle()
cell.detail = "中国"
return cell
}
let cell = tableView.dequeueReusableCell(withIdentifier: YHSingleLineSelectCell.cellReuseIdentifier, for: indexPath) as! YHSingleLineSelectCell
cell.titleLabel.text = detailItem.getTitle()
return cell
}
return createDefaultCell(indexPath) return createDefaultCell(indexPath)
} }
...@@ -96,7 +142,6 @@ extension YHCertificateViewController : UITableViewDelegate, UITableViewDataSour ...@@ -96,7 +142,6 @@ extension YHCertificateViewController : UITableViewDelegate, UITableViewDataSour
if indexPath.section >= items.count { return } if indexPath.section >= items.count { return }
let arr:[YHFormItemProtocol] = items[indexPath.section] let arr:[YHFormItemProtocol] = items[indexPath.section]
if indexPath.row >= arr.count { return } if indexPath.row >= arr.count { return }
createCorner(cell: cell, arr: arr, indexPath: indexPath) createCorner(cell: cell, arr: arr, indexPath: indexPath)
} }
...@@ -118,13 +163,7 @@ extension YHCertificateViewController : UITableViewDelegate, UITableViewDataSour ...@@ -118,13 +163,7 @@ extension YHCertificateViewController : UITableViewDelegate, UITableViewDataSour
} }
if item is YHFormDetailItem { if item is YHFormDetailItem {
let detailItem = item as! YHFormDetailItem return UITableView.automaticDimension
if detailItem.type == .isLiveTother ||
detailItem.type == .accompany ||
detailItem.type == .hkPassport
{
return UITableView.automaticDimension
}
} }
return 52.0 return 52.0
} }
......
...@@ -272,6 +272,8 @@ extension YHSpouseFormVC : UITableViewDelegate, UITableViewDataSource { ...@@ -272,6 +272,8 @@ extension YHSpouseFormVC : UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let vc = YHCertificateViewController()
self.navigationController?.pushViewController(vc)
} }
func createCorner(cell:UITableViewCell, arr:Array<Any>, indexPath:IndexPath) { func createCorner(cell:UITableViewCell, arr:Array<Any>, indexPath:IndexPath) {
......
...@@ -57,9 +57,11 @@ enum YHFormDetailItemType:Int { ...@@ -57,9 +57,11 @@ enum YHFormDetailItemType:Int {
// 证件号码 // 证件号码
case certificateNumber = 9 case certificateNumber = 9
// 签发日期 // 签发日期
case certificateMakeDate = 10 case certificateSignDate = 10
// 届满日期 // 届满日期
case certificateValidDate = 11 case certificateValidDate = 11
// 签发地
case certificateSignPlace = 12
} }
...@@ -204,11 +206,13 @@ class YHFormDetailItem : YHFormItemProtocol { ...@@ -204,11 +206,13 @@ class YHFormDetailItem : YHFormItemProtocol {
return "中国身份证号".local return "中国身份证号".local
// 签发日期 // 签发日期
case .certificateMakeDate: case .certificateSignDate:
return "签发日期".local return "签发日期".local
// 届满日期 // 届满日期
case .certificateValidDate: case .certificateValidDate:
return "届满日期".local return "届满日期".local
case .certificateSignPlace:
return "签发地".local
} }
} }
......
//
// YHSheetSelectCell.swift
// galaxy
//
// Created by edy on 2024/1/26.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHFormItemSelectSheetCell: UITableViewCell {
static let cellReuseIdentifier = "YHFormItemSelectSheetCell"
// 是否必填 如必填title会展示红色*
var isMust = false
var title:String? {
didSet {
if let title = title {
let str = (isMust ? ("*"+title) : title)
let attributes: [NSAttributedString.Key: Any] = [
.font: UIFont.PFSCR(ofSize: 14),
.foregroundColor: UIColor(hex:0x222222)
]
let questionAttrStr = NSMutableAttributedString(string: str, attributes: attributes)
if isMust {
let starRange = NSRange(location: 0, length: 1)
questionAttrStr.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor(hex:0xFF3A3A), range: starRange)
}
titleLabel.attributedText = questionAttrStr
}
}
}
var tips:String? {
didSet {
tipsLabel.text = tips
}
}
var detail:String? {
didSet {
detailLabel.text = detail
if let detail = detail, !detail.isEmpty {
tipsLabel.isHidden = true
detailLabel.isHidden = false
} else {
tipsLabel.isHidden = false
detailLabel.isHidden = true
}
}
}
lazy var titleLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor(hexString:"#333333")
label.textAlignment = .left
label.numberOfLines = 0
label.font = UIFont.PFSCR(ofSize: 14)
return label
}()
private lazy var detailLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor(hexString: "#222222")
label.textAlignment = .left
label.font = UIFont.PFSCR(ofSize: 14)
label.isHidden = true
return label
}()
private lazy var tipsLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor(hexString: "#C0C0C0")
label.text = "请选择".local
label.textAlignment = .left
label.font = UIFont.PFSCR(ofSize: 14)
label.isHidden = false
return label
}()
lazy var arrowImgView: UIImageView = {
let imgView = UIImageView(image: UIImage(named: "form_right_arrow"))
return imgView
}()
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
setupUI()
}
func setupUI() {
self.selectionStyle = .none
contentView.addSubview(titleLabel)
contentView.addSubview(detailLabel)
contentView.addSubview(tipsLabel)
contentView.addSubview(arrowImgView)
titleLabel.snp.makeConstraints { make in
make.left.equalToSuperview().offset(16)
make.right.equalTo(detailLabel.snp.left).offset(-8)
make.width.equalTo(120)
make.centerY.equalToSuperview()
}
detailLabel.snp.makeConstraints { make in
make.right.equalTo(arrowImgView.snp.left)
make.centerY.equalToSuperview()
}
tipsLabel.snp.makeConstraints { make in
make.edges.equalTo(detailLabel)
}
arrowImgView.snp.makeConstraints { make in
make.size.equalTo(CGSizeMake(20, 20))
make.right.equalToSuperview().offset(-16)
make.centerY.equalToSuperview()
}
}
}
...@@ -24,7 +24,7 @@ class YHSingleLineInputCell: UITableViewCell { ...@@ -24,7 +24,7 @@ class YHSingleLineInputCell: UITableViewCell {
.font: UIFont.PFSCR(ofSize: 14), .font: UIFont.PFSCR(ofSize: 14),
.foregroundColor: UIColor(hex:0x222222) .foregroundColor: UIColor(hex:0x222222)
] ]
var questionAttrStr = NSMutableAttributedString(string: str, attributes: attributes) let questionAttrStr = NSMutableAttributedString(string: str, attributes: attributes)
if isMust { if isMust {
let starRange = NSRange(location: 0, length: 1) let starRange = NSRange(location: 0, length: 1)
questionAttrStr.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor(hex:0xFF3A3A), range: starRange) questionAttrStr.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor(hex:0xFF3A3A), range: starRange)
...@@ -72,17 +72,17 @@ class YHSingleLineInputCell: UITableViewCell { ...@@ -72,17 +72,17 @@ class YHSingleLineInputCell: UITableViewCell {
contentView.addSubview(textField) contentView.addSubview(textField)
isMust = true isMust = true
title = "曾用名"
titleLabel.snp.makeConstraints { make in titleLabel.snp.makeConstraints { make in
make.left.equalToSuperview().offset(16) make.left.equalToSuperview().offset(16)
make.right.equalTo(textField.snp.left).offset(-8) make.width.equalTo(120)
make.centerY.equalToSuperview() make.centerY.equalToSuperview()
} }
textField.snp.makeConstraints { make in textField.snp.makeConstraints { make in
make.centerY.equalToSuperview() make.centerY.equalToSuperview()
make.right.equalTo(contentView.snp.right).offset(-16) make.right.equalTo(contentView.snp.right).offset(-16)
make.left.equalTo(titleLabel.snp.right).offset(10)
} }
} }
......
...@@ -53,7 +53,7 @@ class YHSingleLineSelectCell: UITableViewCell { ...@@ -53,7 +53,7 @@ class YHSingleLineSelectCell: UITableViewCell {
lazy var detailLabel: UILabel = { lazy var detailLabel: UILabel = {
let label = UILabel() let label = UILabel()
label.textColor = UIColor(hexString:"#333333") label.textColor = UIColor(hexString: "#888F98")
label.textAlignment = .right label.textAlignment = .right
label.numberOfLines = 0 label.numberOfLines = 0
label.font = UIFont.PFSCR(ofSize: 14) label.font = UIFont.PFSCR(ofSize: 14)
...@@ -89,8 +89,6 @@ class YHSingleLineSelectCell: UITableViewCell { ...@@ -89,8 +89,6 @@ class YHSingleLineSelectCell: UITableViewCell {
contentView.addSubview(arrowImgView) contentView.addSubview(arrowImgView)
contentView.addSubview(deleteButton) contentView.addSubview(deleteButton)
title = "婚姻状况"
detailLabel.text = "沙发上发顺丰"
titleLabel.snp.makeConstraints { make in titleLabel.snp.makeConstraints { make in
make.left.equalToSuperview().offset(16) make.left.equalToSuperview().offset(16)
make.right.equalTo(detailLabel.snp.left).offset(-8) make.right.equalTo(detailLabel.snp.left).offset(-8)
......
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