From f8290836f96e2674bf99733bd2c1aa355a67a2d2 Mon Sep 17 00:00:00 2001 From: ye1023 <12588209+ye1023@user.noreply.gitee.com> Date: Tue, 28 Jul 2026 18:33:56 +0800 Subject: [PATCH] =?UTF-8?q?yxk-20260728=20=E6=94=B9=E5=96=84=E6=8F=90?= =?UTF-8?q?=E6=A1=88=20=E5=9C=A8=20Task=5Fimprove003=20=E9=83=A8=E9=97=A8?= =?UTF-8?q?=E8=B4=9F=E8=B4=A3=E4=BA=BA=E5=AE=A1=E6=A0=B8=E8=8A=82=E7=82=B9?= =?UTF-8?q?=EF=BC=8C=E8=B4=9F=E8=B4=A3=E4=BA=BA=E5=8F=AA=E8=83=BD=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E5=9F=BA=E5=87=86=E5=A5=96=E9=A1=B9=E6=9C=AC=E6=A1=A3?= =?UTF-8?q?=E6=88=96=E6=9B=B4=E4=BD=8E=E6=A1=A3=E5=A5=96=E9=A1=B9=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E5=85=81=E8=AE=B8=E5=8D=87=E6=A1=A3=E3=80=82=E5=9F=BA?= =?UTF-8?q?=E5=87=86=E5=A5=96=E9=A1=B9=E6=8C=89=E6=98=AF=E5=90=A6=E7=BB=8F?= =?UTF-8?q?=E8=BF=87=E9=83=A8=E9=97=A8=E8=AF=84=E8=AE=AE=E7=A1=AE=E5=AE=9A?= =?UTF-8?q?=EF=BC=9A=20need=5Fdept=5Fscore=3D'1'=EF=BC=9A=E4=BB=A5=20sugge?= =?UTF-8?q?sted=5Faward=20=E4=B8=BA=E5=9F=BA=E5=87=86=E3=80=82=20=E6=9C=AA?= =?UTF-8?q?=E7=BB=8F=E8=BF=87=E9=83=A8=E9=97=A8=E8=AF=84=E8=AE=AE=EF=BC=9A?= =?UTF-8?q?=E4=BB=A5=20initial=5Faward=20=E4=B8=BA=E5=9F=BA=E5=87=86?= =?UTF-8?q?=E3=80=82=20=E5=A5=96=E9=A1=B9=E7=BC=96=E7=A0=81=E4=BF=9D?= =?UTF-8?q?=E6=8C=81=E7=8E=B0=E6=9C=89=E9=A1=BA=E5=BA=8F=EF=BC=9A0=3D?= =?UTF-8?q?=E9=87=91=E5=A5=96=E3=80=811=3D=E9=93=B6=E5=A5=96=E3=80=812=3D?= =?UTF-8?q?=E9=93=9C=E5=A5=96=E3=80=813=3D=E5=8F=82=E4=B8=8E=E5=A5=96?= =?UTF-8?q?=EF=BC=9B=E7=BC=96=E7=A0=81=E6=95=B0=E5=80=BC=E5=A4=A7=E4=BA=8E?= =?UTF-8?q?=E7=AD=89=E4=BA=8E=E5=9F=BA=E5=87=86=E7=BC=96=E7=A0=81=E5=8D=B3?= =?UTF-8?q?=E4=B8=BA=E6=9C=AC=E6=A1=A3=E6=88=96=E9=99=8D=E6=A1=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ImprovementProposalBPMForm.vue | 37 ++++++++++++++++--- 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/src/views/gh/improvementProposal/components/ImprovementProposalBPMForm.vue b/src/views/gh/improvementProposal/components/ImprovementProposalBPMForm.vue index 350f4ea..e546079 100644 --- a/src/views/gh/improvementProposal/components/ImprovementProposalBPMForm.vue +++ b/src/views/gh/improvementProposal/components/ImprovementProposalBPMForm.vue @@ -46,7 +46,7 @@ - + + @@ -237,6 +240,15 @@ if (values.some((value) => value === undefined || value === null)) return '-'; return (values.reduce((sum, value) => sum + Number(value), 0) / values.length).toFixed(2); }); + // 部门评分完成后必须以系统建议奖项为基准,不能回退到初审奖项。 + const leaderAwardBase = computed(() => { + const award = proposal.value.needDeptScore === '1' ? proposal.value.suggestedAward : proposal.value.initialAward; + return awardOptions.some((item) => item.value === String(award)) ? String(award) : ''; + }); + const leaderAwardOptions = computed(() => { + if (!leaderAwardBase.value) return []; + return awardOptions.filter((item) => Number(item.value) >= Number(leaderAwardBase.value)); + }); const currentVote = computed(() => voteRows.value.find((item) => String(item.voterId) === currentUserId.value)); watch( @@ -297,10 +309,18 @@ await submitDeptScore(actionPayload()); } if (isTask('Task_improve003')) { + if (!leaderAwardBase.value) { + createMessage.warning('部门评议建议奖项尚未生成,不能确认负责人奖项'); + return false; + } if (!leaderFinalAward.value) { createMessage.warning('请选择负责人确认奖项'); return false; } + if (!leaderAwardOptions.value.some((item) => item.value === leaderFinalAward.value)) { + createMessage.warning('负责人确认奖项只能选择当前档位或降档奖项'); + return false; + } await saveLeaderAward(actionPayload({ leaderFinalAward: leaderFinalAward.value })); } if (isTask('Task_improve005') && currentVote.value?.voteStatus !== 'voted') { @@ -358,6 +378,7 @@ try { await saveDeptScore(actionPayload(scoreForm.value)); createMessage.success('评分保存成功,可在流程提交前继续修改'); + scoreModalVisible.value = false; await loadProposal(); } catch (error: any) { createMessage.warning(error?.message || '评分保存失败'); @@ -452,6 +473,10 @@ font-size: 12px; } + .score-range-alert { + margin-bottom: 16px; + } + @media (max-width: 768px) { .attachment-grid { grid-template-columns: 1fr;