{"action":"created","issue":{"url":"https://api.github.com/repos/EC-CUBE/ec-cube/issues/1233","labels_url":"https://api.github.com/repos/EC-CUBE/ec-cube/issues/1233/labels{/name}","comments_url":"https://api.github.com/repos/EC-CUBE/ec-cube/issues/1233/comments","events_url":"https://api.github.com/repos/EC-CUBE/ec-cube/issues/1233/events","html_url":"https://github.com/EC-CUBE/ec-cube/issues/1233","id":118591584,"number":1233,"title":"ポイント機能：ポイント加算の仕様について","user":{"login":"chihiro-adachi","id":8196725,"avatar_url":"https://avatars.githubusercontent.com/u/8196725?v=3","gravatar_id":"","url":"https://api.github.com/users/chihiro-adachi","html_url":"https://github.com/chihiro-adachi","followers_url":"https://api.github.com/users/chihiro-adachi/followers","following_url":"https://api.github.com/users/chihiro-adachi/following{/other_user}","gists_url":"https://api.github.com/users/chihiro-adachi/gists{/gist_id}","starred_url":"https://api.github.com/users/chihiro-adachi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chihiro-adachi/subscriptions","organizations_url":"https://api.github.com/users/chihiro-adachi/orgs","repos_url":"https://api.github.com/users/chihiro-adachi/repos","events_url":"https://api.github.com/users/chihiro-adachi/events{/privacy}","received_events_url":"https://api.github.com/users/chihiro-adachi/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/EC-CUBE/ec-cube/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":27,"created_at":"2015-11-24T11:52:15Z","updated_at":"2015-12-02T04:24:17Z","closed_at":null,"body":"次verの開発項目として、2系で実装されていたポイント機能の仕様を検討しています。\r\n\r\n2系仕様を確認したところ、ポイント利用時の加算ポイントの算出に問題があるようでした。\r\nhttp://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=10501&forum=8\r\nhttp://svn.ec-cube.net/open_trac/ticket/1796\r\n\r\n3.0系ではこちらを見直したく、案として以下を検討しています。\r\n\r\n```\r\nA案)\r\n\r\n各明細の販売価格の割合に応じて、利用ポイントを配分し、適用する\r\n※端数がある場合、端数分は一番大きい販売価格の明細に適用するとか\r\n\r\nポイント適用された実販売金額に対して、付与ポイントを算出する\r\n※小数点以下は切り捨てる\r\n\r\n計算例)\r\n\r\n前提：\r\n- 商品A(5%付与),商品B(10%付与)を購入\r\n- 購入時にポイントを100pt利用する\r\n- 1ptは1円換算\r\n\r\n                    販売価格 利用ポイント    実販売価格     付与ポイント\r\na. 商品A(5%付与)    100円    50pt利用        50円           2pt\r\nb. 商品B(10%付与)   100円    50pt利用        50円           5pt\r\n\r\nポイントは、「7pt」が付与される\r\n```\r\n\r\n```\r\nB案）\r\n\r\n店舗共通ポイント付与率か、商品毎ポイント付与率のどちらかのみを設定できる。\r\n\r\n店舗共通ポイント付与率の場合、支払金額に対してポイントを加算する\r\n商品毎ポイント付与率の場合、ポイント利用した際も、商品毎にポイントは加算される\r\n\r\n※基本情報＞税率設定の軽減税率設定のようなイメージです。\r\n\r\n```\r\n\r\nA案の場合だと実装も大分複雑になるので、店舗共通か商品ごとかどちらかの加算方法を選べればいいのではないかと思っていますが、2系でポイント機能を利用される場合、どのような使いかたをされていたか、ご意見伺えればありがたいです。"},"comment":{"url":"https://api.github.com/repos/EC-CUBE/ec-cube/issues/comments/161177246","html_url":"https://github.com/EC-CUBE/ec-cube/issues/1233#issuecomment-161177246","issue_url":"https://api.github.com/repos/EC-CUBE/ec-cube/issues/1233","id":161177246,"user":{"login":"Yangsin","id":8196511,"avatar_url":"https://avatars.githubusercontent.com/u/8196511?v=3","gravatar_id":"","url":"https://api.github.com/users/Yangsin","html_url":"https://github.com/Yangsin","followers_url":"https://api.github.com/users/Yangsin/followers","following_url":"https://api.github.com/users/Yangsin/following{/other_user}","gists_url":"https://api.github.com/users/Yangsin/gists{/gist_id}","starred_url":"https://api.github.com/users/Yangsin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Yangsin/subscriptions","organizations_url":"https://api.github.com/users/Yangsin/orgs","repos_url":"https://api.github.com/users/Yangsin/repos","events_url":"https://api.github.com/users/Yangsin/events{/privacy}","received_events_url":"https://api.github.com/users/Yangsin/received_events","type":"User","site_admin":false},"created_at":"2015-12-02T04:24:17Z","updated_at":"2015-12-02T04:24:17Z","body":"@ttsuru \r\nもろもろご意見ありがとうございます。\r\nかなり誤解もあるとおもうので、運営に関しての話はまた別でお伺いするとして、まずはポイントについての仕様をちゃんと決めていければと思います。\r\n\r\nで、ポイントの按分ですが、改めてこれはNGな事に気づきましたので、見直します。\r\n\r\n実際の支払いに対していポイントを付与したい場合に、商品のポイント付与率が違うため、ポイント値引きを明細毎に重みづけして、それぞれの付与される以下のような計算になります。\r\n\r\n1. 明細小計毎に合計金額に占める割合を計算し重みを出す\r\n　　明細小計 / 合計金額 = 明細の重み（A) \r\n2. 明細の重み（A）毎にポイント値引き額（X)を適用する\r\n 　明細小計- （ポイント値引き額＊A）） = 実支払い明細小計\r\n3.  実支払い明細小計を商品毎のポイント付与率に応じて付与する\r\n  (実支払い明細小計) ＊ポイント付与率 = 明細ポイント（B）\r\n  （B'1）+(B'2)+...(B'n) = 合計付与ポイント（C)\r\n4. 実際の支払い金額\r\n　合計金額 - ポイント値引き = 支払額\r\n\r\n ※Aの計算時に端数処理を切り上げにするとA）の合計が100%を超える可能性がある\r\n 　つまりは、ポイント値引き額が、単純計算より大きくなり、店舗が余計にポイント値引きを提供する\r\n ※Aの計算時に端数処理を切り下げにするとAの合計が100％未満になる可能性がある\r\n 　 ポイント値引き額が、単純計算より小さくなり、利用者側が期待する値引きを受けれない\r\n どちらにしろ100％以外の場合、会員が期待するポイント値引きが額と異り、店舗への不信感やクレームになるリスクがある\r\nまた、実際の仕様としても、説明が困難になり、仕様なのか不具合なのかわかりづらくなるので、実運用にものらないため、見直しを行います。\r\n\r\n@geany-y \r\n\r\nEC-CUBE3.0の思想として、プラグインやその他の拡張性を大切にしたいところですので、クーポンやキャンペーンも本体機能としては実装しないという判断があったとしても、とも、プラグインとしての拡張性を閉ざすような決定は慎重に行わせていただければと思います。\r\n\r\n\r\n"}}