fix(工作报告、我的绩效、产品/项目、消息通知): 修复已知的一些问题。

This commit is contained in:
dk
2026-06-28 14:04:28 +08:00
parent a4884035cd
commit 499f2115b2
10 changed files with 189 additions and 58 deletions

View File

@@ -34,13 +34,21 @@ const periodLabel = computed(() => {
});
const cards = computed(() => [
{ label: '绩效表总数', value: props.summary?.totalSheetCount ?? 0 },
{ label: '应有总数', value: props.summary?.expectedSheetCount ?? 0 },
{ label: '待发送数', value: props.summary?.pendingSendCount ?? 0, key: 'pending_send' as const },
{ label: '待确认数', value: props.summary?.pendingConfirmCount ?? 0, key: 'pending_confirm' as const },
{ label: '已确认率', value: `${props.summary?.confirmedRate ?? '0.00'}%` },
{ label: '各方向绩效平均分', value: deptOrgAverageCount.value, key: 'dept_org_average' as const }
]);
function getPendingSendStatusText(user: Api.Performance.Team.PendingSendUser) {
if (!user.sheetId || !user.statusCode) {
return '未创建绩效表';
}
return getPerformanceStatusLabel(user.statusCode);
}
async function handleRemind(type: Api.Performance.Common.RemindType, userIds?: string[]) {
const key = userIds?.length === 1 ? `${type}:${userIds[0]}` : `${type}:all`;
remindingKey.value = key;
@@ -79,13 +87,14 @@ async function handleRemind(type: Api.Performance.Common.RemindType, userIds?: s
<div v-if="props.summary?.pendingSendUsers?.length" class="performance-summary__user-list">
<div
v-for="user in props.summary.pendingSendUsers"
:key="`${user.userId}-${user.sheetId || 'none'}`"
:key="`${user.userId}-${user.periodMonth}`"
class="performance-summary__user-item"
>
<div class="performance-summary__user-main">
<span>{{ user.userNickname }}</span>
<small>
{{ getPerformanceStatusLabel(user.statusCode) }}提醒 {{ user.managerName || '直属上级' }}
{{ user.periodMonth }} · {{ getPendingSendStatusText(user) }}提醒
{{ user.managerName || '直属上级' }}
</small>
</div>
<ElButton
@@ -127,12 +136,12 @@ async function handleRemind(type: Api.Performance.Common.RemindType, userIds?: s
<div v-if="props.summary?.pendingConfirmUsers?.length" class="performance-summary__user-list">
<div
v-for="user in props.summary.pendingConfirmUsers"
:key="user.sheetId"
:key="`${user.userId}-${user.periodMonth}`"
class="performance-summary__user-item"
>
<div class="performance-summary__user-main">
<span>{{ user.userNickname }}</span>
<small>发送时间{{ formatDateTime(user.sentTime) }}</small>
<small>{{ user.periodMonth }} · 发送时间{{ formatDateTime(user.sentTime) }}</small>
</div>
<ElButton
link

View File

@@ -273,12 +273,12 @@ watch(visible, isVisible => {
</div>
</ElFormItem>
<ElFormItem
label="备注"
class="performance-template-dialog__field performance-template-dialog__field--full"
>
<ElInput v-model="uploadForm.remark" type="textarea" :rows="3" maxlength="500" show-word-limit />
</ElFormItem>
<!-- <ElFormItem-->
<!-- label="备注"-->
<!-- class="performance-template-dialog__field performance-template-dialog__field&#45;&#45;full"-->
<!-- >-->
<!-- <ElInput v-model="uploadForm.remark" type="textarea" :rows="3" maxlength="500" show-word-limit />-->
<!-- </ElFormItem>-->
</div>
<div class="performance-template-dialog__actions">