feat: [equipment] 점검항목 다른 주기로 복사 기능 추가
- 서비스: copyTemplatesToCycles 메서드 추가 (중복 항목 스킵) - 컨트롤러: copyTemplates API 엔드포인트 추가 - UI: 다른 주기에 복사 버튼 + 체크박스 모달
This commit is contained in:
@@ -164,6 +164,34 @@ public function updateTemplate(Request $request, int $templateId): JsonResponse
|
||||
}
|
||||
}
|
||||
|
||||
public function copyTemplates(Request $request, int $equipmentId): JsonResponse
|
||||
{
|
||||
$request->validate([
|
||||
'source_cycle' => 'required|string',
|
||||
'target_cycles' => 'required|array|min:1',
|
||||
'target_cycles.*' => 'required|string',
|
||||
]);
|
||||
|
||||
try {
|
||||
$result = $this->inspectionService->copyTemplatesToCycles(
|
||||
$equipmentId,
|
||||
$request->input('source_cycle'),
|
||||
$request->input('target_cycles')
|
||||
);
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'message' => "{$result['copied']}개 항목이 복사되었습니다.".($result['skipped'] > 0 ? " (중복 {$result['skipped']}개 건너뜀)" : ''),
|
||||
'data' => $result,
|
||||
]);
|
||||
} catch (\Exception $e) {
|
||||
return response()->json([
|
||||
'success' => false,
|
||||
'message' => $e->getMessage(),
|
||||
], 400);
|
||||
}
|
||||
}
|
||||
|
||||
public function deleteTemplate(int $templateId): JsonResponse
|
||||
{
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user