From ea4650b912da220f0beb1a5f0d6d5cfcdf36ac08 Mon Sep 17 00:00:00 2001 From: DevOps Date: Wed, 24 Dec 2025 13:34:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=BA=E5=9C=B0Tab=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=9C=BA=E5=9C=B0=E8=BF=87=E6=BB=A4=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加场地按钮列表,支持切换不同场地 - 新增 selectedVenueIdForVenueTab 状态变量 - 修改 venueData 计算属性支持按场地过滤 - 初始化时默认选中第一个场地 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- src/views/martial/schedule/index.vue | 34 +++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/src/views/martial/schedule/index.vue b/src/views/martial/schedule/index.vue index a13bf42..0f3a22a 100644 --- a/src/views/martial/schedule/index.vue +++ b/src/views/martial/schedule/index.vue @@ -223,6 +223,24 @@
+ +
+
+ + {{ venue.venueName }} + +
+ 暂无场地信息,请先在赛事管理中配置场地 +
+
+
+
group.timeSlotIndex === this.selectedTime ) + // 如果选中了场地,进一步过滤 + if (this.selectedVenueIdForVenueTab) { + groupsInTimeSlot = groupsInTimeSlot.filter(group => { + return group.venueId === this.selectedVenueIdForVenueTab || + Number(group.venueId) === Number(this.selectedVenueIdForVenueTab) + }) + } + // 将分组转换为场地视图的数据格式 return groupsInTimeSlot.map(group => ({ project: group.title, @@ -805,6 +832,7 @@ export default { // 默认选中第一个场地 if (this.venues.length > 0) { this.selectedVenueId = this.venues[0].id + this.selectedVenueIdForVenueTab = this.venues[0].id } console.log('加载的场地数据:', this.venues) }