diff --git a/app/Http/Controllers/Api/Admin/ItemFieldController.php b/app/Http/Controllers/Api/Admin/ItemFieldController.php
index 8282c656..4116b200 100644
--- a/app/Http/Controllers/Api/Admin/ItemFieldController.php
+++ b/app/Http/Controllers/Api/Admin/ItemFieldController.php
@@ -909,4 +909,23 @@ private function suggestFieldType(string $type): string
default => 'textbox',
};
}
+
+ /**
+ * 삭제된 필드 일괄 영구 삭제 (휴지통 비우기)
+ */
+ public function purgeDeleted(): JsonResponse
+ {
+ $tenantId = session('selected_tenant_id');
+
+ if (! $tenantId || $tenantId === 'all') {
+ return response()->json([
+ 'success' => false,
+ 'message' => '테넌트를 선택해주세요.',
+ ], 400);
+ }
+
+ $result = $this->service->purgeDeletedFields($tenantId);
+
+ return response()->json($result);
+ }
}
diff --git a/app/Services/ItemFieldSeedingService.php b/app/Services/ItemFieldSeedingService.php
index fa5e7eba..e2997dbb 100644
--- a/app/Services/ItemFieldSeedingService.php
+++ b/app/Services/ItemFieldSeedingService.php
@@ -613,4 +613,36 @@ public function forceDeleteCustomField(int $tenantId, int $fieldId): array
'message' => '필드가 영구 삭제되었습니다.',
];
}
+
+ /**
+ * 삭제된 필드 일괄 영구 삭제 (휴지통 비우기)
+ */
+ public function purgeDeletedFields(int $tenantId): array
+ {
+ // 삭제된 필드(soft deleted) 조회
+ $deletedFields = ItemField::onlyTrashed()
+ ->where('tenant_id', $tenantId)
+ ->get();
+
+ if ($deletedFields->isEmpty()) {
+ return [
+ 'success' => true,
+ 'message' => '삭제된 필드가 없습니다.',
+ 'purged_count' => 0,
+ ];
+ }
+
+ $purgedCount = 0;
+
+ foreach ($deletedFields as $field) {
+ $field->forceDelete();
+ $purgedCount++;
+ }
+
+ return [
+ 'success' => true,
+ 'message' => "{$purgedCount}개의 삭제된 필드가 영구 삭제되었습니다.",
+ 'purged_count' => $purgedCount,
+ ];
+ }
}
diff --git a/resources/views/item-fields/index.blade.php b/resources/views/item-fields/index.blade.php
index 609c3238..8792c7e1 100644
--- a/resources/views/item-fields/index.blade.php
+++ b/resources/views/item-fields/index.blade.php
@@ -149,6 +149,15 @@ class="bg-gray-800 hover:bg-gray-900 text-white px-6 py-2 rounded-lg text-sm fon
검색
+
+
+