組織ごとの公開ページ(LP)と、そこから届く
問合せの受付・通知・確認を行う機能。@namespace 問合せ。
各組織は、エンドユーザー向けのランディングページ(LP)を持つ。LP には組織のロゴ・住所・電話番号と、 問合せフォームが含まれる。エンドユーザーがフォームを送信すると問合せ(Inquiry)が記録され、 LP に設定された通知先メールアドレスへメール通知が送られる。組織管理者は受け取った問合せを組織管理画面で確認する。
/lp/[landingPageId] で表示。横長・縦長の2レイアウトを持ち、複数セクション(section1〜7)で構成、最後のセクションに問合せフォームがある。landing-page-inquiry テンプレートでメール送信(件名「スマピタお問合せ通知」)。LandingPage
prisma/schema/landing-page.prisma
organizationId 所属組織logoImageUri? ロゴ画像postalCode? / postalAddress? / tel? 連絡先emails? 通知先メールアドレス(Json)inquiries(1:N)LandingPageInquiry
prisma/schema/landing-page-inquiries.prisma
landingPageId / organizationId 紐づけname / email / tel / body 問合せ内容accessMetadata アクセスメタデータ(Json:流入元 referer・URLクエリ)
※ 既知の軽微なブレ①:LandingPage.logoImageUri はDBカラム名が input_image_uri にマップされている(フィールド名と不一致。実害なし)。課題
※ 既知の軽微なブレ②:問合せの tel(電話番号)は、現状の公開フォームに入力欄が無く常に空文字で保存される(フォームは name / email / body のみ収集)。課題
公開画面(apps/www)
/lp/[landingPageId] — 公開LP(横長/縦長レイアウト・section1〜7・問合せフォーム)組織管理画面(apps/organization-manager)
/landing-pages / /landing-pages/[id] / /landing-pages/[id]/edit — LPの確認・編集/landing-page-inquiries / /[id] — 問合せ一覧・詳細/home — 直近問合せのウィジェットシステム管理画面(apps/system-manager)
/organizations/[id]/landing-pages / /[landingPageId] — LPの作成・閲覧・編集apps/www/actions/landing-page/get-landing-page.tsapps/www/app/(landing-page)/lp/[landingPageId]/_components/{horizontal,vertical}/_components/section7/_components/landing-page-inquiry-create-form/_actions/create-landing-page-inquiry.ts(lib/mailer/send で landing-page-inquiry テンプレ送信)apps/system-manager/.../landing-page-create-button/_actions/create-landing-page.tsapps/{organization-manager,system-manager}/.../landing-page-edit-form/_actions/update-landing-page.tsapps/organization-manager/actions/landing-page-inquiry/{list,get}-landing-page-inquiry.ts本ドキュメントは既存実装をもとに遡及作成。今後の改修は sessions/ 配下に追記する。