Commit 255873b6 authored by Steven杜宇's avatar Steven杜宇

// 家庭成员

parent 3972805d
...@@ -431,7 +431,7 @@ extension YHChildBasicInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -431,7 +431,7 @@ extension YHChildBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
[weak self] (string1, string2, string3, string4) in [weak self] (string1, string2, string3, string4) in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") print("\(string1)\n\(string2)\n\(string3)\n\(string4)")
self.child?.birthPlace.area = [string2, string3, string4] self.child?.birthPlace.area = [string2, string3]
self.loadInfo() self.loadInfo()
save() save()
} }
......
...@@ -86,7 +86,7 @@ class YHChildPrimaryInfoVC: YHBaseViewController, YHFamilyMemberProtol { ...@@ -86,7 +86,7 @@ class YHChildPrimaryInfoVC: YHBaseViewController, YHFamilyMemberProtol {
if isLiveInChina { if isLiveInChina {
var value = "" var value = ""
if !child.address.area.isEmpty { if !child.address.area.isEmpty {
value = child.address.area.joined(separator: "/") value = child.address.area.joined(separator: ",")
} }
let item22 = YHFormDetailItem(type: .liveCity, value: value, tips: "请选择现居住城市".local) let item22 = YHFormDetailItem(type: .liveCity, value: value, tips: "请选择现居住城市".local)
arr2.append(item22) arr2.append(item22)
...@@ -357,7 +357,7 @@ extension YHChildPrimaryInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -357,7 +357,7 @@ extension YHChildPrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
[weak self] (string1, string2, string3, string4) in [weak self] (string1, string2, string3, string4) in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") print("\(string1)\n\(string2)\n\(string3)\n\(string4)")
self.child?.address.area = [string2, string3, string4] self.child?.address.area = [string2, string3]
self.loadInfo() self.loadInfo()
} }
self.present(vc, animated: true) self.present(vc, animated: true)
......
...@@ -612,7 +612,7 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -612,7 +612,7 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
[weak self] (string1, string2, string3, string4) in [weak self] (string1, string2, string3, string4) in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") print("\(string1)\n\(string2)\n\(string3)\n\(string4)")
self.spouse?.birthPlace.area = [string2, string3, string4] self.spouse?.birthPlace.area = [string2, string3]
self.loadInfo() self.loadInfo()
} }
self.present(vc, animated: true) self.present(vc, animated: true)
......
...@@ -85,7 +85,7 @@ class YHSpousePrimaryInfoVC: YHBaseViewController, YHFamilyMemberProtol { ...@@ -85,7 +85,7 @@ class YHSpousePrimaryInfoVC: YHBaseViewController, YHFamilyMemberProtol {
if isLiveInChina { if isLiveInChina {
var value:String? = "" var value:String? = ""
if !spouse.address.area.isEmpty { if !spouse.address.area.isEmpty {
value = spouse.address.area.joined(separator: "/") value = spouse.address.area.joined(separator: ",")
} }
let item22 = YHFormDetailItem(type:.liveCity, value:value, placeHolder:"请选择城市".local, tips:"请请选择城市".local) let item22 = YHFormDetailItem(type:.liveCity, value:value, placeHolder:"请选择城市".local, tips:"请请选择城市".local)
arr2.append(item22) arr2.append(item22)
...@@ -317,7 +317,7 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -317,7 +317,7 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
[weak self] (string1, string2, string3, string4) in [weak self] (string1, string2, string3, string4) in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") print("\(string1)\n\(string2)\n\(string3)\n\(string4)")
self.spouse?.address.area = [string2, string3, string4] self.spouse?.address.area = [string2, string3]
self.loadInfo() self.loadInfo()
save() save()
} }
......
...@@ -60,7 +60,7 @@ class YHBrotherInfoVC: YHBaseViewController { ...@@ -60,7 +60,7 @@ class YHBrotherInfoVC: YHBaseViewController {
view.addSubview(tableView); view.addSubview(tableView);
view.addSubview(bottomView) view.addSubview(bottomView)
bottomView.saveBlock = { bottomView.submitBlock = {
[weak self] in [weak self] in
guard let self = self else { return } guard let self = self else { return }
self.saveInfo(isSubmit: true, isLoading: true) { self.saveInfo(isSubmit: true, isLoading: true) {
...@@ -95,55 +95,40 @@ class YHBrotherInfoVC: YHBaseViewController { ...@@ -95,55 +95,40 @@ class YHBrotherInfoVC: YHBaseViewController {
// 兄弟姐妹信息 // 兄弟姐妹信息
let title1 = YHFormTitleItem(type: .brotherInfo) let title1 = YHFormTitleItem(type: .brotherInfo)
let item10 = YHFormDetailItem(type: .brotherName) let item10 = YHFormDetailItem(type: .brotherName, value:brotherInfo.subsetName, tips:"请输入姓名".local)
item10.value = brotherInfo.subsetName let item11 = YHFormDetailItem(type: .birthday, value:brotherInfo.birthday, tips:"请选择出生日期".local )
let item11 = YHFormDetailItem(type: .birthday) let item12 = YHFormDetailItem(type: .birthNation, value:String(brotherInfo.isBirthOverSeas()))
item11.value = brotherInfo.birthday
let item12 = YHFormDetailItem(type: .birthNation)
item12.value = String(brotherInfo.isBirthOverSeas())
let item13 = YHFormDetailItem(type: .birthCity)
var birthCity = ""
if brotherInfo.isBirthOverSeas() { if brotherInfo.isBirthOverSeas() {
item13.value = brotherInfo.birthPlace.foreign birthCity = brotherInfo.birthPlace.foreign
item13.placeHolder = "请输入".local
} else { } else {
item13.value = brotherInfo.birthPlace.area.joined(separator: ",") birthCity = brotherInfo.birthPlace.area.joined(separator: ",")
item13.placeHolder = "请选择".local
} }
let item13 = YHFormDetailItem(type: .birthCity, value: birthCity, tips:"请选择出生城市".local)
let item14 = YHFormDetailItem(type: .gender) let item14 = YHFormDetailItem(type: .gender, value:brotherInfo.sexName(), tips:"请选择性别".local)
item14.value = brotherInfo.sexName() let item15 = YHFormDetailItem(type: .marriageState, value:brotherInfo.married, tips:"请选择婚姻状况".local)
let item15 = YHFormDetailItem(type: .marriageState)
item15.value = brotherInfo.married
let arr1:[YHFormItemProtocol] = [title1, item10, item11, item12, item13, item14, item15] let arr1:[YHFormItemProtocol] = [title1, item10, item11, item12, item13, item14, item15]
// 职业信息 // 职业信息
let title2 = YHFormTitleItem(type: .occupationInfo) let title2 = YHFormTitleItem(type: .occupationInfo)
let item20 = YHFormDetailItem(type: .occupation) let item20 = YHFormDetailItem(type: .occupation, value:brotherInfo.occupation, tips:"请选择职业".local)
item20.value = brotherInfo.occupation
item20.placeHolder = "请输入".local
var arr2:[YHFormItemProtocol] = [title2, item20] var arr2:[YHFormItemProtocol] = [title2, item20]
// 居住信息 // 居住信息
let title3 = YHFormTitleItem(type: .liveInfo) let title3 = YHFormTitleItem(type: .liveInfo)
let item30 = YHFormDetailItem(type: .liveNationOrArea) let item30 = YHFormDetailItem(type: .liveNationOrArea, value:brotherInfo.liveCountry, tips:"请选择国家/地区".local)
item30.value = brotherInfo.liveCountry
let arr3:[YHFormItemProtocol] = [title3, item30] let arr3:[YHFormItemProtocol] = [title3, item30]
// 香港身份证 // 香港身份证
let title4 = YHFormTitleItem(type: .hkIdentityCardInfo) let title4 = YHFormTitleItem(type: .hkIdentityCardInfo)
let item40 = YHFormDetailItem(type: .isHaveHkIdentityCard) let item40 = YHFormDetailItem(type: .isHaveHkIdentityCard, value:String(brotherInfo.isHaveHKIdentityCard()))
item40.value = String(brotherInfo.isHaveHKIdentityCard())
var arr4:[YHFormItemProtocol] = [title4, item40] var arr4:[YHFormItemProtocol] = [title4, item40]
if brotherInfo.isHaveHKIdentityCard() { // 办理过香港身份证才显示证号 if brotherInfo.isHaveHKIdentityCard() { // 办理过香港身份证才显示证号
let item41 = YHFormDetailItem(type: .hkIdentityCardNumber) let item41 = YHFormDetailItem(type: .hkIdentityCardNumber, value:brotherInfo.hkIdentityCard, tips: "请输入正确的香港身份证号码")
item41.value = brotherInfo.hkIdentityCard
arr4.append(item41) arr4.append(item41)
} }
items.append(contentsOf: [arr1, arr2, arr3, arr4]) items.append(contentsOf: [arr1, arr2, arr3, arr4])
...@@ -238,7 +223,17 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -238,7 +223,17 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource {
cell.isMust = detailItem.isNeed cell.isMust = detailItem.isNeed
cell.title = detailItem.getTitle() cell.title = detailItem.getTitle()
cell.text = detailItem.value cell.text = detailItem.value
if detailItem.type == .hkIdentityCardNumber { // 输入香港身份证号码
let isEmptyValue = isEmptyString(detailItem.value)
var isUnvalidFormat = true
if let value = detailItem.value, value.isHKIdentityCardNumber() {
isUnvalidFormat = false
}
let isNeedShowTips = isEmptyValue || isUnvalidFormat
cell.setTips(detailItem.tips, isShow: isNeedShowError && isNeedShowTips)
} else {
cell.setTips(detailItem.tips, isShow: isNeedShowError && detailItem.isShowTips)
}
cell.textChange = { cell.textChange = {
[weak self] (text, isEditEnd) in [weak self] (text, isEditEnd) in
...@@ -269,6 +264,7 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -269,6 +264,7 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource {
cell.isMust = detailItem.isNeed cell.isMust = detailItem.isNeed
cell.title = detailItem.getTitle() cell.title = detailItem.getTitle()
cell.detail = detailItem.value cell.detail = detailItem.value
cell.setTips(detailItem.tips, isShow:isNeedShowError && detailItem.isShowTips)
return cell return cell
} }
...@@ -405,51 +401,51 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -405,51 +401,51 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource {
[weak self] (string1, string2, string3, string4) in [weak self] (string1, string2, string3, string4) in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") print("\(string1)\n\(string2)\n\(string3)\n\(string4)")
self.brotherInfo?.birthPlace.area = [string2, string3, string4] self.brotherInfo?.birthPlace.area = [string2, string3]
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
self.present(vc, animated: true) self.present(vc, animated: true)
} else if detailItem.type == .occupation { // 职业 } else if detailItem.type == .occupation { // 职业
let occupation = self.brotherInfo?.occupation ?? "" let occupation = self.brotherInfo?.occupation ?? ""
YHFormPickerView.show(type: .profession, selectTitle:occupation ) { YHSheetPickerView.show(type: .profession, selectTitle:occupation) {
[weak self] selectType in [weak self] selectItem in
guard let self = self else { return } guard let self = self else { return }
self.brotherInfo?.occupation = selectType.title self.brotherInfo?.occupation = selectItem.title
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
} else if detailItem.type == .marriageState { // 婚姻 } else if detailItem.type == .marriageState { // 婚姻
let marriage = self.brotherInfo?.married let marriage = self.brotherInfo?.married
YHFormPickerView.show(type: .marriage, selectTitle:marriage) { YHSheetPickerView.show(type: .marriage, selectTitle:marriage) {
[weak self] selectType in [weak self] selectItem in
guard let self = self else { return } guard let self = self else { return }
self.brotherInfo?.married = selectType.title self.brotherInfo?.married = selectItem.title
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
} else if detailItem.type == .liveNationOrArea { // 现居住国家/地区 } else if detailItem.type == .liveNationOrArea { // 现居住国家/地区
let vc = YHAddressViewController()
let vc = YHSelectCountryViewController()
vc.backLocationStringController = { vc.backLocationStringController = {
[weak self] (string1, string2, string3, string4) in [weak self] string in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") self.brotherInfo?.liveCountry = string
self.brotherInfo?.liveCountry = string2
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
self.present(vc, animated: true) self.present(vc, animated: true)
} else if detailItem.type == .gender { // 性别 } else if detailItem.type == .gender { // 性别
guard let brotherInfo = brotherInfo else { return } guard let brotherInfo = brotherInfo else { return }
let isMale = brotherInfo.isMale()
let selectType:YHFormPickerViewSubType = isMale ? .gender(.male) : .gender(.female) YHSheetPickerView.show(type: .gender, selectTitle:brotherInfo.sexName()) {
YHFormPickerView.show(type: .gender, selectType:selectType) { [weak self] selectItem in
[weak self] selectType in
guard let self = self else { return } guard let self = self else { return }
let selectMale = (selectType.index == YHFormPickerViewSubType.gender(.male).index) self.brotherInfo?.setSexName(selectItem.title)
self.brotherInfo?.setMale(selectMale)
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
......
...@@ -92,7 +92,14 @@ class YHCertificateInfoController: YHBaseViewController, YHFamilyMemberProtol { ...@@ -92,7 +92,14 @@ class YHCertificateInfoController: YHBaseViewController, YHFamilyMemberProtol {
// 护照及其他旅行证件 信息必有 // 护照及其他旅行证件 信息必有
let title2 = YHFormTitleItem(type: .passPortOrTravelInfo) let title2 = YHFormTitleItem(type: .passPortOrTravelInfo)
let item20 = YHFormDetailItem(type: .certificateType, isNeed: false, value:String(familyMember.certificates.passport.passportType), tips:"请选择证件类别".local)
// 证件类别名称
var value = ""
let passPortType = self.familyMember?.certificates.passport.passPortType ?? 0
if let item = YHSheetPickerView.getItem(type:.certificate, index:passPortType) {
value = item.title
}
let item20 = YHFormDetailItem(type: .certificateType, isNeed: false, value:value, tips:"请选择证件类别".local)
let item21 = YHFormDetailItem(type: .certificateNumber, isNeed: false, value: familyMember.certificates.passport.number, tips: "请输入证件号码".local) let item21 = YHFormDetailItem(type: .certificateNumber, isNeed: false, value: familyMember.certificates.passport.number, tips: "请输入证件号码".local)
let item22 = YHFormDetailItem(type: .certificateSignPlace, isNeed: false, value: familyMember.certificates.passport.issueAt, tips:"请输入签发地".local) let item22 = YHFormDetailItem(type: .certificateSignPlace, isNeed: false, value: familyMember.certificates.passport.issueAt, tips:"请输入签发地".local)
let item23 = YHFormDetailItem(type: .certificateSignDate, isNeed: false, value:familyMember.certificates.passport.issueDateStartAt, tips:"请选择签发日期".local) let item23 = YHFormDetailItem(type: .certificateSignDate, isNeed: false, value:familyMember.certificates.passport.issueDateStartAt, tips:"请选择签发日期".local)
...@@ -100,15 +107,6 @@ class YHCertificateInfoController: YHBaseViewController, YHFamilyMemberProtol { ...@@ -100,15 +107,6 @@ class YHCertificateInfoController: YHBaseViewController, YHFamilyMemberProtol {
let arr2:[YHFormItemProtocol] = [title2, item20, item21, item22, item23, item24] let arr2:[YHFormItemProtocol] = [title2, item20, item21, item22, item23, item24]
items.append(arr2) items.append(arr2)
// 证件类别名称
var selectType:YHFormPickerViewSubType = .certificate(.passport)
if let passPortType = self.familyMember?.certificates.passport.passportType,
let subType = YHPickerViewCertificateType(rawValue: passPortType)
{
selectType = YHFormPickerViewSubType.certificate(subType)
}
item20.value = selectType.title
tableView.reloadData() tableView.reloadData()
} }
} }
...@@ -305,17 +303,11 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour ...@@ -305,17 +303,11 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
} }
} else if detailItem.type == .certificateType { // 选择证件类别 } else if detailItem.type == .certificateType { // 选择证件类别
var selectType:YHFormPickerViewSubType = .certificate(.passport) let type = self.familyMember?.certificates.passport.passPortType ?? 0
if let passPortType = self.familyMember?.certificates.passport.passportType, YHSheetPickerView.show(type: .certificate, selectIndex:type) {
let subType = YHPickerViewCertificateType(rawValue: passPortType) [weak self] selectItem in
{
selectType = YHFormPickerViewSubType.certificate(subType)
}
YHFormPickerView.show(type: .certificate, selectType:selectType) {
[weak self] selectType in
guard let self = self else { return } guard let self = self else { return }
self.familyMember?.certificates.passport.passportType = selectType.index self.familyMember?.certificates.passport.passPortType = selectItem.index
self.loadInfo() self.loadInfo()
self.save() self.save()
} }
...@@ -375,7 +367,7 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour ...@@ -375,7 +367,7 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
|| familyMember.certificates.hkMacaoPass.issueAt.count <= 0 || familyMember.certificates.hkMacaoPass.issueAt.count <= 0
|| familyMember.certificates.hkMacaoPass.issueDateStartAt.count <= 0 || familyMember.certificates.hkMacaoPass.issueDateStartAt.count <= 0
|| familyMember.certificates.hkMacaoPass.issueDateEndAt.count <= 0 || familyMember.certificates.hkMacaoPass.issueDateEndAt.count <= 0
|| familyMember.certificates.hkMacaoPass.passportType == -1 || familyMember.certificates.hkMacaoPass.passPortType == -1
{ {
return false return false
} }
......
...@@ -106,41 +106,31 @@ class YHParentInfoVC: YHBaseViewController { ...@@ -106,41 +106,31 @@ class YHParentInfoVC: YHBaseViewController {
var arr1 = [YHFormItemProtocol]() var arr1 = [YHFormItemProtocol]()
if parentInfo.relationType == .father { // 父亲 if parentInfo.relationType == .father { // 父亲
let title1 = YHFormTitleItem(type: .fatherInfo) let title1 = YHFormTitleItem(type: .fatherInfo)
let item10 = YHFormDetailItem(type: .fatherName) let item10 = YHFormDetailItem(type: .fatherName, value:parentInfo.subsetName, tips:"请输入姓名".local)
item10.value = parentInfo.subsetName
item10.tips = "请输入姓名".local
item10.placeHolder = "请输入姓名".local
arr1.append(title1) arr1.append(title1)
arr1.append(item10) arr1.append(item10)
} else { // 母亲 } else { // 母亲
let title1 = YHFormTitleItem(type: .motherInfo) let title1 = YHFormTitleItem(type: .motherInfo)
let item10 = YHFormDetailItem(type: .motherName) let item10 = YHFormDetailItem(type: .motherName, value:parentInfo.subsetName, tips:"请输入姓名".local)
item10.value = parentInfo.subsetName
item10.tips = "请输入姓名".local
item10.placeHolder = "请输入姓名".local
arr1.append(title1) arr1.append(title1)
arr1.append(item10) arr1.append(item10)
} }
let item11 = YHFormDetailItem(type: .birthday) let item11 = YHFormDetailItem(type: .birthday, value:parentInfo.birthday, tips:"请选择生日日期".local)
item11.value = parentInfo.birthday let item12 = YHFormDetailItem(type: .birthNation, value:String(parentInfo.isBirthOverSeas()))
item11.tips = "请选择生日日期".local
let item12 = YHFormDetailItem(type: .birthNation)
item12.value = String(parentInfo.isBirthOverSeas())
let item13 = YHFormDetailItem(type: .birthCity)
var cityValue = parentInfo.birthPlace.area.joined(separator: ",")
var cityPlaceHolder = "请选择".local
var cityTips = "请选择城市".local
if parentInfo.isBirthOverSeas() { if parentInfo.isBirthOverSeas() {
item13.value = parentInfo.birthPlace.foreign cityValue = parentInfo.birthPlace.foreign
item13.placeHolder = "请输入".local cityPlaceHolder = "请输入".local
item13.tips = "请输入城市".local cityTips = "请输入城市".local
} else {
item13.value = parentInfo.birthPlace.area.joined(separator: ",")
item13.placeHolder = "请选择".local
item13.tips = "请选择城市".local
} }
let item13 = YHFormDetailItem(type: .birthCity, value:cityValue,placeHolder:cityPlaceHolder, tips:cityTips)
let arr:[YHFormItemProtocol] = [item11, item12, item13] let arr:[YHFormItemProtocol] = [item11, item12, item13]
arr1.append(contentsOf: arr) arr1.append(contentsOf: arr)
...@@ -149,33 +139,22 @@ class YHParentInfoVC: YHBaseViewController { ...@@ -149,33 +139,22 @@ class YHParentInfoVC: YHBaseViewController {
} }
if !parentInfo.isDead() { // 健在 if !parentInfo.isDead() { // 健在
let item14 = YHFormDetailItem(type: .marriageState) let item14 = YHFormDetailItem(type: .marriageState, value:parentInfo.married, tips:"请选择婚姻状况".local)
item14.value = parentInfo.married
item14.placeHolder = "请选择".local
item14.tips = "请选择".local
arr1.append(item14) arr1.append(item14)
// 职业信息 // 职业信息
let title2 = YHFormTitleItem(type: .occupationInfo) let title2 = YHFormTitleItem(type: .occupationInfo)
let item20 = YHFormDetailItem(type: .occupation) let item20 = YHFormDetailItem(type: .occupation, value:parentInfo.occupation, tips:"请选择职业".local)
item20.value = parentInfo.occupation
item20.placeHolder = "请选择".local
item20.tips = "请选择".local
var arr2:[YHFormItemProtocol] = [title2, item20] var arr2:[YHFormItemProtocol] = [title2, item20]
if parentInfo.isNowHaveJob() { if parentInfo.isNowHaveJob() {
let item21 = YHFormDetailItem(type: .occupationName) let item21 = YHFormDetailItem(type: .occupationName, value:parentInfo.occupationName, tips:"请输入职业名称".local)
item21.value = parentInfo.occupationName
item21.placeHolder = "请输入".local
item21.tips = "请输入".local
arr2.append(item21) arr2.append(item21)
} }
// 居住信息 // 居住信息
let title3 = YHFormTitleItem(type: .liveInfo) let title3 = YHFormTitleItem(type: .liveInfo)
let item30 = YHFormDetailItem(type: .liveNationOrArea) let item30 = YHFormDetailItem(type: .liveNationOrArea, value:parentInfo.liveCountry, tips:"请选择国家/地区".local)
item30.value = parentInfo.liveCountry
item30.tips = "请选择国家/地区".local
let arr3:[YHFormItemProtocol] = [title3, item30] let arr3:[YHFormItemProtocol] = [title3, item30]
// 香港身份证 // 香港身份证
...@@ -185,9 +164,7 @@ class YHParentInfoVC: YHBaseViewController { ...@@ -185,9 +164,7 @@ class YHParentInfoVC: YHBaseViewController {
var arr4:[YHFormItemProtocol] = [title4, item40] var arr4:[YHFormItemProtocol] = [title4, item40]
if parentInfo.isHaveHKIdentityCard() { // 办理过香港身份证才显示证号 if parentInfo.isHaveHKIdentityCard() { // 办理过香港身份证才显示证号
let item41 = YHFormDetailItem(type: .hkIdentityCardNumber) let item41 = YHFormDetailItem(type: .hkIdentityCardNumber, value:parentInfo.hkIdentityCard, tips: "请输入正确的香港身份证号码".local)
item41.value = parentInfo.hkIdentityCard
item41.tips = "请输入正确的香港身份证号码".local
arr4.append(item41) arr4.append(item41)
} }
items.append(contentsOf: [arr0, arr1, arr2, arr3, arr4]) items.append(contentsOf: [arr0, arr1, arr2, arr3, arr4])
...@@ -466,38 +443,39 @@ extension YHParentInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -466,38 +443,39 @@ extension YHParentInfoVC : UITableViewDelegate, UITableViewDataSource {
[weak self] (string1, string2, string3, string4) in [weak self] (string1, string2, string3, string4) in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") print("\(string1)\n\(string2)\n\(string3)\n\(string4)")
self.parentInfo?.birthPlace.area = [string2, string3, string4] self.parentInfo?.birthPlace.area = [string2, string3]
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
self.present(vc, animated: true) self.present(vc, animated: true)
} else if detailItem.type == .occupation { // 职业 } else if detailItem.type == .occupation { // 职业
let occupation = self.parentInfo?.occupation ?? "" let occupation = self.parentInfo?.occupation ?? ""
YHFormPickerView.show(type: .occupation, selectTitle:occupation ) { YHSheetPickerView.show(type: .occupation, selectTitle:occupation) {
[weak self] selectType in [weak self] selectItem in
guard let self = self else { return } guard let self = self else { return }
self.parentInfo?.occupation = selectType.title self.parentInfo?.occupation = selectItem.title
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
} else if detailItem.type == .marriageState { // 婚姻 } else if detailItem.type == .marriageState { // 婚姻
let marriage = self.parentInfo?.married let marriage = self.parentInfo?.married ?? ""
YHFormPickerView.show(type: .marriage, selectTitle:marriage) { YHSheetPickerView.show(type: .marriage, selectTitle:marriage) {
[weak self] selectType in [weak self] selectItem in
guard let self = self else { return } guard let self = self else { return }
self.parentInfo?.married = selectType.title self.parentInfo?.married = selectItem.title
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
} else if detailItem.type == .liveNationOrArea { // 现居住国家/地区 } else if detailItem.type == .liveNationOrArea { // 现居住国家/地区
let vc = YHAddressViewController() let vc = YHSelectCountryViewController()
vc.backLocationStringController = { vc.backLocationStringController = {
[weak self] (string1, string2, string3, string4) in [weak self] string in
guard let self = self else { return } guard let self = self else { return }
print("\(string1)\n\(string2)\n\(string3)\n\(string4)") self.parentInfo?.liveCountry = string
self.parentInfo?.liveCountry = string2
self.loadInfo() self.loadInfo()
saveInfoSilent() saveInfoSilent()
} }
......
...@@ -1101,6 +1101,15 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol { ...@@ -1101,6 +1101,15 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol {
return "" return ""
} }
func setSexName(_ sexName:String?) {
guard let sexName = sexName else { return }
if sexName == "男".local {
self.sex = 1
} else if sexName == "女".local {
self.sex = 2
}
}
// 是否前一次婚姻子女 // 是否前一次婚姻子女
func isPreviousMarriageChild() -> Bool { func isPreviousMarriageChild() -> Bool {
return self.childStepchild.has == "Y" return self.childStepchild.has == "Y"
...@@ -1257,7 +1266,7 @@ class YHCNIdentityCard: SmartCodable { ...@@ -1257,7 +1266,7 @@ class YHCNIdentityCard: SmartCodable {
var issueDateEndAt: String = "" var issueDateEndAt: String = ""
var imgFront: String = "" var imgFront: String = ""
var imgBack: String = "" var imgBack: String = ""
var passportType: Int = -1 var passPortType: Int = -1
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case id = "id" case id = "id"
...@@ -1267,7 +1276,7 @@ class YHCNIdentityCard: SmartCodable { ...@@ -1267,7 +1276,7 @@ class YHCNIdentityCard: SmartCodable {
case issueDateEndAt = "issue_date_end_at" case issueDateEndAt = "issue_date_end_at"
case imgFront = "img_front" case imgFront = "img_front"
case imgBack = "img_back" case imgBack = "img_back"
case passportType = "passport_type" case passPortType = "pass_port_type"
} }
required init() { required init() {
......
...@@ -10,14 +10,15 @@ ...@@ -10,14 +10,15 @@
/* /*
// (1) 直接传index 此处的index是后台的数值,并非行数 // (1) 直接传index 此处的index是后台的数值,并非行数
YHSheetPickerView.show(type: .degree, selectIndex: 1) { YHSheetPickerView.show(type: .occupation, selectIndex:0) {
selectItem in [weak self] selectItem in
guard let self = self else { return }
} }
// (2) 直接传字符串值 // (2) 直接传字符串值
YHSheetPickerView.show(type: .degree, selectTitle:"博士学位") { YHSheetPickerView.show(type: .occupation, selectTitle:"在职") {
selectItem in [weak self] selectItem in
guard let self = self else { return }
} }
// 如何扩展新类型 // 如何扩展新类型
...@@ -124,7 +125,7 @@ class YHSheetPickerView: UIView { ...@@ -124,7 +125,7 @@ class YHSheetPickerView: UIView {
} }
func showSelectRow() { func showSelectRow() {
if let arr = dataSource[type], selectRow < arr.count { if let arr = Self.dataSource[type], selectRow < arr.count {
pickerView.selectRow(selectRow, inComponent: 0, animated: true) pickerView.selectRow(selectRow, inComponent: 0, animated: true)
} else { } else {
...@@ -148,8 +149,8 @@ class YHSheetPickerView: UIView { ...@@ -148,8 +149,8 @@ class YHSheetPickerView: UIView {
picker.show() picker.show()
} }
lazy var dataSource:[YHSheetPickerViewType: [YHSheetPickerViewItem]] = { static var dataSource:[YHSheetPickerViewType: [YHSheetPickerViewItem]] =
return [ [
// 默认无 // 默认无
.none:[], .none:[],
...@@ -202,8 +203,8 @@ class YHSheetPickerView: UIView { ...@@ -202,8 +203,8 @@ class YHSheetPickerView: UIView {
// 性别 // 性别
.gender: .gender:
[YHSheetPickerViewItem(title:"男".local, index:0), [YHSheetPickerViewItem(title:"男".local, index:1),
YHSheetPickerViewItem(title:"女".local, index:1), YHSheetPickerViewItem(title:"女".local, index:2),
], ],
// 证件 // 证件
...@@ -272,7 +273,6 @@ class YHSheetPickerView: UIView { ...@@ -272,7 +273,6 @@ class YHSheetPickerView: UIView {
YHSheetPickerViewItem(title:"其他".local, index:10), YHSheetPickerViewItem(title:"其他".local, index:10),
], ],
] ]
}()
func createUI() { func createUI() {
...@@ -370,7 +370,7 @@ extension YHSheetPickerView { ...@@ -370,7 +370,7 @@ extension YHSheetPickerView {
// 返回所在行的数据 // 返回所在行的数据
func getPickerViewItem(row:Int) -> YHSheetPickerViewItem? { func getPickerViewItem(row:Int) -> YHSheetPickerViewItem? {
if let arr = dataSource[type] { if let arr = Self.dataSource[type] {
for (index, item) in arr.enumerated() { for (index, item) in arr.enumerated() {
if index == row { if index == row {
return item return item
...@@ -382,7 +382,7 @@ extension YHSheetPickerView { ...@@ -382,7 +382,7 @@ extension YHSheetPickerView {
// 返回对应index的数据所在行 // 返回对应index的数据所在行
func getRowOfPickerViewItem(index:Int) -> Int { func getRowOfPickerViewItem(index:Int) -> Int {
if let arr = dataSource[type] { if let arr = Self.dataSource[type] {
for (row, item) in arr.enumerated() { for (row, item) in arr.enumerated() {
if item.index == index { if item.index == index {
return row return row
...@@ -396,7 +396,7 @@ extension YHSheetPickerView { ...@@ -396,7 +396,7 @@ extension YHSheetPickerView {
func getRowOfPickerViewItem(title:String?) -> Int { func getRowOfPickerViewItem(title:String?) -> Int {
guard let title = title else { return 0 } guard let title = title else { return 0 }
if let arr = dataSource[type] { if let arr = Self.dataSource[type] {
for (row, item) in arr.enumerated() { for (row, item) in arr.enumerated() {
if item.title == title { if item.title == title {
return row return row
...@@ -406,6 +406,29 @@ extension YHSheetPickerView { ...@@ -406,6 +406,29 @@ extension YHSheetPickerView {
return 0 return 0
} }
// 根据index获取item
static func getItem(type:YHSheetPickerViewType, index:Int)-> YHSheetPickerViewItem? {
if let arr = dataSource[type], arr.count > 0 {
for item in arr {
if item.index == index {
return item
}
}
}
return nil
}
// 根据名称获取item
static func getItem(type:YHSheetPickerViewType, title:String)-> YHSheetPickerViewItem? {
if let arr = dataSource[type], arr.count > 0 {
for item in arr {
if item.title == title {
return item
}
}
}
return nil
}
} }
// MARK: - UIPickerViewDelegate // MARK: - UIPickerViewDelegate
...@@ -416,14 +439,14 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource { ...@@ -416,14 +439,14 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource {
} }
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
if let arr = dataSource[type], !arr.isEmpty { if let arr = Self.dataSource[type], !arr.isEmpty {
return arr.count return arr.count
} }
return 0 return 0
} }
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? { func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
if let arr = dataSource[type] { if let arr = Self.dataSource[type] {
if 0 <= row && row < arr.count { if 0 <= row && row < arr.count {
let item :YHSheetPickerViewItem = arr[row] let item :YHSheetPickerViewItem = arr[row]
return item.title return item.title
...@@ -433,7 +456,7 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource { ...@@ -433,7 +456,7 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource {
} }
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) { func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
if let arr = dataSource[type] { if let arr = Self.dataSource[type] {
if 0 <= row && row < arr.count { if 0 <= row && row < arr.count {
let item :YHSheetPickerViewItem = arr[row] let item :YHSheetPickerViewItem = arr[row]
print(item.title) print(item.title)
...@@ -458,7 +481,7 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource { ...@@ -458,7 +481,7 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource {
label.numberOfLines = 2 label.numberOfLines = 2
label.font = UIFont.PFSC_R(ofSize: 14) label.font = UIFont.PFSC_R(ofSize: 14)
label.text = "" label.text = ""
if let arr = dataSource[type] { if let arr = Self.dataSource[type] {
if 0 <= row && row < arr.count { if 0 <= row && row < arr.count {
let item :YHSheetPickerViewItem = arr[row] let item :YHSheetPickerViewItem = arr[row]
label.text = item.title label.text = item.title
......
...@@ -54,7 +54,7 @@ class YHAllApiName { ...@@ -54,7 +54,7 @@ class YHAllApiName {
// 删除家庭成员信息 // 删除家庭成员信息
static let deleteFamilyMemberApi = "infoflow/family/delete" static let deleteFamilyMemberApi = "infoflow/family/delete"
// 提交家庭成员信息 // 提交家庭成员信息
static let submitAllFamilyInfoApi = "family/submit" static let submitAllFamilyInfoApi = "/infoflow/family/submit"
} }
struct Education { struct Education {
......
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