diff --git a/src/api/martial/schedulePlan.js b/src/api/martial/schedulePlan.js
index 83f3fc2..247224e 100644
--- a/src/api/martial/schedulePlan.js
+++ b/src/api/martial/schedulePlan.js
@@ -194,3 +194,16 @@ export const exportSchedulePlans = (params) => {
responseType: 'blob'
})
}
+
+/**
+ * 更新参赛者签到状态
+ * @param {Number} participantId - 参赛者ID
+ * @param {String} status - 状态:未签到/已签到/异常
+ */
+export const updateCheckInStatus = (participantId, status) => {
+ return request({
+ url: '/api/blade-martial/schedule/update-check-in-status',
+ method: 'post',
+ data: { participantId, status }
+ })
+}
diff --git a/src/views/martial/project/index.vue b/src/views/martial/project/index.vue
index d6d0334..647a8c9 100644
--- a/src/views/martial/project/index.vue
+++ b/src/views/martial/project/index.vue
@@ -177,6 +177,11 @@
未设置
+
+
+ {{ row.estimatedDuration || 5 }}分钟
+
+
@@ -320,6 +325,17 @@
+
+
+
+
+
{
category: null,
eventType: null,
type: null,
+ estimatedDuration: 5,
registrationFee: 0,
registrationStartTime: '',
registrationEndTime: '',
diff --git a/src/views/martial/schedule/index.vue b/src/views/martial/schedule/index.vue
index 814bbd9..fc4d31d 100644
--- a/src/views/martial/schedule/index.vue
+++ b/src/views/martial/schedule/index.vue
@@ -381,6 +381,7 @@ import { ArrowDown, ArrowRight } from '@element-plus/icons-vue'
import { getVenuesByCompetition } from '@/api/martial/venue'
import { getCompetitionDetail } from '@/api/martial/competition'
import { getScheduleResult, saveAndLockSchedule, saveDraftSchedule, triggerAutoArrange, moveScheduleGroup, exportSchedule } from '@/api/martial/activitySchedule'
+import { updateCheckInStatus } from '@/api/martial/schedulePlan'
export default {
name: 'MartialScheduleList',
@@ -737,7 +738,12 @@ export default {
status: '异常'
})
- this.$message.success(`已将 ${player.playerName} 标记为异常`)
+ // 调用后端API保存状态
+ updateCheckInStatus(player.id, '异常').then(() => {
+ this.$message.success(`已将 ${player.playerName} 标记为异常`)
+ }).catch(err => {
+ console.error('保存异常状态失败:', err)
+ })
}
},
@@ -993,7 +999,12 @@ export default {
status: '异常'
})
- this.$message.success(`已将 ${item.schoolUnit} 标记为异常`)
+ // 调用后端API保存状态
+ updateCheckInStatus(item.id, '异常').then(() => {
+ this.$message.success(`已将 ${item.schoolUnit} 标记为异常`)
+ }).catch(err => {
+ console.error('保存异常状态失败:', err)
+ })
},
// 显示异常组对话框
@@ -1020,7 +1031,12 @@ export default {
// 从异常列表中移除
this.exceptionList.splice(index, 1)
- this.$message.success(`已将 ${exceptionItem.schoolUnit} 从异常组移除`)
+ // 调用后端API恢复状态
+ updateCheckInStatus(exceptionItem.participantId, '未签到').then(() => {
+ this.$message.success(`已将 ${exceptionItem.schoolUnit} 从异常组移除`)
+ }).catch(err => {
+ console.error('恢复状态失败:', err)
+ })
},
// 触发自动编排