Bläddra i källkod

feat(system): 添加赛事参与者取票状态显示功能

- 在参与者表格中新增取票状态列,显示未取票、已取票、已核销等状态
- 实现取票状态标签的颜色区分,提升界面可读性
- 将原有的晋级按钮修改为手动取票功能
- 优化控制台日志输出格式,便于调试跟踪
fugui 3 veckor sedan
förälder
incheckning
16791417de
1 ändrade filer med 13 tillägg och 5 borttagningar
  1. 13 5
      src/views/system/physical/participants/index.vue

+ 13 - 5
src/views/system/physical/participants/index.vue

@@ -74,14 +74,22 @@
         <el-table-column label="赛事ID" align="center" prop="tournamentId" v-if="true" />
         <el-table-column label="赛事名称" align="center" prop="tournamentsName" />
         <el-table-column label="赛事状态" align="center" prop="statusText" />
+        <el-table-column label="取票状态" align="center" prop="ticketStatus">
+          <template #default="scope">
+            <el-tag v-if="scope.row.ticketStatus === 0" type="info">未取票</el-tag>
+            <el-tag v-else-if="scope.row.ticketStatus === 1" type="success">已取票</el-tag>
+            <el-tag v-else-if="scope.row.ticketStatus === 2" type="warning">已核销</el-tag>
+            <el-tag v-else type="info">未知</el-tag>
+          </template>
+        </el-table-column>
         <el-table-column label="报名用户" align="center" prop="userName" />
         <el-table-column label="手机号" align="center" prop="phone" />
         <el-table-column label="报名条件" align="center" prop="tournamentCondition" />
         <el-table-column label="报名时间" align="center" prop="registrationTime" />
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
-            <el-tooltip content="晋级" placement="top">
-              <el-button link type="primary" icon="Edit" @click="getNextTournament(scope.row)">晋级</el-button>
+            <el-tooltip content="手动取票" placement="top">
+              <el-button link type="primary" icon="Edit" @click="getNextTournament(scope.row)">手动取票</el-button>
             </el-tooltip>
           </template>
         </el-table-column>
@@ -236,10 +244,10 @@ const getList = async () => {
   console.log('=== getList 开始 ===');
   console.log('当前 loading:', loading.value);
   console.log('查询参数:', queryParams.value);
-  
+
   loading.value = true;
   console.log('设置 loading 为 true:', loading.value);
-  
+
   try {
     console.log('准备调用 API...');
     const res = await listParticipants(queryParams.value);
@@ -247,7 +255,7 @@ const getList = async () => {
     console.log('完整 API 响应:', res);
     console.log('响应码:', res.code);
     console.log('数据:', res.data);
-    
+
     // 检查响应结构
     if (res.code === 200) {
       // 如果 data 是数组,直接使用;如果是对象且有 rows 属性,使用 rows