From 7c1396de44ce2ed9fd81114835cd1723a3078cd9 Mon Sep 17 00:00:00 2001 From: hayu <1604366271@qq.com> Date: Wed, 22 Oct 2025 16:25:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/expectations/detail.vue | 6 +++ src/pages/repair/repairManage/details.vue | 61 +++++++++++++++-------- 2 files changed, 47 insertions(+), 20 deletions(-) diff --git a/src/pages/expectations/detail.vue b/src/pages/expectations/detail.vue index 34f69e2..0cd9408 100644 --- a/src/pages/expectations/detail.vue +++ b/src/pages/expectations/detail.vue @@ -72,6 +72,7 @@ typeId:'', agreementId:'', keyWord: '', + status: '', pageNum: 1, pageSize: 10 }) @@ -105,6 +106,11 @@ queryParams.value.useStatus = options.useStatus queryParams.value.typeId = item.value.typeId queryParams.value.agreementId = item.value.agreementId + if(item.value.status=== 'expired'){ + queryParams.value.status="0" + } else if(item.value.status=== 'about_to_expire'){ + queryParams.value.status="1" + } }) diff --git a/src/pages/repair/repairManage/details.vue b/src/pages/repair/repairManage/details.vue index 7289a1a..e5d70cc 100644 --- a/src/pages/repair/repairManage/details.vue +++ b/src/pages/repair/repairManage/details.vue @@ -126,17 +126,25 @@ const getRepairDetailsData = async () => { // 复选框全选 const onChangeAllChecked = (e) => { - detailsList.value.forEach((item) => { - if (e.detail.value.length > 0) { - if(Number(item.typeRepairNum)-Number(item.typeRepairedNum)-Number(item.typeScrapNum)==0){ - item.isChecked = false - }else{ - item.isChecked = true - } - } else { - item.isChecked = false - } - }) + detailsList.value.forEach((item) => { + if (e.detail.value.length > 0) { + const repairNum = Number(item.typeRepairNum) || 0; + const repairedNum = Number(item.typeRepairedNum) || 0; + const scrapNum = Number(item.typeScrapNum) || 0; + // 放大1000倍(支持两位或三位小数都安全) + const toInt = n => Math.round(n * 1000); + const diff = toInt(repairNum) - toInt(repairedNum) - toInt(scrapNum); + if (diff === 0) { + item.isChecked = false + }else if (toInt(repairedNum) + toInt(scrapNum)>toInt(repairNum)) { + item.isChecked = false + } else { + item.isChecked = true + } + } else { + item.isChecked = false + } + }) } // 复选框每一项 const onChangeChecked = (val) => { @@ -189,19 +197,32 @@ const onRepairItem = (item) => { uni.navigateTo({ url: `${codingUrl}?queryParams=${JSON.stringify(item)}` }) } if (item.manageType == 1) {// 数量维修 - if(Number(item.typeRepairNum)-Number(item.typeRepairedNum)-Number(item.typeScrapNum)==0){ - uni.showToast({ - title: '已完成维修', - icon: 'none', - }) - }else{ - codingUrl = '/pages/repair/repairManage/num-operate' - uni.navigateTo({ url: `${codingUrl}?queryParams=${JSON.stringify(item)}` }) - } + const repairNum = Number(item.typeRepairNum) || 0; + const repairedNum = Number(item.typeRepairedNum) || 0; + const scrapNum = Number(item.typeScrapNum) || 0; + // 放大1000倍(支持两位或三位小数都安全) + const toInt = n => Math.round(n * 1000); + const diff = toInt(repairNum) - toInt(repairedNum) - toInt(scrapNum); + + if (diff===0) { + uni.showToast({ + title: '已完成维修', + icon: 'none', + }) + } else if (toInt(repairedNum) + toInt(scrapNum)>toInt(repairNum)){ + uni.showToast({ + title: '数据异常,不可操作', + icon: 'none', + }) + }else{ + codingUrl = '/pages/repair/repairManage/num-operate' + uni.navigateTo({ url: `${codingUrl}?queryParams=${JSON.stringify(item)}` }) + } } } + const isSubmit = ref(false) const handleSubmit = async () => { try {