diff --git a/app/Http/Controllers/Api/V1/CommonController.php b/app/Http/Controllers/Api/V1/CommonController.php index 84ec27a..c71873c 100644 --- a/app/Http/Controllers/Api/V1/CommonController.php +++ b/app/Http/Controllers/Api/V1/CommonController.php @@ -36,13 +36,23 @@ public function index(Request $request, string $group) return ApiResponse::handle(function () use ($group) { $tenantId = app('tenant_id'); + // 테넌트 전용 데이터가 있으면 테넌트만, 없으면 글로벌 폴백 + $tenantCount = DB::table('common_codes') + ->where('code_group', $group) + ->where('is_active', true) + ->where('tenant_id', $tenantId) + ->count(); + return DB::table('common_codes') ->select(['id', 'code', 'name', 'description', 'sort_order', 'attributes']) ->where('code_group', $group) ->where('is_active', true) - ->where(function ($query) use ($tenantId) { - $query->where('tenant_id', $tenantId) - ->orWhereNull('tenant_id'); + ->where(function ($query) use ($tenantId, $tenantCount) { + if ($tenantCount > 0) { + $query->where('tenant_id', $tenantId); + } else { + $query->whereNull('tenant_id'); + } }) ->orderBy('sort_order') ->get();