1.9 KiB
1.9 KiB
課程報表
畫面檔:
~/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,欄位:序號、學員姓名、手機號碼、身分證字號、性別、認定次數、用餐別、報名方式、簽到時間、簽退時間、出席狀況
- 回傳:BaseResponse(Success, Message, Data: { FileName, FileBase64, FileSize, DataCount })
-
ExportClassesList(DateTime? courseDate1, DateTime? courseDate2, string projectID):匯出課程清單
- 輸入參數:courseDate1(課程日期起)、courseDate2(課程日期迄)、projectID(計畫代號)
- 查詢符合條件的課程,並逐一統計各課程的實到/應到/缺席/現場報名人數
- 使用 NPOI 產生 Excel,欄位:課程名稱、課程地點、授課講師、實到人數、應到人數、缺席人數、現場報名
- 回傳:BaseResponse(Success, Message, Data: { FileName, FileBase64, FileSize })