Commit 22900907 authored by pete谢兆麟's avatar pete谢兆麟

主申请人逻辑

parent 3257c54a
......@@ -9,6 +9,7 @@
import UIKit
class YHSelectCountryViewController: YHBaseViewController {
public var backLocationStringController: ((String) -> Void)?
var searchView: UITextField!
var flagLabel: UILabel!
var tableView: UITableView!
......@@ -144,6 +145,16 @@ extension YHSelectCountryViewController: UITableViewDelegate, UITableViewDataSou
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 44
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let cn = searchDataSource?[indexPath.row].name_cn ?? ""
let en = searchDataSource?[indexPath.row].name_en ?? ""
let text = cn + en
if let backLocationStringController = backLocationStringController {
backLocationStringController(text)
self.navigationController?.popViewController()
}
}
}
extension YHSelectCountryViewController: UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {
......@@ -163,6 +174,13 @@ extension YHSelectCountryViewController: UICollectionViewDelegate, UICollectionV
return CGSize(width: size.width + 25, height: 32) // 这里可以根据需求设置不同的尺寸
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let string = hotDataSource[indexPath.row]
if let backLocationStringController = backLocationStringController {
backLocationStringController(string)
self.navigationController?.popViewController()
}
}
}
class YHCountryCollectionViewCell: UICollectionViewCell {
......
......@@ -19,7 +19,43 @@ enum YHItemSelectType: Int {
case marry = 7
}
enum YHItemID: Int {
case id1 = 0 //国籍 国家
case id2 = 1 // 现居住地址 国家
case id3 = 2 // 现居住地址 省市区
case id4 = 3 // 现居住地址 详细地址
case id5 = 4 // 通行证 是否
case id6 = 5 // 中国身份证 上传
case id7 = 6 // 港澳通行证 上传
case id8 = 7 // 中国身份证 身份证号码
case id9 = 8 // 中国身份证 签发地
case id10 = 9 // 中国身份证 签发日期
case id11 = 10 // 中国身份证 届满日期
case id12 = 11 // 港澳通行证 身份证号码
case id13 = 12 // 港澳通行证 签发地
case id14 = 13 // 港澳通行证 签发日期
case id15 = 14 // 港澳通行证 届满日期
case id16 = 15 // 护照 类型
case id17 = 16 // 护照 身份证号码
case id18 = 17 // 护照 签发地
case id19 = 18 // 护照 签发日期
case id20 = 19 // 护照 届满日期
case id21 = 20 // 主申请人信息 姓名
case id22 = 21 // 主申请人信息 曾用名
case id23 = 22 // 主申请人信息 婚前姓氏
case id24 = 23 // 主申请人信息 出生日期
case id25 = 24 // 主申请人信息 出生国家/地区
case id26 = 25 // 主申请人信息 出生城市
case id27 = 26 // 主申请人信息 性别
case id28 = 27 // 主申请人信息 婚姻状况
case id29 = 28 // 主申请人信息 手机号码
case id30 = 29 // 主申请人信息 电子邮箱
case id31 = 30 // 主申请人信息 香港身份证是否办理过是/否
}
struct YHItemModel {
var id: YHItemID?
var isNeed: Bool?
var title: String?
var isUserKeyBoard: Bool?
......@@ -28,8 +64,10 @@ struct YHItemModel {
var leftButtonString: String?
var rightButtonString: String?
var type: YHItemSelectType?
var value: [String]?
init(isNeed: Bool? = nil, title: String? = nil, isUserKeyBoard: Bool? = nil, prompts: String? = nil, message: String? = nil, leftButtonString: String? = nil, rightButtonString: String? = nil, type: YHItemSelectType? = nil) {
init(id: YHItemID? = nil, isNeed: Bool? = nil, title: String? = nil, isUserKeyBoard: Bool? = nil, prompts: String? = nil, message: String? = nil, leftButtonString: String? = nil, rightButtonString: String? = nil, type: YHItemSelectType? = nil, value: [String]? = nil) {
self.id = id
self.isNeed = isNeed
self.title = title
self.isUserKeyBoard = isUserKeyBoard
......@@ -38,6 +76,7 @@ struct YHItemModel {
self.leftButtonString = leftButtonString
self.rightButtonString = rightButtonString
self.type = type
self.value = value
}
}
......
......@@ -123,7 +123,7 @@ class YHItemView: UIView {
if dataSource.isNeed ?? false {
let str = "*" + (dataSource.title ?? "")
let attributes: [NSAttributedString.Key: Any] = [
.font: kFont(size: 14),
.font: UIFont.PFSC_R(ofSize: 14),
.foregroundColor: UIColor(hex:0x222222)
]
let questionAttrStr = NSMutableAttributedString(string: str, attributes: attributes)
......@@ -155,9 +155,9 @@ class YHItemView: UIView {
nextStepImageView.isHidden = true
messageTextField.isHidden = true
if dataSource.message == "0" {
rightClick()
buttonState(isLeft: false)
} else {
leftClick()
buttonState(isLeft: true)
}
} else {
leftButton.isHidden = true
......@@ -173,6 +173,26 @@ class YHItemView: UIView {
}
}
func buttonState(isLeft: Bool) {
if isLeft {
leftButton.isSelected = true
rightButton.isSelected = false
leftButton.layer.borderWidth = 1
leftButton.layer.borderColor = UIColor(hex: 0x4487f9).cgColor
leftButton.backgroundColor = UIColor(hex: 0x4487f9).withAlphaComponent(0.08)
rightButton.backgroundColor = UIColor(hex: 0xf8f9fb)
rightButton.layer.borderWidth = 0
} else {
rightButton.isSelected = true
leftButton.isSelected = false
rightButton.layer.borderWidth = 1
rightButton.layer.borderColor = UIColor(hex: 0x4487f9).cgColor
rightButton.backgroundColor = UIColor(hex: 0x4487f9).withAlphaComponent(0.08)
leftButton.backgroundColor = UIColor(hex: 0xf8f9fb)
leftButton.layer.borderWidth = 0
}
}
@objc func rightClick() {
rightButton.isSelected = true
leftButton.isSelected = false
......@@ -182,6 +202,10 @@ class YHItemView: UIView {
leftButton.backgroundColor = UIColor(hex: 0xf8f9fb)
leftButton.layer.borderWidth = 0
dataSource?.message = "0"
dataSource?.value = ["0"]
if let block = block {
block(dataSource ?? YHItemModel())
}
}
@objc func leftClick() {
......@@ -193,10 +217,66 @@ class YHItemView: UIView {
rightButton.backgroundColor = UIColor(hex: 0xf8f9fb)
rightButton.layer.borderWidth = 0
dataSource?.message = "1"
dataSource?.value = ["1"]
if let block = block {
block(dataSource ?? YHItemModel())
}
}
@objc func centerClick() {
guard let type = dataSource?.type else { return }
switch type {
case .normal:
printLog("不需要跳转")
case .address:
let addressPicker = YHAddressViewController( selectProvince: "上海市", selectCity: "" )
addressPicker.backLocationStringController = { (address,province,city,area) in
self.dataSource?.message = address
self.dataSource?.value = [province, city, area]
self.updateAllViews()
}
UIViewController.current?.present(addressPicker, animated: true, completion: nil)
case .time:
YHDatePickView.show(type: .yyyymmdd) { date in
// let arr = date.components(separatedBy: YHDatePickView.separator)
// [yyyy, mm, dd] eg ["2024", "01", "20"]
self.dataSource?.message = date
self.updateAllViews()
}
case .image:
let view = YHImagePickerView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: KScreenHeight))
view.backImage = { [weak self] image in
guard let self = self else { return }
self.updateAllViews()
}
let window = UIApplication.shared.yhKeyWindow()
window?.addSubview(view)
case .id:
YHFormPickerView.show(type: .certificate, selectTitle: "公务通行证") { selectType in
// 选择类型的标题
self.dataSource?.message = selectType.title
self.updateAllViews()
}
case .country:
let vc = YHSelectCountryViewController()
vc.backLocationStringController = { (country) in
self.dataSource?.message = country
self.updateAllViews()
}
UIViewController.current?.navigationController?.pushViewController(vc)
case .sex:
YHFormPickerView.show(type: .gender, selectType: .gender(.female)) { selectType in
// 选择类型的标题
self.dataSource?.message = selectType.title
self.updateAllViews()
}
case .marry:
YHFormPickerView.show(type: .marriage, selectType: .marriage(.divorced)) { selectType in
// 选择类型的标题
self.dataSource?.message = selectType.title
self.updateAllViews()
}
}
}
}
......
......@@ -93,7 +93,7 @@ class YHNetRequest: NSObject {
print("sign = \(sign)")
requestHeader.add(name:"sign",value:sign)
requestHeader.add(name: "token", value: "eyJpdiI6IkEwZ1pCTnJVUytcLzNPXC9pazV3bVYyUT09IiwidmFsdWUiOiJyWHBrb084SndjV0tvdVR0SnBuZGlKTFhhdVRPd1NUVlRuc3VMYTZHMCtiNUVcL1g3SGNGeG9oTmQ0NXNyZnBzVGMwSEc2bjJhdnd6ZzBReWR4QldtMXU5THZKMWFPVHJHQkZuSmExQzFKUldiV2ZhVys4VVJOZXd1enVZMXREc3VaaitudVdtdVVwV04zOEs3Slgxbk0yS21IZTEzYitoZkV5RWhBTlJ5TjhTd0Z1dTBCTlIxY1hSNE50TjBsVHhtQ2dqUmVXQnBpZkJ2N0F3bWtFU3NYSjBSNGVyRzlqZEJKdllYQXBIWEZjQWlGSlZNT2pCdStsUVwvT0Y2QkMrQjNnSDc2bmlhTjE3NjMxZGJyUGViWjhZb3JOWXpsKzg5b3o0VFU3emVVQ2FOUnpmcVRNU3JYbFwvOTlTZnVJcGlqN2tvOEQ2NWxpcWdlRndwK3R2dU9CUE1PUGpIa2Z4RjZBUGdOYXBVMEdmbXJFRStwTmxrejRqNmVSMjZ6dUgwclBNUlgwZGRVcTlqMzdUSzF3VXNFcFVNeU5FTXJjbmNLcWhheXBiNkZSMHhBa3V3dHk4XC9LWXI0d1pXeTQ4d0ltUHhRUFUrZnpQaUtvT0VCR1FWZTR1TlFFMGFxZUFqcysxZ2J3U1NSUkJTT29tdmY3UWR3RWN3OG55dldPM2ZWYXY5OVBNTVlwZWY0M3pXSGJ5OHVmV2lXZGExaVBRa3Z5RkFUREpLTDdRcHh6SW5ERDhVNVpGemR0K0RiYnRCaFI1MzFRQzZlalR5a09mTFwvNUd5eFFWb2p5OGRvMGxEQzlNbnBkdFwvdktLWit2b3pJTlRBNE5zcUsrSkRUUkRNZVZsdkljZncycHFBNldnYnFydnpcL2lDYmprdWdWZ1BEMk5CNzU3UVJtQnFvN1BJTm0rcVp6S1pmT3dyYXppQnhvT3ZIMWdJN2ExVGJYb3RVb2hnTlNUU2p2TmN1VDJmdVFDNU92TG1XUHI3UmlxWXVVQVhzbFwveDRxZUQyVU9VblcxNTNQdUJHOGRTaHB6a0cwU0FhbEJxK2tkeHNFMUJWNXgzb0g1WnJzdHBtdmRTREV2V3pqdDlLbTZEb2VPV0VPRll3M1dwSGx0cm16ODFlSWRCOTBkcUVrMXpkT3cwOUNLNTRPQW93OFNOUTg0NUpxZDZGa3IyUDRKWGR3NWRiK1wvQVhPTzlKdGR3SHB6cmZ2UjhBRlwvVWg2NStuQW5OcFVtNEFzQ3J0Y0VtTTI2RWF3a3J4MzJxcE1YWUtJYUc0bXY5NFwvYTBjb0FoZlhiSnQrOHhsUERhcVpcL0lsMTNtY2xzbFN1Umpob2czU3k2Sk9NcHFZamZVZlBCZTBTVFo2c08wOUNvRVpDQTNGR0YwaVdWbHk0Z3FKWHd5ZjJBUzhQanprR2lMdnBtZ2VQSEJKclNSd1QxdGxIVWRhQzF6UWRVXC9HQzlFbzRRc21RUVNwZ3B4RVozV2VSMXFHUTdsU04rNm5VeHdnbStnN014MGFrK2s1VUIxT0VNZkpjaVc2bEtFQkt1ekZDQ1hseWJROElnTXdNYkFjcGs2T2prY0pDakZMVWN5N1N1bjRcL0NCeWE1WElzM2l2UEZ2TkpiUm90cUhyeGFMOWFcL1wvRzlmZ0Z0dXA4bGhsNmFkTjgzcXhyME9MSlBQcFwvcWlCZW5MNEJ0RTd5MXZGeGx2djQzdmNwQXRrQ2QyU3QzMzRMUmVvTXlHYlNFcFpPSjROdGNzOXRGXC9OMGw3cE1nVzdxNHZwb2lCU3ZWaXFqOEVmUmFodmVsdDkxZFNKRjJHWURSVGNsMUlOdUMxRDFJV0NLYStmTHJ4WG5Lc1d6bGNNa0c2Q2ZzMXRYZkNHUzFvTmNBcHNrOWFQRDhtVmExc016c0RJbDNrVCtvdm94UT09IiwibWFjIjoiNTYyNGEzYWE3YjllODY5NmQ0NjdlMTg1NzQ4OGU1Y2I4MTE0MGQ2ZjFjNTQ0MTdkOTc0ODRmYjZhNDNhM2EwNiJ9")
requestHeader.add(name: "token", value: "eyJpdiI6InVtUkVKaWtrU1BxWmJ6ZWNcL3lBaFVRPT0iLCJ2YWx1ZSI6InN6aEtRWWl6Yk51cVdKWDFwQmp6QzBcLzRKbUFhaW5GUkxkZ0RpcVZEbFo0UG5LelhaQzhpVmdRZXg5QXdqMm9vWnJ3WldHMzM1dVpcL0hWaTBtRm5OeGo3bFRUVzdEdzIreE9qSEZLWm80MTB2R0wwMlhFc0NWWVlZTGdkWUd0cWZtM29xR2lITTBhVzJDenB6bGNhdENpeXAwOWtsM3FzN21nZk9NQXQ3M2hFVDJcL2V2dzlUenJxY0MrTzk2VkJnSkVcL2NEM3dCSUV0YnkwbWxtNzBNZjYzZ1ZQNExEZFZ5a3VQcDdtS2kxNzM2SFJiRVArQnV0NHBYcXNuQ1J3SG95d2tMb3VJcWtXMlUxbHl6STJhWjJacDUxcUhJVTdZOG9FU2VFSVg5a3hhaVc3dkJWcTVoenBcLzFkbitSY2cyOVU1aU8zVFwvMXFtZmo4bDNGcFwvalZ1YmVnZVBVbFhmem9ZdUxadXNhRVwvVGs3WWMrUmY0OEJhTmtmYmhONUY4OUk5OFBocFZiVXhSQ0pmcFgzU0xXdTJqWThqXC81eGNLR0g5QnAyblpZWTJqNzVhV2MxR2JtTUZ1TElpd0haMFFIeFVcLzArWHloc082XC9tS3VkY3B6c2lrZDFsUms2Y1dRRnpKSVdOMnlzMFMyQmJhd0xMV1k2VklFNUxnY3BQTDlkNSthZngzY1BpclNOemdYcXlDTUNnaG5YUXQ4ZlMwMmEyTHRCMTZ5aUVZa09ZYkFzWXVHMWc5c0RtNHdhcnQ1UlRGOEw4YTRCdE5WaExQcXF2YWFlb3QreTY5U0tGd01mOHRTWm9hVEwwclRMOW8yT21aSVlrWGplU0JCalVDTmFXWVNxMEttbU1Fc1d6WFdJQ0h2a1BWdUxpMFpkdng2bnAyUmRtUCs2ZDNMVURtM3lGMTcyRDFabUF6NHVOeW5zVkwxRVJaZXl4WmlYemV5MENyYnFqcjV3SzRTNjhEcFhSbVdNSGRtOWd6UmhqRCtzRVwvbDh2UUVjMlZyMkRQbDdHQkdlZ0VwbVk0QVBuXC9qVEhWVjlPM2NWZndxZXY3RWtaQ2QrUks4bFVpNUFNcXB0Yjd3TnAxd0NKSmdjT3FIZHhPNURRZHZ0cVBZSFV6TkIyVVJKWUdaTXBwamE2c3ZUYjkrckFaMnkxRnI3aEZ4NkhZdUtocjRPTWFLRmc4cFJYNUNuYkxZZDVIUnl2bUY2QlNXMEk0OHVkb1VQbUxHMzc5SjZDMDF6c01FckhWSnZLaW1BWUhHVTJUcm9NcFQrRVpFK0hMbnZINXR0dWFHMTVuTzNTWFJpZDZpSWd5d1R5RmtidFVOS0V2cVJIMmR5K2VDUE1TZGU3bHAwZEYzSXhUWG54eks5ZkJSYzQxMTRoaDlcL1RkTWJEMzB3ekVFSGFnSXM1b29wWjN3K0Ercmlxd004RzZZMmV0ZktrVHNabFlRMjNrN0p3MTk0TWdpUE16aW5xM0NNamJvNGlrK1Y3bEtXZnJRN0lBZ1ZTdXNzYllEU0p6ZFpYeWxQcEZWcDFqb1h3UEQ0RGdMNVhmUFY0dWI1T2hYSzdWUlVQZWVEbHBrREJNbm5cL3FIM2NmVUp6U1piWXd6WlZSMEFON1Jyc2pyYklXdjMxSVwvQ3QyZlZRWUJIdnNHdkVFcDQwU0s4OTlmWTllYlFDaDBqTTM5emtGdWJ4KytXcUk2NVB4cmlKak5hK0lETUV4ODZvdzRNVXkyZ1o5K05IWk4zbnF4OWpBV0VPSXBFYzYwRm9XdGthWlNzdzI0ajIyaytlUmxTZ1FudUthTGQwWk9McGZvMkdEXC9RbzdiODRGWVZVS01XZ0EyQjlFVW56Mmp3ZkV1RHl5WXlHbzdJRFwvNkFROVQ3K2dscHdVMVlpNHRcL1lmM2Fjek0yNFwvREE9PSIsIm1hYyI6IjBiNjA0MWQ1YWY2OWQwMzdiNmVkZTE3ZmE5MWRjYzI2Yjk4YTNhNTJkZGRiMjMzYTAwZGM2NDkxOTU0MzAzZmYifQ==")
headers = requestHeader
}
......
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