[学生時代の作品2]物品管理アプリ
PHP+Laravelの学習のために作成したアプリケーションです。
研究室で使用したいと頼まれたこと、
また、データベース操作や基本的なCRUD機能を学習するには物品管理アプリケーションが最適であると考え、作成いたしました。
ER図

使用した技術
CSSフレームワーク:Bootstrap
言語:PHP
フレームワーク:Laravel
テスト:PHPUnit
データベース:PostgressSQL
インフラ:Heroku
開発環境:Docker, Docker-compose
機能:
部屋→場所→場所詳細→物品
というふうに階層にして物品を登録できるようにしています。
物品登録の際、この数以下になったら警告する、という物品の数を指定することができそれを下回るとトップページに表示されます。
ユーザーを管理者ユーザーと一般ユーザーに分けています。
物品の検索も可能です。
管理者ユーザーができること
物品登録
物品削除
物品情報編集
ユーザー新規追加
物品追加リクエスト承認など
一般ユーザもできること
物品登録リクエスト
物品の数変更
発注
ブックマークなど
物品詳細ページからは物品の数を変更したユーザーの履歴が見ることができ、ユーザー詳細ページからは物品の数を変更した履歴を見ることができます。
工夫した点、こだわった点:
業務で使うことを考慮して、わかりやすくシンプルなUIを心がけました。
自由に物品を登録されると混乱を招く恐れがあると考え、一般ユーザーと管理者ユーザーで分け、一般ユーザーはできることを限定しました。
テストも少しではありますが、練習程度に書きました。
反省点:
一般ユーザーと管理者ユーザーの区別はUserのAdminという項目で区別していますが、より明確に分けるならば管理者用のUserテーブルを作るべきであったかもしれません。
Herokuを使用しているのでかなり重いアプリとなっています。この問題については次の作品でAWSを使用することで解決しています。
