mein-sterntours/app/Models/BookingDraftItem.php
2018-11-17 02:03:59 +01:00

130 lines
5.2 KiB
PHP

<?php
namespace App\Models;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Model;
/**
* App\Models\BookingDraftItem
*
* @property int $id
* @property int $booking_id
* @property int $travel_program_id
* @property int|null $travel_class_id
* @property int|null $draft_item_id
* @property int|null $draft_type_id
* @property string|null $request_date
* @property int|null $days_start
* @property int|null $days_duration
* @property string|null $start_date
* @property string|null $end_date
* @property string|null $service
* @property float|null $price_adult
* @property int|null $adult
* @property float|null $price_children
* @property int|null $children
* @property int|null $pos
* @property int $in_pdf
* @property int $status
* @property int $comfort
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \App\Models\DraftItem|null $draft_item
* @property-read \App\Models\DraftType|null $draft_type
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereAdult($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereBookingId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereChildren($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereComfort($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereDaysDuration($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereDaysStart($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereDraftItemId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereDraftTypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereEndDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereInPdf($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem wherePos($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem wherePriceAdult($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem wherePriceChildren($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereRequestDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereService($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereStartDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereStatus($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereTravelClassId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereTravelProgramId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\BookingDraftItem whereUpdatedAt($value)
* @mixin \Eloquent
*/
class BookingDraftItem extends Model
{
protected $connection = 'mysql';
protected $table = 'booking_draft_items';
protected $fillable = [
'booking_id',
'travel_program_id',
'travel_class_id',
'draft_item_id',
'draft_type_id',
'request_date',
'days_start',
'days_duration',
'start_date',
'end_date',
'service',
'price_adult',
'adult',
'price_children',
'children',
'pos',
'in_pdf',
'comfort',
];
/* public function booking()
{
return $this->belongsTo('App\Models\Booking', 'booking_id');
}
*/
public function booking()
{
return $this->belongsTo('App\Models\Booking', 'booking_id');
}
public function draft_item()
{
return $this->belongsTo('App\Models\DraftItem', 'draft_item_id');
}
public function draft_type()
{
return $this->belongsTo('App\Models\DraftType', 'draft_type_id');
}
public function getStartDateAttribute(){
return isset($this->attributes['start_date']) ? Carbon::parse($this->attributes['start_date'])->format("d.m.Y") : '';
}
public function getEndDateAttribute(){
return isset($this->attributes['end_date']) ? Carbon::parse($this->attributes['end_date'])->format("d.m.Y") : '';
}
public function setStartDateAttribute($value)
{
if (!$value) {
$this->attributes['start_date'] = null;
} else {
$this->attributes['start_date'] = (new Carbon($value))->format('Y-m-d');
}
}
public function setEndDateAttribute($value){
if (!$value) {
$this->attributes['end_date'] = null;
} else {
$this->attributes['end_date'] = (new Carbon($value))->format('Y-m-d');
}
}
}