diff --git a/app/Http/Controllers/VendorPortal/PurchaseOrderController.php b/app/Http/Controllers/VendorPortal/PurchaseOrderController.php index 83c1ff796e21..b5321baff9c0 100644 --- a/app/Http/Controllers/VendorPortal/PurchaseOrderController.php +++ b/app/Http/Controllers/VendorPortal/PurchaseOrderController.php @@ -11,23 +11,25 @@ namespace App\Http\Controllers\VendorPortal; -use App\Events\Misc\InvitationWasViewed; -use App\Events\PurchaseOrder\PurchaseOrderWasAccepted; -use App\Events\PurchaseOrder\PurchaseOrderWasViewed; +use App\Utils\Ninja; +use App\Models\Webhook; +use Illuminate\View\View; +use App\Models\PurchaseOrder; +use App\Utils\Traits\MakesHash; +use App\Utils\Traits\MakesDates; +use App\Jobs\Entity\CreateRawPdf; +use App\Jobs\Util\WebhookHandler; use App\Http\Controllers\Controller; -use App\Http\Requests\VendorPortal\PurchaseOrders\ProcessPurchaseOrdersInBulkRequest; +use App\Jobs\Invoice\InjectSignature; +use Illuminate\Support\Facades\Cache; +use Illuminate\Contracts\View\Factory; +use App\Models\PurchaseOrderInvitation; +use App\Events\Misc\InvitationWasViewed; +use App\Events\PurchaseOrder\PurchaseOrderWasViewed; +use App\Events\PurchaseOrder\PurchaseOrderWasAccepted; use App\Http\Requests\VendorPortal\PurchaseOrders\ShowPurchaseOrderRequest; use App\Http\Requests\VendorPortal\PurchaseOrders\ShowPurchaseOrdersRequest; -use App\Jobs\Entity\CreateRawPdf; -use App\Jobs\Invoice\InjectSignature; -use App\Models\PurchaseOrder; -use App\Models\PurchaseOrderInvitation; -use App\Utils\Ninja; -use App\Utils\Traits\MakesDates; -use App\Utils\Traits\MakesHash; -use Illuminate\Contracts\View\Factory; -use Illuminate\Support\Facades\Cache; -use Illuminate\View\View; +use App\Http\Requests\VendorPortal\PurchaseOrders\ProcessPurchaseOrdersInBulkRequest; class PurchaseOrderController extends Controller { @@ -187,6 +189,9 @@ class PurchaseOrderController extends Controller } event(new PurchaseOrderWasAccepted($purchase_order, auth()->guard('vendor')->user(), $purchase_order->company, Ninja::eventVars())); + + WebhookHandler::dispatch(Webhook::EVENT_ACCEPTED_PURCHASE_ORDER, $purchase_order, $purchase_order->company, 'vendor')->delay(0); + }); if ($purchase_count_query->count() == 1) { diff --git a/app/Models/Webhook.php b/app/Models/Webhook.php index 3b90960b60c5..d5d79779590f 100644 --- a/app/Models/Webhook.php +++ b/app/Models/Webhook.php @@ -176,7 +176,10 @@ class Webhook extends BaseModel public const EVENT_REMIND_QUOTE = 64; + public const EVENT_ACCEPTED_PURCHASE_ORDER = 65; + public static $valid_events = [ + self::EVENT_ACCEPTED_PURCHASE_ORDER, self::EVENT_REMIND_QUOTE, self::EVENT_CREATE_PURCHASE_ORDER, self::EVENT_UPDATE_PURCHASE_ORDER,