Commit 3867ab6e authored by David黄金龙's avatar David黄金龙

提取ocr 方法

parent 9edaf993
......@@ -18,14 +18,88 @@ class YHSmallWhiteBarInfo: SmartCodable {
}
}
class YHCardOcrModel: SmartCodable {
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 = ""
var is_back: String = ""
required init() {
}
}
class YHBaseViewModel {
// MARK: 属性
//小白条信息
var smallWhiteBarInfo : YHSmallWhiteBarInfo?
//港澳通行证 ocr 信息
var hkMacoCardOcrInfo : YHCardOcrModel?
//中国身份证 ocr 信息
var chinaCardOcrInfo : YHCardOcrModel?
// MARK: 接口
//3、orc识别 中国身份证
func getChinaCardInfoByOcr(_ url: String, isBack: Int, callBackBlock:@escaping (_ success: Bool, _ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curOssURL() + YHAllApiName.OCR.cn
let params: [String : Any] = ["url": url,
"is_back": isBack]
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
let dic = json.data
guard let result = YHCardOcrModel.deserialize(dict:dic as? [AnyHashable: Any]) else {
callBackBlock(false, nil)
return
}
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
callBackBlock(false,err)
}
}
//1、获取小白条信息
//2、orc识别 港澳通行证
func getHKCardInfoByOcr(_ url: String, isBack: Int, callBackBlock:@escaping (_ success: Bool, _ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curOssURL() + YHAllApiName.OCR.hk
let params: [String : Any] = ["url": url,
"is_back": isBack]
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
let dic = json.data
guard let result = YHCardOcrModel.deserialize(dict:dic as? [AnyHashable: Any]) else {
callBackBlock(false, nil)
return
}
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
callBackBlock(false,err)
}
}
//1、ocr获取小白条信息
func getSmallWhiteBarInfoByOcr(_ url: String, callBackBlock:@escaping (_ success: Bool, _ error:YHErrorModel?)->()) {
if YHNetworkStatusManager.shared.isNetWorkOK == false {
DispatchQueue.main.async {
......@@ -62,6 +136,13 @@ class YHBaseViewModel {
}
}
// 图片上传
func uploadImage(_ image: UIImage, _ isPublic: Bool = false, callBackBlock:@escaping (_ success: String?, _ error:YHErrorModel?)->()) {
//#if DEBUG
......
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