anim/bgsgroup

v1.0.1

v1.0.1 2020-07-16 14:19 UTC

README

docker-compose build

docker-compose up -d

docker exec -it php7.4-fpm bash -c "cd ./bgsgroup/app/ && php -r \"copy('https://getcomposer.org.cn/installer', 'composer-setup.php');\" && php composer-setup.php"

docker exec -it php7.4-fpm bash -c "cd bgsgroup/app && php composer.phar install"

docker exec -it php7.4-fpm bash -c "cd bgsgroup/app && php composer.phar dump-autoload"

docker exec -it php7.4-fpm bash -c "cd bgsgroup/app && cp .env.example .env && php artisan db:create"

docker exec -it php7.4-fpm bash -c "cd bgsgroup/app && php artisan migrate && php artisan db:seed"

添加到hosts记录

127.0.0.1 bgsgroup

在浏览器中指定

http://bgsgroup

地址 https:// 上有指向 phpinfo 和 phpmyadmin 的链接列表。

测试

非常重要,命令的上下文必须保持不变。否则,在执行队列命令时可能会出现问题。这是由于丢失到 .env 配置文件的路径所致。

docker exec -it php7.4-fpm bash -c "cd bgsgroup/app/app && ../vendor/bin/phpunit ../tests/CustomTest"

工作流程

在系统部署阶段,数据库中已经存在城市、活动和默认用户字典,所有对 API 的请求都将由该用户执行。

令牌

6cdeaf954812376a1db7434a4ed53549

为了便于理解,这里将展示 cURL 的控制台命令,尽管我实际使用 Postman 进行调试。

API密钥

在向API发送任何请求之前,必须获取api_key。

curl --location --request GET 'http://bgsgroup/access-api-key/6cdeaf954812376a1db7434a4ed53549'

结果将是json响应

{
    "http_code": 200,
    "error": [],
    "data": {
        "api_key": "$2y$10$kxMei8QkP7jKSIQ37R9NReSAq1KktFDf340e4Py..Us2tjKX6fVce",
        "expired": "20200713182925"
    }
}

密钥的有效期为一小时。

添加参与者

将参与者添加到活动中。如果参与者尚未在系统中,则会创建。

curl --location --request POST 'http://bgsgroup/api/events/4/user/create' \
--header 'x-api-key: {your_api_key}' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'name=пользователь ' \
--data-urlencode 'surname=Тестовый' \
--data-urlencode 'email={your_email}'

属性{your_api_key}和{your_email}需要自行指定。

每次将参与者添加到活动时,都会将邮件发送队列添加到数据库的jobs表中。邮件发送尚未实现。队列存储在数据库的jobs表中。

删除参与者

从活动中删除参与者。

curl --location --request DELETE 'http://bgsgroup/api/events/1/user/3' \
--header 'x-api-key: {your_api_key}'

属性{your_api_key}需要自行指定。

修改

修改参与者的活动。

curl --location --request POST 'http://bgsgroup/api/events/1/user/1/update' \
--header 'x-api-key: {your_api_key}' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'event_id=3'

属性{your_api_key}需要自行指定。

活动参与者

获取特定活动的所有参与者

curl --location --request GET 'http://bgsgroup/api/events/4/user/list' \
--header 'x-api-key: {your_api_key}'

属性{your_api_key}需要自行指定。