4.1 KiB
4.1 KiB
評分管理功能
功能概述
後台評分管理系統提供了完整的評分管理功能,包括:
- 查看已完成和未完成的評分內容
- 手動輸入和編輯評分
- 評分進度追蹤
- 篩選和搜尋功能
主要功能
1. 競賽選擇
- 從下拉選單中選擇要管理的競賽
- 顯示競賽基本資訊(名稱、類型、時間等)
2. 評分概覽
- 已完成評分:顯示已完成的評分數量
- 待評分:顯示待評分的數量
- 完成度:顯示評分進度的百分比
- 總評分項目:顯示總評分項目數量
- 進度條:視覺化顯示評分進度
3. 評分記錄管理
- 評審:顯示評審姓名和頭像
- 參賽者:顯示參賽者名稱和類型(個人/團隊)
- 類型:標示參賽者類型
- 總分:顯示評分總分
- 狀態:顯示評分狀態(已完成/待評分)
- 提交時間:顯示評分提交時間
- 操作:編輯或新增評分
4. 篩選和搜尋
- 狀態篩選:按評分狀態篩選(全部/已完成/待評分)
- 搜尋功能:搜尋評審或參賽者名稱
- 分頁功能:支援大量數據的分頁顯示
5. 動態評分功能
- 評審選擇:從評審列表中選擇評審
- 參賽者選擇:從參賽者列表中選擇參賽者
- 動態評分項目:根據競賽建立時設定的評比規則動態生成評分項目
- 權重計算:支援不同評分項目的權重設定
- 評分驗證:確保所有評分項目都已評分
- 總分計算:根據權重自動計算總分
- 評審意見:填寫評審意見和建議
- 評分提交:提交或更新評分
使用方式
訪問評分管理
- 進入後台管理系統
- 點擊「評分管理」標籤
- 選擇要管理的競賽
查看評分記錄
- 選擇競賽後,系統會自動載入該競賽的所有評分記錄
- 使用篩選功能查看特定狀態的評分
- 使用搜尋功能快速找到特定評審或參賽者的評分
動態評分輸入
- 點擊「手動輸入評分」按鈕
- 選擇評審和參賽者
- 根據競賽設定的評比項目進行評分
- 為每個評分項目選擇分數(1-10分)
- 系統會根據權重自動計算總分
- 填寫評審意見
- 點擊「提交評分」完成評分
編輯現有評分
- 在評分記錄表格中點擊編輯按鈕
- 修改評審意見
- 點擊「更新評分」保存修改
技術實現
組件結構
ScoringManagement
:主要評分管理組件- 整合到現有的
CompetitionManagement
組件中
動態評分系統
- 評比規則讀取:從競賽的
rules
屬性讀取評比項目 - 動態評分項目生成:根據競賽規則動態生成評分表單
- 權重計算:支援不同評分項目的權重設定
- 評分驗證:確保所有評分項目都已評分
- 總分計算:根據權重自動計算總分
數據流
- 從
useCompetition
上下文獲取競賽和評分數據 - 根據選擇的競賽載入相關的評審和參賽者
- 讀取競賽的評比規則並動態生成評分項目
- 生成評分記錄列表
- 支援篩選、搜尋和分頁功能
狀態管理
- 使用 React hooks 管理組件狀態
- 整合現有的競賽上下文
- 支援即時數據更新
- 動態評分項目的狀態管理
文件結構
components/admin/
├── scoring-management.tsx # 評分管理組件
└── competition-management.tsx # 競賽管理組件(已整合)
app/admin/
└── scoring/
└── page.tsx # 評分管理頁面
注意事項
- 評分記錄會根據競賽的評審和參賽者自動生成
- 已完成的評分可以編輯,未完成的評分可以新增
- 評分提交後會即時更新列表
- 支援個人賽和團隊賽的評分管理
- 評分數據與現有的競賽管理系統完全整合
- 評分項目會根據競賽建立時設定的評比規則動態生成
- 如果競賽沒有設定評比規則,會使用預設的評分項目
- 總分會根據各評分項目的權重自動計算
- 系統會驗證所有評分項目都已評分才能提交