diff --git a/lib/features/events/model/model_event_info.dart b/lib/features/events/model/model_event_info.dart index b422342..c818eb2 100644 --- a/lib/features/events/model/model_event_info.dart +++ b/lib/features/events/model/model_event_info.dart @@ -134,6 +134,7 @@ class EventRegistrationItem { required this.itemName, required this.groupName, required this.matchPlace, + this.matchStartTime = '', this.matchEndTime = '', this.completed = false, @@ -143,6 +144,7 @@ class EventRegistrationItem { this.userId = '', this.playerName = '', this.playerPhone = '', + this.playerNo = '', }); final String eventId; @@ -158,6 +160,7 @@ class EventRegistrationItem { final String opponentId; final String opponentName; final List teamMembers; + final String playerNo; /// 来自报名列表父级,不在 item JSON 内 final String userId; @@ -205,6 +208,7 @@ class EventRegistrationItem { : const [], userId: userId, playerName: playerName, + playerNo: _readString(map, const ['playerNo']), ); } diff --git a/lib/features/events/pages/page_event_info.dart b/lib/features/events/pages/page_event_info.dart index 199b98f..b922bde 100644 --- a/lib/features/events/pages/page_event_info.dart +++ b/lib/features/events/pages/page_event_info.dart @@ -526,9 +526,10 @@ String _formatOpponentLine(EventRegistrationItem item) { } String _formatNumberBadge(EventRegistrationItem item) { - final place = item.matchPlace.trim(); - if (place.isEmpty) return ''; - final match = RegExp(r'\d+').firstMatch(place); - if (match != null) return '${match.group(0)}号'; - return place; + return item.playerNo.trim().isEmpty ? '' : '${item.playerNo.trim()}号'; + // final place = item.matchPlace.trim(); + // if (place.isEmpty) return ''; + // final match = RegExp(r'\d+').firstMatch(place); + // if (match != null) return '${match.group(0)}号'; + // return place; }