49 lines
1.3 KiB
PHP
49 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use App\Models\CanalVenta;
|
|
use App\Models\Sector;
|
|
use App\Models\ZonaProduccion;
|
|
use App\Models\Categoria;
|
|
use App\Traits\UuidPrimaryKey;
|
|
use App\Exceptions\ModelNotFoundException;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
use Illuminate\Database\QueryException;
|
|
use Illuminate\Support\Facades\Log;
|
|
|
|
class Restaurante extends Model {
|
|
use UuidPrimaryKey, SoftDeletes;
|
|
|
|
protected $table = 'restaurantes';
|
|
|
|
protected $fillable = ['id', 'nombre'];
|
|
|
|
public static function findOrFail($id) {
|
|
$restaurante = Restaurante::find($id);
|
|
if(!$restaurante) throw new ModelNotFoundException("restaurant", $id);
|
|
return $restaurante;
|
|
}
|
|
|
|
public function usuarios() {
|
|
return $this->belongsToMany(Usuario::class, 'usuarios_restaurantes', 'restaurante_id', 'usuario_id');
|
|
}
|
|
|
|
public function canalesVenta() {
|
|
return $this->hasMany(CanalVenta::class, 'restaurante_id');
|
|
}
|
|
|
|
public function sectores() {
|
|
return $this->hasMany(Sector::class, 'restaurante_id');
|
|
}
|
|
|
|
public function zonasProduccion() {
|
|
return $this->hasMany(ZonaProduccion::class, 'restaurante_id');
|
|
}
|
|
|
|
public function categorias() {
|
|
return $this->hasMany(Categoria::class, 'restaurante_id');
|
|
}
|
|
}
|