update:赛事管理
This commit is contained in:
parent
002940a41b
commit
ab25758e05
@ -1,20 +1,16 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog :title="dialog.title" v-model="dialog.isShowDialog" width="80%">
|
<el-dialog :title="dialog.title" v-model="dialog.isShowDialog" width="80%" fullscreen>
|
||||||
<div class="step-form-container">
|
<template #header>
|
||||||
<el-card class="step-form-card">
|
<div style="font-size: 18px; font-weight: bold;">{{ dialog.title }}</div>
|
||||||
<!-- 步骤条导航 -->
|
<!-- 步骤条导航 -->
|
||||||
<el-steps :active="activeStep" finish-status="success" align-center>
|
<el-steps :active="activeStep" finish-status="success" align-center>
|
||||||
<el-step title="基本信息" />
|
<el-step title="基本信息" />
|
||||||
<el-step title="参与单位" />
|
<el-step title="参与单位" />
|
||||||
<el-step title="项目与限报配置" />
|
<el-step title="项目与限报配置" />
|
||||||
<el-step title="费用与账户配置" />
|
<el-step title="费用与账户配置" />
|
||||||
</el-steps>
|
</el-steps>
|
||||||
|
</template>
|
||||||
<!-- 步骤内容区域 -->
|
<template #footer>
|
||||||
<div class="step-content">
|
|
||||||
<component :is="currentStepComponent" :key="activeStep" ref="stepRef" :model-value="currentStepData" @update:model-value="handleStepDataUpdate" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- 底部操作按钮 -->
|
<!-- 底部操作按钮 -->
|
||||||
<div class="step-actions">
|
<div class="step-actions">
|
||||||
<el-button v-if="activeStep > 0" @click="handlePrevious">
|
<el-button v-if="activeStep > 0" @click="handlePrevious">
|
||||||
@ -38,6 +34,17 @@
|
|||||||
提交
|
提交
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
</template>
|
||||||
|
<div class="step-form-container">
|
||||||
|
<el-card class="step-form-card">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 步骤内容区域 -->
|
||||||
|
<div class="step-content">
|
||||||
|
<component :is="currentStepComponent" :key="activeStep" ref="stepRef" :model-value="currentStepData" @update:model-value="handleStepDataUpdate" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 提交成功对话框 -->
|
<!-- 提交成功对话框 -->
|
||||||
@ -397,6 +404,10 @@ defineExpose({
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|
||||||
|
div{
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
.step-form-container {
|
.step-form-container {
|
||||||
/* max-width: 1000px; */
|
/* max-width: 1000px; */
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
@ -431,9 +442,10 @@ defineExpose({
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
gap: 20px;
|
gap: 20px;
|
||||||
padding-top: 30px;
|
/* padding-top: 30px;
|
||||||
border-top: 1px solid #ebeef5;
|
border-top: 1px solid #ebeef5;
|
||||||
margin-top: 20px;
|
box-sizing: border-box; */
|
||||||
|
/* margin-top: 20px; */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* .step-actions .el-button {
|
/* .step-actions .el-button {
|
||||||
|
|||||||
@ -34,15 +34,15 @@
|
|||||||
<div class="expand-content">
|
<div class="expand-content">
|
||||||
<el-table :data="scope.row.items || []" border style="width: 100%; margin-top: 10px;">
|
<el-table :data="scope.row.items || []" border style="width: 100%; margin-top: 10px;">
|
||||||
<el-table-column label="项目名称" prop="projectName" min-width="150" />
|
<el-table-column label="项目名称" prop="projectName" min-width="150" />
|
||||||
<el-table-column label="项目类型" prop="projectTypeName" width="120" />
|
<!-- <el-table-column label="项目类型" prop="projectTypeName" width="120" /> -->
|
||||||
<el-table-column label="参赛组别" prop="groupName" width="120" />
|
<el-table-column label="参赛组别" prop="groupName" width="120" />
|
||||||
<el-table-column label="姓名" prop="memberNames" min-width="200" />
|
<el-table-column label="姓名" prop="participantName" min-width="140" />
|
||||||
<el-table-column label="成绩" prop="score" width="120" />
|
<el-table-column label="成绩" prop="score" width="100" />
|
||||||
<el-table-column label="名次" prop="rank" width="100" />
|
<el-table-column label="名次" prop="rank" width="100" />
|
||||||
<el-table-column label="操作" width="150" align="center" fixed="right">
|
<el-table-column label="操作" width="150" align="center" fixed="right">
|
||||||
<template #default="item">
|
<template #default="item">
|
||||||
<el-button
|
<el-button
|
||||||
v-if="item.row.memberIds && item.row.memberIds.length > 0"
|
v-if="item.row.certificateUrl"
|
||||||
size="small"
|
size="small"
|
||||||
text
|
text
|
||||||
type="primary"
|
type="primary"
|
||||||
@ -198,6 +198,8 @@ const onBatchAudit = async () => {
|
|||||||
// 查看证书 - 根据项目类型处理
|
// 查看证书 - 根据项目类型处理
|
||||||
const viewCertificates = async (item) => {
|
const viewCertificates = async (item) => {
|
||||||
console.log('查看证书', item);
|
console.log('查看证书', item);
|
||||||
|
openCertificate(item.certificateUrl);
|
||||||
|
return;
|
||||||
const members = item.members || [];
|
const members = item.members || [];
|
||||||
if (members.length === 0) {
|
if (members.length === 0) {
|
||||||
ElMessage.warning('暂无证书');
|
ElMessage.warning('暂无证书');
|
||||||
|
|||||||
@ -125,7 +125,15 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 赛事介绍 -->
|
||||||
|
<div class="edc-section" v-if="formData.basicInfo.eventIntroduction">
|
||||||
|
<div class="edc-section-hd">
|
||||||
|
<el-icon class="edc-section-icon"><Document /></el-icon>
|
||||||
|
<span class="edc-section-title">赛事介绍</span>
|
||||||
|
</div>
|
||||||
|
<div class="edc-intro" v-html="formData.basicInfo.eventIntroduction"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- 报名项目 -->
|
<!-- 报名项目 -->
|
||||||
<div class="edc-section" v-if="formData.projectConfig?.projects?.length">
|
<div class="edc-section" v-if="formData.projectConfig?.projects?.length">
|
||||||
<div class="edc-section-hd">
|
<div class="edc-section-hd">
|
||||||
@ -140,6 +148,12 @@
|
|||||||
<strong>{{ formData.projectConfig.registrationLimit.teamProjectLimit ?? 1 }}</strong> 个团队、<strong>{{ formData.projectConfig.registrationLimit.individualProjectLimit ?? 1 }}</strong> 个个人
|
<strong>{{ formData.projectConfig.registrationLimit.teamProjectLimit ?? 1 }}</strong> 个团队、<strong>{{ formData.projectConfig.registrationLimit.individualProjectLimit ?? 1 }}</strong> 个个人
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="edc-reg-limit-bar" v-if="formData.projectConfig.registrationLimit">
|
||||||
|
<el-icon><InfoFilled /></el-icon>
|
||||||
|
<span>限报
|
||||||
|
<strong>{{ formData.projectConfig.registrationLimit.teamProjectLimit ?? 1 }}</strong> 个团队、<strong>{{ formData.projectConfig.registrationLimit.individualProjectLimit ?? 1 }}</strong> 个个人
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
<div class="edc-proj-list">
|
<div class="edc-proj-list">
|
||||||
<div class="edc-proj-card" v-for="(proj, pi) in formData.projectConfig.projects" :key="proj.id ?? pi">
|
<div class="edc-proj-card" v-for="(proj, pi) in formData.projectConfig.projects" :key="proj.id ?? pi">
|
||||||
<div class="edc-proj-hd">
|
<div class="edc-proj-hd">
|
||||||
@ -269,6 +283,7 @@
|
|||||||
<div class="project-card" v-for="project in projects" :key="project.id">
|
<div class="project-card" v-for="project in projects" :key="project.id">
|
||||||
<div class="project-card-left">
|
<div class="project-card-left">
|
||||||
<div class="project-card-name">名称:{{ project.name }}</div>
|
<div class="project-card-name">名称:{{ project.name }}</div>
|
||||||
|
<div class="project-card-limit" v-if="project.limitCount">限报人数:{{ project.limitCount }} 人</div>
|
||||||
<div class="project-card-type">类型:{{ project.parentProjectTypeName ??
|
<div class="project-card-type">类型:{{ project.parentProjectTypeName ??
|
||||||
project.projectTypeName ?? '' }}</div>
|
project.projectTypeName ?? '' }}</div>
|
||||||
<div class="project-card-count">完成人数:{{ project.completionCount ?? 0 }}</div>
|
<div class="project-card-count">完成人数:{{ project.completionCount ?? 0 }}</div>
|
||||||
@ -3037,6 +3052,15 @@ const handleCreateOrderAndPay = async () => {
|
|||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&-limit {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #ffe082;
|
||||||
|
background: rgba(0, 0, 0, 0.15);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 1px 6px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
&-right {
|
&-right {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user