refactor: update controller namespaces

This commit is contained in:
kusowl 2026-03-26 10:39:28 +05:30
parent 79f012e6d4
commit 0d2ba32fc6
41 changed files with 145 additions and 65 deletions

View File

@ -0,0 +1,11 @@
<?php
namespace App\Enums\Campaign;
enum CampaignStatuses: string
{
case Active = 'active';
case Draft = 'draft';
case Paused = 'paused';
case Expired = 'expired';
}

View File

@ -0,0 +1,10 @@
<?php
namespace App\Enums\Campaign;
enum DiscountTypes: string
{
case Percentage = 'percentage';
case FixedAmount = 'fixed_amount';
case FreeShipping = 'free-shipping';
}

View File

@ -1,9 +1,10 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Campaign;
use App\Http\Requests\CampaignRequest; use App\Http\Controllers\Controller;
use App\Http\Resources\CampaignResource; use App\Http\Requests\Campaign\CampaignRequest;
use App\Http\Resources\Campaign\CampaignResource;
use App\Models\Campaign; use App\Models\Campaign;
class CampaignController extends Controller class CampaignController extends Controller

View File

@ -1,15 +1,19 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Cart;
use App\Actions\Cart\AddProductToCartAction; use App\Actions\Cart\AddProductToCartAction;
use App\Actions\Cart\GetActiveUserCartAction; use App\Actions\Cart\GetActiveUserCartAction;
use App\Actions\Cart\RemoveProductFromCartAction; use App\Actions\Cart\RemoveProductFromCartAction;
use App\Actions\Cart\UpdateProductInCartAction; use App\Actions\Cart\UpdateProductInCartAction;
use App\Data\Cart\AddToCartDTO; use App\Data\Cart\AddToCartDTO;
use App\Http\Requests\AddProductToCartRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\RemoveProductFromCartRequest; use App\Http\Controllers\Log;
use App\Http\Requests\UpdateProductInCartRequest; use App\Http\Controllers\ModelNotFoundException;
use App\Http\Controllers\MultipleRecordsFoundException;
use App\Http\Requests\Cart\AddProductToCartRequest;
use App\Http\Requests\Cart\RemoveProductFromCartRequest;
use App\Http\Requests\Cart\UpdateProductInCartRequest;
use App\Http\Resources\Cart\CartResource; use App\Http\Resources\Cart\CartResource;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;

View File

@ -1,9 +1,10 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Coupon;
use App\Http\Requests\CouponRequest; use App\Http\Controllers\Controller;
use App\Http\Resources\CouponResource; use App\Http\Requests\Campaign\CouponRequest;
use App\Http\Resources\Campaign\CouponResource;
use App\Models\Coupon; use App\Models\Coupon;
class CouponController extends Controller class CouponController extends Controller

View File

@ -1,12 +1,13 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Order;
use App\Actions\Order\CreateOrderAction; use App\Actions\Order\CreateOrderAction;
use App\Data\Order\OrderRequestDTO; use App\Data\Order\OrderRequestDTO;
use App\Exceptions\StaleCartException; use App\Exceptions\StaleCartException;
use App\Http\Requests\StoreOrderRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\UpdateOrderRequest; use App\Http\Requests\Order\StoreOrderRequest;
use App\Http\Requests\Order\UpdateOrderRequest;
use App\Models\Order; use App\Models\Order;
class OrderController extends Controller class OrderController extends Controller

View File

@ -1,12 +1,13 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Payment;
use App\Actions\Payment\ProcessOrderPaymentAction; use App\Actions\Payment\ProcessOrderPaymentAction;
use App\Actions\Stripe\VerifyStripeSessionAction; use App\Actions\Stripe\VerifyStripeSessionAction;
use App\Enums\Payment\PaymentModes; use App\Enums\Payment\PaymentModes;
use App\Http\Requests\PaymentRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\VerifyPaymentRequest; use App\Http\Requests\Payment\PaymentRequest;
use App\Http\Requests\Payment\VerifyPaymentRequest;
use App\Http\Resources\Payment\PaymentResource; use App\Http\Resources\Payment\PaymentResource;
use App\Models\Order; use App\Models\Order;
use App\Models\Payment; use App\Models\Payment;

View File

@ -1,7 +1,8 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Product;
use App\Http\Controllers\Controller;
use App\Http\Resources\Product\FavouriteProductResource; use App\Http\Resources\Product\FavouriteProductResource;
use App\Models\FavouriteProduct; use App\Models\FavouriteProduct;
use App\Models\Product; use App\Models\Product;

View File

@ -1,8 +1,9 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Product;
use App\Actions\Product\GetAllProductCategory; use App\Actions\Product\GetAllProductCategory;
use App\Http\Controllers\Controller;
class ProductCategoryController extends Controller class ProductCategoryController extends Controller
{ {

View File

@ -1,9 +1,10 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Product;
use App\Data\Product\ProductDTO; use App\Data\Product\ProductDTO;
use App\Http\Requests\CreateProductRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\Product\CreateProductRequest;
use App\Http\Resources\Product\ProductResource; use App\Http\Resources\Product\ProductResource;
use App\Models\Product; use App\Models\Product;
use App\Queries\GetProductsQuery; use App\Queries\GetProductsQuery;

View File

@ -1,10 +1,11 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Product;
use App\Actions\Upload\UploadImageAction; use App\Actions\Upload\UploadImageAction;
use App\Data\Upload\UploadImageDTO; use App\Data\Upload\UploadImageDTO;
use App\Http\Requests\UploadImageRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\Upload\UploadImageRequest;
use App\Models\ProductImages; use App\Models\ProductImages;
class ProductImagesController extends Controller class ProductImagesController extends Controller

View File

@ -1,9 +1,10 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\Stripe;
use App\Actions\Payment\MarkPaymentAsPaidAction; use App\Actions\Payment\MarkPaymentAsPaidAction;
use App\Enums\Stripe\StripeEventType; use App\Enums\Stripe\StripeEventType;
use App\Http\Controllers\Controller;
use App\Models\Payment; use App\Models\Payment;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Log; use Log;

View File

@ -1,8 +1,9 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\User;
use App\Data\User\UserDTO; use App\Data\User\UserDTO;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;

View File

@ -1,10 +1,11 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\User;
use App\Actions\User\CreateUserAction; use App\Actions\User\CreateUserAction;
use App\Data\User\RegisterDTO; use App\Data\User\RegisterDTO;
use App\Http\Requests\RegisterUserRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\User\RegisterUserRequest;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
class RegisteredUserController extends Controller class RegisteredUserController extends Controller

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Controllers; namespace App\Http\Controllers\User;
use App\Actions\Address\DeleteUserAddressAction; use App\Actions\Address\DeleteUserAddressAction;
use App\Actions\Address\SaveUserAddressAction; use App\Actions\Address\SaveUserAddressAction;
@ -8,8 +8,9 @@
use App\Data\Address\AddUserAddressRequestDTO; use App\Data\Address\AddUserAddressRequestDTO;
use App\Data\Address\UpdateUserAddressRequestDTO; use App\Data\Address\UpdateUserAddressRequestDTO;
use App\Data\Address\UserAddressResponseDTO; use App\Data\Address\UserAddressResponseDTO;
use App\Http\Requests\AddUserAddressRequest; use App\Http\Controllers\Controller;
use App\Http\Requests\UpdateUserAddressRequest; use App\Http\Requests\Address\AddUserAddressRequest;
use App\Http\Requests\Address\UpdateUserAddressRequest;
use App\Http\Resources\Address\AddressResource; use App\Http\Resources\Address\AddressResource;
use App\Models\Address; use App\Models\Address;
use Illuminate\Http\Request; use Illuminate\Http\Request;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Address;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Address;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Campaign;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Campaign;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Cart;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Cart;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Cart;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Order;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Order;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Payment;
use App\Enums\Payment\PaymentModes; use App\Enums\Payment\PaymentModes;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Payment;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Product;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\Upload;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Requests; namespace App\Http\Requests\User;
use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Contracts\Validation\ValidationRule;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Resources; namespace App\Http\Resources\Campaign;
use App\Models\Campaign; use App\Models\Campaign;
use Illuminate\Http\Request; use Illuminate\Http\Request;

View File

@ -1,6 +1,6 @@
<?php <?php
namespace App\Http\Resources; namespace App\Http\Resources\Campaign;
use App\Models\Coupon; use App\Models\Coupon;
use Illuminate\Http\Request; use Illuminate\Http\Request;

View File

@ -10,7 +10,7 @@ public function up(): void
{ {
Schema::create('payment_statuses', function (Blueprint $table) { Schema::create('payment_statuses', function (Blueprint $table) {
$table->id(); $table->id();
$table->string('name'); $table->string('name')->unique();
}); });
} }

View File

@ -4,12 +4,13 @@
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
return new class extends Migration { return new class extends Migration
{
public function up(): void public function up(): void
{ {
Schema::create('campaign_statuses', function (Blueprint $table) { Schema::create('campaign_statuses', function (Blueprint $table) {
$table->id(); $table->id();
$table->string('value'); $table->string('value')->unique();
$table->timestamps(); $table->timestamps();
}); });
} }

View File

@ -4,12 +4,13 @@
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
return new class extends Migration { return new class extends Migration
{
public function up(): void public function up(): void
{ {
Schema::create('discount_types', function (Blueprint $table) { Schema::create('discount_types', function (Blueprint $table) {
$table->id(); $table->id();
$table->string('value'); $table->string('value')->unique();
$table->timestamps(); $table->timestamps();
}); });
} }

View File

@ -4,7 +4,8 @@
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
return new class extends Migration { return new class extends Migration
{
public function up(): void public function up(): void
{ {
Schema::create('campaigns', function (Blueprint $table) { Schema::create('campaigns', function (Blueprint $table) {

View File

@ -4,7 +4,8 @@
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
return new class extends Migration { return new class extends Migration
{
public function up(): void public function up(): void
{ {
Schema::create('coupons', function (Blueprint $table) { Schema::create('coupons', function (Blueprint $table) {

View File

@ -4,7 +4,8 @@
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
return new class extends Migration { return new class extends Migration
{
public function up(): void public function up(): void
{ {
Schema::create('redemption_logs', function (Blueprint $table) { Schema::create('redemption_logs', function (Blueprint $table) {

View File

@ -0,0 +1,19 @@
<?php
namespace Database\Seeders\Campaign;
use App\Enums\Campaign\CampaignStatuses;
use App\Models\CampaignStatus;
use Illuminate\Database\Seeder;
class CampaignStatusSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$values = array_map(fn (CampaignStatuses $type) => ['value' => $type->value], CampaignStatuses::cases());
CampaignStatus::upsert($values, ['value'], ['value']);
}
}

View File

@ -0,0 +1,19 @@
<?php
namespace Database\Seeders\Campaign;
use App\Enums\Campaign\DiscountTypes;
use App\Models\DiscountType;
use Illuminate\Database\Seeder;
class DiscountTypeSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$values = array_map(fn (DiscountTypes $type) => ['value' => $type->value], DiscountTypes::cases());
DiscountType::upsert($values, ['value'], ['value']);
}
}

View File

@ -1,16 +1,16 @@
<?php <?php
use App\Http\Controllers\AuthenticatedUserController; use App\Http\Controllers\Cart\CartController;
use App\Http\Controllers\CartController; use App\Http\Controllers\Order\OrderController;
use App\Http\Controllers\FavouriteProductController; use App\Http\Controllers\Payment\PaymentController;
use App\Http\Controllers\OrderController; use App\Http\Controllers\Product\FavouriteProductController;
use App\Http\Controllers\PaymentController; use App\Http\Controllers\Product\ProductCategoryController;
use App\Http\Controllers\ProductCategoryController; use App\Http\Controllers\Product\ProductController;
use App\Http\Controllers\ProductController; use App\Http\Controllers\Product\ProductImagesController;
use App\Http\Controllers\ProductImagesController; use App\Http\Controllers\Stripe\StripeWebhookController;
use App\Http\Controllers\RegisteredUserController; use App\Http\Controllers\User\AuthenticatedUserController;
use App\Http\Controllers\StripeWebhookController; use App\Http\Controllers\User\RegisteredUserController;
use App\Http\Controllers\UserAddressController; use App\Http\Controllers\User\UserAddressController;
use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Route;
Route::middleware('guest')->group(function () { Route::middleware('guest')->group(function () {

View File

@ -1,6 +1,6 @@
<?php <?php
use App\Http\Controllers\AuthenticatedUserController; use App\Http\Controllers\User\AuthenticatedUserController;
use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Route;
Route::get('/', function () { Route::get('/', function () {