refactored category validation and removed unused module trait

This commit is contained in:
Cihan Şentürk 2026-03-10 22:15:51 +03:00
parent e6c67ef504
commit 6f50a4e685
2 changed files with 16 additions and 9 deletions

View File

@ -12,11 +12,10 @@ use App\Jobs\Setting\DeleteCategory;
use App\Jobs\Setting\UpdateCategory; use App\Jobs\Setting\UpdateCategory;
use App\Models\Setting\Category; use App\Models\Setting\Category;
use App\Traits\Categories as Helper; use App\Traits\Categories as Helper;
use App\Traits\Modules;
class Categories extends Controller class Categories extends Controller
{ {
use Helper, Modules; use Helper;
/** /**
* Display a listing of the resource. * Display a listing of the resource.
@ -85,13 +84,16 @@ class Categories extends Controller
$types = $this->getCategoryTypes(true, true); $types = $this->getCategoryTypes(true, true);
$categories = []; $categories = [];
$has_code = false;
foreach (config('type.category') as $type => $config) { foreach (config('type.category') as $type => $config) {
if (empty($config['hide']) || ! in_array('code', $config['hide'])) {
$has_code = true;
}
$categories[$type] = []; $categories[$type] = [];
} }
$has_code = $this->moduleIsEnabled('double-entry');
Category::enabled()->orderBy('name')->get()->each(function ($category) use (&$categories) { Category::enabled()->orderBy('name')->get()->each(function ($category) use (&$categories) {
$categories[$category->type][] = [ $categories[$category->type][] = [
'id' => $category->id, 'id' => $category->id,
@ -171,8 +173,14 @@ class Categories extends Controller
$edited_category_id = $category->id; $edited_category_id = $category->id;
$categories = []; $categories = [];
$has_code = false;
foreach (config('type.category') as $type => $config) { foreach (config('type.category') as $type => $config) {
if (empty($config['hide']) || ! in_array('code', $config['hide'])) {
$has_code = true;
break;
}
$categories[$type] = []; $categories[$type] = [];
} }
@ -205,8 +213,6 @@ class Categories extends Controller
$parent_categories = $categories[$category->type] ?? []; $parent_categories = $categories[$category->type] ?? [];
$has_code = $this->moduleIsEnabled('double-entry');
return view('settings.categories.edit', compact('category', 'types', 'type_disabled', 'categories', 'parent_categories', 'has_code')); return view('settings.categories.edit', compact('category', 'types', 'type_disabled', 'categories', 'parent_categories', 'has_code'));
} }

View File

@ -3,11 +3,9 @@
namespace App\Http\Requests\Setting; namespace App\Http\Requests\Setting;
use App\Abstracts\Http\FormRequest; use App\Abstracts\Http\FormRequest;
use App\Traits\Modules;
class Category extends FormRequest class Category extends FormRequest
{ {
use Modules;
/** /**
* Get the validation rules that apply to the request. * Get the validation rules that apply to the request.
* *
@ -17,7 +15,10 @@ class Category extends FormRequest
{ {
$types = collect(config('type.category'))->keys(); $types = collect(config('type.category'))->keys();
$code = $this->moduleIsEnabled('double-entry') ? 'required|string' : 'nullable|string'; $type = $this->request->get('type');
$config = config('type.category.' . $type, []);
$code_hidden = !empty($config['hide']) && in_array('code', $config['hide']);
$code = $code_hidden ? 'nullable|string' : 'required|string';
return [ return [
'name' => 'required|string', 'name' => 'required|string',