Migrate backend to Porto architecture and fix minor bugs
- Fully transitioned the backend to the Porto architectural pattern - Improved code organization and maintainability - Fixed minor bugs and inconsistencies
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use App\Models\Faculty;
|
||||
use App\Containers\InstituteStructure\Models\Faculty;
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
|
||||
class EducationalGroupFactory extends Factory
|
||||
{
|
||||
public function definition(): array
|
||||
{
|
||||
return [
|
||||
'title' => $this->faker->words(3, true),
|
||||
'faculty_id' => \App\Models\Faculty::factory(),
|
||||
'education_form_id' => $this->faker->numberBetween(1, 3),
|
||||
'created_at' => $this->faker->dateTimeBetween('-1 year', 'now'),
|
||||
'updated_at' => $this->faker->dateTimeBetween('-1 year', 'now'),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use App\Models\EventCategory;
|
||||
use App\Containers\Event\Models\EventCategory;
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@ class FacultyFactory extends Factory
|
||||
'slug' => $slug,
|
||||
'content' => $content,
|
||||
'abbreviation' => $abbreviation,
|
||||
'is_active' => $this->faker->boolean(100),
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
];
|
||||
|
||||
@@ -2,15 +2,12 @@
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use App\Enums\PostStatus;
|
||||
use App\Models\Category;
|
||||
use App\Models\User;
|
||||
use App\Containers\Article\Enums\PostStatus;
|
||||
use App\Containers\Article\Models\Category;
|
||||
use App\Containers\User\Models\User;
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
/**
|
||||
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Post>
|
||||
*/
|
||||
class PostFactory extends Factory
|
||||
{
|
||||
/**
|
||||
@@ -54,6 +51,7 @@ class PostFactory extends Factory
|
||||
'status' => $status,
|
||||
'authors' => $authors,
|
||||
'images' => $images,
|
||||
'preview' => null,
|
||||
'search_data' => $search_data,
|
||||
'reading_time' => $reading_time,
|
||||
'category_id' => $category_id,
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
|
||||
class ScheduleFactory extends Factory
|
||||
{
|
||||
public function definition(): array
|
||||
{
|
||||
$fileName = $this->faker->unique()->word . '.pdf';
|
||||
|
||||
return [
|
||||
'file' => [
|
||||
[
|
||||
'title' => $this->faker->randomElement(['Обычное', 'Основное', 'Дополнительное', 'Экзаменационное']),
|
||||
'path' => 'schedules/' . $this->faker->slug . '-' . time() . '.pdf'
|
||||
]
|
||||
],
|
||||
'educational_group_id' => \App\Models\EducationalGroup::factory(),
|
||||
'created_at' => $this->faker->dateTimeBetween('-6 months', 'now'),
|
||||
'updated_at' => $this->faker->dateTimeBetween('-6 months', 'now'),
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use App\Models\User;
|
||||
use App\Containers\User\Models\User;
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user