MIT -Lizenz
Dies ist das Spining Reservation System mit dem Google Apps -Skript.

Das Google Apps -Skript ist eines der leistungsstarken Automatisierungswerkzeuge zum Erreichen des Automatisierungsprozesses. Wenn das Skript von Google Apps für die Situation verwendet werden kann, kann die Automatisierung dank Cloud Computing fortgesetzt werden. Außerdem kann das Google Apps -Skript Google Spreadsheet mit Google Spreadsheet -Dienst verwalten und Web -Apps schnell mit HTML und JavaScript mit minimaler Codierung bereitstellen. Ref1 Ref2 Wenn Google -Tabelle als Datenbank verwendet wird und die Web -Apps als Benutzeroberfläche verwendet werden, können verschiedene Webanwendungen erstellt werden. Um die wichtigsten Aspekte des Erstellens von Webanwendungen mit Google Apps -Skript zu erstellen, möchte ich in diesem Bericht eine einfache Webanwendung vorstellen. Als Beispiel wird das von Google Apps Skript, HTML und JavaScript erstellte Spining Reservation System als Webanwendung implementiert.
Diese Webanwendung ist ein Speisesystem. Der Grundzustand dieses Systems ist wie folgt.

Hier möchte ich Ihnen eine Demonstration dieser Webanwendung zeigen. Bei dieser Demonstration beträgt die maximale Anzahl von Sitzen 50. Die durchschnittliche Mahlzeit beträgt 2 Stunden. Die Schrittzeit beträgt 30 Minuten. Unter dieser Bedingung wird der folgende Fluss ausgeführt.
In dieser Demonstration ist der heutige 22. Januar 2024. Der 1. Tag dieses Kalenders ist der 23. Januar 2024.
Wenn dieser Fluss abgeschlossen ist, ist "Daten" -Stheet in der Google -Tabelle wie folgt. Sie können sehen, dass 2 Reservierungen gespeichert sind.

