rezuankassim / bqanalytic
这是一个简化BigQuery和Firebase Analytics集成的包
Requires
- google/cloud-bigquery: ^1.15
- illuminate/support: ~5|~6|~7
- pragmarx/countries: ^0.7.0
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ~3|~4
- phpunit/phpunit: ^8.0
- sempro/phpunit-pretty-print: ^1.0
- dev-master
- 1.4.2
- 1.4.1
- 1.4
- 1.3.6
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2
- 1.1.1
- 1.1.0
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-dependabot/composer/symfony/http-kernel-4.4.50
- dev-dependabot/composer/guzzlehttp/guzzle-6.5.8
- dev-dependabot/composer/guzzlehttp/psr7-1.8.5
- dev-dependabot/composer/league/flysystem-1.1.4
- dev-develop
- dev-revamp_structure
- dev-feature/views
This package is auto-updated.
Last update: 2024-09-30 01:29:54 UTC
README
这里应该放置您的描述。请查看 contributing.md 以查看待办事项列表。
安装
通过 Composer
$ composer require rezuankassim/bqanalytic
可选地,您可以发布配置文件
$ php artisan vendor:publish RezuanKassim/BQAnalytic/BQAnalyticServiceProvider
重要
确保您的 .env 文件中有以下值设置
GOOGLE_CLOUD_APPLICATION_CREDENTIALS=path_to_your_credentials_file
GOOGLE_CLOUD_PROJECT_ID=your_google_cloud_project_id
BQANALYTIC_BQ_TABLE_NAME=your_bigquery_datasets_name
GOOGLE_CLOUD_APPLICATION_NAME=your_google_cloud_application_name
然后
$ php artisan migrate
之后
$ php artisan db:seed --class=AnalyticSeeder
如果在运行上述命令时出现错误提示,您需要发布 vendor 文件。
使用方法
将此代码包含到您的用户实体中
use RezuanKassim\BQAnalytic\Traits\hasAnalyticPreferences; .... class User extends Authenticatable { use Notifiable, hasAnalyticPreferences;
然后运行 php artisan bqanalytic:export
将大查询数据导出到您本地的数据库中
注意: php artisan bqanalytic:export
可以接收两个日期,即开始日期和结束日期,如 php artisan bqanalytic:export 20200420 20200420
接下来,在您的控制器中
use RezuanKassim\BQAnalytic\BQAnalytic; ... $results = (new BQAnalytic(auth()->user(), Carbon::createFromFormat('d/m/Y', $range[0])->format('Ymd'), Carbon::createFromFormat('d/m/Y', $range[1])->format('Ymd')))->getAllAnalytics()[config('bqanalytic.google.accounts')[0]['name']];
可选地,您可以通过以下方式启用多个项目
BQANALYTIC_MULTIPLE_PROJECTS=true
设置此变量在您的 env 中并发布配置文件
并在 google => [accounts => [here]]
中插入以下代码
[ 'name' => 'YOUR_PROJECT_NAME', 'google_credential' => "FULL_PATH_TO_YOUR_CREDENTIALS", 'google_project_id' => 'PROJECT_ID', 'google_bq_dataset_name' => 'YOUR_DATASET_NAME' ]
从版本 1.3 开始,如果您愿意,您可以在数据库中存储所有客户端
BQANALYTIC_CLIENT_FROM_DB=true
在 .env 文件中
这将使用一个包含的 RezuanKassim\BQAnalytic\BQClient
模型来存储客户端信息
可选地,您也可以使用自己的模型,通过包含
BQANALYTIC_CLIENT_MODEL=App\Client
在 .env 文件中
但请记住在客户端模型中包含以下代码
use RezuanKassim\BQAnalytic\Traits\hasClientFromDB; ... class Client extends Model { use hasClientFromDB; protected $table = 'bq_clients'; protected $guarded = ['created_at', 'updated_at', 'id']; protected $casts = [ 'status' => 'boolean' ]; }
变更日志
请参阅 changelog 以获取有关最近更改的更多信息。
测试
$ composer test
贡献
请参阅 contributing.md 以获取详细信息和一个待办事项列表。
安全
如果您发现任何与安全相关的问题,请通过电子邮件发送给作者,而不是使用问题跟踪器。
致谢
许可证
许可证。请参阅 许可证文件 以获取更多信息。