优化展示:规范学员与教师性别转义及教师工作台培训班状态呈现

This commit is contained in:
wangzhibiao committed 2026-09-20 11:34:09 +08:00
1 parent f5b6339cf1
commit 01dfa9f386
4 files changed
+70 -12

No files matched your search

@@ -43,7 +43,7 @@
<div class="info-list">
<div class="info-item">
<span class="label">性别:</span>
<span class="val">{{ studentProfile.sGender || '未知' }}</span>
<span class="val">{{ formatGender(studentProfile.sGender) }}</span>
</div>
<div class="info-item">
<span class="label">出生日期:</span>
@@ -473,6 +473,11 @@ export default {
formatAttendanceStatusType(status) {
const map = { 0: 'danger', 1: 'success', 2: 'warning', 3: 'warning', 4: 'info' }
return map[status] || ''
},
formatGender(gender) {
if (gender === '0' || gender === 0 || gender === '男') return '男'
if (gender === '1' || gender === 1 || gender === '女') return '女'
return gender || '未知'
}
}
}
+44 -9
View File
@@ -43,7 +43,7 @@
<div class="info-list">
<div class="info-item">
<span class="label">性别:</span>
<span class="val">{{ teacherProfile.tGender || '未知' }}</span>
<span class="val">{{ formatGender(teacherProfile.tGender) }}</span>
</div>
<div class="info-item">
<span class="label">所属单位:</span>
@@ -89,13 +89,25 @@
<el-table v-loading="plansLoading" :data="planList" border stripe style="width: 100%; margin-top: 15px;">
<el-table-column prop="planId" label="培训班编号" width="130" align="center" />
<el-table-column prop="planName" label="培训班名称" min-width="180" show-overflow-tooltip />
<el-table-column prop="period" label="期次" width="100" align="center" />
<el-table-column prop="startDate" label="开班时间" width="120" align="center" />
<el-table-column prop="endDate" label="结训时间" width="120" align="center" />
<el-table-column prop="status" label="状态" width="100" align="center">
<el-table-column label="期次" width="100" align="center">
<template slot-scope="scope">
<el-tag size="mini" :type="formatPlanStatusType(scope.row.status)">
{{ formatPlanStatusText(scope.row.status) }}
<span>{{ scope.row.period || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="开班时间" width="120" align="center">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.startDate || scope.row.startTime, '{y}-{m}-{d}') || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="结训时间" width="120" align="center">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.endDate || scope.row.endTime, '{y}-{m}-{d}') || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="状态" width="100" align="center">
<template slot-scope="scope">
<el-tag size="mini" :type="formatPlanStatusType(scope.row.planStatus != null ? scope.row.planStatus : scope.row.status)">
{{ formatPlanStatusText(scope.row.planStatus != null ? scope.row.planStatus : scope.row.status) }}
</el-tag>
</template>
</el-table-column>
@@ -379,13 +391,36 @@ export default {
})
},
formatPlanStatusText(status) {
const map = { 0: '未开班', 1: '培训中', 2: '已结训' }
const map = {
0: '未开班',
'0': '未开班',
1: '培训中',
'1': '培训中',
2: '已结训',
'2': '已结训',
3: '已取消',
'3': '已取消'
}
return map[status] || '未知'
},
formatPlanStatusType(status) {
const map = { 0: 'info', 1: 'primary', 2: 'success' }
const map = {
0: 'info',
'0': 'info',
1: 'primary',
'1': 'primary',
2: 'success',
'2': 'success',
3: 'danger',
'3': 'danger'
}
return map[status] || ''
},
formatGender(gender) {
if (gender === '0' || gender === 0 || gender === '男') return '男'
if (gender === '1' || gender === 1 || gender === '女') return '女'
return gender || '未知'
},
formatEnrollmentStatusText(status) {
const map = { 0: '待报到', 1: '已报到', 2: '请假', 3: '退训', 4: '已完成' }
return map[status] || '未知'
+10 -1
View File
@@ -60,7 +60,11 @@
<el-table v-loading="loading" :data="studentList">
<el-table-column label="学员姓名" align="center" prop="sName" min-width="110" />
<el-table-column label="性别" align="center" prop="sGender" width="70" />
<el-table-column label="性别" align="center" prop="sGender" width="70">
<template slot-scope="scope">
<span>{{ formatGender(scope.row.sGender) }}</span>
</template>
</el-table-column>
<el-table-column label="出生日期" align="center" prop="sBirth" width="110">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.sBirth, '{y}-{m}-{d}') }}</span>
@@ -443,6 +447,11 @@ export default {
3: '平台同步'
}
return labels[sourceType] || '-'
},
formatGender(gender) {
if (gender === '0' || gender === 0 || gender === '男') return '男'
if (gender === '1' || gender === 1 || gender === '女') return '女'
return gender || '未知'
}
}
}
+10 -1
View File
@@ -73,7 +73,11 @@
<el-table v-loading="loading" :data="teacherList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="教师姓名" align="center" prop="tName" min-width="120" />
<el-table-column label="性别" align="center" prop="tGender" width="80" />
<el-table-column label="性别" align="center" prop="tGender" width="80">
<template slot-scope="scope">
<span>{{ formatGender(scope.row.tGender) }}</span>
</template>
</el-table-column>
<el-table-column label="出生日期" align="center" prop="tBirth" width="120">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.tBirth, '{y}-{m}-{d}') }}</span>
@@ -448,6 +452,11 @@ export default {
this.$modal.msgSuccess('解除关联成功')
this.getList()
})
},
formatGender(gender) {
if (gender === '0' || gender === 0 || gender === '男') return '男'
if (gender === '1' || gender === 1 || gender === '女') return '女'
return gender || '未知'
}
}
}