diff --git a/app/Http/Controllers/Reports/ClientContactReportController.php b/app/Http/Controllers/Reports/ClientContactReportController.php index 5b3a20683b58..13d6c6ef6b36 100644 --- a/app/Http/Controllers/Reports/ClientContactReportController.php +++ b/app/Http/Controllers/Reports/ClientContactReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\ContactExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,8 +63,11 @@ class ClientContactReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(), $request->all(), ContactExport::class, $this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default - $export = new ContactExport(auth()->user()->company(), $request->all()); $csv = $export->run(); @@ -76,9 +80,8 @@ class ClientContactReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } - } diff --git a/app/Http/Controllers/Reports/ClientReportController.php b/app/Http/Controllers/Reports/ClientReportController.php index e65a59b5cb10..1d8e0ce1c6e6 100644 --- a/app/Http/Controllers/Reports/ClientReportController.php +++ b/app/Http/Controllers/Reports/ClientReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\ClientExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Models\Client; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -63,6 +64,10 @@ class ClientReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),ClientExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new ClientExport(auth()->user()->company(), $request->all()); @@ -77,7 +82,7 @@ class ClientReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/CreditReportController.php b/app/Http/Controllers/Reports/CreditReportController.php index cc6fdd36e2ed..c158ca2237d4 100644 --- a/app/Http/Controllers/Reports/CreditReportController.php +++ b/app/Http/Controllers/Reports/CreditReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\CreditExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class CreditReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),CreditExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new CreditExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class CreditReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/DocumentReportController.php b/app/Http/Controllers/Reports/DocumentReportController.php index d0f4d3801715..541f20b5f78c 100644 --- a/app/Http/Controllers/Reports/DocumentReportController.php +++ b/app/Http/Controllers/Reports/DocumentReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\DocumentExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class DocumentReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),DocumentExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new DocumentExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class DocumentReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/ExpenseReportController.php b/app/Http/Controllers/Reports/ExpenseReportController.php index e797437fe37f..681ba1ab7821 100644 --- a/app/Http/Controllers/Reports/ExpenseReportController.php +++ b/app/Http/Controllers/Reports/ExpenseReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\ExpenseExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Models\Client; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -63,6 +64,10 @@ class ExpenseReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),ExpenseExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new ExpenseExport(auth()->user()->company(), $request->all()); @@ -77,7 +82,7 @@ class ExpenseReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/InvoiceItemReportController.php b/app/Http/Controllers/Reports/InvoiceItemReportController.php index 2bba0e0694ff..1de8aedefdf2 100644 --- a/app/Http/Controllers/Reports/InvoiceItemReportController.php +++ b/app/Http/Controllers/Reports/InvoiceItemReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\InvoiceItemExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class InvoiceItemReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),InvoiceItemExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new InvoiceItemExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class InvoiceItemReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/InvoiceReportController.php b/app/Http/Controllers/Reports/InvoiceReportController.php index b493bd3609a7..a9e0c585f4e8 100644 --- a/app/Http/Controllers/Reports/InvoiceReportController.php +++ b/app/Http/Controllers/Reports/InvoiceReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\InvoiceExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class InvoiceReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),InvoiceExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new InvoiceExport(auth()->user()->company(), $request->all()); @@ -76,9 +81,8 @@ class InvoiceReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } - } diff --git a/app/Http/Controllers/Reports/PaymentReportController.php b/app/Http/Controllers/Reports/PaymentReportController.php index 35e83bf60322..d62b4fe7a2ad 100644 --- a/app/Http/Controllers/Reports/PaymentReportController.php +++ b/app/Http/Controllers/Reports/PaymentReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\PaymentExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Models\Client; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -63,6 +64,10 @@ class PaymentReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(), $request->all(), PaymentExport::class, $this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new PaymentExport(auth()->user()->company(), $request->all()); @@ -77,9 +82,8 @@ class PaymentReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } - } diff --git a/app/Http/Controllers/Reports/ProductReportController.php b/app/Http/Controllers/Reports/ProductReportController.php index 1de907c127e9..732f842eab26 100644 --- a/app/Http/Controllers/Reports/ProductReportController.php +++ b/app/Http/Controllers/Reports/ProductReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\ProductExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Models\Client; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -63,6 +64,10 @@ class ProductReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),ProductExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new ProductExport(auth()->user()->company(), $request->all()); @@ -77,7 +82,7 @@ class ProductReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/ProfitAndLossController.php b/app/Http/Controllers/Reports/ProfitAndLossController.php index 7c2ea81ef56b..4b4b4f70f240 100644 --- a/app/Http/Controllers/Reports/ProfitAndLossController.php +++ b/app/Http/Controllers/Reports/ProfitAndLossController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\PaymentExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\ProfitLossRequest; +use App\Jobs\Report\SendToAdmin; use App\Models\Client; use App\Services\Report\ProfitLoss; use App\Utils\Traits\MakesHash; @@ -64,13 +65,17 @@ class ProfitAndLossController extends BaseController */ public function __invoke(ProfitLossRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),ProfitLoss::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $pnl = new ProfitLoss(auth()->user()->company(), $request->all()); $pnl->build(); $csv = $pnl->getCsv(); - + $headers = array( 'Content-Disposition' => 'attachment', 'Content-Type' => 'text/csv', @@ -79,7 +84,7 @@ class ProfitAndLossController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/QuoteItemReportController.php b/app/Http/Controllers/Reports/QuoteItemReportController.php index f1700bf9dff8..aaa32bb66792 100644 --- a/app/Http/Controllers/Reports/QuoteItemReportController.php +++ b/app/Http/Controllers/Reports/QuoteItemReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\QuoteItemExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class QuoteItemReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),QuoteItemExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new QuoteItemExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class QuoteItemReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/QuoteReportController.php b/app/Http/Controllers/Reports/QuoteReportController.php index 7b07d58a0004..b0fa10394c64 100644 --- a/app/Http/Controllers/Reports/QuoteReportController.php +++ b/app/Http/Controllers/Reports/QuoteReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\QuoteExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class QuoteReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),QuoteExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new QuoteExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class QuoteReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/RecurringInvoiceReportController.php b/app/Http/Controllers/Reports/RecurringInvoiceReportController.php index bfafa677ecfe..f0d03da35e4c 100644 --- a/app/Http/Controllers/Reports/RecurringInvoiceReportController.php +++ b/app/Http/Controllers/Reports/RecurringInvoiceReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\RecurringInvoiceExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class RecurringInvoiceReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),RecurringInvoiceExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new RecurringInvoiceExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class RecurringInvoiceReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + } diff --git a/app/Http/Controllers/Reports/TaskReportController.php b/app/Http/Controllers/Reports/TaskReportController.php index ee1259105efb..23fda0a83ee3 100644 --- a/app/Http/Controllers/Reports/TaskReportController.php +++ b/app/Http/Controllers/Reports/TaskReportController.php @@ -14,6 +14,7 @@ namespace App\Http\Controllers\Reports; use App\Export\CSV\TaskExport; use App\Http\Controllers\BaseController; use App\Http\Requests\Report\GenericReportRequest; +use App\Jobs\Report\SendToAdmin; use App\Utils\Traits\MakesHash; use Illuminate\Http\Response; @@ -62,6 +63,10 @@ class TaskReportController extends BaseController */ public function __invoke(GenericReportRequest $request) { + if ($request->has('send_email') && $request->get('send_email')) { + SendToAdmin::dispatch(auth()->user()->company(),$request->all(),TaskExport::class,$this->filename); + return response([], 200); + } // expect a list of visible fields, or use the default $export = new TaskExport(auth()->user()->company(), $request->all()); @@ -76,7 +81,7 @@ class TaskReportController extends BaseController return response()->streamDownload(function () use ($csv) { echo $csv; }, $this->filename, $headers); - + }