Hizmet Yönetimi

Domain, hosting ve SSL hizmetlerinizi yönetin

{{ $metrics['total'] }}
Toplam Hizmet

Toplam Hizmet

{{ $metrics['total'] }}

Kayıtlı hizmet

Domain Sayısı

{{ $metrics['domains'] }}

Kayıtlı domain

Hosting Sayısı

{{ $metrics['hostings'] }}

Aktif hosting

Aylık Gelir

₺{{ number_format($monthlyRevenue, 0, ',', '.') }}

Tekrarlayan gelir

Hizmet Filtreleme

Yeni Hizmet
Aylık Gelir (MRR) Açıklaması

MRR (Monthly Recurring Revenue): Aylık Tekrarlanan Gelir. Hizmetlerin dönemlerine göre aylık ortalama gelirini gösterir. Örneğin: 100 TL yıllık hizmet = 100÷12 = 8.33 TL aylık gelir.

@if (session('status'))
{{ session('status') }}
@endif
@forelse ($services as $svc) @empty @endforelse
Hizmet Kod Tür Müşteri Sağlayıcı Dönem Ödeme Durum Vade İşlemler
@if($svc->service_type === 'domain') @elseif($svc->service_type === 'hosting') @else @endif
@if($svc->service_type === 'domain') {{ $svc->domain->domain_name ?? 'Domain' }} @elseif($svc->service_type === 'hosting') {{ $svc->hosting->plan_name ?? 'Hosting' }} @else {{ ucfirst($svc->service_type) }} @endif
₺{{ number_format($svc->sell_price, 0, ',', '.') }}
{{ $svc->service_code ?? 'N/A' }} @php // Site ayarlarından hizmet türlerini al $serviceTypesSetting = \App\Models\Setting::where('key', 'service_types')->first(); $serviceTypes = $serviceTypesSetting ? json_decode($serviceTypesSetting->value, true) : []; // Varsayılan türler (eğer ayar yoksa) if (empty($serviceTypes)) { $serviceTypes = [ ['id' => 'domain', 'name' => 'Domain', 'icon' => '🌐', 'color' => '#3B82F6'], ['id' => 'hosting', 'name' => 'Hosting', 'icon' => '🖥️', 'color' => '#10B981'], ['id' => 'ssl', 'name' => 'SSL', 'icon' => '🔒', 'color' => '#8B5CF6'], ['id' => 'email', 'name' => 'E-mail', 'icon' => '📧', 'color' => '#06B6D4'], ['id' => 'other', 'name' => 'Diğer', 'icon' => '📦', 'color' => '#6B7280'], ]; } // Mevcut türü bul $currentType = collect($serviceTypes)->firstWhere('id', $svc->service_type); if (!$currentType) { $currentType = ['id' => 'other', 'name' => 'Diğer', 'icon' => '📦', 'color' => '#6B7280']; } @endphp {{ $currentType['icon'] }} {{ $currentType['name'] }}
@if($svc->customer) {{ $svc->customer->name }}@if($svc->customer->surname) {{ ' ' . $svc->customer->surname }}@endif @else - @endif
{{ $svc->customer->email ?? '' }}
@if($svc->end_date) @php $daysRemaining = abs((int)$svc->days_remaining); $colorClass = $daysRemaining <= 7 ? 'text-red-600 dark:text-red-400' : ($daysRemaining <= 30 ? 'text-orange-600 dark:text-orange-400' : 'text-gray-600 dark:text-gray-400'); @endphp
{{ $daysRemaining }} gün kaldı
@endif
{{ $svc->provider->name ?? '-' }}
@switch($svc->cycle) @case('monthly') 📅Aylık @break @case('quarterly') 📅3 Aylık @break @case('semiannually') 📅6 Aylık @break @case('yearly') 📅Yıllık @break @case('biennially') 📅2 Yıllık @break @case('triennially') 📅3 Yıllık @break @default 📅{{ ucfirst($svc->cycle) }} @endswitch
{{ $svc->payment_type === 'upfront' ? '💰' : '📅' }} {{ $svc->payment_type === 'upfront' ? 'Peşin' : 'Taksit' }}
@php $statusColors = [ 'active' => 'background: linear-gradient(135deg, #10b981, #059669); box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);', 'suspended' => 'background: linear-gradient(135deg, #f59e0b, #d97706); box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);', 'cancelled' => 'background: linear-gradient(135deg, #f43f5e, #e11d48); box-shadow: 0 4px 12px rgba(244, 63, 94, 0.3);', 'expired' => 'background: linear-gradient(135deg, #64748b, #475569); box-shadow: 0 4px 12px rgba(100, 116, 139, 0.3);', ]; $colorStyle = $statusColors[$svc->status->value] ?? $statusColors['active']; @endphp
@if($svc->end_date)
{{ \Carbon\Carbon::parse($svc->end_date)->translatedFormat('d M Y') }}
@else - @endif
@php($isDemo = auth()->check() && strcasecmp(auth()->user()->email, config('app.demo_email')) === 0)
@csrf @method('DELETE')

Henüz hizmet bulunmuyor

İlk hizmetinizi ekleyerek başlayın

İlk Hizmeti Ekle
@if($services->hasPages())
{{ $services->links() }}
@endif