From a4f591572677ee4f676c3827d2f3cfba4c875330 Mon Sep 17 00:00:00 2001 From: Yangk Date: Wed, 29 Apr 2026 10:00:52 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E8=BD=AE=E8=83=8E=E6=8A=A5?= =?UTF-8?q?=E5=BA=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tyre/maintenance/TireScrapActivity.java | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/example/tyre/maintenance/TireScrapActivity.java b/app/src/main/java/com/example/tyre/maintenance/TireScrapActivity.java index a7765dc..092840e 100644 --- a/app/src/main/java/com/example/tyre/maintenance/TireScrapActivity.java +++ b/app/src/main/java/com/example/tyre/maintenance/TireScrapActivity.java @@ -77,23 +77,35 @@ public class TireScrapActivity extends BaseActivity { binding.llScrapPosition.setOnClickListener(v -> showScrapReasonDialog()); - selectTire(carNo); + selectTire(); } // 查询轮胎信息 - private void selectTire(String carNo) { - OkGo.post(MyUrl.url + "/tyre/tyre/getCarBingTire").tag(this).params("carNo", carNo).execute(new StringCallback() { + private void selectTire() { + // 使用 order.getPlateNumber() 作为 tyreNo 进行查询,因为工单是根据轮胎创建的 + String tyreNo = order.getPlateNumber(); + if (tyreNo == null || tyreNo.isEmpty()) { + Toast.makeText(context, "工单未关联轮胎信息", Toast.LENGTH_SHORT).show(); + return; + } + + OkGo.post(MyUrl.url + "/tyre/tyre/list").tag(this).params("tyreNo", tyreNo).execute(new StringCallback() { @Override public void onSuccess(Response response) { - List baseTyreList = gson.fromJson(response.body(), new TypeToken>() { - }.getType()); - - if (baseTyreList != null && !baseTyreList.isEmpty()) { - // 默认展示第一个轮胎的基础信息 - selectedTire = baseTyreList.get(0); - binding.setTire(selectedTire); - } else { - Toast.makeText(context, "该车无绑定轮胎", Toast.LENGTH_SHORT).show(); + try { + org.json.JSONObject jsonObject = new org.json.JSONObject(response.body()); + if (jsonObject.has("rows")) { + org.json.JSONArray rows = jsonObject.getJSONArray("rows"); + if (rows.length() > 0) { + selectedTire = gson.fromJson(rows.getJSONObject(0).toString(), BaseTyre.class); + binding.setTire(selectedTire); + return; + } + } + Toast.makeText(context, "未查询到该轮胎信息", Toast.LENGTH_SHORT).show(); + } catch (Exception e) { + e.printStackTrace(); + Toast.makeText(context, "解析轮胎数据失败", Toast.LENGTH_SHORT).show(); } } }); @@ -261,6 +273,7 @@ public class TireScrapActivity extends BaseActivity { scrapDetail.setTireId(selectedTire.getTyreId()); scrapDetail.setTireCode(selectedTire.getTyreNo()); scrapDetail.setPositionName(selectedTire.getWheelPostion()); + scrapDetail.setPositionId(selectedTire.getWheelPostion()); scrapDetail.setDataType("报废"); // 暂不将两级原因结果存入数据库中,轮胎状态默认报废