laravel5にカート機能を追加してくれるLaravelShoppingcartで、消費税の端数処理(四捨五入・切り捨て・切り上げ)を指定できるようにしてみた。
消費税の端数処理(四捨五入・切り捨て・切り上げ)って、好きに選んで良いのね。
https://keiei.freee.co.jp/2015/12/09/syouhizei-hasuusyori/
パッケージのURL
https://github.com/Crinsane/LaravelShoppingcart
1, config/cart.phpに、以下の項目を追加!
//端数処理 1=四捨五入、2=切り捨て、3=切り上げ
‘rounding’ => 1,
2, vendor/gloudemans/shoppingcart/src/CartItem.php(250行目あたり)を修正
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
public function __get($attribute) { // 他にも色々なGet要素があるけど、消費税の金額を取得する所だけ修正! if($attribute === 'tax') { // 消費税の端数処理 1=四捨五入、2=切り捨て、3=切り上げ switch(\Config::get('cart.rounding')){ case 1: // 四捨五入(numberFormat関数で四捨五入されるので、ココでは何もしない) return $this->price * ($this->taxRate / 100); case 2: // 切り捨て return floor($this->price * ($this->taxRate / 100)); case 3: // 切り上げ return ceil($this->price * ($this->taxRate / 100)); default: //もともとは、この動き return $this->price * ($this->taxRate / 100); } } } |
3,後は通常通りにCart操作をすれば、指定した端数処理にしてくれる。
laravel5.1にECカート操作が出来るようになったので、商品を選んで、カートに入れて、カートクリアまでやってみた。