fix: [tenant-console] 테넌트 콘솔 분리작업

- 라우트 파라미터 충돌 수정 (Layer 4 확장)
- TenantScope 글로벌 스코프가 테넌트 콘솔에서 올바른 tenant_id 사용하도록 수정
- 감사로그 상세 테넌트 콘솔 레이아웃 적용
- 테넌트 전환: 모달 → 컨텍스트 메뉴로 이동, 스타일 변경 (녹색+전환아이콘)
- 테넌트 전환 이벤트를 openTenantConsole 호출로 통일
- 사이드바 스타일 메인과 통일 + 리포트 주의사항 정리
This commit is contained in:
2026-03-12 18:58:34 +09:00
parent a077bd5710
commit 8da1702e47
71 changed files with 1179 additions and 429 deletions

View File

@@ -2,6 +2,7 @@
namespace App\Http\Controllers\System;
use App\Helpers\TenantHelper;
use App\Http\Controllers\Controller;
use App\Models\System\Holiday;
use Illuminate\Http\JsonResponse;
@@ -14,7 +15,7 @@ class HolidayController extends Controller
public function index(Request $request): View|Response
{
if ($request->header('HX-Request')) {
return response('', 200)->header('HX-Redirect', route('system.holidays.index'));
return response('', 200)->header('HX-Redirect', TenantHelper::route('system.holidays.index'));
}
return view('system.holidays.index');
@@ -22,7 +23,7 @@ public function index(Request $request): View|Response
public function list(Request $request): JsonResponse
{
$tenantId = session('selected_tenant_id', 1);
$tenantId = TenantHelper::getEffectiveTenantId(1);
$year = $request->input('year', now()->year);
$holidays = Holiday::forTenant($tenantId)
@@ -59,7 +60,7 @@ public function store(Request $request): JsonResponse
'memo' => 'nullable|string|max:500',
]);
$tenantId = session('selected_tenant_id', 1);
$tenantId = TenantHelper::getEffectiveTenantId(1);
// 중복 체크: 같은 날짜 + 같은 이름
$exists = Holiday::forTenant($tenantId)
@@ -94,7 +95,7 @@ public function store(Request $request): JsonResponse
public function update(Request $request, int $id): JsonResponse
{
$tenantId = session('selected_tenant_id', 1);
$tenantId = TenantHelper::getEffectiveTenantId(1);
$holiday = Holiday::forTenant($tenantId)->findOrFail($id);
$request->validate([
@@ -123,7 +124,7 @@ public function update(Request $request, int $id): JsonResponse
public function destroy(int $id): JsonResponse
{
$tenantId = session('selected_tenant_id', 1);
$tenantId = TenantHelper::getEffectiveTenantId(1);
$holiday = Holiday::forTenant($tenantId)->findOrFail($id);
$holiday->delete();
@@ -144,7 +145,7 @@ public function bulkStore(Request $request): JsonResponse
'holidays.*.isRecurring' => 'boolean',
]);
$tenantId = session('selected_tenant_id', 1);
$tenantId = TenantHelper::getEffectiveTenantId(1);
$count = 0;
$skipped = 0;
@@ -194,7 +195,7 @@ public function destroyByYear(Request $request): JsonResponse
'year' => 'required|integer|min:2000|max:2100',
]);
$tenantId = session('selected_tenant_id', 1);
$tenantId = TenantHelper::getEffectiveTenantId(1);
$year = $request->input('year');
$count = Holiday::forTenant($tenantId)