Files
sam-manage/resources/views/dashboard/index.blade.php
hskwon 575e9df431 feat: Phase 4-1 테넌트 관리 백엔드 구현
- TenantService 생성 (CRUD, 통계, 복원/영구삭제)
- API Controller 구현 (HTMX 요청 감지, HTML/JSON 이중 응답)
- FormRequest 검증 (StoreTenantRequest, UpdateTenantRequest)
- Tenant 모델 확장 (17개 필드, 관계 설정, accessor)
- Department, Menu, Role 모델 복사 (admin → mng)
- Web Controller 수정 (index/create/edit 화면)
- MIGRATION_PLAN.md 작성 (HTMX + API 아키텍처)
2025-11-21 14:46:13 +09:00

71 lines
3.6 KiB
PHP

@extends('layouts.app')
@section('title', '대시보드')
@section('page-title', '대시보드')
@section('content')
<!-- Tenant Selector -->
@include('partials.tenant-selector')
<!-- Welcome Card -->
<div class="bg-white rounded-lg shadow overflow-hidden mt-6">
<div class="p-6">
<h2 class="text-2xl font-bold text-gray-900 mb-2">환영합니다!</h2>
<p class="text-gray-600">{{ auth()->user()->name ?? 'User' }}, MNG 관리자 패널에 로그인하셨습니다.</p>
<div class="my-6 border-t border-gray-200"></div>
<!-- Stats Grid -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4">
<div class="bg-gray-50 rounded-lg p-4 border border-gray-200">
<div class="text-sm font-medium text-gray-500 mb-1">사용자 이메일</div>
<div class="text-lg font-semibold text-gray-900">{{ auth()->user()->email }}</div>
</div>
<div class="bg-gray-50 rounded-lg p-4 border border-gray-200">
<div class="text-sm font-medium text-gray-500 mb-1">로그인 시간</div>
<div class="text-lg font-semibold text-gray-900">{{ now()->format('Y-m-d H:i:s') }}</div>
</div>
<div class="bg-gray-50 rounded-lg p-4 border border-gray-200">
<div class="text-sm font-medium text-gray-500 mb-1">상태</div>
<div class="text-lg font-semibold text-green-600">활성</div>
</div>
</div>
</div>
</div>
<!-- Quick Actions (예시) -->
<div class="mt-6 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
<div class="bg-white rounded-lg shadow p-6 hover:shadow-lg transition-shadow">
<h3 class="text-lg font-semibold text-gray-900 mb-2">사용자 관리</h3>
<p class="text-sm text-gray-600 mb-4">시스템 사용자를 관리합니다.</p>
<a href="#" class="inline-flex items-center text-primary hover:underline">
바로가기
<svg class="w-4 h-4 ml-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7" />
</svg>
</a>
</div>
<div class="bg-white rounded-lg shadow p-6 hover:shadow-lg transition-shadow">
<h3 class="text-lg font-semibold text-gray-900 mb-2">시스템 설정</h3>
<p class="text-sm text-gray-600 mb-4">시스템 환경을 설정합니다.</p>
<a href="#" class="inline-flex items-center text-primary hover:underline">
바로가기
<svg class="w-4 h-4 ml-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7" />
</svg>
</a>
</div>
<div class="bg-white rounded-lg shadow p-6 hover:shadow-lg transition-shadow">
<h3 class="text-lg font-semibold text-gray-900 mb-2">통계 리포트</h3>
<p class="text-sm text-gray-600 mb-4">시스템 통계를 확인합니다.</p>
<a href="#" class="inline-flex items-center text-primary hover:underline">
바로가기
<svg class="w-4 h-4 ml-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7" />
</svg>
</a>
</div>
</div>
@endsection