From 777658b72c4fa459f0c522f408e90e874df18c74 Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 14 Jan 2026 18:10:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=89=8D=E7=AB=AF=E5=AD=90?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E7=BC=96=E5=8F=B7=E6=98=BE=E7=A4=BA=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=20-=20TaskHall.vue=E5=92=8CTaskCard.vue=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=96=B0=E7=9A=84=E4=B8=A4=E7=BA=A7=E7=BC=96=E5=8F=B7?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=20-=20=E6=96=B0=E6=A0=BC=E5=BC=8FTASK...-01-?= =?UTF-8?q?02=E6=98=BE=E7=A4=BA=E4=B8=BA'=E5=AD=9001-02'=20-=20=E6=97=A7?= =?UTF-8?q?=E6=A0=BC=E5=BC=8FTASK...-01=E6=98=BE=E7=A4=BA=E4=B8=BA'?= =?UTF-8?q?=E5=AD=9001'=20-=20=E4=BF=9D=E6=8C=81=E5=90=91=E5=90=8E?= =?UTF-8?q?=E5=85=BC=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/TaskCard.vue | 20 +++++++++++++++++++- frontend/src/views/TaskHall.vue | 14 +++++++++++--- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/frontend/src/components/TaskCard.vue b/frontend/src/components/TaskCard.vue index 897e986..34692fd 100644 --- a/frontend/src/components/TaskCard.vue +++ b/frontend/src/components/TaskCard.vue @@ -65,7 +65,7 @@
- {{ subTask.itemNo || `子任务${index + 1}` }}: + {{ getSubTaskLabel(subTask, index) }}: {{ subTask.receiverName || '待接单' }} 完成截止日期: {{ getSubTaskDeadline(subTask) }} @@ -317,6 +317,24 @@ const handleCopyTaskNo = async (taskNo: string) => { } } +// 获取子任务标签(简化显示编号) +const getSubTaskLabel = (subTask: TaskItem, index: number) => { + // 如果有子任务编号,显示子任务编号的后两段(部门序号-部门内序号) + // 新格式:TASK...-01-02 显示为 "子01-02" + // 旧格式:TASK...-01 显示为 "子01" + if (subTask.itemNo) { + const parts = subTask.itemNo.split('-') + if (parts.length >= 3) { + // 新格式:取最后两段 + return `子${parts[parts.length - 2]}-${parts[parts.length - 1]}` + } else if (parts.length === 2) { + // 旧格式:取最后一段 + return `子${parts[parts.length - 1]}` + } + } + return `子${String(index + 1).padStart(2, '0')}` +} + // 获取子任务状态文本 const getSubTaskStatusText = (status: string) => { const statusMap: Record = { diff --git a/frontend/src/views/TaskHall.vue b/frontend/src/views/TaskHall.vue index f526388..51bbac0 100644 --- a/frontend/src/views/TaskHall.vue +++ b/frontend/src/views/TaskHall.vue @@ -2899,12 +2899,20 @@ const getSubTaskStatusClass = (status: string | undefined) => { } const getSubTaskLabel = (subTask: any, index: number) => { - // 如果有子任务编号,显示子任务编号后两位;否则显示序号 + // 如果有子任务编号,显示子任务编号的后两段(部门序号-部门内序号) + // 新格式:TASK...-01-02 显示为 "子01-02" + // 旧格式:TASK...-01 显示为 "子01" if (subTask.itemNo) { const parts = subTask.itemNo.split('-') - return parts.length > 1 ? `子${parts[parts.length - 1]}` : `子${index + 1}` + if (parts.length >= 3) { + // 新格式:取最后两段 + return `子${parts[parts.length - 2]}-${parts[parts.length - 1]}` + } else if (parts.length === 2) { + // 旧格式:取最后一段 + return `子${parts[parts.length - 1]}` + } } - return `子${index + 1}` + return `子${String(index + 1).padStart(2, '0')}` } const getSubTaskStatusText = (status: string | undefined) => {