1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
<?php
declare(strict_types=1);
use Doctrine\ORM\Events;
use Doctrine\ORM\Mapping\ClassMetadata;
$metadata->setInheritanceType(ClassMetadata::INHERITANCE_TYPE_JOINED);
$metadata->setTableName('company_contracts');
$metadata->setDiscriminatorColumn(
[
'name' => 'discr',
'type' => 'string',
]
);
$metadata->mapField(
[
'id' => true,
'name' => 'id',
'fieldName' => 'id',
]
);
$metadata->mapField(
[
'type' => 'boolean',
'name' => 'completed',
'fieldName' => 'completed',
]
);
$metadata->setDiscriminatorMap(
[
'fix' => 'CompanyFixContract',
'flexible' => 'CompanyFlexContract',
'flexultra' => 'CompanyFlexUltraContract',
]
);
$metadata->addEntityListener(Events::postPersist, 'CompanyContractListener', 'postPersistHandler');
$metadata->addEntityListener(Events::prePersist, 'CompanyContractListener', 'prePersistHandler');
$metadata->addEntityListener(Events::postUpdate, 'CompanyContractListener', 'postUpdateHandler');
$metadata->addEntityListener(Events::preUpdate, 'CompanyContractListener', 'preUpdateHandler');
$metadata->addEntityListener(Events::postRemove, 'CompanyContractListener', 'postRemoveHandler');
$metadata->addEntityListener(Events::preRemove, 'CompanyContractListener', 'preRemoveHandler');
$metadata->addEntityListener(Events::preFlush, 'CompanyContractListener', 'preFlushHandler');
$metadata->addEntityListener(Events::postLoad, 'CompanyContractListener', 'postLoadHandler');
|