首页 > 解决方案 > 产品有货时如何向客户发送通知

问题描述

这是我所做的代码,当产品更新时,我将它放在供应商更新产品功能中

if ($product->stock >=1)
        {
        $user = DB::table('user_profiles')->leftjoin('wishlist', 'wishlist.user_id' , '=', 'user_profiles.id')->get('email');

        mail($user->email,'The book is available!!','Your book in wishlist is available. Please check it in your wishlist.');
        }

这是供应商用来编辑产品并保存在数据库中的功能

 public function update(Request $request, $id)
    {
        $product = Product::findOrFail($id);
        $input = $request->all();
        $input['category'] = $request->mainid.",".$request->subid.",".$request->childid;

        if ($file = $request->file('photo')){
            $photo_name = time().$request->file('photo')->getClientOriginalName();
            $file->move('assets/images/products',$photo_name);
            $input['feature_image'] = $photo_name;
        }

        if ($request->galdel == 1){
            $gal = Gallery::where('productid',$id);
            $gal->delete();
        }

        if ($request->pallow == ""){
            $input['sizes'] = null;
        }


        if ($product->stock >=1)
        {
        $user = DB::table('user_profiles')->leftjoin('wishlist', 'wishlist.user_id' , '=', 'user_profiles.id')->get('email');

        mail($user->email,'The book is available!!','Your book in wishlist is available. Please check it in your wishlist.');
        }


        $product->update($input);

        if ($files = $request->file('gallery')){
            foreach ($files as $file){
                $gallery = new Gallery;
                $image_name = str_random(2).time().$file->getClientOriginalName();
                $file->move('assets/images/gallery',$image_name);
                $gallery['image'] = $image_name;
                $gallery['productid'] = $id;
                $gallery->save();
            }
        }

标签: phplaravel

解决方案


首先让您的用户电子邮件作为数组

$users = DB::table('user_profiles')
->select('email')
->leftjoin('wishlist', 'wishlist.user_id' , '=', 'user_profiles.id')
->get()->toArray();

向多个用户发送邮件。

Mail::send([], [], function ($message) use ($users) {
  $message->to($users)
    ->from('your_email_id')
    ->subject('The book is available!!')
    ->setBody('The book is available!!,Your book in wishlist is available. Please check it in your wishlist.');
});

或者

Mail::raw('The book is available!!,Your book in wishlist is available. Please check it in your wishlist.', function ($message) use ($users){
 $message->to($users);
});

推荐阅读