From df89589b25a56c6a97de9fde0a691fc296efe362 Mon Sep 17 00:00:00 2001 From: "3075067877@qq.com" <3075067877@qq.com> Date: Tue, 9 Sep 2025 17:14:36 +0800 Subject: [PATCH] fix 3 --- .../com/ouxuan/oxface/OXFaceOnlineActivity.java | 6 ++++ .../oxface/network/OrderVerificationManager.java | 8 +++++ .../network/OrderVerificationResultHandler.java | 36 ++++++++++++++++++---- 3 files changed, 44 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java b/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java index fda6f71..33c0e30 100644 --- a/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java +++ b/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java @@ -250,6 +250,12 @@ public class OXFaceOnlineActivity extends BaseActivity implements View.OnClickLi } @Override + public void onVerificationSuccessWithFullResponse(com.ouxuan.oxface.network.api.PadApiService.CheckOrderResult data, int verificationType, String fullResponseJson) { + // 当前不使用这个方法,保持兼容性 + orderVerificationResultHandler.handleVerificationSuccess(data, verificationType); + } + + @Override public void onVerificationError(int errorCode, String errorMessage, int verificationType) { orderVerificationResultHandler.handleVerificationError(errorCode, errorMessage, verificationType); } diff --git a/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationManager.java b/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationManager.java index 35f5797..b69222d 100644 --- a/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationManager.java +++ b/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationManager.java @@ -56,6 +56,14 @@ public class OrderVerificationManager { void onVerificationSuccess(PadApiService.CheckOrderResult data, int verificationType); /** + * 验证成功回调(包含完整响应数据) + * @param data 返回的数据 + * @param verificationType 验证类型 + * @param fullResponseJson 完整的响应JSON字符串 + */ + void onVerificationSuccessWithFullResponse(PadApiService.CheckOrderResult data, int verificationType, String fullResponseJson); + + /** * 验证失败回调 * @param errorCode 错误码 * @param errorMessage 错误信息 diff --git a/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationResultHandler.java b/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationResultHandler.java index 1d9cf34..e03ff68 100644 --- a/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationResultHandler.java +++ b/app/src/main/java/com/ouxuan/oxface/network/OrderVerificationResultHandler.java @@ -188,11 +188,24 @@ public class OrderVerificationResultHandler { * 处理人脸验证结果 */ private void handleFaceVerificationResult(PadApiService.CheckOrderResult data) { - // 将订单数据转为JSON字符串 + // 重新构造完整的响应数据结构,包含所有必要字段 Gson gson = new Gson(); - String orderDataJson = gson.toJson(data); - LogManager.logInfo(TAG, "准备跳转到订单选择页面:"+orderDataJson); + // 创建完整的响应结构,匹配原始API响应格式 + java.util.Map fullResponse = new java.util.HashMap<>(); + fullResponse.put("code", 0); + fullResponse.put("message", ""); + fullResponse.put("extension", "extension_fixed"); + + // 创建data部分 + java.util.Map dataMap = new java.util.HashMap<>(); + dataMap.put("result", data.getResult()); + dataMap.put("skip", 0); + fullResponse.put("data", dataMap); + + String orderDataJson = gson.toJson(fullResponse); + + LogManager.logInfo(TAG, "准备跳转到订单选择页面(完整数据):" + orderDataJson); if (listener != null) { listener.showToast("人脸验证成功,准备跳转到订单选择页面"); listener.navigateToOrderSelectionPage(orderDataJson, OrderVerificationManager.TYPE_FACE_VERIFICATION, null); @@ -207,11 +220,22 @@ public class OrderVerificationResultHandler { listener.showToast("操作成功,正在跳转..."); } - // 将订单数据转为JSON字符串 + // 重新构造完整的响应数据结构 Gson gson = new Gson(); - String orderDataJson = gson.toJson(data); - LogManager.logInfo(TAG, "准备跳转到订单选择页面"); + java.util.Map fullResponse = new java.util.HashMap<>(); + fullResponse.put("code", 0); + fullResponse.put("message", ""); + fullResponse.put("extension", "extension_fixed"); + + java.util.Map dataMap = new java.util.HashMap<>(); + dataMap.put("result", data.getResult()); + dataMap.put("skip", 0); + fullResponse.put("data", dataMap); + + String orderDataJson = gson.toJson(fullResponse); + + LogManager.logInfo(TAG, "准备跳转到订单选择页面(扫码验证)"); if (listener != null) { listener.navigateToOrderSelectionPage(orderDataJson, OrderVerificationManager.TYPE_SCAN_VERIFICATION, null); }