個人開発完成
Webアプリケーション
店舗管理アプリ
営業担当者が店舗情報、訪問予定、訪問履歴、日報をまとめて管理するためのWebアプリケーションです。ログインユーザーごとにデータを分け、日々の訪問活動を記録・確認できるようにしました。店舗に位置情報を登録するとGoogleマップを開き、訪問先までの経路確認にも利用できます。

制作の背景
営業活動で扱う店舗情報と訪問記録を一か所にまとめ、予定と実績を確認しやすくすることを目的として個人開発しました。
主な実装内容
- ユーザー登録、ログイン、ログアウト
- 店舗情報の登録・一覧・編集・削除
- 店舗ごとの訪問予定の登録・更新・削除
- 訪問予定の完了・未完了切り替えと、訪問履歴の記録
- 日付ごとの訪問予定・訪問実績・未完了件数を確認するカレンダー表示
- 指定した日付の日報の登録・更新・表示
- 店舗に緯度・経度を登録するとGoogleマップを開き、訪問先までの経路確認に利用できる導線
- ログインユーザー以外の店舗・訪問データを参照できないアクセス制御
設計上の課題と対応
課題
- 店舗、訪問予定、訪問履歴、日報という関連データを、日々の営業活動の流れに沿って扱うこと
- 複数ユーザーが利用しても、他ユーザーのデータを参照・操作できないようにすること
対応
- 訪問予定を完了にしたときに訪問履歴を作成し、未完了へ戻すと履歴を削除することで、予定と実績を連動させた
- 店舗・訪問予定・訪問履歴・日報の取得と更新をログインユーザー単位に限定し、所有者以外の店舗にはアクセスできない構成にした
- カレンダー用APIで日付別の予定数・訪問数・未完了数を集計し、活動状況を一覧で確認できるようにした
品質確認
- Feature Testで、ユーザー登録、ログイン、ログアウトと認証トークンの無効化を確認
- Feature Testで、認証済みユーザーによる店舗情報のCRUD操作を確認
- Feature Testで、他ユーザーが所有する店舗を取得・更新・削除できないことを確認