バージョン選択

フォーラム

メニュー

オンライン状況

74 人のユーザが現在オンラインです。 (67 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 74
もっと...

サイト内検索

質問 > 管理機能 > 2.13で納品書に配送時間指定を明記したい

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yasuo_p
投稿日時: 2016/10/2 10:45
対応状況: −−−
半人前
登録日: 2016/8/6
居住地:
投稿: 22
2.13で納品書に配送時間指定を明記したい
納品書に配送時間を指定したいと思い色々調べているのですが、
以下のような記事はあったのですが、おそらくこのSC_FPDF.phpの以下の部分を参考に編集したいと思うのですが、
2.13系でよく似た部分はあるのですが、どのように受注データを取得すればいいかがわからず難航しています。

----------------------------------------------------
// 受注データの取得
function lfGetOrderData($order_id) {
if (SC_Utils_Ex::sfIsInt($order_id)) {
// DBから受注情報を読み込む
$objQuery =& SC_Query_Ex::getSingletonInstance();
$where = 'o.order_id = ?';
$arrRet = $objQuery->select('*', 'dtb_order as o LEFT JOIN dtb_shipping as s ON o.order_id = s.order_id', $where, array($order_id));
$this->arrDisp = $arrRet[0];
list($point) = SC_Helper_Customer_Ex::sfGetCustomerPoint($order_id, $arrRet[0]['use_point'], $arrRet[0]['add_point']);
$this->arrDisp['point'] = $point;

// 受注詳細データの取得
$arrRet = $this->lfGetOrderDetail($order_id);
$arrRet = SC_Utils_Ex::sfSwapArray($arrRet);
$this->arrDisp = array_merge($this->arrDisp, $arrRet);

// その他支払い情報を表示
if ($this->arrDisp['memo02'] != '') {
$this->arrDisp['payment_info'] = unserialize($this->arrDisp['memo02']);
}
$this->arrDisp['payment_type'] = 'お支払い';
}
}

---------------------ここまで-----------------------------

---------------------こちらは現在運用中のSC_FPDF.php------
// 受注データの取得
private function lfGetOrderData($order_id)
{
if (SC_Utils_Ex::sfIsInt($order_id)) {
// DBから受注情報を読み込む
$objPurchase = new SC_Helper_Purchase_Ex();
$this->arrDisp = $objPurchase->getOrder($order_id);
list($point) = SC_Helper_Customer_Ex::sfGetCustomerPoint($order_id, $this->arrDisp['use_point'], $this->arrDisp['add_point']);
$this->arrDisp['point'] = $point;

// 受注詳細データの取得
$arrRet = $objPurchase->getOrderDetail($order_id);
$arrRet = SC_Utils_Ex::sfSwapArray($arrRet);
$this->arrDisp = array_merge($this->arrDisp, $arrRet);

// その他支払い情報を表示
if ($this->arrDisp['memo02'] != '') {
$this->arrDisp['payment_info'] = unserialize($this->arrDisp['memo02']);
}
$this->arrDisp['payment_type'] = 'お支払い';
}
}
----------------------------ここまで------------------------

編集方法をご教授下さい。よろしくお願い致します。
umebius
投稿日時: 2016/10/3 0:55
対応状況: −−−
登録日: 2016/7/22
居住地:
投稿: 2085
Re: 2.13で納品書に配送時間指定を明記したい
$objPurchase->getShippings($order_id);
でShippingの配列が取れますよね?
その各Shippingのshipping_timeを表示してやればできるのではないかと思います!
※動作確認してません


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

sumida
投稿日時: 2016/10/5 20:09
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: 2.13で納品書に配送時間指定を明記したい
届先情報は、
$objPurchase = new SC_Helper_Purchase_Ex();
$this->arrShip = $objPurchase->getShippings($this->arrDisp['order_id']);

配送時間一覧は、
$arrDelivTime = $objPurchase->getDelivTime($this->arrDisp['deliv_id']);

で取得できると思います。

なので、お届け時間は、
$arrDelivTime[$this->arrShip[$i]['time_id']]
で取得できると思います。


なお、「指定なし」は、$arrDelivTime[$this->arrShip[$i]['time_id']] が 0 だったような。
さらに、$iの部分は、単独配送と複数配送で、数字が異なっていたような。
yasuo_p
投稿日時: 2016/10/10 15:13
対応状況: −−−
半人前
登録日: 2016/8/6
居住地:
投稿: 22
Re: 2.13で納品書に配送時間指定を明記したい
ありがとうざいます。

ご教授頂きました内容を

// 受注データの取得
private function lfGetOrderData($order_id)
{
if (SC_Utils_Ex::sfIsInt($order_id)) {
// DBから受注情報を読み込む
$objPurchase = new SC_Helper_Purchase_Ex();
$this->arrDisp = $objPurchase->getOrder($order_id);
list($point) = SC_Helper_Customer_Ex::sfGetCustomerPoint($order_id, $this->arrDisp['use_point'], $this->arrDisp['add_point']);
$this->arrDisp['point'] = $point;

//届け先読み込み
$this->arrShip = $objPurchase->getShippings($this->arrDisp['order_id']);
$arrDelivTime = $objPurchase->getDelivTime($this->arrDisp['deliv_id']);
$arrDelivTime[$this->arrShip[$i]['time_id']]


// 受注詳細データの取得
$arrRet = $objPurchase->getOrderDetail($order_id);
$arrRet = SC_Utils_Ex::sfSwapArray($arrRet);
$this->arrDisp = array_merge($this->arrDisp, $arrRet);


// その他支払い情報を表示
if ($this->arrDisp['memo02'] != '') {
$this->arrDisp['payment_info'] = unserialize($this->arrDisp['memo02']);
}
$this->arrDisp['payment_type'] = 'お支払い';
}
}

として、表示したい部分に
$this->lfText(95, 130, '<配送時間>'.$this->arrShip['shipping_time'], 9); //配送時間指定

と書いたのですが、システムエラーになってしまいます。

初心者で理解が悪く申し訳ありません・・・
どのように挿入すればよろしいでしょうか??

sumida
投稿日時: 2016/10/10 20:57
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: 2.13で納品書に配送時間指定を明記したい
文法上
$arrDelivTime[$this->arrShip[$i]['time_id']]
は、
$this->arrShip['shipping_time'] = $arrDelivTime[$this->arrShip[$i]['time_id']];
になるかと。

ただし、$iを解決しないと、欲しい情報は、取得できないと思います。
(前回の投稿の最下行の部分)

追記:
単独配送だと、[0]
複数配送だと、[1],[2],...
だったと思います。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,865名です
総投稿数は109,997件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1294
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.