バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > その他 > ポイント付与のタイミングについて

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
x41
投稿日時: 2008/6/11 22:04
対応状況: −−−
仙人
登録日: 2007/11/23
居住地:
投稿: 308
Re: ポイント付与のタイミングについて
引用:

2.商品発送前にさらに注文した場合(連続注文)、そのうち1商品だけステータスを「発送済み」にすると、2商品分のポイントが反映されてしまいます。
つまり、発送される前に、同じ人が何度も注文してきた場合、そのうちの1商品でも発送済みにすると、未発送の商品の分までポイントが反映されます。


この点は前から変更しようと考えておりました。また、ステータスをキャンセルにした場合にその注文分のポイントを自動で引くことも考えています。時間とって手直ししてみます。
ゲスト
投稿日時: 2008/6/13 1:11
対応状況: −−−
Re: ポイント付与のタイミングについて
久しぶりにあがっていたので便乗します。。
2008-3-21 0:10のゲストさんの書き込みはスルーっぽいんですが、私は結構気になっています。ポイント機能のON/OFF機能は実装の予定がない、ということでしょうか。

個人的にいくつかEC-CUBEのカスタマイズを請け負っていますが、一番最初にやることはポイント機能のオフです。正直、小手先のソース改変をアップしてもらってもあんまり本質では無いと思います。

もし株式会社ロックオンさんが、「ポイント機能は、全てのショップに欠くべからざるものである」とお考えなら、そのように、開発陣の方からご返答があってもいいかと思いますが
seasoft
投稿日時: 2008/6/14 2:57
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7365
Re: ポイント付与のタイミングについて
昨日コミュニティー版のコミットを初めて行ったばかりの新米コミッターですが…

ポイント機能の ON/OFF 切り替えは大賛成です。
投票ページの件数を見ても、要求の多さは明確です。

しかし、現状のポイント機能も不具合(不満?)がちらほらあるようですので、今の時点で ON/OFF 切り替えを実装すると、既に利用されている方は余計に混乱を招く懸念があります。

なかなか、手を加えるのが困難な部分と予測されます。

岩田社長が
http://svn.ec-cube.net/open_trac/ticket/4
にて指摘している「大は小を兼ねる」の一つと考えられますね。


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

x41
投稿日時: 2008/6/22 11:49
対応状況: −−−
仙人
登録日: 2007/11/23
居住地:
投稿: 308
Re: ポイント付与のタイミングについて
1注文ごとにポイント付与されるように変更しました。大した手直しではないのですが対応が遅くなり申し訳ないです・・

当方の都合でトータルのポイントを確認したかったので最終保持ポイントを表示するようにしていたのですが、今回はそちらを外しました。よって、お客様側で確認できるポイント数と管理画面で確認できるポイント数は同じになります。

連続注文(例えば同じお客様で2件分)しても1注文を発送済みにした場合、その注文分のポイントのみ付与されます。また、連続注文分を同時に発送済みにした場合でも注文分まとめてポイント付与されます。

キャンセル後に再び新規に移動して発送後、発送済みにした場合でもポイント付与されますが、ポイント付与後のキャンセルがあった場合はポイントを手動で差し引きする必要があります。

顧客管理の最終保持ポイント欄は不要になります。必要のない方はテンプレートの該当場所を消してください。
Smarty/templates/default/admin/customer/edit.tpl
Smarty/templates/default/admin/customer/edit_confirm.tpl


変更箇所↓

LC_Page_Shopping_Complete.php

引用:


/* 購入情報を会員テーブルに登録する */
function lfSetCustomerPurchase($customer_id, $arrData, &$objQuery) {
$col = "first_buy_date, last_buy_date, buy_times, buy_total, point, total_point";
$where = "customer_id = ?";
$arrRet = $objQuery->select($col, "dtb_customer", $where, array($customer_id));
$sqlval = $arrRet[0];

if($sqlval['first_buy_date'] == "") {
$sqlval['first_buy_date'] = "Now()";
}
$sqlval['last_buy_date'] = "Now()";
$sqlval['buy_times']++;
$sqlval['buy_total']+= $arrData['total'];
$sqlval['point'] = ($sqlval['point'] - $arrData['use_point']);

// ポイントが不足している場合
if($sqlval['point'] < 0) {
$objQuery->rollback();
SC_Utils_Ex::sfDispSiteError(LACK_POINT);
}

$objQuery->update("dtb_customer", $sqlval, $where, array($customer_id));
}



LC_Page_Admin_Order_Status.php

引用:

