Commit 1b73362e authored by Steven杜宇's avatar Steven杜宇

// 学历资格

parent 3031c1d5
...@@ -326,27 +326,30 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource ...@@ -326,27 +326,30 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource
//主申请人信息 //主申请人信息
let vc = YHMainApplicantInformationViewController() let vc = YHMainApplicantInformationViewController()
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if indexPath.row == 1 { } else if indexPath.row == 1 {
//家庭程序信息 //家庭程序信息
let vc = YHFamilyMemberInfoVC(orderId: orderId ?? 0) let vc = YHFamilyMemberInfoVC(orderId: orderId ?? 0)
vc.orderId = 133971 vc.orderId = orderId ?? 0
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if indexPath.row == 2 { } else if indexPath.row == 2 {
//基本信息 //基本信息
let vc = YHBasicInfoFillViewController() let vc = YHBasicInfoFillViewController()
vc.orderId = orderId vc.orderId = orderId
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if indexPath.row == 3 { } else if indexPath.row == 3 {
//学历/专业资格 //学历/专业资格
let vc = YHEducationInfoListVC() let vc = YHEducationInfoListVC()
// vc.orderId = orderId vc.orderId = orderId ?? 0
vc.orderId = 133971
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if indexPath.row == 4 { } else if indexPath.row == 4 {
//工作经历 //工作经历
let vc = YHWorkExperienceListViewController() let vc = YHWorkExperienceListViewController()
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} else if indexPath.row == 5 { } else if indexPath.row == 5 {
//其他信息 //其他信息
let vc = YHOtherInfoFillViewController() let vc = YHOtherInfoFillViewController()
......
...@@ -11,7 +11,8 @@ import SwifterSwift ...@@ -11,7 +11,8 @@ import SwifterSwift
import Toast_Swift import Toast_Swift
class YHEducationDetailVC: YHBaseViewController { class YHEducationDetailVC: YHBaseViewController {
//【WARNING!】新添加 传orderId 已有信息传detailId
//【WARNING!】新添加 传orderId 已有信息传detailId和orderId
// 订单ID // 订单ID
var orderId: Int = 0 var orderId: Int = 0
// 学历ID // 学历ID
...@@ -94,8 +95,6 @@ class YHEducationDetailVC: YHBaseViewController { ...@@ -94,8 +95,6 @@ class YHEducationDetailVC: YHBaseViewController {
loadInfo() loadInfo()
if self.detailId != 0 { // 有学历ID则该学历已存在 if self.detailId != 0 { // 有学历ID则该学历已存在
getDetailInfo() getDetailInfo()
} else { // 该学历是新添加的
detailInfo.orderId = orderId
} }
} }
...@@ -112,7 +111,7 @@ class YHEducationDetailVC: YHBaseViewController { ...@@ -112,7 +111,7 @@ class YHEducationDetailVC: YHBaseViewController {
let item01 = YHFormDetailItem(type: .educationStyle) let item01 = YHFormDetailItem(type: .educationStyle)
item01.placeHolder = "请选择授课形式".local item01.placeHolder = "请选择授课形式".local
item01.tips = "请选择授课形式".local item01.tips = "请选择授课形式".local
item01.value = detailInfo.type item01.value = detailInfo.teachingFormat
let item02 = YHFormDetailItem(type: .educationTime) let item02 = YHFormDetailItem(type: .educationTime)
item02.placeHolder = "请选择年月".local item02.placeHolder = "请选择年月".local
...@@ -128,12 +127,12 @@ class YHEducationDetailVC: YHBaseViewController { ...@@ -128,12 +127,12 @@ class YHEducationDetailVC: YHBaseViewController {
let item04 = YHFormDetailItem(type: .educationMajor) let item04 = YHFormDetailItem(type: .educationMajor)
item04.placeHolder = "请输入专业".local item04.placeHolder = "请输入专业".local
item04.tips = "请输入专业".local item04.tips = "请输入专业".local
item04.value = detailInfo.professional item04.value = detailInfo.major
let item05 = YHFormDetailItem(type: .educationDegree) let item05 = YHFormDetailItem(type: .educationDegree)
item05.placeHolder = "请选择学位".local item05.placeHolder = "请选择学位".local
item05.tips = "请选择学位".local item05.tips = "请选择学位".local
item05.value = detailInfo.background item05.value = detailInfo.degree
let item06 = YHFormDetailItem(type: .degreeType) let item06 = YHFormDetailItem(type: .degreeType)
item06.placeHolder = "请选择学位类型".local item06.placeHolder = "请选择学位类型".local
...@@ -222,9 +221,9 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -222,9 +221,9 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource {
} else if detailItem.type == .educationMajor { } else if detailItem.type == .educationMajor {
if let text = text, !text.isEmpty { if let text = text, !text.isEmpty {
detailInfo.professional = text detailInfo.major = text
} else { } else {
detailInfo.professional = "" detailInfo.major = ""
} }
} }
if isEditEnd { if isEditEnd {
...@@ -329,7 +328,7 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -329,7 +328,7 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource {
YHFormPickerView.show(type: .edution, selectType: .education(.fullTime)) { YHFormPickerView.show(type: .edution, selectType: .education(.fullTime)) {
[weak self] selectType in [weak self] selectType in
guard let self = self else { return } guard let self = self else { return }
detailInfo.type = selectType.title detailInfo.teachingFormat = selectType.title
loadInfo() loadInfo()
if detailId != 0 { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
...@@ -358,7 +357,7 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -358,7 +357,7 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource {
YHFormPickerView.show(type: .degree, selectType: .degree(.bachelor)) { YHFormPickerView.show(type: .degree, selectType: .degree(.bachelor)) {
[weak self] selectType in [weak self] selectType in
guard let self = self else { return } guard let self = self else { return }
detailInfo.background = selectType.title detailInfo.degree = selectType.title
loadInfo() loadInfo()
if detailId != 0 { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
...@@ -496,11 +495,11 @@ extension YHEducationDetailVC { ...@@ -496,11 +495,11 @@ extension YHEducationDetailVC {
func checkIntegrity() -> Bool { func checkIntegrity() -> Bool {
if detailInfo.college.isEmpty if detailInfo.college.isEmpty
|| detailInfo.type.isEmpty || detailInfo.teachingFormat.isEmpty
|| detailInfo.admissionTime.isEmpty || detailInfo.admissionTime.isEmpty
|| detailInfo.graduateTime.isEmpty || detailInfo.graduateTime.isEmpty
|| detailInfo.professional.isEmpty || detailInfo.major.isEmpty
|| detailInfo.background.isEmpty || detailInfo.degree.isEmpty
|| detailInfo.degreeType.isEmpty || detailInfo.degreeType.isEmpty
|| detailInfo.schoolAddress.country.isEmpty || detailInfo.schoolAddress.country.isEmpty
{ {
...@@ -521,21 +520,24 @@ extension YHEducationDetailVC { ...@@ -521,21 +520,24 @@ extension YHEducationDetailVC {
func saveDetailInfo(isNeedPop:Bool) { func saveDetailInfo(isNeedPop:Bool) {
// detailInfo.toDictionary() 对于值为空的字段不会添加 而后台需要 所以如下处理 // detailInfo.toDictionary() 对于值为空的字段不会添加 而后台需要 所以如下处理
let dict:[String : Any] = ["verify": 0, // let dict:[String : Any] = [
"id": detailInfo.id, // "order_id":
"order_id": detailInfo.orderId, // "id": detailInfo.id,
"admission_time": detailInfo.admissionTime, // "admission_time": detailInfo.admissionTime,
"background": detailInfo.background, // "background": detailInfo.major,
"college": detailInfo.college, // "college": detailInfo.college,
"degree_type": detailInfo.degreeType, // "degree_type": detailInfo.degreeType,
"graduate_time": detailInfo.graduateTime, // "graduate_time": detailInfo.graduateTime,
"professional": detailInfo.professional, // "professional": detailInfo.major,
"school_address_aboard": "", // "school_address_aboard": "",
"type": detailInfo.type, // "type": detailInfo.teachingFormat,
"school_address": ["country": detailInfo.schoolAddress.country, // "school_address": ["country": detailInfo.schoolAddress.country,
"area": detailInfo.schoolAddress.area, // "area": detailInfo.schoolAddress.area,
"foreign": detailInfo.schoolAddress.foreign], // "foreign": detailInfo.schoolAddress.foreign],
] // ]
guard var dict:[String:Any] = detailInfo.toDictionary() else { return }
dict["order_id"] = self.orderId
self.educationRequest.saveEducationInfo(params: dict) { self.educationRequest.saveEducationInfo(params: dict) {
[weak self] success, error in [weak self] success, error in
......
...@@ -156,10 +156,10 @@ class YHEducationInfoListVC: YHBaseViewController { ...@@ -156,10 +156,10 @@ class YHEducationInfoListVC: YHBaseViewController {
let questions = YHQuestionInfo.getEducationQuestion() let questions = YHQuestionInfo.getEducationQuestion()
for questionInfo in questions { for questionInfo in questions {
if questionInfo.key == "qualification" { if questionInfo.key == "qualification" {
questionInfo.answer = educationInfo.qualification questionInfo.answer = educationInfo.isNameSame
} else if questionInfo.key == "graduate" { } else if questionInfo.key == "graduate" {
questionInfo.answer = educationInfo.graduate questionInfo.answer = educationInfo.isSpouseNameSame
} }
arr2.append(questionInfo) arr2.append(questionInfo)
} }
...@@ -256,7 +256,7 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource { ...@@ -256,7 +256,7 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource {
} else if detailItem.type == .addCertificateInfo { // 证书 } else if detailItem.type == .addCertificateInfo { // 证书
let vc = YHQualificationDetailVC() let vc = YHQualificationDetailVC()
vc.orderId = String(self.orderId) vc.orderId = self.orderId
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
} }
return return
...@@ -273,11 +273,9 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource { ...@@ -273,11 +273,9 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource {
var select0 = false var select0 = false
var select1 = false var select1 = false
if detailItem.answer == 1 { if let answer = detailItem.answer {
select0 = true select0 = answer
select1 = !answer
} else if detailItem.answer == 2 {
select1 = true
} }
let answers = [YHFormChoiceItem(title: "是".local, isSelect: select0),YHFormChoiceItem(title: "否".local, isSelect: select1)] let answers = [YHFormChoiceItem(title: "是".local, isSelect: select0),YHFormChoiceItem(title: "否".local, isSelect: select1)]
...@@ -288,12 +286,12 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource { ...@@ -288,12 +286,12 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource {
guard let self = self else { return } guard let self = self else { return }
let selectItem:YHFormChoiceItem = arr[selectIndex] let selectItem:YHFormChoiceItem = arr[selectIndex]
let option = (selectItem.title == "是".local ? 1 : 2) let option = (selectItem.title == "是".local ? true : false)
if detailItem.key == "qualification" { if detailItem.key == "qualification" {
self.educationInfo?.qualification = option self.educationInfo?.isNameSame = option
} else if detailItem.key == "graduate" { } else if detailItem.key == "graduate" {
self.educationInfo?.graduate = option self.educationInfo?.isSpouseNameSame = option
} }
loadInfo() loadInfo()
} }
...@@ -335,8 +333,8 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource { ...@@ -335,8 +333,8 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource {
let cell = tableView.dequeueReusableCell(withIdentifier: YHEducationInfoCell.cellReuseIdentifier, for: indexPath) as! YHEducationInfoCell let cell = tableView.dequeueReusableCell(withIdentifier: YHEducationInfoCell.cellReuseIdentifier, for: indexPath) as! YHEducationInfoCell
cell.titleLabel.text = eduInfo.college cell.titleLabel.text = eduInfo.college
cell.subTitleLabel.text = "" cell.subTitleLabel.text = ""
if let professional = eduInfo.professional, let background = eduInfo.background { if let major = eduInfo.major, let degree = eduInfo.degree {
cell.subTitleLabel.text = String("\(background)-\(professional)") cell.subTitleLabel.text = String("\(degree)-\(major)")
} }
cell.timeLabel.text = "" cell.timeLabel.text = ""
if let admissionTime = eduInfo.admissionTime, let graduateTime = eduInfo.graduateTime { if let admissionTime = eduInfo.admissionTime, let graduateTime = eduInfo.graduateTime {
...@@ -443,6 +441,7 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource { ...@@ -443,6 +441,7 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource {
if let eduList = educationInfo?.eduList, indexPath.row-1 < eduList.count { if let eduList = educationInfo?.eduList, indexPath.row-1 < eduList.count {
let eduInfo = eduList[indexPath.row-1] let eduInfo = eduList[indexPath.row-1]
vc.detailId = eduInfo.id vc.detailId = eduInfo.id
vc.orderId = self.orderId
} }
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
return return
...@@ -451,7 +450,8 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource { ...@@ -451,7 +450,8 @@ extension YHEducationInfoListVC : UITableViewDelegate, UITableViewDataSource {
let vc = YHQualificationDetailVC() let vc = YHQualificationDetailVC()
if let quaList = educationInfo?.quaList, indexPath.row-1 < quaList.count { if let quaList = educationInfo?.quaList, indexPath.row-1 < quaList.count {
let quaInfo = quaList[indexPath.row-1] let quaInfo = quaList[indexPath.row-1]
vc.detailId = String(quaInfo.id) vc.detailId = quaInfo.id
vc.orderId = self.orderId
} }
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
return return
...@@ -489,7 +489,7 @@ extension YHEducationInfoListVC { ...@@ -489,7 +489,7 @@ extension YHEducationInfoListVC {
[weak self] success, error in [weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
if success { if success {
educationInfo = self.educationRequest.educationInfo educationInfo = self.educationRequest.listInfo
loadInfo() loadInfo()
} }
} }
...@@ -523,9 +523,9 @@ extension YHEducationInfoListVC { ...@@ -523,9 +523,9 @@ extension YHEducationInfoListVC {
func saveInfo() { func saveInfo() {
let params = ["go_next": 0, let params = ["go_next": 0,
"graduate": educationInfo?.graduate ?? 0, "graduate": educationInfo?.isSpouseNameSame ?? 0,
"order_id": self.orderId, "order_id": self.orderId,
"qualification": educationInfo?.qualification ?? 0] "qualification": educationInfo?.isNameSame ?? 0] as [String : Any]
self.educationRequest.saveAllEducationInfo(params: params) { self.educationRequest.saveAllEducationInfo(params: params) {
[weak self] success, error in [weak self] success, error in
...@@ -571,7 +571,7 @@ extension YHEducationInfoListVC { ...@@ -571,7 +571,7 @@ extension YHEducationInfoListVC {
} }
// 检查所有问题是否有未答项 // 检查所有问题是否有未答项
if educationInfo.qualification == 0 || educationInfo.graduate == 0 { if educationInfo.isNameSame == nil || educationInfo.isSpouseNameSame == nil {
return false return false
} }
return true return true
......
...@@ -11,11 +11,11 @@ import Toast_Swift ...@@ -11,11 +11,11 @@ import Toast_Swift
class YHQualificationDetailVC: YHBaseViewController { class YHQualificationDetailVC: YHBaseViewController {
//【WARNING!】新添加 传orderId 已有信息传detailId //【WARNING!】新添加 传orderId 已有信息传detailId和orderId
// 订单ID // 订单ID
var orderId: String = "" var orderId:Int = 0
// 专业ID // 专业ID
var detailId: String = "" var detailId: Int = 0
let educationRequest:YHEducationRequestViewModel = YHEducationRequestViewModel() let educationRequest:YHEducationRequestViewModel = YHEducationRequestViewModel()
// 专业详情信息 // 专业详情信息
var detailInfo = YHQualificationDetailInfo() var detailInfo = YHQualificationDetailInfo()
...@@ -90,10 +90,8 @@ class YHQualificationDetailVC: YHBaseViewController { ...@@ -90,10 +90,8 @@ class YHQualificationDetailVC: YHBaseViewController {
} }
loadInfo() loadInfo()
if !self.detailId.isEmpty { // 有专业ID则该专业已存在 if self.detailId != 0 { // 有专业ID则该专业已存在
reqeustDetailInfo() reqeustDetailInfo()
} else { // 该专业是新添加的
detailInfo.orderId = orderId
} }
} }
...@@ -105,32 +103,32 @@ class YHQualificationDetailVC: YHBaseViewController { ...@@ -105,32 +103,32 @@ class YHQualificationDetailVC: YHBaseViewController {
let item00 = YHFormDetailItem(type: .qualificationCertificateName) let item00 = YHFormDetailItem(type: .qualificationCertificateName)
item00.placeHolder = "请选择资格证书名称".local item00.placeHolder = "请选择资格证书名称".local
item00.tips = "请选择资格证书名称".local item00.tips = "请选择资格证书名称".local
item00.value = detailInfo.qualification item00.value = detailInfo.certName
let item01 = YHFormDetailItem(type: .conferAgencyFullName) let item01 = YHFormDetailItem(type: .conferAgencyFullName)
item01.placeHolder = "请输入颁授机构".local item01.placeHolder = "请输入颁授机构".local
item01.tips = "请输入颁授机构".local item01.tips = "请输入颁授机构".local
item01.value = detailInfo.college item01.value = detailInfo.issuingAgent
let item02 = YHFormDetailItem(type: .conferTime) let item02 = YHFormDetailItem(type: .conferTime)
item02.placeHolder = "请选择颁授年份".local item02.placeHolder = "请选择颁授年份".local
item02.tips = "请选择颁授年份".local item02.tips = "请选择颁授年份".local
item02.value = detailInfo.promulgation item02.value = String(detailInfo.issuingYear)
let item03 = YHFormDetailItem(type: .conferCountry) let item03 = YHFormDetailItem(type: .conferCountry)
item03.placeHolder = "请选择颁授国家/地区".local item03.placeHolder = "请选择颁授国家/地区".local
item02.tips = "请选择颁授国家/地区".local item02.tips = "请选择颁授国家/地区".local
item03.value = detailInfo.collegeAddress.country item03.value = detailInfo.issuingAddr.country
let item04 = YHFormDetailItem(type: .conferCity) let item04 = YHFormDetailItem(type: .conferCity)
if detailInfo.isCollegeInAboard() { if detailInfo.isCollegeInAboard() {
item04.placeHolder = "请输入颁授城市".local item04.placeHolder = "请输入颁授城市".local
item04.tips = "请输入颁授城市".local item04.tips = "请输入颁授城市".local
item04.value = detailInfo.collegeAddress.foreign item04.value = detailInfo.issuingAddr.foreign
} else { } else {
item04.placeHolder = "请选择颁授城市".local item04.placeHolder = "请选择颁授城市".local
item04.tips = "请选择颁授城市".local item04.tips = "请选择颁授城市".local
item04.value = detailInfo.collegeAddress.area.joined(separator: ",") item04.value = detailInfo.issuingAddr.area.joined(separator: ",")
} }
let arr0:[YHFormItemProtocol] = [title0, item00, item01, item02, item03, item04] let arr0:[YHFormItemProtocol] = [title0, item00, item01, item02, item03, item04]
...@@ -188,20 +186,20 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -188,20 +186,20 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
if detailItem.type == .conferCity { if detailItem.type == .conferCity {
if let text = text, !text.isEmpty { if let text = text, !text.isEmpty {
detailInfo.collegeAddress.foreign = text detailInfo.issuingAddr.foreign = text
} else { } else {
detailInfo.collegeAddress.foreign = "" detailInfo.issuingAddr.foreign = ""
} }
} else if detailItem.type == .conferAgencyFullName { } else if detailItem.type == .conferAgencyFullName {
if let text = text, !text.isEmpty { if let text = text, !text.isEmpty {
detailInfo.college = text detailInfo.issuingAgent = text
} else { } else {
detailInfo.college = "" detailInfo.issuingAgent = ""
} }
} }
if isEditEnd { if isEditEnd {
loadInfo() loadInfo()
if !detailId.isEmpty { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
} }
} }
...@@ -274,9 +272,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -274,9 +272,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
[weak self] selectType in [weak self] selectType in
guard let self = self else { return } guard let self = self else { return }
detailInfo.qualification = selectType.title detailInfo.certName = selectType.title
loadInfo() loadInfo()
if !detailId.isEmpty { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
} }
} }
...@@ -286,9 +284,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -286,9 +284,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
YHDatePickView.show(type: .yyyy) { YHDatePickView.show(type: .yyyy) {
[weak self] date in [weak self] date in
guard let self = self else { return } guard let self = self else { return }
detailInfo.promulgation = date detailInfo.issuingYear = Int(date) ?? 2024
loadInfo() loadInfo()
if !detailId.isEmpty { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
} }
} }
...@@ -299,9 +297,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -299,9 +297,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
vc.backLocationStringController = { vc.backLocationStringController = {
[weak self] country in [weak self] country in
guard let self = self else { return } guard let self = self else { return }
detailInfo.collegeAddress.country = country detailInfo.issuingAddr.country = country
loadInfo() loadInfo()
if !detailId.isEmpty { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
} }
} }
...@@ -315,9 +313,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource { ...@@ -315,9 +313,9 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
vc.backLocationStringController = { vc.backLocationStringController = {
[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 }
detailInfo.collegeAddress.area = [string1, string2, string3, string4] detailInfo.issuingAddr.area = [string1, string2, string3, string4]
loadInfo() loadInfo()
if !detailId.isEmpty { if detailId != 0 {
saveDetailInfo(isNeedPop: false) saveDetailInfo(isNeedPop: false)
} }
} }
...@@ -395,24 +393,9 @@ extension YHQualificationDetailVC { ...@@ -395,24 +393,9 @@ extension YHQualificationDetailVC {
// 保存数据 isNeedPop:保存成功后是否需要退出该页面 // 保存数据 isNeedPop:保存成功后是否需要退出该页面
func saveDetailInfo(isNeedPop:Bool) { func saveDetailInfo(isNeedPop:Bool) {
var dict:[String : Any] = [:] var dict:[String : Any] = ["orderId":self.orderId]
if detailId.isEmpty { // 新增数据 var quaDict:[String : Any] = detailInfo.toDictionary() ?? [:]
dict = ["verify" : 0, dict["qua_data"] = quaDict
"college":detailInfo.college,
"college_address_aboard":"",
"id":"",
"order_id" : detailInfo.orderId,
"promulgation" : detailInfo.promulgation,
"qualification" : detailInfo.qualification,
"college_address":["area":[],
"country":"",
"details":"",
"foreign":""]]
} else { // 已有数据
dict = detailInfo.toDictionary() ?? [:]
dict["verify"] = 0
}
print(dict) print(dict)
...@@ -447,19 +430,19 @@ extension YHQualificationDetailVC { ...@@ -447,19 +430,19 @@ extension YHQualificationDetailVC {
// 检查填写信息完整性 // 检查填写信息完整性
func checkIntegrity() -> Bool { func checkIntegrity() -> Bool {
if detailInfo.qualification.isEmpty if detailInfo.certName.isEmpty
|| detailInfo.college.isEmpty || detailInfo.issuingAgent.isEmpty
|| detailInfo.promulgation.isEmpty || detailInfo.issuingYear <= 0
|| detailInfo.collegeAddress.country.isEmpty || detailInfo.issuingAddr.country.isEmpty
{ {
return false return false
} }
if detailInfo.isCollegeInAboard(), detailInfo.collegeAddress.foreign.isEmpty { if detailInfo.isCollegeInAboard(), detailInfo.issuingAddr.foreign.isEmpty {
return false return false
} }
if !detailInfo.isCollegeInAboard(), detailInfo.collegeAddress.area.count <= 0 { if !detailInfo.isCollegeInAboard(), detailInfo.issuingAddr.area.count <= 0 {
return false return false
} }
return true return true
......
...@@ -10,21 +10,20 @@ import UIKit ...@@ -10,21 +10,20 @@ import UIKit
import SmartCodable import SmartCodable
class YHEducationListInfo: SmartCodable { class YHEducationListInfo: SmartCodable {
var orderId: Int = 0
var eduList: [YHEducationInfo]? var eduList: [YHEducationInfo]?
var eduCount: Int = 0
var quaList: [YHQualificationInfo]? var quaList: [YHQualificationInfo]?
var quaCount: Int = 0 var isNameSame:Bool?
var qualification: Int = 0 var isSpouseNameSame:Bool?
var graduate: Int = 0 // 1=已婚,2=未婚,3=离婚,4=分居,5=丧偶,6=事实婚姻,7=鳏寡
var married: Int = 0 var married: Int = 0
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case orderId = "order_id"
case eduList = "edu_list" case eduList = "edu_list"
case eduCount = "edu_count"
case quaList = "qua_list" case quaList = "qua_list"
case quaCount = "qua_count" case isNameSame = "is_name_same"
case qualification = "qualification" case isSpouseNameSame = "is_spouse_name_same"
case graduate = "graduate"
case married = "married" case married = "married"
} }
...@@ -35,20 +34,18 @@ class YHEducationListInfo: SmartCodable { ...@@ -35,20 +34,18 @@ class YHEducationListInfo: SmartCodable {
class YHEducationInfo: SmartCodable { class YHEducationInfo: SmartCodable {
var id: Int = 0 var id: Int = 0
var orderId: Int = 0
var college: String? var college: String?
var background: String? var major: String?
var professional: String? var degree: String?
var admissionTime: String? var admissionTime: String?
var graduateTime: String? var graduateTime: String?
var vacantNum: Int = 0 var vacantNum: Int = 0
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case id = "id" case id = "id"
case orderId = "order_id"
case college = "college" case college = "college"
case background = "background" case major = "major"
case professional = "professional" case degree = "degree"
case admissionTime = "admission_time" case admissionTime = "admission_time"
case graduateTime = "graduate_time" case graduateTime = "graduate_time"
case vacantNum = "vacant_num" case vacantNum = "vacant_num"
...@@ -61,13 +58,11 @@ class YHEducationInfo: SmartCodable { ...@@ -61,13 +58,11 @@ class YHEducationInfo: SmartCodable {
class YHQualificationInfo: SmartCodable { class YHQualificationInfo: SmartCodable {
var id: Int = 0 var id: Int = 0
var orderId: Int = 0
var qualification: String? var qualification: String?
var vacantNum: Int = 0 var vacantNum: Int = 0
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case id = "id" case id = "id"
case orderId = "order_id"
case qualification = "qualification" case qualification = "qualification"
case vacantNum = "vacant_num" case vacantNum = "vacant_num"
} }
...@@ -81,59 +76,27 @@ class YHQualificationInfo: SmartCodable { ...@@ -81,59 +76,27 @@ class YHQualificationInfo: SmartCodable {
class YHEducationDetailInfo: SmartCodable { class YHEducationDetailInfo: SmartCodable {
var id: Int = 0 var id: Int = 0
var orderId: Int = 0
var college: String = "" var college: String = ""
var isTop: Int = 0 var teachingFormat: String = ""
var type: String = ""
var admissionTime: String = "" var admissionTime: String = ""
var graduateTime: String = "" var graduateTime: String = ""
var background: String = "" var degree: String = ""
var professional: String = "" var major: String = ""
var degreeType: String = "" var degreeType: String = ""
var remark: String = ""
var average: String = ""
var schoolAddress: YHCollegeAddress = YHCollegeAddress() var schoolAddress: YHCollegeAddress = YHCollegeAddress()
var schoolAddressAboard: Int = 0 var isAboardSchool: Bool = false
var oldId: Int = 0
var createdAt: String = ""
var updatedAt: String = ""
var deletedAt: String = ""
var isShow: Int = 0
var operatorName: String = ""
var operatorEnglishName: String = ""
var operatorId: Int = 0
var matchListing: Int = 0
var createFromAppid: Int = 0
var updateFromAppid: Int = 0
var customerCenterId: Int = 0
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case id = "id" case id = "id"
case orderId = "order_id"
case college = "college" case college = "college"
case isTop = "is_top" case teachingFormat = "teaching_format"
case type = "type"
case admissionTime = "admission_time" case admissionTime = "admission_time"
case graduateTime = "graduate_time" case graduateTime = "graduate_time"
case background = "background" case degree = "degree"
case professional = "professional" case major = "major"
case degreeType = "degree_type" case degreeType = "degree_type"
case remark = "remark"
case average = "average"
case schoolAddress = "school_address" case schoolAddress = "school_address"
case schoolAddressAboard = "school_address_aboard" case isAboardSchool = "is_aboard_school"
case oldId = "old_id"
case createdAt = "created_at"
case updatedAt = "updated_at"
case deletedAt = "deleted_at"
case isShow = "is_show"
case operatorName = "operator_name"
case operatorEnglishName = "operator_english_name"
case operatorId = "operator_id"
case matchListing = "match_listing"
case createFromAppid = "create_from_appid"
case updateFromAppid = "update_from_appid"
case customerCenterId = "customer_center_id"
} }
required init() { required init() {
...@@ -169,52 +132,26 @@ class YHCollegeAddress: Codable { ...@@ -169,52 +132,26 @@ class YHCollegeAddress: Codable {
} }
class YHQualificationDetailInfo: SmartCodable { class YHQualificationDetailInfo: SmartCodable {
var id: String = "" var id: Int = 0
var orderId: String = "" var certName: String = ""
var college: String = "" var issuingAgent: String = ""
var collegeAddress: YHCollegeAddress = YHCollegeAddress() var issuingYear: Int = 0
var collegeAddressAboard: Int = 0 var issuingAddr: YHCollegeAddress = YHCollegeAddress()
var promulgation: String = "" var isAboardAddr: Bool = false
var qualification: String = ""
var remark: String = "" enum CodingKeys: String, CodingKey {
var oldId: Int = 0 case id = "id"
var createdAt: String = "" case certName = "cert_name"
var updatedAt: String = "" case issuingAgent = "issuing_agent"
var deletedAt: String = "" case issuingYear = "issuing_year"
var operatorName: String = "" case issuingAddr = "issuing_addr"
var operatorEnglishName: String = "" case isAboardAddr = "is_aboard_addr"
var operatorId: Int = 0 }
var matchListing: Int = 0
var createFromAppid: Int = 0
var updateFromAppid: Int = 0
var customerCenterId: Int = 0
enum CodingKeys: String, CodingKey {
case id = "id"
case orderId = "order_id"
case college = "college"
case collegeAddress = "college_address"
case collegeAddressAboard = "college_address_aboard"
case promulgation = "promulgation"
case qualification = "qualification"
case remark = "remark"
case oldId = "old_id"
case createdAt = "created_at"
case updatedAt = "updated_at"
case deletedAt = "deleted_at"
case operatorName = "operator_name"
case operatorEnglishName = "operator_english_name"
case operatorId = "operator_id"
case matchListing = "match_listing"
case createFromAppid = "create_from_appid"
case updateFromAppid = "update_from_appid"
case customerCenterId = "customer_center_id"
}
// 学校是否在国外 默认是在国内 // 学校是否在国外 默认是在国内
func isCollegeInAboard() -> Bool { func isCollegeInAboard() -> Bool {
if collegeAddress.country.isEmpty { return false } if issuingAddr.country.isEmpty { return false }
if collegeAddress.country.contains("中国") { if issuingAddr.country.contains("中国") {
return false return false
} }
return true return true
......
...@@ -10,7 +10,7 @@ import UIKit ...@@ -10,7 +10,7 @@ import UIKit
class YHEducationRequestViewModel { class YHEducationRequestViewModel {
// 学历和专业信息 // 学历和专业信息
var educationInfo: YHEducationListInfo? var listInfo: YHEducationListInfo?
// 学历详情信息 // 学历详情信息
var educationDetailInfo: YHEducationDetailInfo? var educationDetailInfo: YHEducationDetailInfo?
// 专业详情信息 // 专业详情信息
...@@ -21,7 +21,7 @@ class YHEducationRequestViewModel { ...@@ -21,7 +21,7 @@ class YHEducationRequestViewModel {
YHHUD.show(.progress(message: "数据加载中...")) YHHUD.show(.progress(message: "数据加载中..."))
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Education.getEducationAndQulificationInfoApi let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Education.getEducationAndQulificationInfoListApi
let _ = YHNetRequest.getRequest(url: strUrl, params:params) {[weak self] json, code in let _ = YHNetRequest.getRequest(url: strUrl, params:params) {[weak self] json, code in
...@@ -39,7 +39,7 @@ class YHEducationRequestViewModel { ...@@ -39,7 +39,7 @@ class YHEducationRequestViewModel {
callBackBlock(false,nil) callBackBlock(false,nil)
return return
} }
educationInfo = resultModel listInfo = resultModel
callBackBlock(true,nil) callBackBlock(true,nil)
} failBlock: { err in } failBlock: { err in
...@@ -191,7 +191,7 @@ class YHEducationRequestViewModel { ...@@ -191,7 +191,7 @@ class YHEducationRequestViewModel {
} }
// 获取专业详情 // 获取专业详情
func getQualificationDetailInfo(id:String, callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) { func getQualificationDetailInfo(id:Int, callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
YHHUD.show(.progress(message: "数据加载中...")) YHHUD.show(.progress(message: "数据加载中..."))
...@@ -207,15 +207,21 @@ class YHEducationRequestViewModel { ...@@ -207,15 +207,21 @@ class YHEducationRequestViewModel {
return return
} }
printLog("model 是 ==> \(model)") printLog("model 是 ==> \(model)")
let dic = model.data?.peel as? [AnyHashable : Any] if let dic = model.data?.peel as? [AnyHashable : Any] {
guard let resultModel = YHQualificationDetailInfo.deserialize(dict: dic as? [AnyHashable : Any]) else { guard let quaDict = dic["qua_data"] as? [AnyHashable : Any] , let resultModel = YHQualificationDetailInfo.deserialize(dict:quaDict as? [AnyHashable : Any]) else {
callBackBlock(false,nil)
return
}
qualificationDetailInfo = resultModel
callBackBlock(true,nil)
return
} else {
callBackBlock(false,nil) callBackBlock(false,nil)
return return
} }
qualificationDetailInfo = resultModel
callBackBlock(true,nil)
} failBlock: { err in } failBlock: { err in
callBackBlock(false,err) callBackBlock(false,err)
} }
......
...@@ -13,7 +13,7 @@ class YHQuestionInfo: SmartCodable, YHFormItemProtocol { ...@@ -13,7 +13,7 @@ class YHQuestionInfo: SmartCodable, YHFormItemProtocol {
var key: String = "" var key: String = ""
var question: String = "" var question: String = ""
var answer: Int = 0 var answer: Bool?
enum CodingKeys: String, CodingKey { enum CodingKeys: String, CodingKey {
case key = "key" case key = "key"
......
...@@ -52,12 +52,18 @@ class YHAllApiName { ...@@ -52,12 +52,18 @@ class YHAllApiName {
} }
struct Education { struct Education {
// 获取学历及证书相关信息 // 获取教育和专业资格列表
static let getEducationAndQulificationInfoApi = "frontend/education/list" // static let getEducationAndQulificationInfoApi = "frontend/education/list"
static let getEducationAndQulificationInfoListApi = "infoflow/getEducationList"
// 获取学历详情信息 // 获取学历详情信息
static let getEducationDetailInfoApi = "frontend/education/detail" // static let getEducationDetailInfoApi = "frontend/education/detail"
static let getEducationDetailInfoApi = "infoflow/getEducationDetail"
// 保存学历信息 // 保存学历信息
static let saveEducationInfoApi = "frontend/education/save" // static let saveEducationInfoApi = "frontend/education/save"
static let saveEducationInfoApi = "infoflow/saveEducationData"
// 删除学历 // 删除学历
static let deleteEducationInfoApi = "frontend/education/del" static let deleteEducationInfoApi = "frontend/education/del"
// 保存所有信息 // 保存所有信息
...@@ -66,11 +72,13 @@ class YHAllApiName { ...@@ -66,11 +72,13 @@ class YHAllApiName {
struct Qualification { struct Qualification {
// 获取学历详情信息 // 获取学历详情信息
static let getQualificationDetailInfoApi = "frontend/qualification/detail" // static let getQualificationDetailInfoApi = "frontend/qualification/detail"
static let getQualificationDetailInfoApi = "infoflow/getQuaDetail"
// 删除专业 // 删除专业
static let deleteQualificationInfoApi = "frontend/qualification/del" static let deleteQualificationInfoApi = "frontend/qualification/del"
// 保存专业 // 保存专业详情
static let saveQualificationInfoApi = "frontend/qualification/save" // static let saveQualificationInfoApi = "frontend/qualification/save"
static let saveQualificationInfoApi = "infoflow/saveQualification"
} }
......
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