列印補課表

對應程式: print_leave.php

05-列印補課表

業務功能

依班別產生該班有請假紀錄之學員的補課簽到表,並直接觸發瀏覽器列印功能,供管理人員印出紙本讓學員簽到補課使用。

頁面操作

  • 班級關鍵字:文字輸入框,支援自動完成(autocomplete)
  • 列印補課表:Submit 按鈕,以新視窗開啟列印頁面
  • 說明浮動提示(Tippy.js):「提供結業班別之同學補課簽到用」

處理邏輯

  1. 列印模式(GET 參數帶 print=1kind 有效):
    • get_kind_by_kind_id() 取得班別資訊
    • SQL 查詢 holiday_logs 表:WHERE school_no LIKE "{classprefix}%" ORDER BY school_no ASC
    • 依學號分組統計請假天數,產生表格:學號、姓名、請假天數、3 個簽到欄(依請假天數決定是否留空或標 -----
    • 輸出含 CSS 的 HTML 表格 + window.print() JavaScript
  2. 搜尋頁面模式
    • 載入所有班別,建立 short_kind_name → classprefix 映射
    • 表單以 target="_blank" 提交至新視窗

備註

  • 補課簽到欄位最多 3 格,對應請假 1~3 天以上
  • 列印頁面是獨立 HTML,不含 hd.php / ft.php 外框

使用的 Functions

Function定義於
get_kind_by_kind_id($kind_id)enter_logs/inc.php
get_all_kinds($flag1, $flag2)enter_logs/inc.php
get_short_kind_name($kind_name)_aiacademy_helper.php
get_matched_classprefix($kind_name, $flag)_aiacademy_helper.php
display_autocomplete_searchkind_input($part, $conf)dashboard/inc.php
$wpdb->get_results()WordPress core

使用的常數

Constant定義於
TBL_HOLIDAY_LOGS"holiday_logs"enter_logs/inc.php
PAGE_ACCESS_CONFIG_VALUE_FOR_ALL_STAFF"ALL_STAFF"enter_logs/inc.php