feat(packages): implement package-based business model
This commit is contained in:
@@ -7,7 +7,8 @@ use App\Http\Controllers\Api\Tenant\TaskController;
|
||||
use App\Http\Controllers\Api\Tenant\PhotoController;
|
||||
use App\Http\Controllers\OAuthController;
|
||||
use App\Http\Controllers\RevenueCatWebhookController;
|
||||
use App\Http\Controllers\Tenant\CreditController;
|
||||
use App\Http\Controllers\Api\PackageController;
|
||||
use App\Http\Controllers\Api\TenantPackageController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
Route::prefix('v1')->name('api.v1.')->group(function () {
|
||||
@@ -86,12 +87,22 @@ Route::prefix('v1')->name('api.v1.')->group(function () {
|
||||
->name('tenant.settings.validate-domain');
|
||||
});
|
||||
|
||||
Route::prefix('credits')->group(function () {
|
||||
Route::get('balance', [CreditController::class, 'balance'])->name('tenant.credits.balance');
|
||||
Route::get('ledger', [CreditController::class, 'ledger'])->name('tenant.credits.ledger');
|
||||
Route::get('history', [CreditController::class, 'history'])->name('tenant.credits.history');
|
||||
Route::post('purchase', [CreditController::class, 'purchase'])->name('tenant.credits.purchase');
|
||||
Route::post('sync', [CreditController::class, 'sync'])->name('tenant.credits.sync');
|
||||
Route::prefix('packages')->group(function () {
|
||||
Route::get('/', [PackageController::class, 'index'])->name('packages.index');
|
||||
Route::post('/purchase', [PackageController::class, 'purchase'])->name('packages.purchase');
|
||||
});
|
||||
|
||||
Route::prefix('stripe')->group(function () {
|
||||
Route::post('/payment-intent', [StripeController::class, 'createPaymentIntent'])->name('stripe.payment-intent');
|
||||
Route::post('/subscription', [StripeController::class, 'createSubscription'])->name('stripe.subscription');
|
||||
});
|
||||
|
||||
Route::prefix('tenant/packages')->group(function () {
|
||||
Route::get('/', [TenantPackageController::class, 'index'])->name('tenant.packages.index');
|
||||
});
|
||||
});
|
||||
|
||||
// Stripe Webhook (no auth)
|
||||
Route::post('/stripe/webhook', [StripeWebhookController::class, 'handleWebhook'])
|
||||
->name('stripe.webhook');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user