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

// 旅行

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