spatie / tax-calculator
一套接口和方法,用于清理您的应用程序的税务计算
Requires
- php: ^7.0|^8.0
Requires (Dev)
- phpunit/phpunit: ^9.3
README
一套接口和方法,用于清理您的应用程序的税务计算。`TaxCalculation` 类允许您在运行时使用普通数字和实现 `HasTax` 接口的对象进行计算。
use Spatie\TaxCalculator\TaxCalculation; $items = $myCart->getItems(); // Should return an array of items that implement `HasTax` TaxCalculation::fromCollection($items)->basePrice(); // 10.00 TaxCalculation::fromCollection($items)->taxPrice(); // 2.10 TaxCalculation::fromCollection($items)->taxedPrice(); // 12.10 $delivery = TaxCalculation::fromTaxedPrice(7.50, 0.21); TaxCalculation::fromCollection($items)->add($delivery)->taxedPrice(); // 19.60
Spatie 是一家总部位于比利时的安特卫普的网页设计公司。您可以在我们的网站上找到我们所有开源项目的概述 这里。
支持我们
我们投入了大量资源来创建 一流的开放源代码包。您可以通过 购买我们的付费产品之一 来支持我们。
我们非常感谢您从您家乡寄来明信片,并说明您正在使用我们哪些包。您可以在我们的 联系我们页面 找到我们的地址。我们将所有收到的明信片发布在我们的 虚拟明信片墙上。
明信片软件
您可以自由使用此软件包(它是 MIT 许可的),但如果它进入您的生产环境,您必须向我们寄来一张来自您家乡的明信片,并说明您正在使用我们哪些包。
我们的地址是:Spatie, Kruikstraat 22, 2018 安特卫普,比利时。
最佳明信片将被发布在我们的网站上的开源页面。
安装
您可以通过 composer 安装此包
composer require spatie/tax-calculator
使用
接口
提供接口是为了让您可以继续使用领域对象,而不是到处传递浮点数。然而,它们对于进行计算并非绝对必要。
Spatie\TaxCalculator\HasTax
public function basePrice(): float; public function taxedPrice(): float; public function taxPrice(): float;
basePrice
:不含税的商品价格taxedPrice
:含税的商品价格taxPrice
:商品税额(《= taxedPrice() - basePrice()》)
Spatie\TaxCalculator\HasTaxWithRate
public function taxRate(): float;
HasTaxWithRate
扩展 HasTax
,并还有一个 taxRate
方法。这对于具有固定税率的项目很有用,但不能用于包含具有各种税率的项目的集合。
特质
Spatie\TaxCalculator\Traits\HasTaxWithRate
HasTaxWithRate
特质提供了对 taxPrice
和 taxedPrice
的默认实现,因为它们可以通过简单的 basePrice
和 taxRate
的乘法来计算。
计算
...
更新日志
请参阅 更新日志 了解最近更改的更多信息。
测试
$ composer test
贡献
请参阅 贡献指南 了解详细信息。
安全
如果您发现有关安全的错误,请通过 security@spatie.be 发送邮件,而不是使用问题跟踪器。
致谢
关于 Spatie
Spatie 是一家总部位于比利时的安特卫普的网页设计公司。您可以在我们的网站上找到我们所有开源项目的概述 这里。
许可证
MIT 许可证(MIT)。请参阅 许可证文件 了解更多信息。