mihozip GitHub avatar

school-admin-daily-dashboard

mihozip

一套以 Google Sheet 為資料庫、Google Apps Script 為服務層的校務行政每日任務管理系統,支援多處室與職務的安裝精靈、電子紙看板及多條件篩選。

Stars

7

7 天增长

暂无数据

Fork 数

1

开放 Issue

0

开源协议

MIT

最近更新

2026-07-30

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

它為學校各處室提供了一個完整且可直接部署的任務管理解決方案,透過模組化的處室設定避免重複程式碼,具備自動資料遷移與備份,以及專為低動畫、高對比顯示設計的電子紙看板。

适合谁使用

  • 學校行政人員(主任、組長)
  • 學校資訊人員管理 Google Workspace
  • 發展 Google Apps Script 實用程式的開發者

典型使用场景

  • 教務、學務、總務等處室的每日任務追蹤
  • 在辦公室電子紙看板上顯示待辦任務
  • 切換不同處室設定時保留歷史任務資料

项目优势

  • 模組化處室設定,新增處室無需複製 CRUD 或看板程式
  • 欄位結構變更前自動備份舊資料,支援舊欄位遷移
  • 支援關鍵字與多條件篩選、優先級、期限及工作記錄稽核
  • 內建 CSRF 驗證、寫入鎖與可選的 Workspace 網域限制

使用前须知

  • 需使用 Google Workspace 網域才能完整控制存取權限
  • 專門針對學校行政情境,通用性有限
  • 非技術使用者設定時需學習 Google Apps Script 與 clasp 操作

README 快速开始

校務行政每日任務管理系統(Google Apps Script)

一套以 Google Sheet 為資料底座、Google Apps Script 為服務層的校務任務管理系統。安裝時可選擇處室與職務,系統會套用相對應的任務類型、範例、管理台名稱及直向電子紙看板。

支援的處室與職務

處室可選職務
教務處教務主任、教學組長、註冊組長、設備組長、資訊組長
學務處學務主任、訓育組長、生教組長、體育組長、衛生組長
輔導室輔導主任、輔導組長、資料組長、特教組長
總務處總務主任、事務組長、出納組長、文書組長
人事室人事主任、人事管理員
會計室會計主任、會計員

各 profile 都有自己的任務類型與 3 筆可選範例。新增處室時,只需在 Code.gsOFFICE_PROFILES 加入設定,不必複製 CRUD、權限或看板程式。

功能

  • 安裝精靈選擇學校名稱、處室與主任/組長職務
  • 任務新增、編輯、完成、重開與封存
  • 狀態、優先級、期限、負責人與下一步行動
  • 關鍵字與多條件篩選
  • 直向、低動畫、黑白高對比的電子紙看板
  • Google Sheet 下拉選單、格式與條件格式
  • 工作紀錄稽核、CSRF 驗證、寫入鎖與 Workspace 網域限制
  • 舊欄位遷移前自動備份
  • 切換處室時保留舊任務與舊任務類型

檔案

  • Code.gs:處室 profiles、安裝、遷移、CRUD、權限、稽核、Sheet 與看板 API
  • Installer.html:處室/職務安裝精靈
  • Index.html:任務管理台
  • Board.html:直向電子紙看板
  • appsscript.json:GAS 時區、V8 與 Web App 設定
  • tests/profile_config.test.js:處室設定的本機檢查

安裝

  1. 建立或開啟一份 Google Sheet。
  2. 選擇「擴充功能 → Apps Script」。
  3. 將本專案的 Code.gsInstaller.htmlIndex.htmlBoard.htmlappsscript.json 加入該 Apps Script 專案。
  4. 回到試算表重新整理。
  5. 選擇「校務任務系統 → 安裝/選擇處室」。
  6. 選擇學校、處室、職務,以及是否加入範例任務。
  7. 第一次安裝會要求授權。

也可以在 Apps Script 函式選單執行 installSystem() 開啟相同的安裝精靈。

安裝完成後會建立:

  • 任務清單
  • 工作紀錄
  • 系統設定
  • 選項清單
  • 試算表編輯觸發器

若偵測到舊版欄位,系統會先建立隱藏的 原始資料備份_yyyyMMdd_HHmmss 工作表,再轉成標準 19 欄資料契約。

部署 Web App

  1. 在 Apps Script 右上角選擇「部署 → 新增部署」。
  2. 類型選擇「網頁應用程式」。
  3. 建議使用:
    • 執行身分:部署者
    • 存取權:學校 Workspace 網域內的使用者
  4. 部署後可使用:
    • 管理台:你的部署網址
    • 電子紙看板:你的部署網址?page=board

系統設定ALLOWED_DOMAIN 填入例如 school.edu.tw,可再限制登入網域。留空表示程式不額外檢查,但 Web App 部署權限仍是第一層防護。

切換處室

再次開啟「校務任務系統 → 安裝/選擇處室」即可切換。切換時:

  • 不刪除或封存既有任務
  • 不重新加入範例任務
  • 新增任務改用新處室類型
  • 舊資料曾使用的類型仍保留,避免既有任務無法編輯
  • 管理台、看板、預設負責人與系統名稱改成新處室/職務

看板顯示邏輯

  • 強制顯示:一定顯示
  • 隱藏:不顯示
  • 自動:高優先級、等待、進行中,或在 AUTO_SHOW_DAYS 天內到期時顯示

GitHub 與 clasp

此資料夾不含固定試算表 ID、Token 或學校資料,可直接作為 GitHub repository 的內容。若使用 clasp,請把個人的 .clasp.json 留在本機;本專案的 .gitignore 已排除它。

npm install -g @google/clasp
clasp login
clasp create --type sheets --title "校務行政每日任務管理系統"
clasp push

clasp create 產生的 .clasp.json 含個人 Script ID,不建議提交公開 repository。

本機檢查

node tests/profile_config.test.js
# 或
npm test

GitHub Actions 也會在 push 與 pull request 時執行同一組檢查。

授權

MIT License

项目描述

可依處室安裝的 Google Apps Script 校務行政每日任務管理與電子紙看板系統

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

react
精选
react GitHub avatar

react

React is a JavaScript library for building user interfaces with declarative, component-based, and cross-platform design.

Web 开发前端框架
246,741
tandpfun
精选
tandpfun GitHub avatar

wardrobe

A GPT‑image powered app that extracts individual garment cutouts from photos, organizes them into a digital wardrobe, and generates modeled outfit previews.

JavaScript
1,570
mshumer
精选
mshumer GitHub avatar

Claude-of-Duty

A browser-based first-person shooter built entirely with procedural generation and orchestrated AI agents, featuring 55k lines of Three.js/WebGL2 code and no art assets.

AI 与机器学习AI 智能体
1,234