sertxudeveloper / laravel-counters
管理按年和系列计数器。
v1.1.1
2024-05-06 17:58 UTC
Requires
- php: ^8.1|^8.2|^8.3
- illuminate/support: ^10.0|^11.0
Requires (Dev)
- laravel/pint: ^1.13
- orchestra/testbench: ^8.0|^9.0
- phpunit/phpunit: ^9.5|^10.0
This package is auto-updated.
Last update: 2024-09-23 14:46:55 UTC
README
Laravel Counters
管理您的 Laravel 应用程序中的计数器。
此包允许您在 Laravel 应用程序中管理计数器。您可以根据需要创建计数器并增加或减少它。您还可以创建按系列或年份的计数器,以便为不同的系列或年份拥有不同的计数器。
要求
此包需要 Laravel 10.0 或更高版本。
安装
您可以通过 composer 安装此包
composer require sertxudeveloper/laravel-counters
用法
此包提供了一个配置文件,要发布它,您应该运行以下命令
php artisan vendor:publish --tag=counters-config
在此配置文件中,您将能够配置包应用于其迁移和模型的数据库连接。默认情况下,将使用在您的 Laravel 项目中定义的默认数据库连接。
接下来,您应该运行迁移
php artisan migrate
就这样!您已经准备好使用此包了。
以下是如何使用此包的示例
使用基本计数器
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES'); $invoice->number = $counter->next(); // 1
使用具有系列的计数器
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES', series: 'N'); $invoice->number = $counter->next(); // 1 $invoice->number = $counter->next(); // 2 $counter = Counter::make('INVOICES', series: 'R'); $invoice->number = $counter->next(); // 1
使用具有年份的计数器
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES', year: '2023'); $invoice->number = $counter->next(); // 1 $invoice->number = $counter->next(); // 2 $counter = Counter::make('INVOICES', year: '2024'); $invoice->number = $counter->next(); // 1
使用具有年份和系列的计数器
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES', year: '2023', series: 'N'); $invoice->number = $counter->next(); // 1 $invoice->number = $counter->next(); // 2 $counter = Counter::make('INVOICES', year: '2023', series: 'R'); $invoice->number = $counter->next(); // 1 $counter = Counter::make('INVOICES', year: '2024', series: 'N'); $invoice->number = $counter->next(); // 1
减少计数器的值
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES'); $invoice->number = $counter->next(); // 1 $invoice->number = $counter->next(); // 2 $invoice->number = $counter->decrement(); // 1
自定义增加
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES'); $invoice->number = $counter->next(); // 1 $invoice->number = $counter->increment(5); // 6
自定义减少
use SertxuDeveloper\Counters\Counter; $counter = Counter::make('INVOICES'); $invoice->number = $counter->next(); // 1 $invoice->number = $counter->increment(5); // 6 $invoice->number = $counter->decrement(3); // 3
测试
此包包含测试,您可以使用以下命令运行它们
composer test
贡献
有关详细信息,请参阅 CONTRIBUTING
安全漏洞
请查看 我们的安全策略 以了解如何报告安全漏洞。
鸣谢
许可
MIT 许可证(MIT)。有关更多信息,请参阅 许可文件
版权所有 © 2024 Sertxu Developer