2.9 KiB
2.9 KiB
活動人員管理
資料關聯
Classes.ID (1) <-> (*) SignUp.CourseID
資料類別
- 各資料存取類別、資料集合類別、資料類別已有程式碼
- 如需擴充加在 DAC_XXXX2.cs 裡面
- DAC_Classes:活動資料處理類別
- ClassesList:活動資料集類別
- ClassesItem:活動資料項目類別
- DAC_SignUp:活動參加人員資料處理類別
- SignUpList:活動參加人員資料集類別
- SignUpItem:活動參加人員資料項目類別
- 主要欄位:ID, CourseID, SeqNo, Name, Mobile, IDNumber, QRCode, SignUpType, CheckInTime, CheckOutTime, IDType, MealType, Email, Gender, LossJobTimes, AgreementStatus
畫面檔
活動參加人員
- Forms/SignUpList.aspx
- 畫面上方查詢活動,用下拉選擇活動
- 畫面下方列出活動參加人員
- 分頁顯示,每頁預設 20 筆,可選 10, 20, 50, 100 筆
- 分頁列 [第一頁][上一頁] 第[頁數下拉]頁 [下一頁][最後頁] | 每頁[筆數下拉]筆共[筆數]筆
匯入參加人員
- Forms/SignUpImport.aspx
- 畫面上方查詢活動,用下拉選擇活動
- 選擇 .xlsx 檔案,上傳
- 列出預覽及驗證錯誤處
- 執行匯入,匯入選擇到的活動
- 匯入格式與必要欄位是 Name 學員姓名、Mobile 手機號
- 要能偵測並跳過表頭
匯出參加人員
- Forms/SignUpExport.aspx
- 畫面上方查詢活動,用下拉選擇活動
- 執行匯出 .xlsx 檔
- 匯出格式是
- 表頭:活動名稱、日期、地點(空行)
- 表身:序號、學員姓名、手機號、簽到時間、簽退時間、身分別、身分證字號、餐點、電子郵件、失業給付認定次數、性別、報名方式
後端服務
- Services/ClassesService.asmx
- 活動的後端服務
- SearchClasses:查詢活動清單
- SearchProjects:搜尋計畫(用於自動完成)
- Services/SignUpService.asmx
- 活動參加人員的後端服務
- SearchSignUps:以活動編號(CourseID)查詢參加人員(基本查詢)
- SearchSignUpsAdvanced:進階查詢(支援序號、身分別、身分證字號、餐點、Email 等條件)
- SaveSignUp:儲存活動參加人員(新增或更新)
- DeleteSignUp(int id, int dbAppNo):刪除活動參加人員
- ConfirmImport(int courseID, List items, bool clearBefore):執行活動參加人員匯入
- ExportSignUps(int courseID, string timeFormat):匯出活動參加人員
- SendSmsBatch(int courseID, List signupIds):批量發送簡訊
- GetSignUpById(int signupId):查詢單筆參加人員
- CheckBalance:查詢簡訊點數餘額
- Services/FileUploadHandler.ashx
- 檔案上傳處理器
- action=ProcessImportFile:上傳並解析匯入 Excel 檔案(含驗證),參數 courseID 由 QueryString 傳入
技術規格
- 前端使用 Vue.js 實作,不使用 Server Control
- 後端使用 WebService,要 EnableSession