mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2024-09-20 08:21:34 +02:00
Refactor for webhooks
This commit is contained in:
parent
f25af382a5
commit
1d438d14d3
@ -11,36 +11,37 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Events\Credit\CreditWasCreated;
|
||||
use App\Events\Credit\CreditWasUpdated;
|
||||
use App\Factory\CloneCreditFactory;
|
||||
use App\Utils\Ninja;
|
||||
use App\Models\Client;
|
||||
use App\Models\Credit;
|
||||
use App\Models\Account;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use Illuminate\Http\Response;
|
||||
use App\Factory\CreditFactory;
|
||||
use App\Filters\CreditFilters;
|
||||
use App\Http\Requests\Credit\ActionCreditRequest;
|
||||
use App\Jobs\Credit\ZipCredits;
|
||||
use App\Utils\Traits\MakesHash;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Factory\CloneCreditFactory;
|
||||
use App\Services\PdfMaker\PdfMerge;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use App\Utils\Traits\SavesDocuments;
|
||||
use App\Repositories\CreditRepository;
|
||||
use App\Events\Credit\CreditWasCreated;
|
||||
use App\Events\Credit\CreditWasUpdated;
|
||||
use App\Transformers\CreditTransformer;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use App\Services\Template\TemplateAction;
|
||||
use App\Http\Requests\Credit\BulkCreditRequest;
|
||||
use App\Http\Requests\Credit\CreateCreditRequest;
|
||||
use App\Http\Requests\Credit\DestroyCreditRequest;
|
||||
use App\Http\Requests\Credit\EditCreditRequest;
|
||||
use App\Http\Requests\Credit\ShowCreditRequest;
|
||||
use App\Http\Requests\Credit\StoreCreditRequest;
|
||||
use App\Http\Requests\Credit\ActionCreditRequest;
|
||||
use App\Http\Requests\Credit\CreateCreditRequest;
|
||||
use App\Http\Requests\Credit\UpdateCreditRequest;
|
||||
use App\Http\Requests\Credit\UploadCreditRequest;
|
||||
use App\Jobs\Credit\ZipCredits;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Account;
|
||||
use App\Models\Client;
|
||||
use App\Models\Credit;
|
||||
use App\Models\Invoice;
|
||||
use App\Repositories\CreditRepository;
|
||||
use App\Services\PdfMaker\PdfMerge;
|
||||
use App\Services\Template\TemplateAction;
|
||||
use App\Transformers\CreditTransformer;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\MakesHash;
|
||||
use App\Utils\Traits\SavesDocuments;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use App\Http\Requests\Credit\DestroyCreditRequest;
|
||||
|
||||
/**
|
||||
* Class CreditController.
|
||||
@ -638,23 +639,14 @@ class CreditController extends BaseController
|
||||
}
|
||||
break;
|
||||
case 'email':
|
||||
|
||||
$credit->invitations->load('contact.client.country', 'credit.client.country', 'credit.company')->each(function ($invitation) use ($credit) {
|
||||
EmailEntity::dispatch($invitation, $credit->company, 'credit');
|
||||
});
|
||||
|
||||
|
||||
if (! $bulk) {
|
||||
return response()->json(['message'=>'email sent'], 200);
|
||||
}
|
||||
break;
|
||||
|
||||
case 'send_email':
|
||||
|
||||
$credit->invitations->load('contact.client.country', 'credit.client.country', 'credit.company')->each(function ($invitation) use ($credit) {
|
||||
EmailEntity::dispatch($invitation, $credit->company, 'credit');
|
||||
});
|
||||
|
||||
$credit->sendEvent(Webhook::EVENT_SENT_CREDIT, "client");
|
||||
|
||||
if (! $bulk) {
|
||||
return response()->json(['message'=>'email sent'], 200);
|
||||
}
|
||||
|
@ -11,25 +11,26 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Events\Credit\CreditWasEmailed;
|
||||
use App\Events\Quote\QuoteWasEmailed;
|
||||
use App\Http\Requests\Email\SendEmailRequest;
|
||||
use App\Jobs\PurchaseOrder\PurchaseOrderEmail;
|
||||
use App\Utils\Ninja;
|
||||
use App\Models\Quote;
|
||||
use App\Models\Credit;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use App\Models\PurchaseOrder;
|
||||
use App\Models\Quote;
|
||||
use App\Models\RecurringInvoice;
|
||||
use App\Services\Email\Email;
|
||||
use App\Utils\Traits\MakesHash;
|
||||
use App\Models\RecurringInvoice;
|
||||
use App\Services\Email\EmailObject;
|
||||
use App\Events\Quote\QuoteWasEmailed;
|
||||
use App\Transformers\QuoteTransformer;
|
||||
use Illuminate\Mail\Mailables\Address;
|
||||
use App\Events\Credit\CreditWasEmailed;
|
||||
use App\Transformers\CreditTransformer;
|
||||
use App\Transformers\InvoiceTransformer;
|
||||
use App\Http\Requests\Email\SendEmailRequest;
|
||||
use App\Jobs\PurchaseOrder\PurchaseOrderEmail;
|
||||
use App\Transformers\PurchaseOrderTransformer;
|
||||
use App\Transformers\QuoteTransformer;
|
||||
use App\Transformers\RecurringInvoiceTransformer;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\MakesHash;
|
||||
use Illuminate\Mail\Mailables\Address;
|
||||
|
||||
class EmailController extends BaseController
|
||||
{
|
||||
@ -100,6 +101,7 @@ class EmailController extends BaseController
|
||||
|
||||
if ($entity_obj->invitations->count() >= 1) {
|
||||
$entity_obj->entityEmailEvent($entity_obj->invitations->first(), 'invoice', $template);
|
||||
$entity_obj->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
}
|
||||
}
|
||||
|
||||
@ -109,6 +111,8 @@ class EmailController extends BaseController
|
||||
|
||||
if ($entity_obj->invitations->count() >= 1) {
|
||||
event(new QuoteWasEmailed($entity_obj->invitations->first(), $entity_obj->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null), 'quote'));
|
||||
$entity_obj->sendEvent(Webhook::EVENT_SENT_QUOTE, "client");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -118,6 +122,7 @@ class EmailController extends BaseController
|
||||
|
||||
if ($entity_obj->invitations->count() >= 1) {
|
||||
event(new CreditWasEmailed($entity_obj->invitations->first(), $entity_obj->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null), 'credit'));
|
||||
$entity_obj->sendEvent(Webhook::EVENT_SENT_CREDIT, "client");
|
||||
}
|
||||
}
|
||||
|
||||
@ -143,7 +148,8 @@ class EmailController extends BaseController
|
||||
$data['template'] = $template;
|
||||
|
||||
PurchaseOrderEmail::dispatch($entity_obj, $entity_obj->company, $data);
|
||||
|
||||
$entity_obj->sendEvent(Webhook::EVENT_SENT_PURCHASE_ORDER, "vendor");
|
||||
|
||||
return $this->itemResponse($entity_obj);
|
||||
}
|
||||
|
||||
|
@ -11,14 +11,15 @@
|
||||
|
||||
namespace App\Jobs\Cron;
|
||||
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Libraries\MultiDB;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use App\Libraries\MultiDB;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
class AutoBill implements ShouldQueue
|
||||
{
|
||||
@ -77,6 +78,8 @@ class AutoBill implements ShouldQueue
|
||||
}
|
||||
});
|
||||
|
||||
$invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -11,13 +11,14 @@
|
||||
|
||||
namespace App\Jobs\Invoice;
|
||||
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
class BulkInvoiceJob implements ShouldQueue
|
||||
{
|
||||
@ -50,6 +51,8 @@ class BulkInvoiceJob implements ShouldQueue
|
||||
|
||||
if ($this->invoice->invitations->count() >= 1) {
|
||||
$this->invoice->entityEmailEvent($this->invoice->invitations->first(), 'invoice', $this->reminder_template);
|
||||
$this->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -215,6 +215,7 @@ class SendReminders implements ShouldQueue
|
||||
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $template)->delay(10);
|
||||
event(new InvoiceWasEmailed($invoice->invitations->first(), $invoice->company, Ninja::eventVars(), $template));
|
||||
$invoice->sendEvent(Webhook::EVENT_REMIND_INVOICE, "client");
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -11,24 +11,25 @@
|
||||
|
||||
namespace App\Jobs\RecurringInvoice;
|
||||
|
||||
use App\DataMapper\Analytics\SendRecurringFailure;
|
||||
use App\Events\Invoice\InvoiceWasCreated;
|
||||
use App\Factory\InvoiceInvitationFactory;
|
||||
use App\Factory\RecurringInvoiceToInvoiceFactory;
|
||||
use App\Jobs\Cron\AutoBill;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\RecurringInvoice;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use App\Utils\Traits\MakesHash;
|
||||
use Carbon\Carbon;
|
||||
use App\Utils\Ninja;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use App\Jobs\Cron\AutoBill;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use App\Utils\Traits\MakesHash;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\RecurringInvoice;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Turbo124\Beacon\Facades\LightLogs;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use App\Events\Invoice\InvoiceWasCreated;
|
||||
use App\Factory\InvoiceInvitationFactory;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
use App\Factory\RecurringInvoiceToInvoiceFactory;
|
||||
use App\DataMapper\Analytics\SendRecurringFailure;
|
||||
|
||||
class SendRecurring implements ShouldQueue
|
||||
{
|
||||
@ -117,6 +118,7 @@ class SendRecurring implements ShouldQueue
|
||||
//04-08-2023 edge case to support where online payment notifications are not enabled
|
||||
if(!$invoice->client->getSetting('client_online_payment_notification')) {
|
||||
$this->sendRecurringEmails($invoice);
|
||||
$invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
}
|
||||
} elseif ($invoice->auto_bill_enabled && $invoice->client->getSetting('auto_bill_date') == 'on_due_date' && $invoice->client->getSetting('auto_email_invoice') && ($invoice->due_date && Carbon::parse($invoice->due_date)->startOfDay()->lte(now()->startOfDay()))) {
|
||||
nlog("attempting to autobill {$invoice->number}");
|
||||
@ -125,10 +127,12 @@ class SendRecurring implements ShouldQueue
|
||||
//04-08-2023 edge case to support where online payment notifications are not enabled
|
||||
if(!$invoice->client->getSetting('client_online_payment_notification')) {
|
||||
$this->sendRecurringEmails($invoice);
|
||||
$invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
}
|
||||
|
||||
} elseif ($invoice->client->getSetting('auto_email_invoice')) {
|
||||
$this->sendRecurringEmails($invoice);
|
||||
$invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -11,22 +11,23 @@
|
||||
|
||||
namespace App\Jobs\Util;
|
||||
|
||||
use App\Utils\Ninja;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use App\Libraries\MultiDB;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Support\Carbon;
|
||||
use App\DataMapper\InvoiceItem;
|
||||
use App\Factory\InvoiceFactory;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Libraries\MultiDB;
|
||||
use App\Models\Invoice;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\MakesDates;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use App\Utils\Traits\MakesReminders;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Support\Carbon;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class ReminderJob implements ShouldQueue
|
||||
{
|
||||
@ -150,6 +151,7 @@ class ReminderJob implements ShouldQueue
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $reminder_template);
|
||||
nlog("Firing reminder email for invoice {$invoice->number} - {$reminder_template}");
|
||||
$invoice->entityEmailEvent($invitation, $reminder_template);
|
||||
$invoice->sendEvent(Webhook::EVENT_REMIND_INVOICE, "client");
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -220,6 +222,7 @@ class ReminderJob implements ShouldQueue
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $reminder_template);
|
||||
nlog("Firing reminder email for invoice {$invoice->number} - {$reminder_template}");
|
||||
$invoice->entityEmailEvent($invitation, $reminder_template);
|
||||
$invoice->sendEvent(Webhook::EVENT_REMIND_INVOICE, "client");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -76,18 +76,18 @@ class MailSentListener implements ShouldQueue
|
||||
|
||||
foreach (MultiDB::$dbs as $db) {
|
||||
if ($invitation = InvoiceInvitation::on($db)->where('key', $key)->first()) {
|
||||
$invitation->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
// $invitation->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
return $invitation;
|
||||
} elseif ($invitation = QuoteInvitation::on($db)->where('key', $key)->first()) {
|
||||
$invitation->quote->sendEvent(Webhook::EVENT_SENT_QUOTE, "client");
|
||||
// $invitation->quote->sendEvent(Webhook::EVENT_SENT_QUOTE, "client");
|
||||
return $invitation;
|
||||
} elseif ($invitation = RecurringInvoiceInvitation::on($db)->where('key', $key)->first()) {
|
||||
return $invitation;
|
||||
} elseif ($invitation = CreditInvitation::on($db)->where('key', $key)->first()) {
|
||||
$invitation->credit->sendEvent(Webhook::EVENT_SENT_CREDIT, "client");
|
||||
// $invitation->credit->sendEvent(Webhook::EVENT_SENT_CREDIT, "client");
|
||||
return $invitation;
|
||||
} elseif ($invitation = PurchaseOrderInvitation::on($db)->where('key', $key)->first()) {
|
||||
$invitation->purchase_order->sendEvent(Webhook::EVENT_SENT_PURCHASE_ORDER, "vendor");
|
||||
// $invitation->purchase_order->sendEvent(Webhook::EVENT_SENT_PURCHASE_ORDER, "vendor");
|
||||
return $invitation;
|
||||
}
|
||||
}
|
||||
|
@ -11,10 +11,11 @@
|
||||
|
||||
namespace App\Services\Credit;
|
||||
|
||||
use App\Events\Credit\CreditWasEmailed;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\ClientContact;
|
||||
use App\Utils\Ninja;
|
||||
use App\Models\Webhook;
|
||||
use App\Models\ClientContact;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Events\Credit\CreditWasEmailed;
|
||||
|
||||
class SendEmail
|
||||
{
|
||||
@ -52,6 +53,8 @@ class SendEmail
|
||||
|
||||
if ($this->credit->invitations->count() >= 1) {
|
||||
event(new CreditWasEmailed($this->credit->invitations->first(), $this->credit->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null), 'credit'));
|
||||
$this->credit->sendEvent(Webhook::EVENT_SENT_CREDIT, "client");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -11,13 +11,14 @@
|
||||
|
||||
namespace App\Services\Credit;
|
||||
|
||||
use App\Events\Credit\CreditWasEmailed;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Credit;
|
||||
use App\Services\AbstractService;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use App\Models\Credit;
|
||||
use App\Models\Webhook;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Services\AbstractService;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use App\Events\Credit\CreditWasEmailed;
|
||||
|
||||
class TriggeredActions extends AbstractService
|
||||
{
|
||||
@ -78,6 +79,7 @@ class TriggeredActions extends AbstractService
|
||||
|
||||
if ($this->credit->invitations->count() > 0) {
|
||||
event(new CreditWasEmailed($this->credit->invitations->first(), $this->credit->company, Ninja::eventVars(), 'credit'));
|
||||
$this->credit->sendEvent(Webhook::EVENT_SENT_CREDIT, "client");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -61,10 +61,9 @@ class MarkSent extends AbstractService
|
||||
|
||||
if ($fire_webhook) {
|
||||
event('eloquent.updated: App\Models\Invoice', $this->invoice);
|
||||
$this->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
}
|
||||
|
||||
$this->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
|
||||
return $this->invoice->fresh();
|
||||
}
|
||||
}
|
||||
|
@ -11,12 +11,13 @@
|
||||
|
||||
namespace App\Services\Invoice;
|
||||
|
||||
use App\Events\Invoice\InvoiceWasEmailed;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\ClientContact;
|
||||
use App\Models\Invoice;
|
||||
use App\Services\AbstractService;
|
||||
use App\Utils\Ninja;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use App\Models\ClientContact;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Services\AbstractService;
|
||||
use App\Events\Invoice\InvoiceWasEmailed;
|
||||
|
||||
class SendEmail extends AbstractService
|
||||
{
|
||||
@ -41,6 +42,8 @@ class SendEmail extends AbstractService
|
||||
|
||||
if ($this->invoice->invitations->count() >= 1) {
|
||||
event(new InvoiceWasEmailed($this->invoice->invitations->first(), $this->invoice->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null), $this->reminder_template ?? 'invoice'));
|
||||
$this->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -11,13 +11,14 @@
|
||||
|
||||
namespace App\Services\Invoice;
|
||||
|
||||
use App\Events\Invoice\InvoiceWasEmailed;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Invoice;
|
||||
use App\Services\AbstractService;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Webhook;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Services\AbstractService;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use App\Events\Invoice\InvoiceWasEmailed;
|
||||
|
||||
class TriggeredActions extends AbstractService
|
||||
{
|
||||
@ -45,12 +46,12 @@ class TriggeredActions extends AbstractService
|
||||
|
||||
if ($this->request->has('mark_sent') && $this->request->input('mark_sent') == 'true' && $this->invoice->status_id == Invoice::STATUS_DRAFT) {
|
||||
$this->invoice = $this->invoice->service()->markSent()->save(); //update notification NOT sent
|
||||
$this->updated = false;
|
||||
$this->updated = true;
|
||||
}
|
||||
|
||||
if ($this->request->has('amount_paid') && is_numeric($this->request->input('amount_paid'))) {
|
||||
$this->invoice = $this->invoice->service()->applyPaymentAmount($this->request->input('amount_paid'), $this->request->input('reference'))->save();
|
||||
$this->updated = false;
|
||||
// $this->updated = false;
|
||||
}
|
||||
|
||||
if ($this->request->has('send_email') && $this->request->input('send_email') == 'true') {
|
||||
@ -80,8 +81,10 @@ class TriggeredActions extends AbstractService
|
||||
$company->save();
|
||||
}
|
||||
|
||||
if ($this->updated) {
|
||||
event('eloquent.updated: App\Models\Invoice', $this->invoice);
|
||||
if ($this->updated) {
|
||||
// event('eloquent.updated: App\Models\Invoice', $this->invoice);
|
||||
$this->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -98,6 +101,7 @@ class TriggeredActions extends AbstractService
|
||||
|
||||
if ($this->invoice->invitations->count() > 0) {
|
||||
event(new InvoiceWasEmailed($this->invoice->invitations->first(), $this->invoice->company, Ninja::eventVars(), 'invoice'));
|
||||
$this->invoice->sendEvent(Webhook::EVENT_SENT_INVOICE, "client");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -11,8 +11,9 @@
|
||||
|
||||
namespace App\Services\Quote;
|
||||
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Webhook;
|
||||
use App\Models\ClientContact;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
|
||||
class SendEmail
|
||||
{
|
||||
@ -50,7 +51,7 @@ class SendEmail
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$this->quote->sendEvent(Webhook::EVENT_SENT_QUOTE, "client");
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -11,13 +11,14 @@
|
||||
|
||||
namespace App\Services\Quote;
|
||||
|
||||
use App\Events\Quote\QuoteWasEmailed;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Models\Quote;
|
||||
use App\Services\AbstractService;
|
||||
use App\Utils\Ninja;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
use App\Models\Quote;
|
||||
use App\Models\Webhook;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Jobs\Entity\EmailEntity;
|
||||
use App\Services\AbstractService;
|
||||
use App\Events\Quote\QuoteWasEmailed;
|
||||
use App\Utils\Traits\GeneratesCounter;
|
||||
|
||||
class TriggeredActions extends AbstractService
|
||||
{
|
||||
@ -86,6 +87,8 @@ class TriggeredActions extends AbstractService
|
||||
|
||||
if ($this->quote->invitations->count() > 0) {
|
||||
event(new QuoteWasEmailed($this->quote->invitations->first(), $this->quote->company, Ninja::eventVars(), 'quote'));
|
||||
$this->quote->sendEvent(Webhook::EVENT_SENT_QUOTE, "client");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user