Ticket #1730 (new バグ指摘) — at Version 3
税率変更に対応できない
Reported by: | Seasoft | Owned by: | habu |
---|---|---|---|
Priority: | 高 | Milestone: | EC-CUBE2.13.0 |
Component: | フロント | Version: | 2.12.0 α |
Keywords: | Cc: | habu | |
修正済み: | yes |
Description (last modified by habu) (diff)
dtb_order_detail.price
商品は外税対応を維持するとしても、受注は税込で扱う方が妥当に感じている。
報告者のコメント
受注情報に税率を持たせるような冗長な拡張はやめてね・・・
関連スレッド
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=2428&forum=1&post_id=54709
2012/12/28追記
消費税率変更時の対応ですが、 そろそろ標準で対策しておいた方が良い時期にきていますね。
報告者のSeasoft様が方針を書いてくださっていますが、受注データを税込で扱う様にするのは大きな変更になるので、2.12系としては、受注に税率を持たせる方向で、とりあえず対策を行なっておいた方が良いかと思っています。
ある程度できている修正コードがありますので、アップデート用のスクリプトを作成した後、もう少し確認して、コミットしようと思います。
詳細を以下に記載します。
■現状の不具合
SHOPマスターで消費税率を変更した後に・・・ ・マイページ>購入履歴や、管理画面から過去の受注を閲覧したり、帳票出力や、メール送信をすると、商品の税込み価格や、商品毎の小計欄に、現在の税率で再計算された金額が表示されてしまう。 ・受注管理画面で過去の受注を更新すると、現在の税率で再計算されたデータが登録されてしまう。
■修正方針
2.12系の動作を大きく変更する事無く、上記の不具合を修正する。
■修正方法
・dtb_order、dtb_order_temp、dtb_order_detailに、tax_rateと、tax_ruleを追加する。(必須項目にはしない) ※dtb_orderにカラム追加するのは、受注管理画面で過去の受注に商品を追加した場合に、受注時の税率で追加できるようにするため。 ※dtb_order_detailにカラム追加するのは、軽減税率などが盛り込まれた場合に対応しやすくするため。
・dtb_order_detailに、tax_rateと、tax_ruleの値が入っている場合、SC_Helper_DB_Ex::sfCalcIncTaxや、SC_Utils_Ex::sfTaxの第2、第3引数に、それらの値を渡す様にする。 (つまり、商品の税込み価格計算部分で、受注時の税率&課税規則を利用する様にする)
■アップデート方法
ファイルの差分だけでなく、DBのカラム追加を含むため、例えば、install.phpならぬ、update_2122to2123.phpのようなスクリプトを用意して、それに一度アクセスすれば、カラム追加ができる様にしようと思っています。
また、その際に、SHOPマスタで設定された消費税率と課税規則を、既存の受注と受注詳細にセットする処理も行なう予定です。(一括update)
それと、利用した後は削除してもらえるようにメッセージを表示し、仮に2度目にアクセスしても、何も処理を行なわない作りにしておきたいと思っています。
■対応状況
r22197 にて、対応しました。