Mini İş İlanı & CV Yönetim Sistemi
Ne yapıyoruz? Kariyer.net benzeri ama çok daha basit bir iş bulma sistemi. Her tenant (site) kendi kariyer sayfasına sahip olabilecek.
# Portfolio modülünü Career olarak klonla
./module.sh
# Seçenek 1 → "Career" yaz
# Sonuç: Modules/Career/ oluşur
# - Job (Portfolio yerine) tablosu hazır
# - JobCategory (PortfolioCategory yerine) tablosu hazır
Modules/Career/
├── App/
│ ├── Models/
│ │ ├── Career.php ← Job ilanı (Portfolio'dan)
│ │ ├── CareerCategory.php ← Sektör kategorileri
│ │ ├── Resume.php ← YENİ: CV modeli
│ │ └── Application.php ← YENİ: Başvuru modeli
│ ├── Http/
│ │ ├── Controllers/
│ │ │ └── Front/
│ │ │ ├── CareerController.php ← İlan listeleme
│ │ │ ├── ResumeController.php ← CV yönetimi
│ │ │ └── ApplicationController.php ← Başvuru işlemleri
│ │ └── Livewire/
│ │ └── Admin/
│ │ ├── CareerComponent.php
│ │ ├── CareerManageComponent.php
│ │ ├── ResumeComponent.php ← Admin CV listesi
│ │ └── ApplicationComponent.php ← Admin başvuru yönetimi
│ └── Services/
│ ├── CareerService.php
│ ├── ResumeService.php ← YENİ
│ └── ApplicationService.php ← YENİ
├── database/
│ └── migrations/
│ └── tenant/
│ ├── xxx_create_careers_table.php
│ ├── xxx_create_career_categories_table.php
│ ├── xxx_create_resumes_table.php ← YENİ
│ └── xxx_create_applications_table.php ← YENİ
├── resources/views/
│ ├── front/
│ │ ├── index.blade.php ← İlan listesi
│ │ ├── show.blade.php ← İlan detay + başvur butonu
│ │ ├── my-applications.blade.php ← Başvurularım
│ │ └── resume/
│ │ ├── index.blade.php ← CV'lerim
│ │ ├── create.blade.php ← CV oluştur
│ │ └── edit.blade.php ← CV düzenle
│ └── admin/livewire/
│ ├── career-component.blade.php
│ ├── career-manage-component.blade.php
│ ├── resume-component.blade.php
│ └── application-component.blade.php
└── routes/
├── web.php ← Frontend routes
└── admin.php ← Admin routes
// Resume.php
public function getPhoneAttribute($value)
{
// Sadece CV sahibi veya başvurulan firma görebilir
$user = auth()->user();
if (!$user) return null;
// CV sahibi kendisi görür
if ($user->id === $this->user_id) return $value;
// İş veren sadece başvuru yapılmışsa görür
$hasApplication = Application::where('resume_id', $this->resume_id)
->whereHas('career', fn($q) => $q->where('user_id', $user->id))
->exists();
return $hasApplication ? $value : null;
}
private - Sadece ben görürüm, başvuru yaparken paylaşırımapplied_only - Sadece başvurduğum firmalar görür (Önerilen)public - Tüm firmalar CV havuzunda görebilir./module.sh → 1 → "Career"
Tenant olarak sadece kariyer sitesi çalıştırma (kariyer.example.com)
Mevcut bir tenant sitesine "Kariyer" sayfası ekleme