バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 初回買い物でポイントアップ

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
tonton
投稿日時: 2009/3/28 2:32
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
Re: 初回買い物でポイントアップ
おっと!!!

がぁ〜ん。。。

>実運用に乗っけるには、
>・初回注文がキャンセルされた場合のフロー
>・ポイント有効化タイミングの調整
>が必要になってくると思います。


なるほど・・・そうですね、確かに結構な調整が必要ですね。
ちょっと、及び腰になってしまいました;

>・ポイント有効化タイミングの調整
こっちのほうは、フォーラムでも何度か出ていたようなので、そちらのスレッドを拝見させていただいて、タイミングさえ合えば、後は、運用で手動でするしかないだろうと思います。

上記、時間を見つけて一度トライしてみます。

ありがとうございます。(*^^*)
tao_s
投稿日時: 2009/3/28 2:24
対応状況: −−−
仙人
登録日: 2008/8/20
居住地: 東京
投稿: 796
Re: 初回買い物でポイントアップ
実運用に乗っけるには、
・初回注文がキャンセルされた場合のフロー
・ポイント有効化タイミングの調整
が必要になってくると思います。

そうなると、管理画面の受注管理もいじらなくてはならないと思うので大変だとは思いますが頑張ってください。


----------------
EC-CUBEカスタマイズ相談してください。
緊急のEC-CUBEの障害対応
EC-CUBEカスタマイズブログ

tonton
投稿日時: 2009/3/27 21:16
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
Re: 初回買い物でポイントアップ
SEASOFT様&tao_s様

今回もお助けいただいてありがとうございます。

seasoftさんに教えていただいたソースを参考に、いちおうポイントを付けるところまではできました。

EC-CUBEの全体的なロジックがまだ良く分からないので、もしかしたらどこかでおかしなところが出てくるかもしれませんが・・・(^^;

一応、やってみて動作確認したところを記載しておきます。
何か、問題点、もう少しこうしたら?など、ございましたら、ご指摘いただけるとうれしいです。

また、問題ないようでしたら、他の方のお役に立てていただければ幸いです。
もう少しテストしてみて、いけそうだったら、tao_sさんに教えていただいたように、ポイント○○倍のところを、パラメータ設定で決められるように変更しようと思います。
(現在は、キメうちで2倍にしています)


今回やりたかったこと。
⇒会員登録&購入を促すため、初めて購入した際にポイントを○○倍にしたかった。(=新規登録で購入した人へは、登録ポイントと購入ポイントの両方またはどちらかを付けることができるようにする)


実装した内容。
SC_CartSession.php
のL186からのfunction getAllProductsPoint()の中に、
・ログインしている会員のIDから過去の注文状況を調べ、
・初めての買い物だった場合は、
・ポイントを2倍にする。
というロジックを追加した。

L206あたり、

$id = $_SESSION[$this->key][$i]['id'][0];
$point = SC_Utils_Ex::sfPrePoint($price, $point_rate, POINT_RULE, $id);
$total+= ($point * $quantity);
}
の下に、
$objQuery = new SC_Query();
$objCustomer = new SC_Customer();
//customer_idを検証
$customer_id = $objCustomer->getValue("customer_id");
$order_count = $objQuery->count("dtb_order", "order_id = ? and customer_id = ?", array($order_id, $customer_id));
if ($order_count == 1) {
$total = $total*2;

}
を追加。その下のソースは、下記のようになっている。

return $total;

}

// カートへの商品追加

です。$total = $total*2;の「2」が2倍ですので、これをパラメータにして管理画面から指定するなら、mtb_constantsテーブルに、1つFIRST_POINTなどの名称でカラムを追加し、上記ソースの「2」の変わりに、パラメータの変数を記述すればいいことになりますね。(*^^*)パラメータデフォルトは「1」(倍)です。


お二方のアドバイス、本当に助かりました。ありがとうございました。
seasoft
投稿日時: 2009/3/27 11:12
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7365
Re: 初回買い物でポイントアップ
EC-CUBEコミュニティ(eccube-comu) ベースですが、変更すべきは下記の付近やその呼び出し元・呼び出し先のいずれかになってくると思います。

data\class\SC_CartSession.php(190): if (USE_POINT !== false) {
data\class\helper\SC_Helper_DB.php(370): if (USE_POINT !== false) {
data\class\helper\SC_Helper_DB.php(522): if (USE_POINT !== false) {
data\class\pages\shopping\LC_Page_Shopping_Complete.php(632): if (USE_POINT !== false) {

注文の有無は、
data\class\pages\mypage\LC_Page_Mypage_Order.php(108): $order_count = $objQuery->count("dtb_order", "order_id = ? and customer_id = ?", array($order_id, $customer_id));
が参考になりそうです。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

tonton
投稿日時: 2009/3/27 11:03
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
Re: 初回買い物でポイントアップ
tao_s様

レスありがとうございます。


ふ〜む。

1)mtb_constansで、初回の掛け率をパラメータで2とか3とか設定し、
2)ポイントの発行では、買い物履歴が無いかどうかdtb_orderを検索して、if文で、当てはまれば、2倍、当てはまらなければ、適用なし、という分岐をさせる

という流れでしょうかね。
ちょっと、面倒そうですね(^^;

>dtb_orderを検索
DBを検索するロジックはどこかで使われていそうなので、ちょっと、探して、トライしてみます!
ありがとうございます。(*^^*)


引き続き、何か情報ございましたら、よろしくお願いします。
tao_s
投稿日時: 2009/3/27 4:04
対応状況: −−−
仙人
登録日: 2008/8/20
居住地: 東京
投稿: 796
Re: 初回買い物でポイントアップ
ちょっと面倒ですね。

会計処理のところで、買い物履歴が無いかどうかdtb_orderを検索しないといけないと思います。(LC_Class_Pages_Shoppingあたりですか?)

出来ればmtb_constansに初回ポイントのかけ率を登録しておいて、管理画面から変更できるようにした方が良いと思います


----------------
EC-CUBEカスタマイズ相談してください。
緊急のEC-CUBEの障害対応
EC-CUBEカスタマイズブログ

tonton
投稿日時: 2009/3/27 1:44
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
初回買い物でポイントアップ
いつもお世話になります。


会員登録してもらってから買い物していただきたいので、初回の買い物でポイント2倍とか3倍!という形でポイントの付与を行いたいのですが、過去スレなどご存知の方または実装されている方はいらっしゃいませんでしょうか?

ありそうだな、と思って探しているのですが、、、

もし、ご存知の方がいらっしゃいましたら、すみません、教えていただけませんか?


ちなみに、実装しようと思っているのは、EC-CUBE2.3.4/php5.2/mySQL5/linuxの環境です。
よろしくお願いします。
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.