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