Запланировать звонок с отправкой почты и войти в Laravel

Как сделать уведомление, если поле «deleted_at» какого-либо пользователя при ежедневной проверке имеет значение «null»? Когда произошел этот случай, я хочу отправить электронное письмо с именем этого пользователя администратору.

// app/console/Kernel.php

    protected function schedule(Schedule $schedule)
    {
        $schedule->call(function () {
            $forgotCheckout = DB::table('workings')->whereNull('deleted_at')->get();
            foreach($forgotCheckout as $f){
                $user_id = [$f->user_id];
            }
            -- "code" --
        })->daily();
    }

Ваш синтаксис неверен ... Взгляните на Документация по API: DB::table('workings')->whereNull('deleted_at')->get()

IlGala 16.08.2018 12:49

Может мануал поможет: laravel.com/docs/5.6/notifications#sending-notifications

brombeer 16.08.2018 12:50

чего собственно хотите? Насколько я понимаю, вам нужно уведомить админа о том, сколько пользователей удалено

Vasim Shaikh 16.08.2018 12:51

@VasimVanzara просто уведомит администратора по электронной почте с указанием имени (идентификатора) или записей обнаруженного пользователя. после того, как я воспользуюсь этой информацией, чтобы сделать CRUD модальным.

JsWizard 16.08.2018 12:59

@M Magnetic: Вы получаете правильный результат в переменной `$ ForgotCheckout`?

user10186369 16.08.2018 13:01

@M Magnetic: В чем именно проблема?

user10186369 16.08.2018 13:05

@SaurabhDhariwal: знаете ли вы, как отправить электронное письмо со значением $ ForgotCheckout администратору?

JsWizard 16.08.2018 13:23

Это будет полезно: appdividend.com/2018/03/01/laravel-cronjob-scheduling-tutori‌ al

Vasim Shaikh 16.08.2018 14:09
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
8
381
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
//app/console/Kernel.php

use Illuminate\Support\Facades\Mail; //for use Mail facade

protected function schedule(Schedule $schedule)
{
    $forgot = [];

    $forgotCheckout = Working::whereNull('deleted_at')->get();
    foreach($forgotCheckout as $forgot){
           $forgot;
       }

    if (!is_null($forgot)){
        $schedule->call(function () use($forgotCheckout){
            Mail::send( //send email with valiable $forgot in View file.
                'emails.forgot_checkout',
                compact('forgotCheckout'),
                function ($message) {
                    $message->to('[email protected]');
                    $message->subject('This is test mail');
                }
               );
        })->daily()->when(function() use ($forgotCheckout){ //define how often do this job
            if (!is_null($forgot)){
            \Log::info(Daily check completed.); //write log file                
            return true; // when() will work when return is true.
            }
            else {
            return false; // when() not work because return is false.
            }
        );
    }
}

И вы можете создавать и изменять, чтобы использовать ваши данные с данными $forgot.

// view/emails/forgot_checkout.blade.php

This is test mail for scheduled mail sending...
@foreach($forgotCheckout as $forgot)
  {{$forgot->id}}
  {{$forgot->name}}
@endforeach

Как известно большинству из вас, если вы знаете, как это сделать, то это несложно :)

Другие вопросы по теме