Added the functions to get the models connected with the booking.

This commit is contained in:
Lukas Halbritter
2018-09-28 22:45:32 +02:00
parent e29381c0ec
commit 3b09645b5b
+39 -2
View File
@@ -8,11 +8,48 @@ class Booking extends Model
{ {
public function amount() public function amount()
{ {
return $this->hasMany('App\SubBooking')->amount; return $this->subBookings()->sum('amount');
} }
public function signedAmount() public function signedAmount()
{ {
return $this->amount; return $this->subBookings()->withSignedAmount()->get()
->sum('signedAmount');
}
public function subBookings()
{
return $this->hasMany('App\SubBooking');
}
/**
* Return true, if the booking consists only of one sub-booking.
* NOTICE: The book instance has to be loaded with the
* ->withCount('subBookings') method to be able to access the comments
* count.
*
* @return boolean
*/
public function isSimple()
{
return $this->sub_bookings_count === 1;
}
public function project()
{
if ($this->isSimple()) {
return $this->subBookings()->first()->project();
}
return null;
}
public function accountType()
{
if ($this->isSimple()) {
return $this->subBookings()->first()->accountType();
}
return null;
} }
} }