EC-CUBE / ec-cube2

EC-CUBE official repository version 2
https://www.ec-cube.net
Other
86 stars 97 forks source link

order_tax_rule order_tax_rate ってなに? #185

Open seasoftjapan opened 6 years ago

seasoftjapan commented 6 years ago

order_tax_rule で grep すると、どう繋がっているのか分からないソースが釣れる。

data\class\pages\admin\order\LC_Page_Admin_Order_Edit.php(419):         $objFormParam->addParam('課税規則', 'order_tax_rule');
data\class\pages\admin\order\LC_Page_Admin_Order_Edit.php(1101):             $arrAddProductInfo['tax_rule'] = ($objFormParam->getValue('order_tax_rule') == '')
data\class\pages\admin\order\LC_Page_Admin_Order_Edit.php(1103):                 : $objFormParam->getValue('order_tax_rule');
data\class\pages\admin\order\LC_Page_Admin_Order_Edit.php(1290):             $arrAddProductInfo['tax_rule'] = ($objFormParam->getValue('order_tax_rule') == '')
data\class\pages\admin\order\LC_Page_Admin_Order_Edit.php(1292):                 : $objFormParam->getValue('order_tax_rule');
data\Smarty\templates\admin\order\disp.tpl(264):                                 <!--{$arrShipping[$key][$item_index]|sfCalcIncTax:$arrForm.order_tax_rate.value:$arrForm.order_tax_rule.value|n2s}-->円
data\Smarty\templates\default\mypage\history.tpl(185):                                 <!--{$item.price|sfCalcIncTax:$tpl_arrOrderData.order_tax_rate:$tpl_arrOrderData.order_tax_rule|n2s}-->円
data\Smarty\templates\mobile\mypage\history.tpl(107):                 単価:<!--{$item.price|sfCalcIncTax:$tpl_arrOrderData.order_tax_rate:$tpl_arrOrderData.order_tax_rule|n2s}-->円<br>
data\Smarty\templates\sphone\mypage\history.tpl(61):                         <em>単価:&nbsp;</em><!--{$item.price|sfCalcIncTax:$tpl_arrOrderData.order_tax_rate:$tpl_arrOrderData.order_tax_rule|n2s}-->円<br />
tests\class\helper\SC_Helper_Purchase\SC_Helper_Purchase_registerOrderCompleteTest.php(60):       'order_tax_rule' => '1'
tests\class\helper\SC_Helper_Purchase\SC_Helper_Purchase_registerOrderCompleteTest.php(108):       'order_tax_rule' => '1'

dtb_order.order_tax_rule が存在すれば納得できるが、存在しないと思う。

t-nagahashi commented 6 years ago

@seasoftjapan さん 具体的なソースコードの位置を教えていただいてもよろしいでしょうか?

nanasess commented 6 years ago

受注明細ごとの課税規則(dtb_order_detail.tax_rule) ですかね

seasoftjapan commented 6 years ago

@t-nagahashi 冒頭のコメントに grep を貼りました。

seasoftjapan commented 6 years ago

@nanasess なるほど。

getValue() している箇所はありますが、setValue() 的な事をどこで行っているのか把握できていない次第です。

どこかで、$x = 'tax_rule' setValue('order_' . $x, foo) 的な、事をやっているんですかね。。。

so-amuamu commented 6 years ago

明細行毎の課税規則部分なので、なんかこねてると思います。 コード追った方が良いですが動いているなら、そのままでも良いかと思います

seasoftjapan commented 6 years ago

たしか、何らかの不具合を追跡している際に気づいたのですが、具体的な状況を失念しました。

近くない将来に確認しようと思います。マイルストーンを先送りしたいですが、多分自分のアカウントで操作できない感じです。

seasoftjapan commented 5 years ago

少なくとも history.tpl に関しては、バグと判断しました。

<!--{$item.price|sfCalcIncTax:$tpl_arrOrderData.order_tax_rate:$tpl_arrOrderData.order_tax_rule|n2s}-->円

課税規則を切り上げで設定しても、1円の商品が (2円と表示されるべきですが) 1円と表示されます。

(参考) $item.price → string(1) "1" $tpl_arrOrderData.order_tax_rate → NULL $tpl_arrOrderData.order_tax_rule → NULL

nanasess commented 5 years ago

dtb_order に tax_rule, tax_rate を追加しようとした経緯は見つけました http://svn.ec-cube.net/open_trac/ticket/1730

※dtb_orderにカラム追加するのは、受注管理画面で過去の受注に商品を追加した場合に、受注時の税率で追加できるようにするため。

seasoftjapan commented 4 years ago

2.13.5 のカスタマイズ中に、再び疑問に思い、少し調べたので、メモ。