fixed JobShouldQueue source_name issue..
This commit is contained in:
parent
951ca29215
commit
76e9eb39be
@ -12,10 +12,10 @@ use App\Traits\Jobs;
|
||||
use App\Traits\Relationships;
|
||||
use App\Traits\Sources;
|
||||
use App\Traits\Uploads;
|
||||
use App\Utilities\QueueCollection;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
@ -48,7 +48,7 @@ abstract class JobShouldQueue implements ShouldQueue
|
||||
}
|
||||
|
||||
$request = $this->getRequestInstance($arguments[0]);
|
||||
if ($request instanceof Collection) {
|
||||
if ($request instanceof QueueCollection) {
|
||||
$this->request = $request;
|
||||
}
|
||||
|
||||
@ -72,7 +72,7 @@ abstract class JobShouldQueue implements ShouldQueue
|
||||
}
|
||||
|
||||
$request = $this->getRequestInstance($arguments[1]);
|
||||
if ($request instanceof Collection) {
|
||||
if ($request instanceof QueueCollection) {
|
||||
$this->request = $request;
|
||||
}
|
||||
}
|
||||
@ -110,7 +110,7 @@ abstract class JobShouldQueue implements ShouldQueue
|
||||
* Covert the request to collection.
|
||||
*
|
||||
* @param mixed $request
|
||||
* @return \Illuminate\Support\Collection
|
||||
* @return \App\Utilities\QueueCollection
|
||||
*/
|
||||
public function getRequestAsCollection($request)
|
||||
{
|
||||
@ -122,12 +122,12 @@ abstract class JobShouldQueue implements ShouldQueue
|
||||
$request->merge($data);
|
||||
}
|
||||
|
||||
return collect($request->all());
|
||||
return new QueueCollection($request->all());
|
||||
}
|
||||
|
||||
public function setOwner(): void
|
||||
{
|
||||
if (! $this->request instanceof Collection) {
|
||||
if (! $this->request instanceof QueueCollection) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -140,7 +140,7 @@ abstract class JobShouldQueue implements ShouldQueue
|
||||
|
||||
public function setSource(): void
|
||||
{
|
||||
if (! $this->request instanceof Collection) {
|
||||
if (! $this->request instanceof QueueCollection) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -37,6 +37,10 @@ class Queue extends Provider
|
||||
});
|
||||
|
||||
app('events')->listen(JobProcessing::class, function ($event) {
|
||||
if (! defined('APP_RUNNING_IN_QUEUE')) {
|
||||
define('APP_RUNNING_IN_QUEUE', true);
|
||||
}
|
||||
|
||||
$payload = $event->job->payload();
|
||||
|
||||
if (!array_key_exists('company_id', $payload)) {
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Traits;
|
||||
|
||||
use App\Utilities\QueueCollection;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
trait Sources
|
||||
@ -29,8 +30,12 @@ trait Sources
|
||||
if (empty($source)) {
|
||||
$request = $request ?: request();
|
||||
|
||||
if ($request instanceof QueueCollection || running_in_queue()) {
|
||||
$source = $prefix . 'queue';
|
||||
} else {
|
||||
$source = $request->isApi() ? $prefix . 'api' : null;
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($source)) {
|
||||
$source = $prefix . 'ui';
|
||||
|
10
app/Utilities/QueueCollection.php
Normal file
10
app/Utilities/QueueCollection.php
Normal file
@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Utilities;
|
||||
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
class QueueCollection extends Collection
|
||||
{
|
||||
|
||||
}
|
@ -157,3 +157,15 @@ if (!function_exists('cache_prefix')) {
|
||||
return company_id() . '_';
|
||||
}
|
||||
}
|
||||
|
||||
if (!function_exists('running_in_queue')) {
|
||||
/**
|
||||
* Detect if application is running in queue.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function running_in_queue()
|
||||
{
|
||||
return defined('APP_RUNNING_IN_QUEUE') ?? false;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user