バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ポイント計算について

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
dadance
投稿日時: 2025/3/30 9:35
対応状況: −−−
新米
登録日: 2025/3/4
居住地:
投稿: 10
ポイント計算について
▼テンプレート
[EC-CUBE] 4.2
[PHP] 8.1

ポイント計算について教えて下さい。
4.2の基本設定でのポイント付与率がありますが、2系から移行した商品データには商品ごとにポイント付与率が設定されています。
この場合注文の際、基本設定の付与率ではなく商品ごとの付与率が優先されてしまいます。
これを基本設定の付与率を優先させるようにしたいのです。

AddPointProcesser.php の以下の部分を

if ($pointRate === null) {
$pointRate = $basicPointRate;
}

次のように書き換えれば希望する動作になるでしょうか?

if ($pointRate === null) {
$pointRate = $basicPointRate;
}
else {
$pointRate = $basicPointRate;
}

無理やりな気もしますが・・・
なにぶん知識不足ですし重要な部分のカスタマイズになりますので皆様にお聞きしてからと思い質問させていただきました。
またもっと良い方法がありましたらお教えください。
よろしくお願いいたします。
mcontact
投稿日時: 2025/3/30 14:47
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1709
Re: ポイント計算について
ポイント計算について教えて下さい。
4.2の基本設定でのポイント付与率がありますが、2系から移行した商品データには商品ごとにポイント付与率が設定されています。
この場合注文の際、基本設定の付与率ではなく商品ごとの付与率が優先されてしまいます。
これを基本設定の付与率を優先させるようにしたいのです。


EC-CUBE2系を使用していた時に、商品毎にポイント付与率を設定していませんでしたか?
そして、EC-CUBE4系に移行を機にEC-CUBE2系の時の商品毎のポイント付与率を使用せずに基本設定のポイント付与率のみ使用する事が前提にしていますか?


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

dadance
投稿日時: 2025/3/30 15:26
対応状況: −−−
新米
登録日: 2025/3/4
居住地:
投稿: 10
Re: ポイント計算について
そうです。
2系の時に商品データごとに付与率を設定していました。
そのデータのまま移行したので今も商品ごとに設定されています。
ポイントアップのセールため基本設定の付与率をアップさせたのですが、商品ごとの付与率が適用されてしまうことに気付きました。
基本設定の付与率は商品データのpointrateがnullの場合に適用されるようで、CSVで商品ごとの付与率をnullに書き換えることも考えましたが、管理画面からのCSV出力にはポイント付与率の項目がありません。
SQLから直にCSV出力も考えましたが商品数が膨大でしくじると怖いので、プログラム側で対処したほうが安全かと考えたのです。
今後は常に商品ごとの付与率設定を無視したいのです。
mcontact
投稿日時: 2025/3/30 19:09
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1709
Re: ポイント計算について
基本設定の付与率は商品データのpointrateがnullの場合に適用されるようで、CSVで商品ごとの付与率をnullに書き換えることも考えましたが、管理画面からのCSV出力にはポイント付与率の項目がありません。


EC-CUBE4系のCSV取込では、商品毎のポイント付与率を設定する項目は、標準機能としてはありませんので、ご自身でCSV取込機能のカスタマイズが必要です。
または、データ移行プラグインのEC-CUBE2系のデータを取込段階で商品毎のポイント付与率を訂正したデータにて取り込む必要があります。

SQLから直にCSV出力も考えましたが商品数が膨大でしくじると怖いので、プログラム側で対処したほうが安全かと考えたのです。


SQLを実行する前にデータベースのバックアップを取っておけば、壊した場合もバックアップからリストアすれば良いと思いますが、どの辺が怖いのでしょうか?
当然バックアップも取らずに行えば、失敗した場合は怖いかと思いますがバックアップとらずに行おうとしていますか?
また、「商品数が膨大で」とありますが商品毎に行おうとしていますか?


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

mcontact
投稿日時: 2025/3/30 19:35
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1709
Re: ポイント計算について
試していないですが、おそらく下記のSQLを実行する事で商品毎のポイント付与率を全商品で未設定にできるかと思います。
UPDATE dtb_product_class SET point_rate = null;


実際のサイトで行う間には、まずは検証環境やデータベースのバックアップを用意してから試してみてください。


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

dadance
投稿日時: 2025/3/30 20:53
対応状況: 解決済
新米
登録日: 2025/3/4
居住地:
投稿: 10
Re: ポイント計算について
教えていただいたSQL文で一瞬ですべてNULLに書き換えできました。
おかげさまでややこしいことをせずに済みました。
ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は106,407名です
総投稿数は112,618件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2331
5
umebius
2085
6
h_tanaka
2007
7
yuh
1900
8
mcontact
1709
9
red
1582
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
805
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
balisys
502


ネットショップの壺

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

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