From 0893513b602a76d1ab934d09cc696da19394ce0d Mon Sep 17 00:00:00 2001 From: Pranshu Tomar Date: Thu, 7 May 2020 13:58:14 +0530 Subject: [PATCH] Order comment email sent to customer --- packages/Webkul/Admin/src/Listeners/Order.php | 18 ++++++++ .../src/Mail/OrderCommentNotification.php | 44 +++++++++++++++++++ .../src/Providers/EventServiceProvider.php | 2 + .../Webkul/Shop/src/Resources/lang/en/app.php | 9 ++++ .../emails/sales/new-order-comment.blade.php | 35 +++++++++++++++ 5 files changed, 108 insertions(+) create mode 100644 packages/Webkul/Admin/src/Mail/OrderCommentNotification.php create mode 100644 packages/Webkul/Shop/src/Resources/views/emails/sales/new-order-comment.blade.php diff --git a/packages/Webkul/Admin/src/Listeners/Order.php b/packages/Webkul/Admin/src/Listeners/Order.php index 6ea512b86..95398c5b0 100755 --- a/packages/Webkul/Admin/src/Listeners/Order.php +++ b/packages/Webkul/Admin/src/Listeners/Order.php @@ -10,6 +10,7 @@ use Webkul\Admin\Mail\NewShipmentNotification; use Webkul\Admin\Mail\NewInventorySourceNotification; use Webkul\Admin\Mail\CancelOrderNotification; use Webkul\Admin\Mail\NewRefundNotification; +use Webkul\Admin\Mail\OrderCommentNotification; class Order { @@ -124,4 +125,21 @@ class Order report($e); } } + + /** + * @param \Webkul\Sales\Contracts\OrderComment $comment + * @return void + */ + public function sendOrderCommentMail($comment) + { + if (! $comment->customer_notified) { + return; + } + + try { + Mail::queue(new OrderCommentNotification($comment)); + } catch (\Exception $e) { + report($e); + } + } } \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Mail/OrderCommentNotification.php b/packages/Webkul/Admin/src/Mail/OrderCommentNotification.php new file mode 100644 index 000000000..c76361e7c --- /dev/null +++ b/packages/Webkul/Admin/src/Mail/OrderCommentNotification.php @@ -0,0 +1,44 @@ +comment = $comment; + } + + /** + * Build the message. + * + * @return $this + */ + public function build() + { + return $this->from(core()->getSenderEmailDetails()['email'], core()->getSenderEmailDetails()['name']) + ->to($this->comment->order->customer_email, $this->comment->order->customer_full_name) + ->subject(trans('shop::app.mail.order.comment.subject')) + ->view('shop::emails.sales.new-order-comment'); + } +} diff --git a/packages/Webkul/Admin/src/Providers/EventServiceProvider.php b/packages/Webkul/Admin/src/Providers/EventServiceProvider.php index c8427b542..cb38d77c1 100755 --- a/packages/Webkul/Admin/src/Providers/EventServiceProvider.php +++ b/packages/Webkul/Admin/src/Providers/EventServiceProvider.php @@ -23,5 +23,7 @@ class EventServiceProvider extends ServiceProvider Event::listen('sales.order.cancel.after','Webkul\Admin\Listeners\Order@sendCancelOrderMail'); Event::listen('sales.refund.save.after','Webkul\Admin\Listeners\Order@sendNewRefundMail'); + + Event::listen('sales.order.comment.create.after','Webkul\Admin\Listeners\Order@sendOrderCommentMail'); } } \ No newline at end of file diff --git a/packages/Webkul/Shop/src/Resources/lang/en/app.php b/packages/Webkul/Shop/src/Resources/lang/en/app.php index 249c7e17f..0c0a2f8a2 100755 --- a/packages/Webkul/Shop/src/Resources/lang/en/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/en/app.php @@ -571,6 +571,15 @@ return [ 'final-summary' => 'Thanks for showing your interest in our store we will send you tracking number once it shipped', 'help' => 'If you need any kind of help please contact us at :support_email', 'thanks' => 'Thanks!', + + 'comment' => [ + 'subject' => 'New comment added to your order', + 'dear' => 'Dear :customer_name', + 'final-summary' => 'Thanks for showing your interest in our store', + 'help' => 'If you need any kind of help please contact us at :support_email', + 'thanks' => 'Thanks!', + ], + 'cancel' => [ 'subject' => 'Order Cancel Confirmation', 'heading' => 'Order Cancelled', diff --git a/packages/Webkul/Shop/src/Resources/views/emails/sales/new-order-comment.blade.php b/packages/Webkul/Shop/src/Resources/views/emails/sales/new-order-comment.blade.php new file mode 100644 index 000000000..0d8c19672 --- /dev/null +++ b/packages/Webkul/Shop/src/Resources/views/emails/sales/new-order-comment.blade.php @@ -0,0 +1,35 @@ +@component('shop::emails.layouts.master') +
+ + @include ('shop::emails.layouts.logo') + +
+ +
+
+

+ {{ __('shop::app.mail.order.comment.dear', ['customer_name' => $comment->order->customer_full_name]) }}, +

+
+ +
+

+ {{ $comment->comment }} +

+
+ +
+

+ {!! + __('shop::app.mail.order.comment.help', [ + 'support_email' => '' . config('mail.from.address'). '' + ]) + !!} +

+ +

+ {{ __('shop::app.mail.order.comment.thanks') }} +

+
+
+@endcomponent