はじめに
Salesforceの勉強を兼ねて練習用WEBサイトを作成しており、そこで学んだことをまとめました。
実装機能
⑴ 登録した商品を表示

詳細はこちら
https://qiita.com/szaizen/items/19f3c2b0f531f8fdb00f
⑵ 会員登録、ログイン

詳細はこちら
https://qiita.com/szaizen/items/ef66de174ec1d91d357d
⑶ ショッピングカート的なもの

詳細はこちら
https://qiita.com/szaizen/items/e1689446ade8f824b018
作成したカスタムオブジェクト
|
オブジェクト名 |
API参照名 |
説明 |
1 |
ユーザ |
User__c |
会員登録した人の情報 |
2 |
セッション |
session__c |
セッション情報 |
3 |
商品 |
Product2 |
販売している商品の情報 |
4 |
ケース |
Case |
お問い合わせされると、ここに入る |
5 |
問い合わせ履歴 |
CaseHistory__c |
ケースとユーザの子オブジェクト |
6 |
ショッピングカート |
shoppingcart__c |
ユーザと主従関係、商品と参照関係 |
作成したVisualforceページ
名前 |
説明 |
home |
基本となるトップページ |
About |
サイト説明ページ |
shop |
商品一覧を表示したページ |
inquiry |
お問い合わせを受付・履歴を表示するページ |
category |
カテゴリーごとに商品一覧を表示するページ。ページにとぶ際に引数を渡してSELECTした結果を表示しているため、ページは1つです。 |
inquiry |
お問い合わせを受付・履歴を表示するページ |
UserCreate |
会員登録できる。作成すると、ユーザに情報が書き込まれる。 |
homecss |
スタイル調整シート。Bootstrap、fontawasomeも読み込んでいます。 |
ShoppingcartCheck |
カートのお会計進むボタンを押下した時の確認画面 |
Purchased |
購入後のThanks画面 |
作成したVisualforceコンポーネント
名前 |
説明 |
Music_header |
ログインしていない状態のヘッダーです。右上にはログインできるモーダルを表示しています。 |
Login_header |
ログインしている状態のヘッダーです。右上には名前とログアウトできるボタンを表示します。 |
ProductList |
商品オブジェクトから繰り返しカード型で表示 |
ProductList6 |
商品オブジェクトから最大6件、最終更新日が新しい順で繰り返しカード型で表示(トップ用) |
Side_header |
カテゴリーごとのリストとTwitterのサイドヘッダー |
metadata |
全ページ共通のメタデータ |
Music_footer |
サイトのフッター。全ページの下に表示する。 |
homecss |
スタイル調整シート。Bootstrap、fontawasomeも読み込んでいます。 |
作成したApexクラス
名前 |
説明 |
inquiry |
ログインしている場合、Cookieからセッションを取得し、ユーザを検索する。ユーザに紐づいている問い合わせ履歴がある場合、履歴を表示する。また、入力フォームにはあらかじめ名前、Emailなどユーザ情報から入力する。ログインしていない場合、上記のものを表示しないように出し分ける。問い合わせを送信すると、ケースが作成される。紐づくユーザがある場合は問い合わせ履歴が作成される仕様です。 |
LoginController |
ログインした時、ユーザ名とパスワードが一致していたらCookie情報にセッション名を書き込み、セッションオブジェクトを更新してログインをする。また、常にCookieからセッション情報を取得し、紐づくセッションオブジェクトがあるかどうかを判断している。ある場合、ヘッダーをログイン済みの方を表示し、ユーザから名前を取得して表示する。 また、ショッピングカート追加・削除、商品購入の動きも記述しています。 |
Github
コードはこちらにおいています〜
https://github.com/szaizen/music