pingsrl/laravel-clockify-api

1.1.0 2023-02-17 15:28 UTC

This package is auto-updated.

Last update: 2024-09-17 18:46:44 UTC


README

Latest Version on Packagist Build Status Total Downloads

Laravel 仓库,用于从 Clockify.me 报告 API 获取报告。

官方 Clockify API:[https://clockify.me/developers-api](https://clockify.me/developers-api)(外部链接,不跟随,不索引,新标签页打开,用户生成内容)

安装

  1. 您可以通过 composer 安装此包

    composer require pingsrl/laravel-clockify-api

    可选:服务提供器将自动注册。或者您可以在您的 config/app.php 文件中手动添加服务提供器

    'providers' => [
        // ...
        Ping\LaravelClockifyApi\LaravelClockifyApiServiceProvider::class,
    ];
    
  2. 您应该使用以下命令发布 config/clockify.php 配置文件

    php artisan vendor:publish --provider="Ping\LaravelClockifyApi\LaravelClockifyApiServiceProvider"

  3. 配置 .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)。请参阅 许可文件 了解更多信息。