уведомление за один день до выбранной даты в laravel 5 - PullRequest
0 голосов
/ 06 июня 2018

Я работаю над датами laravel и хочу, чтобы laravel отправлял уведомления за день до или в тот же выбранный день в базе данных. Как я могу это сделать, вот часть моего кода: вот мой контроллер, который я сохраняю помню_дату в модели телефонной книги

public function index()
{

    $current_time = Verta::now();
    $phonebooks = Phonebook::with('client')->get();
    return view('admin.phonebooks.index', compact('phonebooks'))->with('current_time',$current_time);
}

и вот миграция из таблицы моих телефонных книг

 public function up()
{
    Schema::create('phonebooks', function (Blueprint $table) {
        $table->increments('id');
        $table->text('title');
        $table->longText('description');
        $table->integer('client_id');
        $table->dateTime('calldate');
        $table->dateTime('rememberdate');
        $table->timestamps();
    });
}

Теперь я хочу дать уведомление, чтобы позвонить клиенту за 1 день или до дня, который хранится в памятной дате.

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

вы можете использовать Углерод , что дает вам множество функциональных возможностей, работая с датой и временем.

$currentTime = Carbon::now();
$clientsToNotif = Phonebook::with('client')->whereDate('rememberdate' , $currentTime->addDays(1))->get();

, теперь вы можете отправлять пользователям любые уведомления

.
0 голосов
/ 06 июня 2018

В случае: если вы просто хотите статический раздел уведомлений на своей странице
Если вы просто хотите показать что-то на странице в качестве уведомления, просто извлеките данные, основанные на вашем условии, которые соответствуют правилу уведомления.

Шаги:

  • Получить текущую дату (текущая дата php)
  • Calculated date: добавить день к текущей дате (текущая дата + 1 день)
  • извлечение записи путем сопоставления Calculated date с rememberdate в БД
  • отображает ваше уведомление, если какая-либо запись найдена в БД, если запись не найдена, то «Уведомление не найдено»

Для операций с датами вы можете использовать основной php и добавить один день к текущей дате.Но я бы порекомендовал вам использовать Carbon lib в laravel.

Примеры использования Carbon для добавления дней в текущую дату Ссылка

Обновление на основе вашего комментария:
Извините, на самом деле я не понимаю, что календарь (календарь jalali), но простое добавление одного дня будет работать для любого календаря.Сначала изучите Carbon, если это поддерживает ваш календарь.Но у меня была похожая проблема в прошлом.Непал получил свою собственную систему дат и календаря, и мне пришлось разработать приложение.Я выполнил все операции / расчеты и сохранение данных в БД в стандартное время (английская дата-время), которое по умолчанию servers и mysql, а затем в приложении только во время отображения данных, я отображаю дату-время в местном формате (Локальный календарь Непала).

Во время отображения данных на веб-странице (UI) я использовал класс преобразователя даты, который я написал, чтобы преобразовать дату и время из даты в Непале в английский язык.дата-время и наоборот.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...