match_making/app/Models/permohonanProject.php
2025-01-02 09:09:28 +07:00

80 lines
2.0 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Carbon;
class permohonanProject extends Model
{
use HasFactory;
// Nama tabel yang digunakan
protected $table = 'permohonan_projects';
public $timestamps = true;
// Kolom-kolom yang dapat diisi massal
protected $fillable = [
'judul_project',
'bidang_sub_sektor_ekonomi_kreatif',
'latar_belakang',
'penerima_manfaat_pengguna_project',
'solusi_project',
'parameter_kesuksesan',
'rincian_kebutuhan',
'deskripsi_kolaborasi',
'kata_kunci',
'batas_terima_tawaran',
'tanggal_mulai',
'tanggal_berakhir',
'kategori',
'kontak',
'dokumen_pendukung',
'foto_proyek', // Menambahkan kolom foto proyek
'user_id', // Menambahkan kolom user ID
'checklist_komitmen',
'checklist_persetujuan',
];
// Menggunakan casting untuk kolom tanggal
protected $casts = [
'batas_terima_tawaran' => 'date', // Casting kolom tanggal
'tanggal_mulai' => 'date',
'tanggal_berakhir' => 'date',
'checklist_komitmen' => 'boolean',
'checklist_persetujuan' => 'boolean',
];
// Mendefinisikan hubungan dengan model User
public function user()
{
return $this->belongsTo(User::class);
}
public function pelatihan()
{
return $this->hasOne(permohonanPelatihan::class);
}
// Define the relationship with Pendanaan
public function pendanaan()
{
return $this->hasOne(permohonanPendanaan::class);
}
// Define the relationship with Riset
public function riset()
{
return $this->hasOne(permohonanRiset::class);
}
// Define the relationship with ProjectInvestorDetails
public function proyekInvestor()
{
return $this->hasOne(permohonanProyekInvestor::class);
}
}