Files
thinkyu/報到系統/DOC/課程報表.md
T
sryang 577060bc78 chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
2026-09-10 09:42:37 +08:00

38 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 課程報表
## 畫面檔:
~/Forms/ClassesReport.aspx
## 資料存取類別
~/Models/DAC_Classes1.cs / DAC_Classes2.cs
- DAC_Classes:資料處理類別
- ClassesList:資料集類別
- ClassesItem:資料項目類別
~/Models/DAC_SignUp1.cs / DAC_SignUp2.cs
- DAC_SignUp:資料處理類別
- SignUpList:資料集類別
- SignUpItem:資料項目類別
## 畫面排列:
上方:搜尋列
- 比照 ~/Forms/ClassesList.aspx
下方:搜尋結果列表
- 除了操作欄位之外的資料顯示欄位比照 ~/Forms/ClassesList.aspx
- 報表匯出按鈕放置在操作欄,按下後呼叫後端的 ExportClassesReport
## 後端處理
- ~/Services/ClassesService.asmx
- ExportClassesReport(int classesID, string timeFormat = "datetime"):匯出學員簽到表
- 輸入參數:classesID(課程 ID)、timeFormat(時間格式,"datetime" 顯示完整日期時間,"time" 只顯示時間)
- 查詢課程資訊(含 ProjectName)及該課程所有參加人員
- 統計:實到人數、應到人數、缺席人數、現場報名、異常人數
- 使用 NPOI 產生 Excel,欄位:序號、學員姓名、手機號碼、身分證字號、性別、認定次數、用餐別、報名方式、簽到時間、簽退時間、出席狀況
- 回傳:BaseResponseSuccess, Message, Data: { FileName, FileBase64, FileSize, DataCount }
- ExportClassesList(DateTime? courseDate1, DateTime? courseDate2, string projectID):匯出課程清單
- 輸入參數:courseDate1(課程日期起)、courseDate2(課程日期迄)、projectID(計畫代號)
- 查詢符合條件的課程,並逐一統計各課程的實到/應到/缺席/現場報名人數
- 使用 NPOI 產生 Excel,欄位:課程名稱、課程地點、授課講師、實到人數、應到人數、缺席人數、現場報名
- 回傳:BaseResponseSuccess, Message, Data: { FileName, FileBase64, FileSize }