JS / 以Google表單為基礎結合日曆與試算表,用GAS建置簡易教室借用系統-整體架構

前幾天老闆突然問我

"google的系統,你熟不熟??"

"這個有辦法做教室借用系統嗎??"

我一頭霧水,但以前買的書"Google Apps Script 雲端自動化與動態網頁系統實戰"

好像有這個實作-利用Google表單作為介面,增加觸發事件將資料寫入日曆

所以隨口回答"有看過用Google表單做的,但沒實際做過"

然後,老闆就走開了

回到辦公室,立馬問Gemini如何實作

不愧是Google自家產品,程式碼架構與功能很完整

在AI的程式碼基礎上,修改成我想要的流程

備註:AI一開始提供的程式碼是無法運作

因為AI知道A部分的邏輯、B部分的邏輯,各自應該注意的地方

但是沒有思考到A跟B一起執行,要留意的地方


目前版本的流程

1.建立特定教室的日曆,並且取得ID

ID會在寫入日曆事件用到

2.Google表單-收集資料與發出借用資訊通知信

用來登錄借用資訊,送出表單資料之後,會觸發設定的程序

讀取表單回覆內容,將資料內容整理成html格式內容寄給借用者,並且將資料內容轉換成PDF作為信件附件

3.表單資料連結的Google試算表-判斷資料與寫入日曆

在試算表建立審核程序,讀取來自表單寫入的資料

因為採取「人工審核」的方式,所以在這個試算表有個自訂欄位作為程式判斷是否核准的依據

再透過程式判斷登入資料是否正確-判斷是否有跨天、起始時間是否早於結束時間、時間範圍內是否有日曆事件等等

如果都正確就寫入日曆,再發出審核通過的信件


操作介面

使用javascript操控css效果,製作分頁標籤

第1個分頁標籤是google表單

第2~3個分頁是google日曆

See the Pen
使用jQuery特效做出Tab頁籤切換效果-改成原生javascript3
by 莊幸諺 (@trico109748007)
on CodePen.

 

之後再來說程式碼

Google 表單的GAS-教室借用系統_google行事曆_表單觸發

Google 試算表的GAS-教室借用系統_google行事曆_試算表觸發