From 2faec8ef4ca23b12ae042d2337559847634c6a04 Mon Sep 17 00:00:00 2001 From: hwj Date: Fri, 24 Apr 2026 10:33:16 +0800 Subject: [PATCH] =?UTF-8?q?style=EF=BC=9A=E8=AE=BE=E5=A4=87=E6=A8=A1?= =?UTF-8?q?=E5=9D=97-=E6=89=8B=E5=8A=A8=E8=BE=93=E5=85=A5=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E6=96=B9=E5=BC=8F=E4=BC=A0=E5=8F=82=E6=94=B9=E7=94=A8?= =?UTF-8?q?code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/mes/equipment.js | 4 ++-- src/pages_function/pages/equipment/detail.vue | 20 +++++++++++++------ src/pages_function/pages/equipment/index.vue | 12 ++++++++--- 3 files changed, 25 insertions(+), 11 deletions(-) diff --git a/src/api/mes/equipment.js b/src/api/mes/equipment.js index 2152385..b7bccd2 100644 --- a/src/api/mes/equipment.js +++ b/src/api/mes/equipment.js @@ -1,10 +1,10 @@ import request from '@/utils/request' -export function getEquipmentDetail(id) { +export function getEquipmentDetail(id, params = {}) { return request({ url: '/admin-api/mes/device-ledger/get', method: 'get', - params: { id } + params: { id, ...params } }) } diff --git a/src/pages_function/pages/equipment/detail.vue b/src/pages_function/pages/equipment/detail.vue index 1a4d3da..125aaa6 100644 --- a/src/pages_function/pages/equipment/detail.vue +++ b/src/pages_function/pages/equipment/detail.vue @@ -214,6 +214,8 @@ import { DICT_TYPE, getDictLabel } from '@/utils/dict' const loading = ref(false) const deviceId = ref(undefined) +const deviceCode = ref(undefined) +const equipmentType = ref(undefined) const detailData = ref(null) const inspectionList = ref([]) const maintainList = ref([]) @@ -336,24 +338,30 @@ function handleTabChange(e) { } onLoad((query) => { - const rawId = query && (query.id !== undefined ? query.id : query.code) + const rawId = query && query.id const decoded = rawId ? decodeURIComponent(String(rawId)) : '' deviceId.value = decoded ? decoded : undefined + equipmentType.value = query && query.type + deviceCode.value = query && query.code fetchAll() }) async function fetchAll() { - if (!deviceId.value) { + if (!deviceId.value && !deviceCode.value) { uni.showToast({ title: '缺少设备ID', icon: 'none' }) return } loading.value = true try { + const isScan = equipmentType.value === 'scan' + const idParam = isScan ? { id: deviceId.value } : { code: deviceCode.value } + const deviceIdParam = isScan ? { deviceId: deviceId.value } : { code: deviceCode.value } + const [detailRes, inspectionRes, maintainRes, repairRes] = await Promise.all([ - getEquipmentDetail(deviceId.value), - getEquipmentInspectionByDeviceId(deviceId.value), - getEquipmentMaintenanceByDeviceId(deviceId.value), - getEquipmentRepairListByDeviceId(deviceId.value) + getEquipmentDetail(deviceId.value, idParam), + getEquipmentInspectionByDeviceId(deviceId.value, deviceIdParam), + getEquipmentMaintenanceByDeviceId(deviceId.value, deviceIdParam), + getEquipmentRepairListByDeviceId(deviceId.value, deviceIdParam) ]) detailData.value = normalizeDetail(detailRes) inspectionList.value = normalizeList(inspectionRes) diff --git a/src/pages_function/pages/equipment/index.vue b/src/pages_function/pages/equipment/index.vue index 8350369..320654e 100644 --- a/src/pages_function/pages/equipment/index.vue +++ b/src/pages_function/pages/equipment/index.vue @@ -120,12 +120,18 @@ function confirmInput() { return; } - navigateToDetail(equipmentCode.value.trim()); + navigateToDetail(equipmentCode.value.trim(), 'input'); } -function navigateToDetail(code) { +function navigateToDetail(code, type = 'scan') { + let url + if (type === 'scan') { + url = `/pages_function/pages/equipment/detail?id=${encodeURIComponent(code)}&type=${type}` + } else { + url = `/pages_function/pages/equipment/detail?code=${code}&type=${type}` + } uni.navigateTo({ - url: `/pages_function/pages/equipment/detail?id=${encodeURIComponent(code)}` + url: url }); }