f
This commit is contained in:
@@ -112,7 +112,7 @@ func (r *VerificationService) TwoFactorVerification(request TwoFactorVerificatio
|
||||
}
|
||||
|
||||
func (r *VerificationService) ThreeFactorVerification(request ThreeFactorVerificationRequest) (*VerificationResult, error) {
|
||||
resp, err := r.tianyuanapi.CallInterface("YYSY09CD", map[string]interface{}{
|
||||
resp, err := r.tianyuanapi.CallInterface("YYSYC4R9", map[string]interface{}{
|
||||
"name": request.Name,
|
||||
"id_card": request.IDCard,
|
||||
"mobile_no": request.Mobile,
|
||||
@@ -126,28 +126,38 @@ func (r *VerificationService) ThreeFactorVerification(request ThreeFactorVerific
|
||||
return nil, fmt.Errorf("转换响应失败: %v", err)
|
||||
}
|
||||
|
||||
// 解析data.code
|
||||
code := gjson.GetBytes(respBytes, "code")
|
||||
if !code.Exists() {
|
||||
result := gjson.GetBytes(respBytes, "result")
|
||||
if !result.Exists() {
|
||||
return &VerificationResult{
|
||||
Passed: false,
|
||||
Err: &ValidationError{Message: "身份信息异常"},
|
||||
}, nil
|
||||
}
|
||||
|
||||
codeStr := code.String()
|
||||
switch codeStr {
|
||||
case "1000":
|
||||
// 一致
|
||||
switch result.Int() {
|
||||
case 1:
|
||||
return &VerificationResult{Passed: true, Err: nil}, nil
|
||||
case "1001":
|
||||
// 不一致
|
||||
case 2:
|
||||
return &VerificationResult{
|
||||
Passed: false,
|
||||
Err: &ValidationError{Message: "姓名、证件号、手机号信息不一致"},
|
||||
Err: &ValidationError{Message: "姓名、身份证号码与手机号实名信息均不一致"},
|
||||
}, nil
|
||||
case 3:
|
||||
return &VerificationResult{
|
||||
Passed: false,
|
||||
Err: &ValidationError{Message: "姓名与手机号实名信息不一致"},
|
||||
}, nil
|
||||
case 4:
|
||||
return &VerificationResult{
|
||||
Passed: false,
|
||||
Err: &ValidationError{Message: "身份证号码与手机号实名信息不一致"},
|
||||
}, nil
|
||||
case 5:
|
||||
return &VerificationResult{
|
||||
Passed: false,
|
||||
Err: &ValidationError{Message: "无实名记录"},
|
||||
}, nil
|
||||
default:
|
||||
// 其他异常
|
||||
return &VerificationResult{
|
||||
Passed: false,
|
||||
Err: &ValidationError{Message: "身份信息异常"},
|
||||
|
||||
Reference in New Issue
Block a user