imagina / icurrency-module
此模块管理货币和转换
Requires
- php: >=7.0.0
- composer/installers: ~1.0
- idavoll/core-module: ~3.0
Requires (Dev)
- orchestra/testbench: 3.5.*
- phpunit/phpunit: ~6.0
This package is auto-updated.
Last update: 2024-09-28 18:26:42 UTC
README
安装
composer require imagina/icurrency
php artisan module:migrate Icurrency
php artisan db:seed --class=\\Modules\\Icurrency\\Database\\Seeders\\CurrencyTableSeederTableSeeder
在acms/app/Http/Kernel.php
中添加中间件
protected $middleware = [ // ... \Modules\Icurrency\Http\Middleware\CurrencyMiddleware::class, // ... ];
注意:此中间件期望在对象内部或从请求过滤器对象中获取货币配置。例如: api/iquote/v1/products?setting={"currency":"COP"}
或 api/iquote/v1/products?filter={"currency":"COP"}
,'settings' 的优先级更高。
在acms/app/Console/Kernel.php
中添加更新TRM的命令
protected $commands = [ // ... Modules\Icurrency\Console\UpdateCurrencies::class // ... ];
在.env中添加你的Api Key
在你的currencyconverterapi获取你的api key
免费外汇API速率限制
每个请求的货币对:2
每小时请求次数:100
CURRCONV_APIKEY=apikye
首次迁移后运行以下命令以同步当前汇率下的货币,之后它们将通过cron job自动更新。
php artisan currencies:update
在acms/app/Console/Kernel.php
中添加命令到Laravel调度
protected function schedule(Schedule $schedule) { // ... $schedule->command(Modules\Icurrency\Console\UpdateCurrencies::class)->dailyAt('01:00'); // ... }
默认货币可用
使用外观货币
在你的需要使用此外观的类上添加以下行
use Modules\Icurrency\Support\Facades\Currency;
可用方法
-
转换值
/* Example */ Currency::convert(1000):
-
将一个货币转换为另一个货币的值
/* Example */ Currency::convertFromTo(1000, 'COP', 'AUD');
-
获取当前货币
/* Example */ Currency::getLocaleCurrency();
-
设置当前货币
/* Example */ Currency::setLocaleCurrency('COP');
-
获取所有当前支持的数组
/* Example */ Currency::getSupportedCurrencies();
端点
路由基础:https://yourhost/api/icurrency/v1/
-
货币
-
属性
-
创建。
-
方法:
POST
-
需要认证:☑
-
路由
/currencies
-
POST参数(示例)
{ attributes:{ name: 'name', code: 'code', symbol_left: 'symbol_left', symbol_right: 'symbol_right', decimal_place: 'decimal_place', value: 'value', status: 'status', default_currency: 'default_currency', } }
-
-
读取
-
方法:
GET
-
需要认证:☐
-
路由
/currencies
/currencies/id
-
过滤器
-
-
更新
- 方法:
PUT
- 需要认证:☑
- 路由
/currencies/id
- 方法:
-
删除
- 方法:
DELETE
- 需要认证:☑
- 路由
/currencies/id
- 方法:
-