| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- <?php
- /**
- * UserGift会员礼包-生日礼包 定时任务
- */
- namespace console\controllers;
- use addons\UserGift\common\enums\GiftEnum;
- use addons\UserGift\common\listeners\UserGiftListener;
- use common\enums\RabbitMqEnum;
- use common\models\user\UserExtra;
- use yii\console\Controller;
- use yii\console\ExitCode;
- class BirthdayCrontabController extends Controller
- {
- /**
- * 查询当天生日的用户
- * 0 0 2 * * * *
- * @Author: lun
- * @DateTime: 2021/11/17 0017 20:38
- * @Copyright: copyright (c) 2021 广东七件事集团
- * @return int
- */
- public function actionExecute(){
- try {
- $md = date('m-d', time());
- $list = UserExtra::find()->select('user_id,birthday')->andWhere(['like', 'birthday', '%' . $md, false])->with(['user' => function($query){
- $query->select('id,mall_id');
- }])->asArray()->all();
- if (empty($list)) {
- echo 'success';
- return ExitCode::OK;
- }
- // 调用事件
- $gift['gift_type'] = GiftEnum::GIFT_TYPE_BIRTHDAY;
- foreach ($list as $extra) {
- $gift['mall_id'] = $extra['user']['mall_id'];
- $gift['user_ids'] = $extra['user_id'];
- \Yii::$app->services->rabbitMq->push(RabbitMqEnum::EXCHANGE_TASK, RabbitMqEnum::TASK_QUEUE, $gift, UserGiftListener::class, 'async_handle');
- }
- echo 'success';
- return ExitCode::OK;
- } catch (\Exception $e) {
- echo $e->getMessage();
- $this->stderr('Error: ' . ExitCode::getReason(ExitCode::UNSPECIFIED_ERROR));
- return ExitCode::UNSPECIFIED_ERROR;
- }
- }
- }
|