<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* ManteApp
*
* @ORM\Table(name="mante_app")
* @ORM\Entity
* @UniqueEntity("code")
*/
class ManteApp
{
/**
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
* @ORM\Column(type="integer")
*/
private $id;
/**
* Código interno de la app (venues, catering, av)
*
* @ORM\Column(type="string", length=50, unique=true)
* @Assert\NotBlank()
*/
private $code;
/**
* Nombre visible (ManteVenues, ManteCatering, ManteAV)
*
* @ORM\Column(type="string", length=100)
* @Assert\NotBlank()
*/
private $name;
/**
* Ruta al logo de la app, relativa a /public
*
* @ORM\Column(name="logo_path", type="string", length=255, nullable=true)
*/
private $logoPath;
/**
* Color principal (por ejemplo #F29521)
*
* @ORM\Column(name="primary_color", type="string", length=20, nullable=true)
*/
private $primaryColor;
/**
* Color secundario (opcional)
*
* @ORM\Column(name="secondary_color", type="string", length=20, nullable=true)
*/
private $secondaryColor;
/**
* Imagen de fondo específica del login (opcional)
*
* @ORM\Column(name="login_background", type="string", length=255, nullable=true)
*/
private $loginBackground;
/**
* Si la app está activa y se muestra en el portal inicial
*
* @ORM\Column(name="is_active", type="boolean")
*/
private $isActive = true;
public function getId()
{
return $this->id;
}
public function getCode(): ?string
{
return $this->code;
}
public function setCode(?string $code): self
{
$this->code = $code;
return $this;
}
public function getName(): ?string
{
return $this->name;
}
public function setName(?string $name): self
{
$this->name = $name;
return $this;
}
public function getLogoPath(): ?string
{
return $this->logoPath;
}
public function setLogoPath(?string $logoPath): self
{
$this->logoPath = $logoPath;
return $this;
}
public function getPrimaryColor(): ?string
{
return $this->primaryColor;
}
public function setPrimaryColor(?string $primaryColor): self
{
$this->primaryColor = $primaryColor;
return $this;
}
public function getSecondaryColor(): ?string
{
return $this->secondaryColor;
}
public function setSecondaryColor(?string $secondaryColor): self
{
$this->secondaryColor = $secondaryColor;
return $this;
}
public function getLoginBackground(): ?string
{
return $this->loginBackground;
}
public function setLoginBackground(?string $loginBackground): self
{
$this->loginBackground = $loginBackground;
return $this;
}
public function getIsActive(): bool
{
return (bool) $this->isActive;
}
public function setIsActive(bool $isActive): self
{
$this->isActive = $isActive;
return $this;
}
public function __toString()
{
return (string) $this->name ?: (string) $this->code;
}
}