发送有条件的通知

时间:2019-04-15 12:06:38

标签: mysql laravel

我在这样的离开网上有一个用户表

id |    name        |      email         |  pic  |  email   | team  | level 
1     Michael         michael@mic.com        4                  1     staff
2     John Doe        john.doe@gmail.com     4                  1      staff
3     Kelme           kelme@gmail.com        5                  1     staff
4     Munich          x.munich@det.com               yes        1     manager
5     Phylon          phy@phylon.com                 yes        1    manager

在这些表中,用户ID 4和5是用户ID 1,2和3的管理员。我要设置 1.如果用户ID 4和5要接收电子邮件通知,则如果用户ID 1,2或3发送了请假请求,则他们将在电子邮件中以及登录应用程序时收到请求 2.如果用户ID 4或用户ID 5要接收电子邮件通知,则电子邮件将发送给想要的用户ID 4或5,他们可以登录到应用程序以查看它 3.如果他们俩都不希望收到电子邮件通知,则他们不会收到员工的电子邮件请求,但是他们可以登录到应用程序以查看电子邮件

我已经尝试过了,但是我仍然对如何满足上述3个条件感到困惑,它根本不起作用

这是代码

    $first = Users::where('id',$id)->first();

    $sender = Users::where('id',$first->pic)->where('team', $first->team)->get();

    $finals = Users::where('id',$first->pic)->get();
    if($first->level!='user')
    {
        $sender = Users::where('level','manager')->where('team', $first->team)->get();
    }
    foreach ($sender as $send)
    {
        $to[]=$send->id;

    }
    $check = Users::whereIn('id',$to)->get();
        foreach ($check as $ch)
        {
            $cha[]=$ch->email;
            if($cha=='no')
            {
                return redirect ('index');
            }
            if($cha=='yes')
            {
               $data = array('name' => "Gorgon");

               Mail::send(['text' => 'mail'], $data, function ($message) {
               $message->to('mail1@xxxx.com', 'Tutorials Point')->subject('Laravel Basic Testing Mail');
               $message->from('notif@xxxx.com', 'Gorgon');
    });
            }

        }

0 个答案:

没有答案