Commit 26d762be authored by David黄金龙's avatar David黄金龙

Merge branch 'develop' of http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS into develop

* 'develop' of http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS:
  // 学历
  // 家庭成员
  //  家庭成员
  我的签字 cell
  // 家庭成员
  // 家庭成员
parents 3df06285 6813ffee
This diff is collapsed.
...@@ -181,11 +181,11 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD ...@@ -181,11 +181,11 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
vc.model = serviceCenterMainReqVM.allInfoScoreModel vc.model = serviceCenterMainReqVM.allInfoScoreModel
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if model.type == 4 { } else if model.type == 4 {
let vc = YHMySignatureListViewController() let vc = YHMyDocumentsListViewController()
vc.orderId = orderId ?? 0 vc.orderId = orderId ?? 0
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if model.type == 5 { } else if model.type == 5 {
let vc = YHMyDocumentsListViewController() let vc = YHMySignatureListViewController()
vc.orderId = orderId ?? 0 vc.orderId = orderId ?? 0
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else { } else {
......
...@@ -91,7 +91,7 @@ class YHCollegeSearchViewController: YHBaseViewController { ...@@ -91,7 +91,7 @@ class YHCollegeSearchViewController: YHBaseViewController {
[weak self] text in [weak self] text in
guard let self = self else { return } guard let self = self else { return }
searchCollegeName = text searchCollegeName = text
if Date().timeIntervalSince1970 * 1000 - lastSearchTime * 1000 >= 500 { if Date().timeIntervalSince1970 - lastSearchTime >= 1.0 {
lastSearchTime = Date().timeIntervalSince1970 lastSearchTime = Date().timeIntervalSince1970
searchCollege() searchCollege()
} }
......
...@@ -172,6 +172,7 @@ class YHChildInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -172,6 +172,7 @@ class YHChildInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol {
if let targetStep = getStepForArrayIndex(index) { if let targetStep = getStepForArrayIndex(index) {
currentStep = targetStep currentStep = targetStep
} }
requestDetail()
print("index:\(index)") print("index:\(index)")
} }
...@@ -192,7 +193,7 @@ class YHChildInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -192,7 +193,7 @@ class YHChildInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol {
self.navigationController?.popViewController() self.navigationController?.popViewController()
return return
} }
requestDetail()
if let cur = getArrayIndexOfCurrentStep(), let item = stepVCs[safe:cur+1] { if let cur = getArrayIndexOfCurrentStep(), let item = stepVCs[safe:cur+1] {
currentStep = item.step currentStep = item.step
if cur+1 > stepView.maxIndex { if cur+1 > stepView.maxIndex {
...@@ -270,6 +271,25 @@ extension YHChildInfoContainerVC { ...@@ -270,6 +271,25 @@ extension YHChildInfoContainerVC {
} }
} }
func requestDetail() {
guard let child = child else { return }
if orderId <= 0 || child.detailId <= 0 {
print("订单号或成员ID不存在")
return
}
self.familyRequest.requestFamilyMemberInfo(orderId:orderId, detailId:child.detailId) {
[weak self] detail, error in
guard let self = self else { return }
if let detail = detail {
self.child = detail
for vcItem in stepVCs {
vcItem.vc.loadInfo()
}
}
}
}
func saveInfoSilent() { func saveInfoSilent() {
saveInfo(isSubmit:false, isShowLoading:false, callBack:nil) saveInfo(isSubmit:false, isShowLoading:false, callBack:nil)
} }
......
...@@ -295,7 +295,7 @@ extension YHChildPrimaryInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -295,7 +295,7 @@ extension YHChildPrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
guard let child = child else { return } guard let child = child else { return }
if detailItem.type == .detailAddress { if detailItem.type == .detailAddress {
if child.address.isInChina() { if child.isLiveInChina() {
child.address.details = text ?? "" child.address.details = text ?? ""
} else { } else {
child.address.foreign = text ?? "" child.address.foreign = text ?? ""
...@@ -466,7 +466,7 @@ extension YHChildPrimaryInfoVC { ...@@ -466,7 +466,7 @@ extension YHChildPrimaryInfoVC {
if isEmptyString(child.address.country) { if isEmptyString(child.address.country) {
return false return false
} }
if child.address.isInChina() { if child.isLiveInChina() {
if isEmptyArray(child.address.area) { if isEmptyArray(child.address.area) {
return false return false
} }
......
...@@ -588,7 +588,7 @@ extension YHBrotherInfoVC { ...@@ -588,7 +588,7 @@ extension YHBrotherInfoVC {
// 静默保存 不显示toast和loading // 静默保存 不显示toast和loading
func saveInfoSilent() { func saveInfoSilent() {
guard let brotherInfo = brotherInfo else { return } guard let brotherInfo = brotherInfo else { return }
if brotherInfo.id == 0 { return } if brotherInfo.detailId == 0 { return }
saveInfo(isSubmit: false, isLoading: false, callBack: nil) saveInfo(isSubmit: false, isLoading: false, callBack: nil)
} }
} }
......
...@@ -627,7 +627,7 @@ extension YHParentInfoVC { ...@@ -627,7 +627,7 @@ extension YHParentInfoVC {
// 静默保存 不显示toast和loading // 静默保存 不显示toast和loading
func saveInfoSilent() { func saveInfoSilent() {
guard let parentInfo = parentInfo else { return } guard let parentInfo = parentInfo else { return }
if parentInfo.id == 0 { return } if parentInfo.detailId == 0 { return }
saveInfo(isSubmit: false, isLoading: false, callBack: nil) saveInfo(isSubmit: false, isLoading: false, callBack: nil)
} }
} }
...@@ -190,6 +190,7 @@ class YHSpouseInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol { ...@@ -190,6 +190,7 @@ class YHSpouseInfoContainerVC: YHBaseViewController, YHSpouseInfoVCProtocol {
if let targetStep = getStepForArrayIndex(index) { if let targetStep = getStepForArrayIndex(index) {
currentStep = targetStep currentStep = targetStep
} }
requestDetail()
print("index:\(index)") print("index:\(index)")
} }
...@@ -233,7 +234,10 @@ extension YHSpouseInfoContainerVC { ...@@ -233,7 +234,10 @@ extension YHSpouseInfoContainerVC {
} }
func saveInfoSilent() { func saveInfoSilent() {
saveInfo(isSubmit: false, isLoading: false, callBack: nil) saveInfo(isSubmit: false, isLoading: false) {
[weak self] success in
}
} }
...@@ -249,7 +253,7 @@ extension YHSpouseInfoContainerVC { ...@@ -249,7 +253,7 @@ extension YHSpouseInfoContainerVC {
self.navigationController?.popViewController() self.navigationController?.popViewController()
return return
} }
requestDetail()
if let cur = getArrayIndexOfCurrentStep(), let item = stepVCs[safe:cur+1] { if let cur = getArrayIndexOfCurrentStep(), let item = stepVCs[safe:cur+1] {
currentStep = item.step currentStep = item.step
if cur+1 > stepView.maxIndex { if cur+1 > stepView.maxIndex {
...@@ -264,16 +268,20 @@ extension YHSpouseInfoContainerVC { ...@@ -264,16 +268,20 @@ extension YHSpouseInfoContainerVC {
} }
func requestDetail() { func requestDetail() {
// if orderId <= 0 || spouse.id <= 0 { if orderId <= 0 {
// print("订单号或成员id不存在") print("订单号不存在")
// return return
// } }
// self.familyRequest.requestFamilyMemberInfo(orderId:orderId, detailId:spouse.id) { self.familyRequest.requestFamilyMemberDetailInfo(memberType:.spouse, orderId:orderId) {
// [weak self] detail, error in [weak self] detail in
// if let detail = detail { guard let self = self else { return }
// spouse = detail if let detail = detail {
// } self.spouse = detail
// } for vcItem in stepVCs {
vcItem.vc.loadInfo()
}
}
}
} }
// 【WARNING!】步骤step和在数组中的下标有时候并不是一一对应 // 【WARNING!】步骤step和在数组中的下标有时候并不是一一对应
......
...@@ -250,7 +250,7 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -250,7 +250,7 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
if detailItem.type == .detailAddress { if detailItem.type == .detailAddress {
if spouse.address.isInChina() { if spouse.isLiveInChina() {
spouse.address.details = text ?? "" spouse.address.details = text ?? ""
} else { } else {
spouse.address.foreign = text ?? "" spouse.address.foreign = text ?? ""
...@@ -387,7 +387,7 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource { ...@@ -387,7 +387,7 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
if isEmptyString(spouse.address.country) { if isEmptyString(spouse.address.country) {
return false return false
} }
if spouse.address.isInChina() { if spouse.isLiveInChina() {
if isEmptyArray(spouse.address.area) { if isEmptyArray(spouse.address.area) {
return false return false
} }
......
...@@ -235,14 +235,14 @@ extension YHFamilyMemberInfoListVC { ...@@ -235,14 +235,14 @@ extension YHFamilyMemberInfoListVC {
// 请求家庭成员信息 // 请求家庭成员信息
func requestFamilyInfo() { func requestFamilyInfo() {
self.familyRequest.getFamilyInfo(params: ["order_id": self.orderId]) { [weak self] success, error in self.familyRequest.getFamilyInfoList(orderId:orderId) { [weak self] detail, error in
guard let self = self else { return } guard let self = self else { return }
if success { if let detail = detail {
familyMemberInfo = self.familyRequest.familyInfo familyMemberInfo = detail
} }
loadFamilyMember() loadFamilyMember()
} }
} }
// 添加兄弟姐妹子女 // 添加兄弟姐妹子女
func addFamilyMember(_ type:YHFamilyMemberType) { func addFamilyMember(_ type:YHFamilyMemberType) {
...@@ -439,7 +439,7 @@ extension YHFamilyMemberInfoListVC : UITableViewDelegate, UITableViewDataSource ...@@ -439,7 +439,7 @@ extension YHFamilyMemberInfoListVC : UITableViewDelegate, UITableViewDataSource
if !sure { return } if !sure { return }
self.deleteFamilyMember(orderId: self.orderId, memberId:child.id) { self.deleteFamilyMember(orderId: self.orderId, memberId:child.detailId) {
[weak self] success in [weak self] success in
guard let self = self else { return } guard let self = self else { return }
...@@ -467,7 +467,7 @@ extension YHFamilyMemberInfoListVC : UITableViewDelegate, UITableViewDataSource ...@@ -467,7 +467,7 @@ extension YHFamilyMemberInfoListVC : UITableViewDelegate, UITableViewDataSource
if !sure { return } if !sure { return }
self.deleteFamilyMember(orderId: self.orderId, memberId:brother.id) { self.deleteFamilyMember(orderId: self.orderId, memberId:brother.detailId) {
[weak self] success in [weak self] success in
guard let self = self else { return } guard let self = self else { return }
......
...@@ -587,7 +587,7 @@ enum YHFamilyMemberType: Int { ...@@ -587,7 +587,7 @@ enum YHFamilyMemberType: Int {
class YHFamilyMember: SmartCodable, YHFormItemProtocol { class YHFamilyMember: SmartCodable, YHFormItemProtocol {
var id: Int = 0 var detailId: Int = 0
var nationality: String = "" var nationality: String = ""
var orderId: Int = 0 var orderId: Int = 0
var relation: String = "" var relation: String = ""
...@@ -675,7 +675,7 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol { ...@@ -675,7 +675,7 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol {
} }
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case id = "id" case detailId = "id"
case deceased = "deceased" case deceased = "deceased"
case custody = "custody" case custody = "custody"
case nationality = "nationality" case nationality = "nationality"
...@@ -874,6 +874,16 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol { ...@@ -874,6 +874,16 @@ class YHFamilyMember: SmartCodable, YHFormItemProtocol {
self.childStepchild.has = (val ? "Y" : "N") self.childStepchild.has = (val ? "Y" : "N")
} }
// 是否住在中国
func isLiveInChina() ->Bool {
// 默认在中国
if isEmptyString(self.address.country) { return true }
if self.address.country.contains("中国") {
return true
}
return false
}
// 根据生日推算年龄 // 根据生日推算年龄
func getAge(birthday:String) ->Int { func getAge(birthday:String) ->Int {
let arr = birthday.components(separatedBy: YHDatePickView.separator) let arr = birthday.components(separatedBy: YHDatePickView.separator)
...@@ -986,16 +996,6 @@ class YHAddress: SmartCodable { ...@@ -986,16 +996,6 @@ class YHAddress: SmartCodable {
} }
// 是否在中国
func isInChina() ->Bool {
// 默认在中国
if isEmptyString(country) { return true }
if country.contains("中国") {
return true
}
return false
}
// 清空地址信息 // 清空地址信息
func clearAddress() { func clearAddress() {
self.area = [] self.area = []
......
...@@ -9,38 +9,34 @@ ...@@ -9,38 +9,34 @@
class YHFamilyRequestViewModel { class YHFamilyRequestViewModel {
var familyInfo:YHFamilyMemberGroupInfo?
//请求所有家庭成员信息 //请求所有家庭成员信息
func getFamilyInfo(params:[String:Any], callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) { func getFamilyInfoList(orderId:Int, callBackBlock:@escaping (_ listInfo: YHFamilyMemberGroupInfo?,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Family.familyInfoApi let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Family.familyInfoApi
let params = ["order_id": orderId]
YHHUD.show(.progress(message: "数据加载中...")) YHHUD.show(.progress(message: "数据加载中..."))
let _ = YHNetRequest.getRequest(url: strUrl, params:params) {[weak self] json, code in let _ = YHNetRequest.getRequest(url: strUrl, params:params) { json, code in
YHHUD.hide() YHHUD.hide()
guard let self = self else { return }
printLog("model 是 ==> \(json)") printLog("model 是 ==> \(json)")
let dic = json.data let dic = json.data
if code == NetWorkCode.success.rawValue { if code == NetWorkCode.success.rawValue {
guard let resultModel = YHFamilyMemberGroupInfo.deserialize(dict: dic as? Dictionary ) else { guard let resultModel = YHFamilyMemberGroupInfo.deserialize(dict: dic as? Dictionary ) else {
callBackBlock(false, YHErrorModel(errorCode:Int32(json.code), errorMsg:"解析失败".local)) callBackBlock(nil, YHErrorModel(errorCode:Int32(json.code), errorMsg:"解析失败".local))
return return
} }
familyInfo = resultModel.checkDefaultValue() _ = resultModel.checkDefaultValue()
callBackBlock(true,nil) callBackBlock(resultModel, nil)
} else { } else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg) let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error) callBackBlock(nil, error)
} }
} failBlock: { err in } failBlock: { err in
callBackBlock(false,err) callBackBlock(nil, err)
} }
} }
...@@ -52,14 +48,12 @@ class YHFamilyRequestViewModel { ...@@ -52,14 +48,12 @@ class YHFamilyRequestViewModel {
} }
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Family.familyInfoApi let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Family.familyInfoApi
// let strUrl = "http://192.168.34.187:8808/" + YHAllApiName.Family.familyInfoApi
let _ = YHNetRequest.postRequest(url: strUrl, params:params) {[weak self] json, code in let _ = YHNetRequest.postRequest(url: strUrl, params:params) { json, code in
if isShowLoading { if isShowLoading {
YHHUD.hide() YHHUD.hide()
} }
guard let self = self else { return }
printLog("model 是 ==> \(json)") printLog("model 是 ==> \(json)")
if json.code == NetWorkCode.success.rawValue { if json.code == NetWorkCode.success.rawValue {
callBackBlock(true,nil) callBackBlock(true,nil)
...@@ -141,4 +135,25 @@ class YHFamilyRequestViewModel { ...@@ -141,4 +135,25 @@ class YHFamilyRequestViewModel {
callBackBlock(nil, err) callBackBlock(nil, err)
} }
} }
// memberType 只能传 父亲、母亲、配偶
func requestFamilyMemberDetailInfo(memberType:YHFamilyMemberType, orderId:Int, callBack:((_ detail:YHFamilyMember?)->Void)?) {
let params:[String:Any] = ["order_id": orderId]
self.getFamilyInfoList(orderId:orderId) {
listInfo, error in
guard let callBack = callBack else { return }
if let listInfo = listInfo {
if memberType == .spouse {
callBack(listInfo.spouse)
} else if memberType == .father {
callBack(listInfo.father)
} else if memberType == .mother {
callBack(listInfo.mother)
} else {
callBack(nil)
}
}
}
}
} }
...@@ -32,7 +32,9 @@ class YHMySignatureListViewController: YHBaseViewController { ...@@ -32,7 +32,9 @@ class YHMySignatureListViewController: YHBaseViewController {
} }
func getData() { func getData() {
viewModel?.requestSignatureList("\(orderId)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
})
} }
func updateDataSource() { func updateDataSource() {
...@@ -50,7 +52,7 @@ class YHMySignatureListViewController: YHBaseViewController { ...@@ -50,7 +52,7 @@ class YHMySignatureListViewController: YHBaseViewController {
tableView.separatorStyle = .none tableView.separatorStyle = .none
tableView.delegate = self tableView.delegate = self
tableView.dataSource = self tableView.dataSource = self
tableView.register(cellWithClass: YHWorkExperienceListTableViewCell.self) tableView.register(cellWithClass: YHMySignatureListTableViewCell.self)
return tableView return tableView
}() }()
view.addSubview(tableView) view.addSubview(tableView)
...@@ -96,15 +98,7 @@ class YHMySignatureListViewController: YHBaseViewController { ...@@ -96,15 +98,7 @@ class YHMySignatureListViewController: YHBaseViewController {
} }
@objc func submit() { @objc func submit() {
guard let dataSource = dataSource else { return }
for item in dataSource {
if item.vacant_num ?? 0 > 0 {
showPrompt = true
tableView.reloadData()
YHHUD.flash(message: "您的工作经验未全部填写完成,请先填写完成再提交")
return
}
}
} }
} }
...@@ -114,21 +108,14 @@ extension YHMySignatureListViewController: UITableViewDelegate, UITableViewDataS ...@@ -114,21 +108,14 @@ extension YHMySignatureListViewController: UITableViewDelegate, UITableViewDataS
} }
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withClass: YHWorkExperienceListTableViewCell.self) let cell = tableView.dequeueReusableCell(withClass: YHMySignatureListTableViewCell.self)
cell.showPrompt = showPrompt
cell.dataSource = dataSource
cell.backgroundColor = .clear cell.backgroundColor = .clear
cell.contentView.backgroundColor = .clear cell.contentView.backgroundColor = .clear
return cell return cell
} }
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
let number = dataSource?.count ?? 0 return CGFloat(82)
if number == 0 {
return CGFloat(16 + 216)
} else {
return CGFloat(16 + 154 + 76 * number)
}
} }
} }
//
// YHMySignatureListTableViewCell.swift
// galaxy
//
// Created by EDY on 2024/3/8.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHMySignatureListTableViewCell: UITableViewCell {
var centerView: UIView!
var titleLabel: UILabel!
var subTitleLabel: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
selectionStyle = .none
setupUI()
}
func setupUI() {
backgroundColor = .clear
centerView = {
let view = UIView()
view.backgroundColor = .white
view.layer.cornerRadius = kCornerRadius6
return view
}()
contentView.addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.equalTo(16)
make.right.equalTo(-16)
make.top.equalTo(7)
make.bottom.equalTo(-7)
}
titleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 17)
label.text = "主申请人工作经历"
label.textColor = UIColor.mainTextColor
return label
}()
centerView.addSubview(titleLabel)
titleLabel.snp.makeConstraints { make in
make.top.bottom.equalToSuperview()
make.left.equalTo(21)
make.right.equalTo(-21)
}
subTitleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 12)
label.text = "(从最近一份全职工作开始,直至毕业后的第一份工作)"
label.textColor = UIColor.labelTextColor2
label.textAlignment = .right
return label
}()
centerView.addSubview(subTitleLabel)
subTitleLabel.snp.makeConstraints { make in
make.left.equalTo(21)
make.top.bottom.equalToSuperview()
make.right.equalTo(-21)
}
}
func updateAllViews() {
}
}
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