. */ declare(strict_types=1); namespace App\Entity\Base; use App\Entity\Attachments\Attachment; use App\Entity\Parameters\AbstractParameter; use App\Entity\Contracts\CompanyInterface; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Serializer\Annotation\Groups; /** * This abstract class is used for companies like suppliers or manufacturers. * * @template AT of Attachment * @template PT of AbstractParameter * @extends AbstractPartsContainingDBElement */ #[ORM\MappedSuperclass] abstract class AbstractCompany extends AbstractPartsContainingDBElement implements CompanyInterface { use CompanyTrait; #[Groups(['company:read'])] protected ?\DateTimeImmutable $addedDate = null; #[Groups(['company:read'])] protected ?\DateTimeImmutable $lastModified = null; #[Groups(['company:read', 'company:write', 'import', 'full', 'extended'])] protected string $comment = ''; }