diff --git a/app/Http/Controllers/BendingBaseController.php b/app/Http/Controllers/BendingBaseController.php index 1ccf7278..457e9ccd 100644 --- a/app/Http/Controllers/BendingBaseController.php +++ b/app/Http/Controllers/BendingBaseController.php @@ -168,6 +168,7 @@ public function store(Request $request) public function update(Request $request, int $id) { $validated = $request->validate([ + 'code' => 'required|string|max:20', 'name' => 'required|string|max:200', 'item_sep' => 'required|in:스크린,철재', 'item_bending' => 'required|string|max:50', @@ -188,7 +189,13 @@ public function update(Request $request, int $id) $response = $this->api()->put("/api/v1/bending-items/{$id}", $data); if (! $response->successful()) { - return back()->withErrors(['api' => $response->json('message', 'API 오류')])->withInput(); + $body = $response->json(); + $errorBag = ['api' => $body['message'] ?? 'API 오류']; + foreach ($body['errors'] ?? [] as $field => $msgs) { + $errorBag[$field] = is_array($msgs) ? implode(', ', $msgs) : $msgs; + } + + return back()->withErrors($errorBag)->withInput(); } $this->handleImageUpload($request, $id); diff --git a/resources/views/bending/base/form.blade.php b/resources/views/bending/base/form.blade.php index 96783c74..2e05ac53 100644 --- a/resources/views/bending/base/form.blade.php +++ b/resources/views/bending/base/form.blade.php @@ -92,10 +92,14 @@ @endforeach
순번은 저장 시 자동 채번
- @else - {{-- 수정/조회: 코드 읽기전용 --}} + @elseif($isView) + {{-- 조회: 읽기전용 --}} + @else + {{-- 수정: 편집 가능 (중복 검사 포함) --}} + @endif