Commit aac7bfef authored by pete谢兆麟's avatar pete谢兆麟

主申请人上传身份证逻辑

parent fd9eb38b
...@@ -8,6 +8,8 @@ ...@@ -8,6 +8,8 @@
/* Begin PBXBuildFile section */ /* Begin PBXBuildFile section */
04010B952B6A1DE90093F3BB /* YHSaveAndSubmitView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04010B942B6A1DE90093F3BB /* YHSaveAndSubmitView.swift */; }; 04010B952B6A1DE90093F3BB /* YHSaveAndSubmitView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04010B942B6A1DE90093F3BB /* YHSaveAndSubmitView.swift */; };
040ED45F2B91711A005CA3F8 /* YHCNIDCardModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 040ED45E2B91711A005CA3F8 /* YHCNIDCardModel.swift */; };
040ED4612B9173DE005CA3F8 /* YHHKIDCardModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 040ED4602B9173DE005CA3F8 /* YHHKIDCardModel.swift */; };
0413A6D82B8C76290006D154 /* YHCertificateUploadVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0413A6D72B8C76290006D154 /* YHCertificateUploadVC.swift */; }; 0413A6D82B8C76290006D154 /* YHCertificateUploadVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0413A6D72B8C76290006D154 /* YHCertificateUploadVC.swift */; };
041B52872B5657B3007EBCEB /* IMAppKey.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B52862B5657B3007EBCEB /* IMAppKey.swift */; }; 041B52872B5657B3007EBCEB /* IMAppKey.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B52862B5657B3007EBCEB /* IMAppKey.swift */; };
041B528D2B5E58FA007EBCEB /* YHFormItemDoubleChoiceCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B528C2B5E58FA007EBCEB /* YHFormItemDoubleChoiceCell.swift */; }; 041B528D2B5E58FA007EBCEB /* YHFormItemDoubleChoiceCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B528C2B5E58FA007EBCEB /* YHFormItemDoubleChoiceCell.swift */; };
...@@ -304,6 +306,8 @@ ...@@ -304,6 +306,8 @@
/* Begin PBXFileReference section */ /* Begin PBXFileReference section */
04010B942B6A1DE90093F3BB /* YHSaveAndSubmitView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSaveAndSubmitView.swift; sourceTree = "<group>"; }; 04010B942B6A1DE90093F3BB /* YHSaveAndSubmitView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSaveAndSubmitView.swift; sourceTree = "<group>"; };
040ED45E2B91711A005CA3F8 /* YHCNIDCardModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCNIDCardModel.swift; sourceTree = "<group>"; };
040ED4602B9173DE005CA3F8 /* YHHKIDCardModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKIDCardModel.swift; sourceTree = "<group>"; };
0413A6D72B8C76290006D154 /* YHCertificateUploadVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateUploadVC.swift; sourceTree = "<group>"; }; 0413A6D72B8C76290006D154 /* YHCertificateUploadVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateUploadVC.swift; sourceTree = "<group>"; };
041B52862B5657B3007EBCEB /* IMAppKey.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IMAppKey.swift; sourceTree = "<group>"; }; 041B52862B5657B3007EBCEB /* IMAppKey.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IMAppKey.swift; sourceTree = "<group>"; };
041B528C2B5E58FA007EBCEB /* YHFormItemDoubleChoiceCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHFormItemDoubleChoiceCell.swift; sourceTree = "<group>"; }; 041B528C2B5E58FA007EBCEB /* YHFormItemDoubleChoiceCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHFormItemDoubleChoiceCell.swift; sourceTree = "<group>"; };
...@@ -936,6 +940,8 @@ ...@@ -936,6 +940,8 @@
04E86E402B8357EC00A35F4B /* YHMainInformationModel.swift */, 04E86E402B8357EC00A35F4B /* YHMainInformationModel.swift */,
04E86E412B8357EC00A35F4B /* YHCountryMessage.swift */, 04E86E412B8357EC00A35F4B /* YHCountryMessage.swift */,
04E86E422B8357EC00A35F4B /* YHItemModel.swift */, 04E86E422B8357EC00A35F4B /* YHItemModel.swift */,
040ED45E2B91711A005CA3F8 /* YHCNIDCardModel.swift */,
040ED4602B9173DE005CA3F8 /* YHHKIDCardModel.swift */,
); );
path = M; path = M;
sourceTree = "<group>"; sourceTree = "<group>";
...@@ -1908,6 +1914,7 @@ ...@@ -1908,6 +1914,7 @@
04E86E312B81EA1000A35F4B /* YHWorkItemView.swift in Sources */, 04E86E312B81EA1000A35F4B /* YHWorkItemView.swift in Sources */,
A5191F642B89E926001069F7 /* YHPreviewOtherInformationViewController.swift in Sources */, A5191F642B89E926001069F7 /* YHPreviewOtherInformationViewController.swift in Sources */,
A5191F6A2B8B1888001069F7 /* YHPreviewInfoCertificateInformationItemsView.swift in Sources */, A5191F6A2B8B1888001069F7 /* YHPreviewInfoCertificateInformationItemsView.swift in Sources */,
040ED45F2B91711A005CA3F8 /* YHCNIDCardModel.swift in Sources */,
0468D4492B6258A900CFB916 /* YHItemView.swift in Sources */, 0468D4492B6258A900CFB916 /* YHItemView.swift in Sources */,
041B528F2B5E620E007EBCEB /* YHFormItemInputTextCell.swift in Sources */, 041B528F2B5E620E007EBCEB /* YHFormItemInputTextCell.swift in Sources */,
04E86E612B85CAEA00A35F4B /* YHWorkExampleModel.swift in Sources */, 04E86E612B85CAEA00A35F4B /* YHWorkExampleModel.swift in Sources */,
...@@ -1936,6 +1943,7 @@ ...@@ -1936,6 +1943,7 @@
0468D42B2B55019900CFB916 /* YHAnalytics.swift in Sources */, 0468D42B2B55019900CFB916 /* YHAnalytics.swift in Sources */,
A5ACE93C2B4564F7002C94D2 /* UIColor+Extension.swift in Sources */, A5ACE93C2B4564F7002C94D2 /* UIColor+Extension.swift in Sources */,
04E86E4F2B8479B700A35F4B /* YHWorkIntroductionItemView.swift in Sources */, 04E86E4F2B8479B700A35F4B /* YHWorkIntroductionItemView.swift in Sources */,
040ED4612B9173DE005CA3F8 /* YHHKIDCardModel.swift in Sources */,
044CC62D2B876C980083FF76 /* YHSheetPickerViewType.swift in Sources */, 044CC62D2B876C980083FF76 /* YHSheetPickerViewType.swift in Sources */,
04E86E5B2B84BF2000A35F4B /* YHWorkExampleTypeView.swift in Sources */, 04E86E5B2B84BF2000A35F4B /* YHWorkExampleTypeView.swift in Sources */,
042FBBBD2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift in Sources */, 042FBBBD2B63519C00F9DE23 /* YHFormItemSelectSheetCell.swift in Sources */,
......
//
// YHCNIDCardModel.swift
// galaxy
//
// Created by EDY on 2024/3/1.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHCNIDCardModel: YHBaseModel {
var gender: String = ""
var address: String = ""
var card_num: String = ""
var issuing_authority: String = ""
var birth: String = ""
var term_begins: String = ""
var end_of_term: String = ""
var nationality: String = ""
var name: String = ""
}
//
// YHHKIDCardModel.swift
// galaxy
//
// Created by EDY on 2024/3/1.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHHKIDCardModel: YHBaseModel {
var name: String = ""
var pingyin: String = ""
var birth: String = ""
var gender: String = ""
var term_begins: String = ""
var end_of_term: String = ""
var issuing_authority: String = ""
var card_num: String = ""
}
...@@ -223,6 +223,62 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel { ...@@ -223,6 +223,62 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
} }
} }
func updateModel(_ model: YHHKIDCardModel) {
if model.name.count != 0 {
mainModel.username = model.name
}
if model.birth.count != 0 {
mainModel.birthday = model.birth.toTimeString()
}
if model.gender.count != 0 {
if model.gender == "女" {
mainModel.sex = 2
} else {
mainModel.sex = 1
}
}
if model.term_begins.count != 0 {
mainModel.certificates.hk_macao_pass.issue_date_start_at = model.term_begins.toTimeString()
}
if model.end_of_term.count != 0 {
mainModel.certificates.hk_macao_pass.issue_date_end_at = model.end_of_term.toTimeString()
}
if model.issuing_authority.count != 0 {
mainModel.certificates.hk_macao_pass.issue_at = model.issuing_authority
}
if model.card_num.count != 0 {
mainModel.certificates.hk_macao_pass.number = model.card_num
}
}
func updateModel(_ model: YHCNIDCardModel) {
if model.name.count != 0 {
mainModel.username = model.name
}
if model.birth.count != 0 {
mainModel.birthday = model.birth.toTimeString()
}
if model.gender.count != 0 {
if model.gender == "女" {
mainModel.sex = 2
} else {
mainModel.sex = 1
}
}
if model.term_begins.count != 0 {
mainModel.certificates.hk_macao_pass.issue_date_start_at = model.term_begins.toTimeString()
}
if model.end_of_term.count != 0 {
mainModel.certificates.hk_macao_pass.issue_date_end_at = model.end_of_term.toTimeString()
}
if model.issuing_authority.count != 0 {
mainModel.certificates.hk_macao_pass.issue_at = model.issuing_authority
}
if model.card_num.count != 0 {
mainModel.certificates.hk_macao_pass.number = model.card_num
}
}
func requestMainInformation(_ orderID: String, callBackBlock:@escaping (_ success: YHMainInformationModel?, _ error:YHErrorModel?)->()) { func requestMainInformation(_ orderID: String, callBackBlock:@escaping (_ success: YHMainInformationModel?, _ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.OrderInformation.getInformation + "?order_id=\(orderID)" let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.OrderInformation.getInformation + "?order_id=\(orderID)"
// let strUrl = "http://192.168.25.48:18088/" + YHAllApiName.OrderInformation.getInformation + "?order_id=\(orderID)" // let strUrl = "http://192.168.25.48:18088/" + YHAllApiName.OrderInformation.getInformation + "?order_id=\(orderID)"
...@@ -355,37 +411,49 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel { ...@@ -355,37 +411,49 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
} }
} }
func requestCnIDCardMessage(_ url: String, callBackBlock:@escaping (_ success: String?, _ error:YHErrorModel?)->()) { func requestCnIDCardMessage(_ url: String, callBackBlock:@escaping (_ success: Bool, _ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.OrderInformation.cnIdCard let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.OrderInformation.cnIdCard
let params: [String : Any] = ["url": url] let params: [String : Any] = ["url": url]
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象 //1. json字符串 转 对象
guard let self = self else { return } guard let self = self else { return }
if json.code == 200 { if json.code == 200 {
// callBackBlock(json.data as? String, nil) let dic = json.data
guard let result = YHCNIDCardModel.deserialize(from: dic as? Dictionary) else {
callBackBlock(false, nil)
return
}
self.updateModel(result)
callBackBlock(true, 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(nil, error) callBackBlock(false, error)
} }
} failBlock: { err in } failBlock: { err in
callBackBlock(nil,err) callBackBlock(false,err)
} }
} }
func requestHkIDCardMessage(_ url: String, callBackBlock:@escaping (_ success: String?, _ error:YHErrorModel?)->()) { func requestHkIDCardMessage(_ url: String, callBackBlock:@escaping (_ success: Bool, _ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.OrderInformation.hkIdCard let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.OrderInformation.hkIdCard
let params: [String : Any] = ["url": url] let params: [String : Any] = ["url": url]
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象 //1. json字符串 转 对象
guard let self = self else { return } guard let self = self else { return }
if json.code == 200 { if json.code == 200 {
// callBackBlock(json.data as? String, nil) let dic = json.data
guard let result = YHHKIDCardModel.deserialize(from: dic as? Dictionary) else {
callBackBlock(false, nil)
return
}
self.updateModel(result)
callBackBlock(true, 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(nil, error) callBackBlock(false, error)
} }
} failBlock: { err in } failBlock: { err in
callBackBlock(nil,err) callBackBlock(false,err)
} }
} }
......
...@@ -144,6 +144,19 @@ extension String { ...@@ -144,6 +144,19 @@ extension String {
dateformatter.dateFormat="yyyy-MM-dd HH:mm:ss" dateformatter.dateFormat="yyyy-MM-dd HH:mm:ss"
return dateformatter.string(from: date as Date) return dateformatter.string(from: date as Date)
} }
func toTimeString() -> String {
let formatter = DateFormatter()
formatter.dateFormat = "yyyyMMdd" // 设置输入的日期格式
if let date = formatter.date(from: self) {
let newformatter = DateFormatter()
newformatter.dateFormat = "yyyy-MM-dd" // 设置输出的日期格式
let formatterDateString = newformatter.string(from: date)
return formatterDateString
} else {
return ""
}
}
} }
// MARK: - 正则获取http // MARK: - 正则获取http
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "service_card_delete@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "service_card_delete@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
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