Files
unified-restaurant-original/backend/app/Models/Restaurante.php

64 lines
1.7 KiB
PHP

<?php
namespace App\Models;
use App\Models\CanalVenta;
use App\Models\Sector;
use App\Models\ZonaProduccion;
use App\Models\Categoria;
use App\Models\Proveedor;
use App\Models\Ingrediente;
use App\Models\Producto;
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');
}
public function proveedores() {
return $this->hasMany(Proveedor::class, 'restaurante_id');
}
public function ingredientes() {
return $this->hasMany(Ingrediente::class, 'restaurante_id');
}
public function productos() {
return $this->hasMany(Producto::class, 'restaurante_id');
}
}