Laravel/PHP中心のWebアプリケーションエンジニア / ジュニアエンジニア
2- 代理店・倉庫向けポータル開発
**環境**:Laravel / PHP / PostgreSQL / Docker / Salesforce(Heroku Connect) **担当**:設計、実装 ##### 担当内容・実装詳細 代理店・倉庫向けポータルの開発を担当。 同一ドメイン配下で代理店向け・倉庫向けの複数ポータルを運用する必要があり、それぞれでログインできるよう、認証機能やパスワードリセット機能を改修した。 認証機能では、サブドメインに応じてログイン時に使用するセッションクッキーを切り替える処理を実装。 あわせて、Laravelの `auth.php` の設定を見直し、ポータルごとに認証設定を切り替えられるよう対応した。 パスワードリセット機能では、ポータルごとに異なるリセット処理に対応するため、ブローカー設定やリセットURLの生成処理を変更。 また、利用するURL構成がポータルごとに異なるため、個別のルーティングファイルを使用できるよう設定した。 メール送信については、SMTPを利用して送信できるよう設定を行った。 Salesforce連携では、Heroku Connectを利用してSalesforce上のデータとアプリケーション側のデータを同期する必要があった。 Heroku Connect経由のテーブルでは、通常のLaravelモデルで使用する `created_at` などのカラム名と異なる項目を扱う必要があったため、Salesforce連携用の基底モデルとして `SalesforceBaseModel` を作成。 各Salesforce連携モデルはこの基底モデルを継承する形で実装し、共通設定をまとめた。 ##### 担当業務 * 管理者・代理店・倉庫の3ロール認証実装 * 認証やパスワードリセットを特殊要件に合わせて改修 * 受注管理、請求、出荷管理、シリアル番号登録機能の開発 * Blade + Vite + JavaScript/AJAX による画面実装 * postgesqlのトリガー作成