'int', 'beneficiary_id' => 'int', 'network_agent_id' => 'int', 'prescription_sheet_id' => 'int' ]; protected $dates = [ 'accident_date', 'pregnancy_start_at', 'pregnancy_end_at' ]; protected $fillable = [ 'health_care_sheet_id', 'insurance_id', 'beneficiary_id', 'network_agent_id', 'patient_lastname', 'patient_firstname', 'patient_situation', 'practitioner_lastname', 'practitioner_firstname', 'practitioner_provider_class_id', 'care_condition', 'accident_date', 'pregnancy_start_at', 'pregnancy_end_at', 'type', 'state', 'prescription_sheet_id', 'invoice_id', 'insurance_amount', 'insured_amount', 'insurance_consumed_at' ]; public function institution() { return $this->belongsTo(AgentPlus::class, 'network_agent_id', 'network_agent_id'); } public function insurance() { return $this->belongsTo(NhInsurance::class, 'insurance_id'); } public function beneficiary() { return $this->belongsTo(NhHavingRight::class, 'beneficiary_id'); } public function performances() { return $this->hasManyThrough(NhPerformance::class, NhHealthCareSheetsPerformance::class, 'sheet_id', 'id', 'id', 'performance_id'); } public function exams() { return $this->hasManyThrough(NhExam::class, NhHealthCareSheetsExam::class, 'sheet_id', 'id', 'id', 'exam_id'); } public function prescriptions() { return $this->hasManyThrough(NhMedicalPrescription::class, NhHealthCareSheetsPrescription::class, 'sheet_id', 'id', 'id', 'prescription_id'); } }