From bf40de87ca0746a96999f3575aa0fac8b59bb033 Mon Sep 17 00:00:00 2001 From: Alexander Gabriel Date: Sun, 8 Feb 2026 15:06:29 +0000 Subject: [PATCH] ein paar test-objekte --- app/HasContracts.php | 14 +++++++++ app/HasDocuments.php | 14 +++++++++ app/Models/Contact.php | 15 ++++++++++ app/Models/Contract.php | 11 ++++++- app/Models/Customer.php | 10 +++++++ app/Models/Document.php | 2 +- app/Models/User.php | 7 ++--- ...26_02_08_135203_create_documents_table.php | 1 + ...26_02_08_135341_create_contracts_table.php | 5 ++++ ...026_02_08_141139_create_contacts_table.php | 29 +++++++++++++++++++ 10 files changed, 101 insertions(+), 7 deletions(-) create mode 100644 app/HasContracts.php create mode 100644 app/HasDocuments.php create mode 100644 app/Models/Contact.php create mode 100644 app/Models/Customer.php create mode 100644 database/migrations/2026_02_08_141139_create_contacts_table.php diff --git a/app/HasContracts.php b/app/HasContracts.php new file mode 100644 index 0000000..f100ebf --- /dev/null +++ b/app/HasContracts.php @@ -0,0 +1,14 @@ +morphMany(Document::class, 'contractable'); + } + +} diff --git a/app/HasDocuments.php b/app/HasDocuments.php new file mode 100644 index 0000000..1eb5f91 --- /dev/null +++ b/app/HasDocuments.php @@ -0,0 +1,14 @@ +morphMany(Document::class, 'documentable'); + } + +} diff --git a/app/Models/Contact.php b/app/Models/Contact.php new file mode 100644 index 0000000..5e8c8ec --- /dev/null +++ b/app/Models/Contact.php @@ -0,0 +1,15 @@ +morphTo(); + } + } diff --git a/app/Models/Customer.php b/app/Models/Customer.php new file mode 100644 index 0000000..852b289 --- /dev/null +++ b/app/Models/Customer.php @@ -0,0 +1,10 @@ + */ use HasFactory, Notifiable; + use HasDocuments; /** * The attributes that are mass assignable. @@ -48,8 +49,4 @@ class User extends Authenticatable ]; } - public function documents() - { - return $this->morphMany(Document::class, 'documentable'); - } } diff --git a/database/migrations/2026_02_08_135203_create_documents_table.php b/database/migrations/2026_02_08_135203_create_documents_table.php index 603b871..e28b8d6 100644 --- a/database/migrations/2026_02_08_135203_create_documents_table.php +++ b/database/migrations/2026_02_08_135203_create_documents_table.php @@ -14,6 +14,7 @@ return new class extends Migration Schema::create('documents', function (Blueprint $table) { $table->id(); $table->string('name'); + $table->string('type'); $table->morphs('documentable'); $table->timestamps(); }); diff --git a/database/migrations/2026_02_08_135341_create_contracts_table.php b/database/migrations/2026_02_08_135341_create_contracts_table.php index 5b27aff..b48f0c1 100644 --- a/database/migrations/2026_02_08_135341_create_contracts_table.php +++ b/database/migrations/2026_02_08_135341_create_contracts_table.php @@ -1,5 +1,6 @@ id(); + $table->string('name'); + $table->string('type'); + $table->foreignIdFor(User::class, 'responsible'); + $table->morphs('contractable'); $table->timestamps(); }); } diff --git a/database/migrations/2026_02_08_141139_create_contacts_table.php b/database/migrations/2026_02_08_141139_create_contacts_table.php new file mode 100644 index 0000000..c55bbf7 --- /dev/null +++ b/database/migrations/2026_02_08_141139_create_contacts_table.php @@ -0,0 +1,29 @@ +id(); + $table->string('name'); + $table->string('type'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('contacts'); + } +};