//ステータス情報の更新(削除)
function lfStatusMove($status_id, $arrMove){
$objQuery = new SC_Query();
$masterData = new SC_DB_MasterData_Ex();
$arrORDERSTATUS = $masterData->getMasterData("mtb_order_status");

$table = 'dtb_order';
$where = 'order_id = ?';
$arrUpdate = array('update_date' => 'NOW()');
$col = 'customer_id, add_point';

$delflg = '1'; // 削除フラグ
$message = ''; // ステータス変更後にポップアップするメッセージの内容

if ( $status_id == 'delete' ) {
$arrUpdate['del_flg'] = $delflg;
$message = '削除';
}
// ステータスが発送済みの時は発送日を更新
elseif ( $status_id == ORDER_DELIV ) {
$arrUpdate['status'] = $status_id;
$arrUpdate['commit_date'] = 'NOW()';

$message = $arrORDERSTATUS[$status_id] . 'へ移動';
}
else {
$arrUpdate['status'] = $status_id;
$message = $arrORDERSTATUS[$status_id] . 'へ移動';
}

if ( isset($arrMove) ){
foreach ( $arrMove as $val ){
if ( $val != "" ) {
if ( $status_id == ORDER_DELIV ) {
$arrRet = $objQuery->select($col, $table, $where, array($val));

$customer_id = $arrRet[0]['customer_id'];
$add_point = $arrRet[0]['add_point'];
if($customer_id != "" && $customer_id >= 1) {
$arrRet = $objQuery->select("point", 'dtb_customer', 'customer_id = ?', array($customer_id));

$arrRet[0]['point']+= $add_point;
$sqlval['point'] = $arrRet[0]['point'];
$objQuery->update('dtb_customer', $sqlval, 'customer_id = ?', array($customer_id));

}
}
$objQuery->update($table, $arrUpdate, $where, array($val));
}

}
}

$this->tpl_onload = "window.alert('選択項目を" . $message . "しました。');";
}



コミットしようと思いましたが、コミットする該当ファイルは正式版とは内容が異なる為、テストしてから変更します。


x41
投稿日時: 2008/6/22 23:54
対応状況: −−−
仙人
登録日: 2007/11/23
居住地:
投稿: 308
Re: ポイント付与のタイミングについて
本日、1注文ごとにポイント付与されるように手直ししました。

ポイントシステムON・OFFについてですが、ポイント設定画面でON・OFFの切り替えができて、OFFの場合は商品ページやカート確認画面でポイント部分を表示させないようにすればよいのでしょうか?
ポイント部分についてはある程度の分析ができているので行ってみたいとは思っています。

ポイントON・OFFで上記の他に実装させてたいものがあれば教えてください。できるかどうかはわかりませんが・・
seasoft
投稿日時: 2008/6/23 0:28
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7365
Re: ポイント付与のタイミングについて
ポイント ON/OFF 期待してます。

現実的には、フロント機能から隠すのが優先で、管理機能に残るのは許容範囲かなと思っています。


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

seasoft
投稿日時: 2008/7/17 21:45
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7365
Re: ポイント付与のタイミングについて
ざっとですが、最新のコミュニティ版で、ポイントシステムをON・OFF可能にしてみました。
http://svn.ec-cube.net/open_trac/changeset/17435

ON・OFF というよりは、フロント機能から隠す機能という感じです。

パラメータ「USE_POINT」を「false」に変更することで、OFF相当の状態になります。

まだ、不具合もあると思いますので、テスト・不具合報告・修正などよろしくお願いします。


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

x41
投稿日時: 2008/7/17 23:22
対応状況: −−−
仙人
登録日: 2007/11/23
居住地:
投稿: 308
Re: ポイント付与のタイミングについて
seasoftさん、ありがとうございます。

当方もパラメータ変更でポイントON・OFFを実装したいと考えておりましたが、フロント機能から隠す方法も良いですね。

参考になります。

こちらでも、試してみます。
x41
投稿日時: 2008/7/20 18:05
対応状況: −−−
仙人
登録日: 2007/11/23
居住地:
投稿: 308
Re: ポイント付与のタイミングについて
ポイントON・OFFの関数を修正しました。修正といっても条件分岐させただけですが・・

http://svn.ec-cube.net/open_trac/changeset/17442

seasoftさんの仰るとおり、管理機能に残るのは許容範囲ですね。
seasoft
投稿日時: 2008/7/20 22:23
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7365
Re: ポイント付与のタイミングについて
0をセットしているところ、セットしない(unset)ところがあるようですが、これは意図的なものですか?

当方では、基本的に従来との互換性を保てる(であろう)ように0をセットする方向で、他の関数も一部書き直し始めていました。チェンジセット17442と競合しそうなので、変更の方向性を詰めていけたらと思います。

また、ソースのインデントですが、EC-CUBE標準規約(http://svn.ec-cube.net/open_trac/wiki/EC-CUBE%E6%A8%99%E6%BA%96%E8%A6%8F%E7%B4%84#%E5%88%B6%E5%BE%A1%E6%96%87) に書かれている「インデントは, 半角スペース4文字を使用し, タブは使用しない.」に準拠された方が良いかと思います。


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

« 1 2 (3) 4 5 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
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.