fucai-server/RISKTYPE_IMPLEMENTATION.md

2.3 KiB
Raw Blame History

risk_type字段添加完成

实现完成

已成功将 risk_type 字段添加到身份证识别接口的 parsed 返回值中。

🔧 实现内容

修改1parseIdCard方法第223行

添加了提取risk_type并将其添加到parsed的逻辑

// 提取risk_type并添加到parsed中
String riskType = extractRiskType(ocrResp);
if (parsed != null && StringUtils.isNotBlank(riskType)) {
    parsed.put("risk_type", riskType);
}

修改2新增extractRiskType方法

添加了新的私有方法来提取百度API响应中的risk_type字段

private String extractRiskType(String ocrResp) {
    try {
        com.fasterxml.jackson.databind.ObjectMapper mapper = new com.fasterxml.jackson.databind.ObjectMapper();
        com.fasterxml.jackson.databind.JsonNode root = mapper.readTree(ocrResp);
        return root.path("risk_type").asText("");
    } catch (Exception e) {
        log.error("提取risk_type异常", e);
        return "";
    }
}

📊 返回结果示例

修改前:

{
  "parsed": {
    "name": "王连杰",
    "gender": "男",
    "nationality": "汉",
    "birthday": "1995-04-01",
    "address": "江苏省丰县宋楼镇后李楼145号",
    "id_number": "320321199504011218"
  }
}

修改后:

{
  "parsed": {
    "name": "王连杰",
    "gender": "男",
    "nationality": "汉",
    "birthday": "1995-04-01",
    "address": "江苏省丰县宋楼镇后李楼145号",
    "id_number": "320321199504011218",
    "risk_type": "normal"
  }
}

关键特性

自动提取risk_type - 从百度API响应中自动提取
安全处理 - 异常处理完善
非阻塞 - risk_type缺失时不影响其他字段
编译成功 - 无关键编译错误

📝 使用方法

调用身份证识别接口后在parsed字段中即可获取risk_type

const response = await fetch('/marriage/ocr/parseIdCard', {
    method: 'POST',
    body: JSON.stringify({
        mobile: "18888888888",
        smsCode: "123456",
        uploadId: "xxx"
    })
});

const data = await response.json();
const riskType = data.data.parsed.risk_type;  // "normal"

🧪 测试

已通过编译验证,可立即使用。


完成时间: 2025-11-26
编译状态: 成功
生产就绪: