4 changed files with 18 additions and 1 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 251 KiB

After

Width:  |  Height:  |  Size: 382 KiB

+1 -1
View File
@@ -5,4 +5,4 @@ flutter build apk --release --split-per-abi
# echo "构建完成时间: $(date '+%Y-%m-%d %H:%M:%S')"
pgyer upload build/app/outputs/flutter-apk/app-arm64-v8a-release.apk --build-update-description "新增可视化请求插件"
pgyer upload build/app/outputs/flutter-apk/app-arm64-v8a-release.apk --build-update-description "主裁判 APP $(date '+%Y-%m-%d %H:%M:%S')"
@@ -127,6 +127,7 @@ class EventRegistrationItem {
required this.itemName,
required this.groupName,
required this.matchPlace,
required this.allowByeMatch,
this.matchStartTime = '',
this.matchEndTime = '',
@@ -154,6 +155,7 @@ class EventRegistrationItem {
final String opponentName;
final List<EventTeamMember> teamMembers;
final String playerNo;
final int allowByeMatch;
/// 来自报名列表父级,不在 item JSON 内
final String userId;
@@ -202,6 +204,7 @@ class EventRegistrationItem {
userId: userId,
playerName: playerName,
playerNo: _readString(map, const ['playerNo']),
allowByeMatch: _readInt(map, const ['allowByeMatch']),
);
}
@@ -32,6 +32,12 @@ class _EventInfoPageState extends ConsumerState<EventInfoPage> {
if (!mounted) return;
CompetitionTeamDetail? detail;
if (item.opponentId.isNotEmpty && item.opponentId != '0') {
// allowByeMatch = 0 (直接晋级)
// allowByeMatch = 1 (和败方对战)
// allowByeMatch = -1 (个人赛不适用此配置,所以 = -1)
if (item.allowByeMatch == 0) {
return;
}
detail = await ref
.read(competitionTeamsServerProvider)
.fetchTeamDetail(
@@ -51,6 +57,14 @@ class _EventInfoPageState extends ConsumerState<EventInfoPage> {
);
return;
}
await ref
.read(competitionTeamsServerProvider)
.fetchTeamDetail(
itemId: item.itemId,
eventId: item.eventId,
scheduleId: item.scheduleId,
opponentId: item.opponentId,
);
if (!mounted) return;