diff --git a/app/src/main/java/com/ouxuan/oxface/orderOX/OrderSelectionActivity.java b/app/src/main/java/com/ouxuan/oxface/orderOX/OrderSelectionActivity.java index 4c89ac9..baec26e 100644 --- a/app/src/main/java/com/ouxuan/oxface/orderOX/OrderSelectionActivity.java +++ b/app/src/main/java/com/ouxuan/oxface/orderOX/OrderSelectionActivity.java @@ -291,10 +291,10 @@ public class OrderSelectionActivity extends AppCompatActivity { int orderType = order.getOrder_type(); // 获取卡号 - String cardNo = order.getInfo() != null ? order.getInfo().getCard_no() : ""; + String cardNo = order.getInfo() != null ? order.getCardNoFromInfo() : ""; // 获取用户人脸ID - String userFaceId = order.getInfo() != null ? order.getInfo().getUser_face_id() : ""; + String userFaceId = order.getInfo() != null ? order.getUserFaceIdFromInfo() : ""; LogManager.logInfo(TAG, "调用核销接口: orderId=" + orderId + ", verifyCode=" + verifyCode + ", hardwareId=" + hardwareId + ", orderType=" + orderType + ", cardNo=" + cardNo + @@ -351,7 +351,7 @@ public class OrderSelectionActivity extends AppCompatActivity { intent.putExtra("order_no", order.getOrder_no()); intent.putExtra("verification_code", verifyCode); intent.putExtra("order_type", order.getOrder_type()); - intent.putExtra("card_no", order.getInfo() != null ? order.getInfo().getCard_no() : ""); + intent.putExtra("card_no", order.getInfo() != null ? order.getCardNoFromInfo() : ""); intent.putExtra("project", order.getProject()); intent.putExtra("status", status); intent.putExtra("message", message); @@ -373,7 +373,7 @@ public class OrderSelectionActivity extends AppCompatActivity { resultIntent.putExtra("order_no", order.getOrder_no()); resultIntent.putExtra("verification_code", verifyCode); resultIntent.putExtra("order_type", order.getOrder_type()); - resultIntent.putExtra("card_no", order.getInfo() != null ? order.getInfo().getCard_no() : ""); + resultIntent.putExtra("card_no", order.getInfo() != null ? order.getCardNoFromInfo() : ""); resultIntent.putExtra("project", order.getProject()); resultIntent.putExtra("verification_type", verificationType); resultIntent.putExtra("verify_status", status); @@ -403,7 +403,7 @@ public class OrderSelectionActivity extends AppCompatActivity { intent.putExtra("order_no", order.getOrder_no()); intent.putExtra("verification_code", verifyCode); intent.putExtra("order_type", order.getOrder_type()); - intent.putExtra("card_no", order.getInfo() != null ? order.getInfo().getCard_no() : ""); + intent.putExtra("card_no", order.getInfo() != null ? order.getCardNoFromInfo() : ""); intent.putExtra("project", order.getProject()); intent.putExtra("status", "核销失败"); intent.putExtra("message", displayMessage); @@ -445,7 +445,7 @@ public class OrderSelectionActivity extends AppCompatActivity { intent.putExtra("order_no", order.getOrder_no()); intent.putExtra("verification_code", verifyCode); intent.putExtra("order_type", order.getOrder_type()); - intent.putExtra("card_no", order.getInfo() != null ? order.getInfo().getCard_no() : ""); + intent.putExtra("card_no", order.getInfo() != null ? order.getCardNoFromInfo() : ""); intent.putExtra("project", order.getProject()); intent.putExtra("status", "核销异常"); intent.putExtra("message", displayMessage); diff --git a/app/src/main/java/com/ouxuan/oxface/orderOX/adapter/OrderSelectionAdapter.java b/app/src/main/java/com/ouxuan/oxface/orderOX/adapter/OrderSelectionAdapter.java index 9767b5d..c77c9c1 100644 --- a/app/src/main/java/com/ouxuan/oxface/orderOX/adapter/OrderSelectionAdapter.java +++ b/app/src/main/java/com/ouxuan/oxface/orderOX/adapter/OrderSelectionAdapter.java @@ -136,7 +136,7 @@ public class OrderSelectionAdapter extends RecyclerView.Adapter v_code; - private OrderInfo info; + private JsonElement info; // 使用JsonElement来支持多种类型(字符串或对象) private int success; private int pv_usage_duration; private boolean many_enter; + // info字段的内部类,用于表示对象类型的info public static class OrderInfo { + @SerializedName("card_no") private String card_no; + @SerializedName("rest_number") private int rest_number; + @SerializedName("status") private int status; + @SerializedName("user_face_id") private String user_face_id; // 课程相关信息 @@ -198,14 +206,34 @@ public class OrderVerificationData { this.v_code = v_code; } - public OrderInfo getInfo() { + public JsonElement getInfo() { return info; } - public void setInfo(OrderInfo info) { + public void setInfo(JsonElement info) { this.info = info; } + // 辅助方法,用于获取info中的card_no(如果info是对象类型) + public String getCardNoFromInfo() { + if (info != null && info.isJsonObject()) { + if (info.getAsJsonObject().has("card_no")) { + return info.getAsJsonObject().get("card_no").getAsString(); + } + } + return ""; + } + + // 辅助方法,用于获取info中的user_face_id(如果info是对象类型) + public String getUserFaceIdFromInfo() { + if (info != null && info.isJsonObject()) { + if (info.getAsJsonObject().has("user_face_id")) { + return info.getAsJsonObject().get("user_face_id").getAsString(); + } + } + return ""; + } + public int getSuccess() { return success; } @@ -256,7 +284,7 @@ public class OrderVerificationData { } /** - * 获取验证码字符串 + * 获取验证码字符串(取第一个验证码) */ public String getVerificationCode() { if (v_code != null && !v_code.isEmpty()) {