优化审核提示

This commit is contained in:
fuenmao
2026-09-18 21:14:21 +08:00
parent 6be0d4f54a
commit 30ac8b51b5
+36 -1
View File
@@ -824,7 +824,15 @@
</el-tab-pane> </el-tab-pane>
<!-- 2. 证件与材料复核画廊 --> <!-- 2. 证件与材料复核画廊 -->
<el-tab-pane label="证件与材料复核" name="materials"> <el-tab-pane name="materials">
<template #label>
<span class="tab-label-with-badge">
<span>证件与材料复核</span>
<span v-if="unreviewedMaterialCount > 0" class="tab-badge-pill">
{{ unreviewedMaterialCount > 99 ? '99+' : unreviewedMaterialCount }}
</span>
</span>
</template>
<el-empty v-if="!detail.materials || !detail.materials.length" description="候选人尚未上传任何材料" /> <el-empty v-if="!detail.materials || !detail.materials.length" description="候选人尚未上传任何材料" />
<div v-else class="materials-gallery"> <div v-else class="materials-gallery">
<div <div
@@ -1720,6 +1728,12 @@ const detailFamilyList = computed(() => {
} }
}); });
const unreviewedMaterialCount = computed(() => {
const materials = detail.value?.materials;
if (!Array.isArray(materials) || materials.length === 0) return 0;
return materials.filter(item => item.reviewStatus !== "passed").length;
});
const registrationEmployeeFieldCodes = new Set([ const registrationEmployeeFieldCodes = new Set([
"employeename", "name", "username", "gender", "nation", "birthday", "registeredresidence", "employeename", "name", "username", "gender", "nation", "birthday", "registeredresidence",
"height", "weight", "healthcondition", "maritalstatus", "education", "major", "graduatedschool", "height", "weight", "healthcondition", "maritalstatus", "education", "major", "graduatedschool",
@@ -3751,6 +3765,27 @@ onMounted(loadCompanies);
flex-direction: column; flex-direction: column;
} }
.tab-label-with-badge {
display: inline-flex;
align-items: center;
}
.tab-badge-pill {
display: inline-flex;
align-items: center;
justify-content: center;
height: 18px;
min-width: 18px;
padding: 0 5px;
margin-left: 6px;
font-size: 12px;
font-weight: 600;
line-height: 1;
color: #ffffff;
background-color: var(--el-color-danger, #f56c6c);
border-radius: 9px;
}
:deep(.detail-tabs > .el-tabs__header) { :deep(.detail-tabs > .el-tabs__header) {
flex-shrink: 0; flex-shrink: 0;
margin-bottom: 16px; margin-bottom: 16px;