Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
ShenghuoquanBusiness
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
bp
ShenghuoquanBusiness
Commits
9f9610dd
Commit
9f9610dd
authored
Jun 22, 2021
by
yinjiacheng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix SHQBD-111 SHQBD-107 身份证两面OCR结果数据覆盖问题
parent
272d6069
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
52 additions
and
55 deletions
+52
-55
LifeAccountAuthDataManager.kt
...huoquan/newscontent/ui/auth/LifeAccountAuthDataManager.kt
+19
-32
LifeAccountIDCardAuthFragment.kt
...quan/newscontent/ui/auth/LifeAccountIDCardAuthFragment.kt
+33
-23
No files found.
Components/newscontent/src/main/java/com/yidian/shenghuoquan/newscontent/ui/auth/LifeAccountAuthDataManager.kt
View file @
9f9610dd
...
...
@@ -19,39 +19,26 @@ object LifeAccountAuthDataManager {
val
merchantAuthData
by
lazy
{
LifeAccountMerchantAuthData
()
}
/**
* 将身份证OCR结果填入
* 将身份证
人像面
OCR结果填入
*/
fun
generatePersonalAuthData
(
data
:
GetIDCardOCRBean
.
Response
)
{
if
(
data
.
posit
.
completeness
!=
-
1
)
{
personalAuthData
.
idCardPortraitFaceCompleteness
=
data
.
posit
.
completeness
}
if
(
data
.
back
.
completeness
!=
-
1
)
{
personalAuthData
.
idCardNationalEmblemFaceCompleteness
=
data
.
back
.
completeness
}
if
(
data
.
posit
.
idcard_number
.
isNotEmpty
())
{
personalAuthData
.
idCardNum
=
data
.
posit
.
idcard_number
}
if
(
data
.
posit
.
gender
.
isNotEmpty
())
{
personalAuthData
.
gender
=
data
.
posit
.
gender
}
if
(
data
.
posit
.
name
.
isNotEmpty
())
{
personalAuthData
.
realName
=
data
.
posit
.
name
}
if
(
data
.
posit
.
address
.
isNotEmpty
())
{
personalAuthData
.
address
=
data
.
posit
.
address
}
if
(
data
.
posit
.
nationality
.
isNotEmpty
())
{
personalAuthData
.
nationality
=
data
.
posit
.
nationality
}
if
(
data
.
back
.
valid_date_start
.
isNotEmpty
())
{
personalAuthData
.
validDateStart
=
data
.
back
.
valid_date_start
}
if
(
data
.
back
.
valid_date_end
.
isNotEmpty
())
{
personalAuthData
.
validDateEnd
=
data
.
back
.
valid_date_end
}
if
(
data
.
back
.
issued_by
.
isNotEmpty
())
{
personalAuthData
.
issuedBy
=
data
.
back
.
issued_by
}
fun
generateIDCardPortraitFaceData
(
data
:
GetIDCardOCRBean
.
Response
)
{
personalAuthData
.
idCardPortraitFaceCompleteness
=
data
.
posit
.
completeness
personalAuthData
.
idCardNum
=
data
.
posit
.
idcard_number
personalAuthData
.
gender
=
data
.
posit
.
gender
personalAuthData
.
realName
=
data
.
posit
.
name
personalAuthData
.
address
=
data
.
posit
.
address
personalAuthData
.
nationality
=
data
.
posit
.
nationality
}
/**
* 将身份证国徽面OCR结果填入
*/
fun
generateIDCardNationEmblemFaceData
(
data
:
GetIDCardOCRBean
.
Response
)
{
personalAuthData
.
idCardNationalEmblemFaceCompleteness
=
data
.
back
.
completeness
personalAuthData
.
validDateStart
=
data
.
back
.
valid_date_start
personalAuthData
.
validDateEnd
=
data
.
back
.
valid_date_end
personalAuthData
.
issuedBy
=
data
.
back
.
issued_by
}
/**
...
...
Components/newscontent/src/main/java/com/yidian/shenghuoquan/newscontent/ui/auth/LifeAccountIDCardAuthFragment.kt
View file @
9f9610dd
...
...
@@ -50,9 +50,8 @@ import java.io.File
* description: 生活号身份证认证
*/
class
LifeAccountIDCardAuthFragment
:
BaseFragment
<
FragmentLifeAccountIdCardAuthBinding
>(),
View
.
OnClickListener
,
BottomSelectAdapter
.
OnItemClickListener
<
BottomSelectBean
>,
IGetIDCardOCRCallback
,
AuthPersonalGetTokenCallback
,
IdentifyIdOcrVerifyCallback
,
PreCallback
,
DetectCallback
,
KS3Core
.
OnKS3TaskListener
,
IAuthPersonalCheckCallback
,
View
.
OnClickListener
,
BottomSelectAdapter
.
OnItemClickListener
<
BottomSelectBean
>,
AuthPersonalGetTokenCallback
,
IdentifyIdOcrVerifyCallback
,
PreCallback
,
DetectCallback
,
KS3Core
.
OnKS3TaskListener
,
IAuthPersonalCheckCallback
,
IAuthLiveIdentityCallback
,
LifeAccountAuthImageView
.
OnLifeAccountAuthImageViewCallback
,
LifeAccountAuthIdentityInfoEditView
.
OnLifeAccountAuthIdentityInfoEditViewCallback
,
IAuthIndividualBusinessIdentityCommitCallback
,
IAuthEnterpriseLiveIdentityCallback
,
...
...
@@ -481,14 +480,43 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
private
fun
startIDCardOCR
(
face
:
Int
,
objectKey
:
String
?,
bucket
:
String
?)
{
if
(
face
==
Constant
.
ID_CARD_PORTRAIT_FACE
)
{
ApiService
.
getIDCardOCR
(
this
,
hashMapOf
(
object
:
IGetIDCardOCRCallback
{
override
fun
getIDCardOCRSuccess
(
result
:
GetIDCardOCRBean
.
Response
?)
{
result
?.
let
{
LifeAccountAuthDataManager
.
generateIDCardPortraitFaceData
(
it
)
}
// 回显OCR结果
viewBinding
.
evRealName
.
fillEditContent
(
result
?.
posit
?.
name
)
viewBinding
.
evIdCardNumber
.
fillEditContent
(
result
?.
posit
?.
idcard_number
)
// 此时身份证人像面已上传并OCR识别完成 删除本地临时存储文件
File
(
cachePath
+
Constant
.
FILE_PATH_ID_CARD_PORTRAIT_FACE
).
apply
{
if
(
exists
())
delete
()
}
}
override
fun
getIDCardOCRFailure
(
message
:
String
?)
{
}
},
hashMapOf
(
Pair
(
"posit_image_objectid"
,
objectKey
),
Pair
(
"posit_bucket"
,
bucket
)
)
)
}
else
{
ApiService
.
getIDCardOCR
(
this
,
hashMapOf
(
object
:
IGetIDCardOCRCallback
{
override
fun
getIDCardOCRSuccess
(
result
:
GetIDCardOCRBean
.
Response
?)
{
result
?.
let
{
LifeAccountAuthDataManager
.
generateIDCardNationEmblemFaceData
(
it
)
}
// 此时身份证国徽面已上传并OCR识别完成 删除本地临时存储文件
File
(
cachePath
+
Constant
.
FILE_PATH_ID_CARD_NATIONAL_EMBLEM_FACE
).
apply
{
if
(
exists
())
delete
()
}
}
override
fun
getIDCardOCRFailure
(
message
:
String
?)
{
}
},
hashMapOf
(
Pair
(
"back_image_objectid"
,
objectKey
),
Pair
(
"back_bucket"
,
bucket
)
)
...
...
@@ -496,24 +524,6 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
}
}
override
fun
getIDCardOCRSuccess
(
result
:
GetIDCardOCRBean
.
Response
?)
{
result
?.
let
{
LifeAccountAuthDataManager
.
generatePersonalAuthData
(
it
)
}
// 回显OCR结果
viewBinding
.
evRealName
.
fillEditContent
(
result
?.
posit
?.
name
)
viewBinding
.
evIdCardNumber
.
fillEditContent
(
result
?.
posit
?.
idcard_number
)
// 此时身份证已上传并OCR识别完成 删除本地临时存储文件
File
(
cachePath
+
Constant
.
FILE_PATH_ID_CARD_PORTRAIT_FACE
).
apply
{
if
(
exists
())
delete
()
}
File
(
cachePath
+
Constant
.
FILE_PATH_ID_CARD_NATIONAL_EMBLEM_FACE
).
apply
{
if
(
exists
())
delete
()
}
}
override
fun
getIDCardOCRFailure
(
message
:
String
?)
{
}
override
fun
getTokenSuccess
(
t
:
HttpResult
<
AuthPersonalGetTokenBean
.
Response
?
>?)
{
LifeAccountAuthDataManager
.
personalAuthData
.
liveDetectBizToken
=
t
?.
result
?.
biz_token
megLiveManager
.
preDetect
(
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment