Initial commit
Build / run (push) Has been cancelled

This commit is contained in:
maher
2026-05-14 13:42:10 +02:00
commit 511fad8199
4595 changed files with 385164 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
<?php
namespace Common\Billing\Gateways;
use Common\Billing\GatewayException;
use Common\Billing\Gateways\Actions\SyncProductOnEnabledGateways;
use Common\Billing\Models\Product;
use Common\Core\BaseController;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Response;
class SyncProductsController extends BaseController
{
public function syncProducts(): Response|JsonResponse
{
$products = Product::where('free', false)
->whereHas('prices')
->get();
foreach ($products as $product) {
try {
app(SyncProductOnEnabledGateways::class)->execute($product);
} catch (GatewayException $e) {
return $this->error(
"Could not sync \"$product->name\" product: {$e->getMessage()}",
);
}
}
return $this->success();
}
}