File "SortSeeder.php"
Full Path: /var/www/html/back/database/seeders/SortSeeder.php
File size: 1.24 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace Database\Seeders;
use App\Models\Article;
use App\Models\ArticleGroup;
use Illuminate\Database\Seeder;
class SortSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$models = [1, 2, 3];
foreach ($models as $model) {
$articles = Article::where('model_id', $model)
->where('id', '!=', 1)
->orderBy('article_group_id')
->orderBy('id')
->get()
->groupBy(['article_group_id', 'article_type']);
foreach ($articles as $articleGroup) {
foreach ($articleGroup as $group) {
$sort = 0;
foreach ($group as $item) {
$item->sort = $sort++;
$item->save();
}
}
}
$groups = ArticleGroup::where('model_id', $model)
->get()
->groupBy(['article_type']);
foreach ($groups as $item) {
$sort = 0;
foreach ($item as $value) {
$value->sort = $sort++;
$value->save();
}
}
}
}
}