$this->service->getInspections( $request->input('cycle', 'daily'), $request->input('period', now()->format('Y-m')), $request->input('production_line'), $request->input('equipment_id') ? (int) $request->input('equipment_id') : null ), __('message.fetched') ); } public function toggleDetail(ToggleInspectionDetailRequest $request): JsonResponse { $data = $request->validated(); return ApiResponse::handle( fn () => $this->service->toggleDetail( $data['equipment_id'], $data['template_item_id'], $data['check_date'], $data['cycle'] ?? 'daily' ), __('message.equipment.inspection_saved') ); } public function setResult(Request $request): JsonResponse { return ApiResponse::handle( fn () => $this->service->setResult( (int) $request->input('equipment_id'), (int) $request->input('template_item_id'), $request->input('check_date'), $request->input('cycle', 'daily'), $request->input('result') ), __('message.equipment.inspection_saved') ); } public function updateNotes(UpdateInspectionNotesRequest $request): JsonResponse { $data = $request->validated(); return ApiResponse::handle( fn () => $this->service->updateNotes( $data['equipment_id'], $data['year_month'], collect($data)->only(['overall_judgment', 'inspector_id', 'repair_note', 'issue_note'])->toArray(), $data['cycle'] ?? 'daily' ), __('message.equipment.inspection_saved') ); } public function resetInspection(Request $request): JsonResponse { return ApiResponse::handle( fn () => $this->service->resetInspection( (int) $request->input('equipment_id'), $request->input('cycle', 'daily'), $request->input('period') ), __('message.equipment.inspection_reset') ); } public function templates(int $id): JsonResponse { return ApiResponse::handle( fn () => $this->service->getActiveCycles($id), __('message.fetched') ); } public function storeTemplate(StoreInspectionTemplateRequest $request, int $id): JsonResponse { return ApiResponse::handle( fn () => $this->service->saveTemplate($id, $request->validated()), __('message.equipment.template_created') ); } public function updateTemplate(Request $request, int $templateId): JsonResponse { return ApiResponse::handle( fn () => $this->service->updateTemplate($templateId, $request->all()), __('message.updated') ); } public function deleteTemplate(int $templateId): JsonResponse { return ApiResponse::handle( fn () => $this->service->deleteTemplate($templateId), __('message.deleted') ); } public function copyTemplates(Request $request, int $id): JsonResponse { return ApiResponse::handle( fn () => $this->service->copyTemplates( $id, $request->input('source_cycle'), $request->input('target_cycles', []) ), __('message.equipment.template_copied') ); } }