0
1
テーマ、知りたいこと
プログラミングの質問ではないため、こちらで意見を募っています
予約サイトを構築しています。
どのように構築をしていくか設計について相談に乗っていただきたいです
理想形はあるのですが、googleフォームの制限が多く、gasやgoogleフォームの機能に詳しくないため困っております。
背景、状況
予約の項目は大きく
・日付(一か月先まで予約可能)
・人数_大人(日にち毎に上限あり、1グループあたり5人までの上限もあり)
・人数_子供(大人1人につき2名まで)
です
予約はスプレッドシート(予約)に連携、自動でメール送信を行いたいです
上限人数はスプレッドシート(人数管理)で管理しています
管理項目は以下です
日付|上限数|予約数_大人|予約可能枠
予約数_大人はsum関数でスプレッドシート(予約)の人数を日付毎にカウントしています
予約可能枠は上限ー予約数_大人の関数を組んでいます
予約ルールとして
人数変更・日付の変更は可能としています
キャンセルも可能です
予約開始時間のみアクセスが集中する可能性があります。そのため人数チェックについては厳しくいきたいです
相関チェックなどのエラーチェックはJSですべて完成しています
以下のようなアイディアを考えたのですがどれもうまく実現できず、アイディアをいただきたいです。
また、考えいる中でだんだん複雑なアイディアになっていき、初心者ではプログラミングでは実現が難しくなっていっています
①googleフォームで単純に作成
人数選択時OR送信時に選択した日付に対しての上限を超えていないかチェックを行う
→NG
相関チェックができない:送信時にクライアント側での処理が走らないため(質問して判明)GASに記載したエラーチェック意味をなさない
スプレッドシートに問答無用でデータが保存されてしまう
せめてスプレッドシートに登録前に人数を超えているかいないかで処理が変えられたら・・・
②gasでHTML作成→変更時に動作しない
②ー1
エラーチェックが行えないので、gasでHTMLを作成し、googleフォームに連携、スプレッドシートにデータを格納
onchange OR submit前にエラーチェックは可能
→NG
予約を変更する際(回答の編集)にメールに飛んだURLではgas作成のHTMLにとべない
gas作成のHTMLでなく、googleフォームでの回答となるため相関エラーチェックなどが行えない
②ー2
回答の編集時にgas作成のHTMLにとべないので、
スプレッドシート(仮予約)を作成
日付と人数を別ページで選択し、スプレッドシート(仮予約)に登録後、googleフォームの画面に飛ばす
スプレッドシート(人数管理)に仮予約状況を反映
googleフォーム側では日付と人数は編集不可とする
送信時にスプレッドシート(仮予約)の人数を削除、
予約しなかった人を想定してスプレッドシート(仮予約)のデータを定期的に削除
→NG
回答編集時にも編集(日付の変更や人数変更)できなくなる
編集時にgoogleフォームでの回答となるためNG相関チェックができない
②ー3
②ー2をもとにgoogleフォームに項目を追加
新規、編集のフラグを立てる(非表示)
編集の時は日付と人数を編集可能とする
→NG
編集時にgoogleフォームでの回答となるためNG相関チェックができない
③いったん予約は受けて、定期的にバッチ処理をして予約完了か不可か連絡する
多分いけそう?
残課題
削除(=キャンセル)をどのように実現するか検討がついていません。
チェックボックスで削除を作成し、キャンセルの場合はチェックを入れてもらう
チェックが入っているときは該当のレコードをスプレッドシートから消すもしくは、マイナス人数で登録するくらいしか思いつかないのですが、
フォームで回答の削除は難しいのでしょうか。
回答6件