'int', 'travelperiod_length' => 'int', 'travelcountry_id' => 'int', 'travelagenda_id' => 'int', 'sf_guard_user_id' => 'int', 'is_closed' => 'bool', 'is_rebook' => 'bool', 'initialcontacttype_id' => 'int', 'searchengine_id' => 'int', 'status_id' => 'int', 'website_id' => 'int', 'travelcategory_id' => 'int', 'price' => 'float', 'pax' => 'int', 'participant_salutation_id' => 'int' ]; protected $dates = [ 'request_date', 'travelperiod_start', 'travelperiod_end', 'next_due_date', 'participant_birthdate' ]; protected $fillable = [ 'customer_id', 'request_date', 'travelperiod_start', 'travelperiod_end', 'travelperiod_length', 'travelcountry_id', 'travelagenda_id', 'remarks', 'sf_guard_user_id', 'is_closed', 'is_rebook', 'initialcontacttype_id', 'searchengine_id', 'searchengine_keywords', 'status_id', 'next_due_date', 'website_id', 'travelcategory_id', 'price', 'pax', 'participant_name', 'participant_firstname', 'participant_birthdate', 'participant_salutation_id' ]; public function updateNextDueDate($date = false){ if(!$date){ $carbon = Carbon::now(); $this->next_due_date = $carbon->modify('+ '.$this->status->handling_days.' days')->format("Y-m-d"); $this->save(); } } public function customer() { return $this->belongsTo(Customer::class); } public function initial_contact_type() { return $this->belongsTo(InitialContactType::class, 'initialcontacttype_id'); } public function salutation() { return $this->belongsTo(Salutation::class, 'participant_salutation_id'); } public function searchengine() { return $this->belongsTo(Searchengine::class); } public function sf_guard_user() { return $this->belongsTo(SfGuardUser::class); } public function status() { return $this->belongsTo(Status::class); } public function travel_agenda() { return $this->belongsTo(TravelAgenda::class, 'travelagenda_id'); } public function travel_category() { return $this->belongsTo(TravelCategory::class, 'travelcategory_id'); } //on crm public function travel_country_crm() { return $this->belongsTo('App\Models\Sym\TravelCountry', 'travelcountry_id', 'id'); } //on stern other DB public function travel_country() { return $this->belongsTo('App\Models\TravelCountry', 'travelcountry_id', 'crm_id'); } public function website() { return $this->belongsTo(Website::class); } public function bookings() { return $this->hasMany(Booking::class); } public function inquiries() { return $this->hasMany(Inquiry::class); } public function lead_participants() { return $this->hasMany(LeadParticipant::class); } public function offers() { return $this->hasMany(Offer::class); } public function status_histories() { return $this->hasMany(StatusHistory::class); } }