💭
Laravel Filamentで請求システム作る No2 日本語化と軽い設計
前回引き続きFilamentで請求システムを作っていきます。
今回はどこまで進めるか解らないですが、
一旦日本語化をしていきます。
日本語化する
Laravelの言語設定を日本語に変更します。
config/app.php
- 'locale' => 'en',
+ 'locale' => 'ja',
- 'fallback_locale' => 'en',
+ 'fallback_locale' => 'ja',
- 'faker_locale' => 'en_US',
+ 'fallback_locale' => 'ja_JP',
取り合えず、設定値がen
になってる物は軒並みja
に変えてみました。
不具合が有りそうなら途中で調べて戻すかもです。
後、時間設定もUTCから日本語に変えようと思います。
config/app.php
- 'timezone' => 'UTC',
+ 'timezone' => 'Asia/Tokyo',
filamentを日本語化する ついでに設定ファイルも編集できる部分に持ってくる
filamentの公式ドキュメントはこちら
設定ファイルの公開(編集できるように/app/
の中にコピーしてくる)
./vendor/bin/sail artisan vendor:publish --tag=filament-config
filamentの各パッケージのlangファイルを公開
./vendor/bin/sail artisan vendor:publish --tag=filament-panels-translations
./vendor/bin/sail artisan vendor:publish --tag=filament-actions-translations
./vendor/bin/sail artisan vendor:publish --tag=filament-forms-translations
./vendor/bin/sail artisan vendor:publish --tag=filament-notifications-translations
./vendor/bin/sail artisan vendor:publish --tag=filament-tables-translations
./vendor/bin/sail artisan vendor:publish --tag=filament-translations
1行ずつ順番に実行しました。
お~!日本語になってる!
完璧じゃね?
請求システムの仕様を考える
ここからは請求システムの仕様なので、飛ばしてもらっても大丈夫ですが、
SEがどんな風に仕様を考えているかの1部でも見てもらえたら幸いです。
機能と項目一覧
- 自社情報管理
- 自社名
- 住所・電話番号
- 支払い先口座
- 印鑑画像アップロード
- 登録番号(インボイス番号)
- デフォルト消費税
- 顧客管理
- 顧客名
- 敬称
- 請求書管理
- 顧客
- 請求明細
- 請求日
- 支払期限日
- 源泉徴収の必要有無
- 消費税の必要有無
- 備考
DB設計
自社情報
論理名 | 型 | その他 |
---|---|---|
自社名 | varchar(20) | not-null |
住所 | text | |
電話番号 | varchar(20) | |
支払先口座 | text | |
印鑑画像ファイル名 | varchar(30) | |
インボイス番号 | varchar(20) | |
デフォルト消費税 | SMALLINT | デフォルト:10 |
顧客情報
論理名 | 型 | その他 |
---|---|---|
顧客名 | varchar(20) | not-null |
敬称 | varchar(20) | not-null |
顧客情報
論理名 | 型 | その他 |
---|---|---|
顧客ID | int | not-null |
請求明細 | text | not-null |
請求日 | date | not-null |
支払期限日 | date | not-null |
源泉徴収の必要有無 | tynyint | not-null |
消費税の必要有無 | tynyint | not-null |
備考 | text | not-null |
で最低限の仕様は良いと思います。
DB設計はもっとIDとか、英語でのカラム名とか型とか、その他の制約も書いた方が良いんだけど
めんどくさいので最低限必要な情報だけ書く。
後は細かいユーザビリティーとかlaravelのお作法的な部分の
細かい事は都度補足します。
次回
今回は短かった。
次回は「顧客管理」機能を作っていきます。
Discussion