物品予約のアプリ構築で悩んでいます!!
物品予約システムをkintoneで構想しているのですが、課題の3つ、特に1点目のダブルブッキングをどう解消すればいいのか悩んでいます。
構築したことあるよ!という方や、「こういう考えあるのでは」「こうするといいのでは」みたいなご意見ある方がいらっしゃれば、ぜひともいただきたいです!!
調べきる限り、課題①は、JavaScriptsを書く、②③はカスタマインかなと思っているのですが、もしも見込み違いなどあれば、教えていただきたいです!
よろしくお願いいたします。
やりたいこと
施設で貸し出す物品があり、貸し出し予約ができる。物品は、その日から3日後から3か月後先まで予約ができ、予約できる期間は、最大2週間。また、貸し出したものは、備品管理を行い、予約が入れば「-」、予約が入れば「+」の増減を実現したい。この仕組みをFormBridge・kViewer・カスタマイン・kintoneを活用して実現したい(場合によっては、JavaScriptsでも)。
予約の流れ
① Kviewerの日にちが並んだリストビューを表示
② リストビューの詳細画面からFormBridgeにアクセス
③ フォームを表示すると、貸出日が自動入力(編集不可)
④ 基本情報、貸出物品(Kviewerルックアップ)、数量、返却日を入力
⑤ 自動返信メール
⑥ 予約内容に変更・キャンセルがあれば、キャンセル申請をする(⑤メール記載のURLからマイページにアクセスして、区分をキャンセルにする)
データの持たせ方
・事前にkintoneアプリに3年間の日にちのレコードを格納しておく(これが予約の流れ①)
・上記のアプリと別に備品一覧アプリ(日にち・備品名・数量)を持っておく
データの流れ
① 受付アプリにデータが追加・編集
② Webhookで受付アプリの日付期間を確認し、数量をその期間の物品レコードから増減させる
課題
①ダブルブッキング
⇒予約の流れ②を二人がして、申請すれば、両方とも予約が入ってしまい、そもそも運用が厳しいかもしれない…。
②期間の計算
⇒カスタマインで貸出日と返却日があればその期間の計算をして、その間の日付の当該物品の増減ができるはずだが…確証が持てない…
③変更
⇒当初運用で想定はしていないが、予約受け取り側で変更したら、物品数量も変わるようにしたいが、カスタマイズが難しくなりそうで二の足を踏んでいる。おそらく、変更前後のレコードがあり、二つを一意のコードで関連付けできていれば、①数量増(予約前に戻す)②数量減(予約を入れる)をすればいいものかと考えている。
ミュートしたユーザーの投稿です。
投稿を表示kintoneの一覧画面・詳細画面を直接操作している場合は、リビジョンによる排他制御的な管理ができるのですが、FormBridge・kViewerで外部連携の組み合わせですと、なかなか大変そうです。
実現の可能性としては、
・送信ボタンを押した瞬間にもう一度最新の在庫数を確認して変わっていたらエラーにする。
・一度「仮予約(承認待ち)」ステータスにして人が判断してから⑤返信メールする。
あたりかなと思います。