Commit 776dbe11 authored by Steven杜宇's avatar Steven杜宇

// 旅行

parent fc44a54c
...@@ -166,6 +166,7 @@ class YHTravelDocsPreparationDetailVC: YHBaseViewController { ...@@ -166,6 +166,7 @@ class YHTravelDocsPreparationDetailVC: YHBaseViewController {
if !checkInfo() { if !checkInfo() {
return return
} }
saveAllTravelCertificate()
} }
func checkInfo() -> Bool { func checkInfo() -> Bool {
...@@ -176,15 +177,24 @@ class YHTravelDocsPreparationDetailVC: YHBaseViewController { ...@@ -176,15 +177,24 @@ class YHTravelDocsPreparationDetailVC: YHBaseViewController {
hasError = true hasError = true
item.cerDetailModel.isNeedCheckCer = true item.cerDetailModel.isNeedCheckCer = true
if item.cerDetailModel.type == 3 { if item.cerDetailModel.type == 3 {
item.cerDetailModel.checkTips = "请上传港澳通行证" item.cerDetailModel.checkTips = item.cerDetailModel.img_front.isEmpty ? "请上传港澳通行证正面" : "请上传港澳通行证反面"
} }
}
if item.cerDetailModel.issue_start.isEmpty || item.cerDetailModel.issue_end.isEmpty { } else {
hasError = true
item.cerDetailModel.isNeedCheckDate = true if item.cerDetailModel.issue_start.isEmpty || item.cerDetailModel.issue_end.isEmpty {
hasError = true
item.cerDetailModel.isNeedCheckDate = true
} else {
if !item.cerDetailModel.isValidCer() {
hasError = true
item.cerDetailModel.isNeedCheckCer = true
item.cerDetailModel.checkTips = "有效期不足,请核查文件"
}
}
} }
if !hasError { if !hasError {
item.cerDetailModel.isNeedCheckCer = false item.cerDetailModel.isNeedCheckCer = false
item.cerDetailModel.isNeedCheckDate = false item.cerDetailModel.isNeedCheckDate = false
...@@ -245,19 +255,35 @@ private extension YHTravelDocsPreparationDetailVC { ...@@ -245,19 +255,35 @@ private extension YHTravelDocsPreparationDetailVC {
] ]
} }
*/ */
var cerArr:[[String: Any]] = []
for item in sectionItems {
if item.type == .certificate {
let dic: [String: Any] = [
"type" : item.cerDetailModel.type,
"img_front" : item.cerDetailModel.img_front,
"img_back" : item.cerDetailModel.img_back,
"issue_start" : item.cerDetailModel.issue_start,
"issue_end" : item.cerDetailModel.issue_end,
]
cerArr.append(dic)
}
}
let params = [ let params = [
"order_id":orderId, "order_id":orderId,
"user_id":dataModel.id, "user_id":dataModel.id,
"user_type":dataModel.type, "user_type":dataModel.type,
"certificates":[] // TODO: 杜宇哥完善下这个数据 "certificates":cerArr // TODO: 杜宇哥完善下这个数据
] as [String : Any] ] as [String : Any]
YHHUD.show(.progress(message: "保存中"))
viewModel.saveTravelDocsInfo(params: params) { success, error in viewModel.saveTravelDocsInfo(params: params) { success, error in
YHHUD.hide()
if success { if success {
YHHUD.flash(message: "保存成功")
} else { return
} }
YHHUD.flash(message: error?.errorMsg ?? "保存失败")
} }
} }
} }
...@@ -292,10 +318,10 @@ extension YHTravelDocsPreparationDetailVC: UITableViewDelegate, UITableViewDataS ...@@ -292,10 +318,10 @@ extension YHTravelDocsPreparationDetailVC: UITableViewDelegate, UITableViewDataS
cell.updateBlock = { cell.updateBlock = {
[weak self] in [weak self] in
guard let self = self else { return } guard let self = self else { return }
self.checkInfo()
self.tableView.reloadData() self.tableView.reloadData()
} }
cell.templateClick = { cell.templateClick = {
// 证件类型 1-护照 2-中国旅行证 3-港澳通行证 4-存款证明 5-其他 // 证件类型 1-护照 2-中国旅行证 3-港澳通行证 4-存款证明 5-其他
[weak self] type in [weak self] type in
guard let self = self else { return } guard let self = self else { return }
......
...@@ -61,4 +61,26 @@ class YHTravelDocsPreparationDetailItemModel: SmartCodable { ...@@ -61,4 +61,26 @@ class YHTravelDocsPreparationDetailItemModel: SmartCodable {
self.remark = remark self.remark = remark
self.nationality = nationality self.nationality = nationality
} }
func isValidCer() -> Bool {
let latestDate = self.latest_validaty_date
let isValid = self.compareDates(dateString1: latestDate, dateString2: self.issue_end)
return isValid
}
// 比较 dateString1 与 dateString2 的日期大小
func compareDates(dateString1: String, dateString2: String) -> Bool {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
guard let date1 = dateFormatter.date(from: dateString1),
let date2 = dateFormatter.date(from: dateString2) else {
return false
}
if date1 <= date2 {
return false
}
return true
}
} }
...@@ -91,7 +91,6 @@ class YHTravelCertificateUploadCell: UITableViewCell { ...@@ -91,7 +91,6 @@ class YHTravelCertificateUploadCell: UITableViewCell {
label.numberOfLines = 0 label.numberOfLines = 0
label.font = UIFont.PFSC_R(ofSize: 13) label.font = UIFont.PFSC_R(ofSize: 13)
label.textColor = UIColor.failColor label.textColor = UIColor.failColor
label.text = "被驳回原因:你的证件不合格不合格不合格不合格"
return label return label
}() }()
...@@ -100,7 +99,6 @@ class YHTravelCertificateUploadCell: UITableViewCell { ...@@ -100,7 +99,6 @@ class YHTravelCertificateUploadCell: UITableViewCell {
label.numberOfLines = 0 label.numberOfLines = 0
label.font = UIFont.PFSC_R(ofSize: 13) label.font = UIFont.PFSC_R(ofSize: 13)
label.textColor = UIColor.failColor label.textColor = UIColor.failColor
label.text = "有效期未覆盖赴港日期,请核查文件"
return label return label
}() }()
...@@ -112,7 +110,6 @@ class YHTravelCertificateUploadCell: UITableViewCell { ...@@ -112,7 +110,6 @@ class YHTravelCertificateUploadCell: UITableViewCell {
guard let self = self else { return } guard let self = self else { return }
self.dataModel.img_front = url self.dataModel.img_front = url
self.getOCR(url: url, isBack: 0) self.getOCR(url: url, isBack: 0)
self.updateBlock?()
} }
view.deleteBlock = { view.deleteBlock = {
[weak self] url, index in [weak self] url, index in
...@@ -131,7 +128,6 @@ class YHTravelCertificateUploadCell: UITableViewCell { ...@@ -131,7 +128,6 @@ class YHTravelCertificateUploadCell: UITableViewCell {
guard let self = self else { return } guard let self = self else { return }
self.dataModel.img_back = url self.dataModel.img_back = url
self.getOCR(url: url, isBack: 1) self.getOCR(url: url, isBack: 1)
self.updateBlock?()
} }
view.deleteBlock = { view.deleteBlock = {
[weak self] url, index in [weak self] url, index in
...@@ -177,6 +173,7 @@ class YHTravelCertificateUploadCell: UITableViewCell { ...@@ -177,6 +173,7 @@ class YHTravelCertificateUploadCell: UITableViewCell {
} else if item.id == .deadDate { } else if item.id == .deadDate {
self.dataModel.issue_end = time self.dataModel.issue_end = time
} }
self.updateBlock?()
} }
} else if item.id == .kind { } else if item.id == .kind {
...@@ -252,6 +249,7 @@ class YHTravelCertificateUploadCell: UITableViewCell { ...@@ -252,6 +249,7 @@ class YHTravelCertificateUploadCell: UITableViewCell {
} }
let isShowCheck = (model.isNeedCheckCer && !model.checkTips.isEmpty) let isShowCheck = (model.isNeedCheckCer && !model.checkTips.isEmpty)
unvalidLabel.text = model.checkTips
unvalidLabel.snp.remakeConstraints { make in unvalidLabel.snp.remakeConstraints { make in
make.top.equalTo(certificateFrontView.snp.bottom).offset(isShowCheck ? 8 : 0) make.top.equalTo(certificateFrontView.snp.bottom).offset(isShowCheck ? 8 : 0)
...@@ -388,38 +386,33 @@ extension YHTravelCertificateUploadCell { ...@@ -388,38 +386,33 @@ extension YHTravelCertificateUploadCell {
//进行ocr识别 //进行ocr识别
YHHUD.show(.progress(message: "识别中...")) YHHUD.show(.progress(message: "识别中..."))
self.viewModel.getHKCardInfoByOcr(url, isBack: isBack) { success, error in
YHHUD.hide() if isBack == 1 {
if success { self.viewModel.getHKCardBackInfoByOcr(url, isBack: isBack) { success, result in
// if let tmpModel = self.viewModel.hkMacoCardOcrInfo { YHHUD.hide()
// self.dataModel.issue_start = tmpModel.term_begins if success, let result = result {
// self.dataModel.issue_end = tmpModel.end_of_term self.dataModel.issue_start = result.term_begins
// let latestDate = self.dataModel.latest_validaty_date self.dataModel.issue_end = result.end_of_term
// let isValid = self.compareDates(dateString1: latestDate, dateString2: tmpModel.end_of_term) self.updateBlock?()
// if !isValid { } else {
// self.dataModel.isNeedCheckCer = true self.updateBlock?()
// self.dataModel.checkTips = "有效期不足,请核查文件" }
// } }
// self.updateBlock?()
// } } else {
self.viewModel.getHKCardInfoByOcr(url, isBack: isBack) { success, result in
YHHUD.hide()
if success, let result = result {
self.dataModel.issue_start = result.term_begins
self.dataModel.issue_end = result.end_of_term
self.updateBlock?()
} else {
self.updateBlock?()
}
} }
} }
} }
} }
// 比较 dateString1 与 dateString2 的日期大小
func compareDates(dateString1: String, dateString2: String) -> Bool {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
guard let date1 = dateFormatter.date(from: dateString1),
let date2 = dateFormatter.date(from: dateString2) else {
return false
}
if date1 <= date2 {
return false
}
return true
}
} }
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