Пример #1
0
 public static function createSmsJob($condition, $operator, $smsName)
 {
     $totalCount = 0;
     $accountId = Token::getAccountId();
     if (!array_key_exists('accountId', $condition)) {
         $condition = array_merge($condition, ['accountId' => $accountId]);
     }
     switch ($smsName) {
         case 'cny_winners':
             $smsTemplate = self::CNY_WINNERS_SMS_TEMPLATE;
             $totalCount = LuckyDrawWinner::find()->where($condition)->count();
             break;
         default:
             break;
     }
     $recordId = BulkSmsRecord::createSmsRecord($operator, $smsName, $smsTemplate, $totalCount);
     if (is_bool($recordId) && !$recordId) {
         throw new ServerErrorHttpException("發送失敗,請刷新頁面重試!");
     }
     $args = ['condition' => serialize($condition), 'smsName' => $smsName, 'smsRecord' => (string) $recordId];
     $jobId = Yii::$app->job->create('backend\\modules\\uhkklp\\job\\BulkSms', $args);
     if (!empty($jobId)) {
         return ['smsRecordId' => (string) $recordId, 'count' => $totalCount];
     } else {
         throw new ServerErrorHttpException("發送失敗,請刷新頁面重試!");
     }
 }