pingsrl / laravel-clockify-api
Requires
- php: >=7.4
- guzzlehttp/guzzle: ^7.2
- laravel/framework: ^6.0|^7.0|^8.0|^9.0|^10.0
Requires (Dev)
- orchestra/testbench: ^7.7
- phpmd/phpmd: ^2.6
- phpunit/phpunit: ^9.3
This package is auto-updated.
Last update: 2024-09-17 18:46:44 UTC
README
Laravel 仓库,用于从 Clockify.me 报告 API 获取报告。
官方 Clockify API:[https://clockify.me/developers-api](https://clockify.me/developers-api)(外部链接,不跟随,不索引,新标签页打开,用户生成内容)
安装
-
您可以通过 composer 安装此包
composer require pingsrl/laravel-clockify-api
可选:服务提供器将自动注册。或者您可以在您的 config/app.php 文件中手动添加服务提供器
'providers' => [ // ... Ping\LaravelClockifyApi\LaravelClockifyApiServiceProvider::class, ];
-
您应该使用以下命令发布 config/clockify.php 配置文件
php artisan vendor:publish --provider="Ping\LaravelClockifyApi\LaravelClockifyApiServiceProvider"
-
配置 .env 文件
将您的 clockify 属性添加到您的 .env 文件中
CLOCKIFY_API_KEY=1234567890 CLOCKIFY_WORKSPACE_ID=1234567890
用法
基本上
您可以通过创建报告并调用 get()
函数来获取报告。
$summaryResponseBody = ClockifyRepository::makeSummaryReport()->get();
$detailedResponseBody = ClockifyRepository::makeDetailedReport()->get();
特殊用法
您可以通过调用相应的函数进一步指定请求数据。
函数调用顺序无关紧要,除了 get()
函数调用。这个函数必须是最后调用的函数,它是执行函数,并执行请求本身。
示例
以下示例请求了用户 USER_ID_1 和 USER_ID_2 的摘要报告,从两天前到今天。结果将按升序排序。
$summaryResponseBody = ClockifyRepository::makeSummaryReport()
->users([USER_ID_1, USER_ID_2])
->from(now()->subDays(2))
->to(now())
->sortOrder('ASCENDING')
->get();
指定请求的属性
| 属性 | 函数 | 默认行为或 value
(当未设置时) | 可用于报告的类型 |
(当未设置时) | 可能的值 | -------------------- | ----------------------------------- | ----------------------------------------------- | ---------------------- | --- | ------- | ----------------------- | --- | --- | | users
| users(array $userIds)
| all | ALL | | tasks
| tasks(array $taskIds)
| all | ALL | | containsTags
| containsTags(array $tagIds)
| CONTAINS
| ALL | | containsOnlyTags
| containsOnlyTags(array $tagIds)
| CONTAINS
| ALL | | doesNotContainTags
| doesNotContainTags(array $tagIds)
| CONTAINS
| ALL | | tasks
| tasks(array $taskIds)
| all | ALL | | from
| from(Carbon $fromDate)
| start of current year | ALL | | to
| to(Carbon $endDate)
| end of current year | ALL | | sortOrder
| sortOrder(string $sortOrder)
| DESCENDING
| ALL | | filterGroups
| filterGroups(array $filterGroups)
| ['USER', 'PROJECT', 'TIMEENTRY']
| ClockifySummaryReport | | page
| page(int $page)
| 1 | ClockifyDetailedReport | | pageSize
| pageSize(int $pageSize)
| 50 | ClockifyDetailedReport |
变更日志
请检查 发布 了解所有显著更改。
鸣谢
许可
MIT 许可证(MIT)。请参阅 许可文件 了解更多信息。