質問 > フロント機能 > ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
fireworks |
投稿日時: 2011/9/10 13:13
対応状況: −−−
|
常連 登録日: 2011/7/12 居住地: 投稿: 38 |
ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 EC-CUBEバージョン 2.11.1
PHPバージョン PHP 5.2.14 DBバージョン MySQL 5.0.90-log 表題のとおりです。 マイページの購入履歴一覧に(詳細の右に) 発送済みやキャンセルなどの対応状況を 出したいです。初心者なのでやり方をご教授いただきたく! お願いいたします。 |
AMUAMU |
投稿日時: 2011/9/10 16:39
対応状況: −−−
|
神 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 ステータスを取得するような処理を足して、あとは表示側で制御になると思います。
過去ログにも同様の話があったと思いますので確認されると良いと思います(2.4系でもほぼ同じはずです)。
|
fireworks |
投稿日時: 2011/9/11 4:23
対応状況: −−−
|
常連 登録日: 2011/7/12 居住地: 投稿: 38 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 過去ログなど参照して応用してやってみたのですが、表示されません。。。
まず、 LC_Page_Mypage.phpに下記を追加して、 $masterData = new SC_DB_MasterData_Ex(); $this->arrORDERSTATUS = $masterData->getMasterData("mtb_order_status"); /data/class/pages/mypageindex.tplに <td class="alignC"><!--{$arrORDERSTATUS[$status]}--></td> を追加すればいけると思ったんですが・・・ とくにエラーはないのですが、 何にも表示されません。。。 何がいけないのでしょうか。 |
momoko |
投稿日時: 2011/9/11 21:53
対応状況: −−−
|
新米 登録日: 2011/9/1 居住地: ピーチ王国 投稿: 6 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 EC-CUBEのデフォルト状態では、購入履歴一覧ページにオーダー毎の対応状況を示すデータは渡されていません。
したがって、対応状況(status)を取得するにはdtb_orderに対して、SQL文を発行する必要があります。 これは、LC_Page_Mypage.phpの関数lfGetOrderHistoryを編集すれば可能です。 その場合のテンプレートは <td class="alignC"><!--{$arrOrder[cnt].status}--></td> になります。 |
fireworks |
投稿日時: 2011/9/13 22:41
対応状況: −−−
|
常連 登録日: 2011/7/12 居住地: 投稿: 38 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 すいません、、
該当箇所はわかったんですが・・ sqlの発行というのはどうやるもんなのでしょうか?? |
momoko |
投稿日時: 2011/9/14 13:31
対応状況: −−−
|
新米 登録日: 2011/9/1 居住地: ピーチ王国 投稿: 6 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 lfGetOrderHistory
$col = "order_id, create_date, payment_id, payment_total"; を $col = "order_id, create_date, payment_id, payment_total, status"; に変更 そしてテンプレート部分はこちらの方が正しいですね。 <!--{assign var=status value="`$arrOrder[cnt].status`"}--> <td class="alignC"><!--{$arrORDERSTATUS[$status]}--></td> |
fireworks |
投稿日時: 2011/9/15 9:09
対応状況: −−−
|
常連 登録日: 2011/7/12 居住地: 投稿: 38 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 ありがとうございます!!
ただ、やってみたのですが、何も表示されませんでした・・・ 難しいですね。。。 |
sdc |
投稿日時: 2014/4/21 6:22
対応状況: −−−
|
新米 登録日: 2014/4/21 居住地: 投稿: 1 |
Re: ec-cube2.11.1 購入履歴一覧画面に対応状況を表示 /data/class_extends/page_extends/mypage/LC_Page_Mypage_Ex.php
に、次のコードを入れる。 function action() { $objCustomer = new SC_Customer_Ex(); $customer_id = $objCustomer->getvalue('customer_id'); //ページ送り用 $this->objNavi = new SC_PageNavi_Ex($_REQUEST['pageno'], $this->lfGetOrderHistory($customer_id), SEARCH_PMAX, 'fnNaviPage', NAVI_PMAX, 'pageno=#page#', SC_Display_Ex::detectDevice() !== DEVICE_TYPE_MOBILE); $this->arrOrder = $this->lfGetOrderHistory($customer_id, $this->objNavi->start_row); switch($this->getMode()){ case "getList": echo SC_Utils_Ex::jsonEncode($this->arrOrder); exit; break; default: break; } $masterData = new SC_DB_MasterData_Ex(); $this->arrORDERSTATUS = $masterData->getMasterData("mtb_order_status"); // 支払い方法の取得 $this->arrPayment = SC_Helper_DB_Ex::sfGetIDValueList("dtb_payment", "payment_id", "payment_method", "status"); // 1ページあたりの件数 $this->dispNumber = SEARCH_PMAX; } /** * 受注履歴を返す * * @param mixed $customer_id * @param mixed $startno 0以上の場合は受注履歴を返却する -1の場合は件数を返す * @access private * @return void */ function lfGetOrderHistory($customer_id, $startno = -1) { $objQuery = SC_Query_Ex::getSingletonInstance(); $col = "order_id, create_date, payment_id, payment_total, status"; $from = "dtb_order"; $where = "del_flg = 0 AND customer_id = ?"; $arrval = array($customer_id); $order = "order_id DESC"; if ($startno == -1) { return $objQuery->count($from, $where, $arrval); } $objQuery->setLimitOffset(SEARCH_PMAX, $startno); // 表示順序 $objQuery->setOrder($order); //購入履歴の取得 return $objQuery->select($col, $from, $where, $arrval); } |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |