Add card types and states

This commit is contained in:
2025-10-23 00:50:30 +05:00
parent 1c9e9c3bed
commit 02188c46fd
8 changed files with 243 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
<?php
namespace App\Modules\CardOrder;
use App\Modules\Makeable;
use App\Modules\ModuleContract;
class CardOrderModule implements ModuleContract
{
use Makeable;
/**
* Module is enabled
*/
protected bool $enabled = true;
/**
* Check if is module enabled
*/
public function isEnabled(): bool
{
return $this->enabled;
}
/**
* Disable module
*/
public function disable(): void
{
$this->enabled = false;
}
/**
* Enable module
*/
public function enable(): void
{
$this->enabled = true;
}
/**
* Check if module has a filament resource
*/
public function hasFilamentResource(): bool
{
return false;
}
/**
* Get module composer requirements
*/
public function getComposerRequirements(): array
{
return [];
}
/**
* Get module composer suggestions
*/
public function getComposerSuggestions(): array
{
return [];
}
}

View File

@@ -0,0 +1,49 @@
<?php
namespace App\Modules\CardOrder\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class CardOrderController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index(Request $request): void
{
//
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request): void
{
//
}
/**
* Display the specified resource.
*/
public function show(Request $request): void
{
//
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request): void
{
//
}
/**
* Remove the specified resource from storage.
*/
public function destroy(Request $request): void
{
//
}
}

View File

@@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('card_states', function (Blueprint $table) {
$table->id();
$table->json('name');
$table->string('price')->nullable();
$table->string('notes')->nullable();
$table->boolean('active')->default(true);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('card_states');
}
};

View File

@@ -0,0 +1,31 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('card_types', function (Blueprint $table) {
$table->id();
$table->json('name');
$table->string('price')->nullable();
$table->string('notes')->nullable();
$table->boolean('active')->default(true);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('card_types');
}
};

View File

@@ -0,0 +1,7 @@
<?php
namespace App\Modules\CardOrder\Models;
use Illuminate\Database\Eloquent\Model;
class CardOrder extends Model {}

View File

@@ -0,0 +1,27 @@
<?php
namespace App\Modules\CardOrder\Models;
use Illuminate\Database\Eloquent\Model;
use Spatie\Translatable\HasTranslations;
/**
* @property int $id
* @property string $name
* @property string|null $price
* @property string|null $notes
* @property bool $active
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
*/
class CardState extends Model
{
use HasTranslations;
/**
* Translatable fields
*
* @var array<string>
*/
public $translatable = ['name'];
}

View File

@@ -0,0 +1,27 @@
<?php
namespace App\Modules\CardOrder\Models;
use Illuminate\Database\Eloquent\Model;
use Spatie\Translatable\HasTranslations;
/**
* @property int $id
* @property string $name
* @property string|null $price
* @property string|null $notes
* @property bool $active
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
*/
class CardType extends Model
{
use HasTranslations;
/**
* Translatable fields
*
* @var array<string>
*/
public $translatable = ['name'];
}

View File

@@ -0,0 +1,5 @@
<?php
namespace App\Modules\CardOrder\Repositories;
class CardOrderRepository {}