Im nächsten Abschnitt möchte ich die Verwendung dieser Anwendung vorstellen.
Um diese Anwendung zu installieren, habe ich ein Skript zum einfachen Kopieren der ursprünglichen Skripte erstellt. Um die Skripte für die Implementierung dieses Reservierungssystems zu kopieren, führen Sie bitte das folgende Skript aus.
Bitte kopieren Sie das folgende Skript in den Skripteditor des Google Apps -Skripts. Natürlich können Sie diese Skripte und HTML auch direkt kopieren und aus diesem Repository einfügen.
function myFunction ( ) {
const fileIds = [
"1NpxFPiuANcbRrnPTRSUgwjNaprB98cqz6KQUBl_IZLYK-Fhq8skZP0XB" ,
"1JrAE1-MqD7OjOWKbSGI5EDwJVXVl4zIK"
] ;
fileIds . forEach ( id => {
const file = DriveApp . getFileById ( id ) ;
file . makeCopy ( file . getName ( ) ) ;
} ) ;
} Wenn diese myFunction ausgeführt wird, können Sie die folgenden 2 Dateien im Stammordner.
ReservationApp .sample_html.html . Das eigenständige ReservationApp ist das Basiskript, einschließlich Google Apps -Skript und HTML. Wenn Sie diese Anwendung auf der Google -Seite verwenden möchten, können Sie sie nur mit dieser Datei tun. Textdatei sample_html.html wird außerhalb von Google verwendet. Wenn Sie diese Webanwendung aus der Google -Seite herausbringen möchten (z. B. möchten Sie sie auf Ihren Server setzen), wird sample_html.html verwendet. Zu diesem Zeitpunkt müssen Sie sowohl ReservationApp als auch sample_html.html verwenden.
Natürlich können Sie die Originalskripte in diesem Repository direkt herunterladen.
Die detaillierten Informationen finden Sie im offiziellen Dokument.
Bitte setzen Sie dies mit dem Skript -Editor von ReservationApp ein.
https://script.google.com/macros/s/###/exec .Wenn Sie das Google Apps -Skript von Web -Apps ändern, ändern Sie die Bereitstellung als neue Version. Damit spiegelt sich das geänderte Skript in Web -Apps wider. Bitte seien Sie vorsichtig darüber.
Sie können die Details dazu in meinem Bericht "Neueinsatz -Web -Apps ohne Änderung der URL von Web -Apps für neue IDE" sehen.
Wenn Sie diese Anwendung auf der Google -Seite verwenden möchten, verwenden Sie dies bitte.
Bitte greifen Sie mit Ihrem Browser auf Ihre Web -Apps -URL von https://script.google.com/macros/s/###/exec zu. Auf diese Weise wird das Skript ausgeführt.
Wenn Sie das Skript zum ersten Mal ausführen, wird im Root -Ordner eine neue Google -Tabelle ReservationApp_database mit 3 Blättern mit dashboard , data und archive erstellt. Diese Tabelle wird als Dashboard, die Datenbank und das Archiv für alte Daten verwendet. Selbst wenn Sie diese Tabelle in einen bestimmten Ordner verschieben, funktioniert das Skript.
Anschließend sehen Sie einen Kalender mit dem Titel der "Reservierungsseite" in Ihrem Browser. Dies wird durch die anfänglichen Beispielwerte im Dashboard -Blatt in der Tabelle erstellt. Sie können die Details im Dashboard -Blatt sehen.
Nachdem Sie den Kalender gesehen haben, können Sie die Sitze reservieren, indem Sie auf den Kalender klicken. Dies ist auch in der obigen Demonstration zu sehen.
Wenn Sie diese Anwendung außerhalb der Google -Seite verwenden möchten, verwenden Sie dies, wenn Sie diese Anwendung auf Ihrem Server verwenden möchten.
In diesem Fall öffnen Sie zunächst die Textdatei mit HTML -Daten mit einem Texteditor. Bitte setzen Sie Ihre Web -Apps in JavaScript auf url ein.
Nachdem Ihre Web -Apps festgelegt sind, greifen Sie bitte mit Ihrem Browser auf die HTML zu. Auf diese Weise wird das Skript ausgeführt.
Wenn Sie das Skript zum ersten Mal ausführen, wird im Root -Ordner eine neue Google -Tabelle ReservationApp_database mit 3 Blättern mit dashboard , data und archive erstellt. Diese Tabelle wird als Dashboard, die Datenbank und das Archiv für alte Daten verwendet. Selbst wenn Sie diese Tabelle in einen bestimmten Ordner verschieben, funktioniert das Skript.
Anschließend sehen Sie einen Kalender mit dem Titel der "Reservierungsseite" in Ihrem Browser. Dies wird durch die anfänglichen Beispielwerte im Dashboard -Blatt in der Tabelle erstellt. Sie können die Details im Dashboard -Blatt sehen.
Nachdem Sie den Kalender gesehen haben, können Sie die Sitze reservieren, indem Sie auf den Kalender klicken. Dies ist auch in der obigen Demonstration zu sehen.
Diese Webanwendung kann vom Dashboard -Blatt auf der Spreadsheet ReservationApp_database verwaltet werden. Bitte öffnen Sie das Dashboard -Blatt auf der Tabellenkalkulation ReservationApp_database . Sie können 3 Spalten von "Variablen", "Werten" und "Beschreibung" sehen. Sie können die Details jedes Wertes in "Beschreibung" der Spalte "C" sehen. Die Anfangswerte der Spalte "B" sind die Stichprobenwerte für das Testen. Bitte ändern Sie diese Werte in Ihre tatsächliche Situation.
Wenn Sie das Datenblatt sehen, können Sie die Daten sehen, wenn Sie es bereits als Test reserviert haben. In dieser Anwendung werden die alten Daten vor heute auf das Archivblatt verschoben, wenn das Skript durch Zugriff auf Web -Apps ausgeführt wird. Und wenn Sie beispielsweise die Daten ändern, spiegeln sich die aktualisierten Daten in der HTML wider, wenn die HTML geöffnet wird. Bitte seien Sie vorsichtig darüber.
Diese Anwendung kann den zeitlichen Feiertag festlegen. In diesem Fall legen Sie es bitte manuell in das Datenblatt. Wenn Sie beispielsweise heute 1. Januar 2024 sind und Sie als 2. Januar bis 5. Dezember 2024 als temporale Feiertage festlegen möchten, geben Sie bitte die Werte von 2024/01/02 , 2024/01/05 manuell und temporaryHoliday in Spalten "f" ("H" ("Start", "End", "Status"). Wenn Sie die Web -Apps öffnen, können Sie die zeitlichen Feiertage vom 2. bis 5. Januar 2024 im Kalender sehen.
Es kann einen Fall geben, in dem Sie den reservierten Tag und die reservierte Zeit festlegen müssen. Zum Beispiel, wenn heute der 1. Januar 2024 ist und Sie am 6. Januar 2024 von 12:00 bis 17:00 Uhr als reserviertes Tag und Zeit die Werte von 2024/01/06 12:00:00 , 2024/01/06 17:00:00 , und reservedDayTime to Columns bis zum "Start" ("Start" ("(" ("(" ("(" ("(" ("(" ("(" ("(" ("(" ("(" ("(" ("(", ",", "),", " Danach können Sie beim Öffnen der Web -Apps den reservierten Tag und die reservierte Zeit vom 2024/01/06 12:00:00 bis 2024/01/06 17:00:00 im Kalender sehen.
Über die Absage der Reservierung wird diese Zeile übersprungen, wenn der Kalender angezeigt wird, wenn Sie "Abbrechen" in der Spalte "Status" des "Daten" -Blattes einfügen. Auf diese Weise können Sie die Reservierungen stornieren, während die Datenzeilen aufbewahrt werden. In der aktuellen Phase wird angenommen, dass die Stornierung von der Seite des Eigentümers durchgeführt werden kann. Wenn also ein Benutzer die Reservierung stornieren möchte, fordern Sie dem Benutzer an, eine E -Mail zu senden, um sie zu stornieren. Diese Nachricht kann in "VereinbarungenForreservierung" des "Dashboard" -Blattes festgelegt werden.
Bitte löschen Sie sowohl den Schlüssel als auch den Wert der spreadsheetId der Skripteigenschaft im Skripteditor von ReservationApp . Wenn Sie wieder auf Web -Apps zugreifen, wird im Stammordner eine neue Tabelle erstellt. In diesem Fall wird die alte Tabelle nicht gelöscht.
Diese Webanwendung ist ein einfaches Skript. Sie können also das Skript Ihres kopierten Skripts frei ändern. Wenn Sie das Skript hinzufügen und/oder ändern möchten, tun Sie es bitte mit Ihrem kopierten Skript.
Diese Webanwendung verwendet Web -Apps, die vom Google Apps -Skript erstellt wurden. In der aktuellen Phase beträgt die maximale Anzahl gleichzeitiger Zugriff auf Web -Apps 30. Ref. In Ihrer tatsächlichen Situation besteht die Möglichkeit, dass viele Benutzer über 30 Benutzer gleichzeitig zugreifen, diese Anwendung möglicherweise nicht geeignet. Bitte seien Sie vorsichtig darüber.
In dieser Anwendung gibt es hauptsächlich 2 Funktionen doGet und putValues .
doGet doGet wird zum Zugriff auf Web -Apps vom Google Apps -Skript und außerhalb von Google verwendet. Das Umschalten zwischen Innen- und außerhalb von Google erfolgt mit dem Parameter Abfrage. Wenn Sie direkt auf die Web -Apps -URL zugreifen, die mit Ihrem Browser, wird htmlService.htmloutput der Klasse zurückgegeben. Auf diese Weise können Sie den Kalender auf dem Browser sehen. Wenn Sie hingegen mit Ihrem Browser auf sample_html.html zugreifen, werden die Kalenderdaten durch Anfragen mit der Fetch -API in sample_html.html heruntergeladen. Auf diese Weise können Sie den Kalender auf dem Browser sehen.
putValues putValues wird zum Speichern der Daten von der HTML -Seite verwendet. Diese Funktion läuft unter dem Schlosserdservice, indem die gleichzeitigen Zugriffe angenommen werden. Wenn die Reservierung auf der HTML ausgeführt wird, indem Sie auf eine Schaltfläche "Senden" klicken, werden die Reservierungsdaten mit google.script.run für "Inside" und an die Fetch -API für "draußen" an Google Apps -Skript gesendet. Wenn bei Google Apps Skript die übermittelten Daten nicht dupliziert werden, werden die Daten in das Blatt "Daten" eingefügt und die folgende E -Mail sowohl an den Benutzer als auch an den Eigentümer gesendet.
--- Reservation information ---
Date: 2024-01-01 10:00 to 2024-01-01 12:00
Reserved seats: 2
Name: sample1
Email: sample1@###
Phone: '123
Comment: sample comment
MIT
Tanaike
Spenden
v1.0.0 (22. Januar 2024)
SPITZE