mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
Fix pipeline
This commit is contained in:
parent
e339623e2d
commit
8f34c841f3
@ -107,7 +107,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
|
||||
private ?Person $person = null;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\Person>
|
||||
* @var Collection<int, Person>
|
||||
*/
|
||||
#[Groups(['read', 'docgen:read'])]
|
||||
#[ORM\ManyToMany(targetEntity: Person::class)]
|
||||
@ -132,7 +132,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac
|
||||
private string $sentReceived = '';
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\SocialWork\SocialAction>
|
||||
* @var Collection<int, SocialAction>
|
||||
*/
|
||||
#[Groups(['read', 'docgen:read'])]
|
||||
#[ORM\ManyToMany(targetEntity: SocialAction::class)]
|
||||
|
@ -103,7 +103,7 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente
|
||||
private int $dateTimeVersion = 0;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\CalendarBundle\Entity\CalendarDoc>
|
||||
* @var Collection<int, CalendarDoc>
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'calendar', targetEntity: CalendarDoc::class, orphanRemoval: true)]
|
||||
private Collection $documents;
|
||||
@ -120,7 +120,7 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente
|
||||
private ?int $id = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\CalendarBundle\Entity\Invite>&Selectable
|
||||
* @var Collection<int, Invite>&Selectable
|
||||
*/
|
||||
#[Serializer\Groups(['read', 'docgen:read'])]
|
||||
#[ORM\OneToMany(mappedBy: 'calendar', targetEntity: Invite::class, cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)]
|
||||
|
@ -17,7 +17,7 @@ use Chill\DocGeneratorBundle\Entity\DocGeneratorTemplate;
|
||||
final readonly class ContextManager implements ContextManagerInterface
|
||||
{
|
||||
/**
|
||||
* @param \Chill\DocGeneratorBundle\Context\DocGeneratorContextInterface[] $contexts
|
||||
* @param DocGeneratorContextInterface[] $contexts
|
||||
*/
|
||||
public function __construct(private iterable $contexts) {}
|
||||
|
||||
|
@ -272,7 +272,7 @@ class StoredObject implements Document, TrackCreationInterface
|
||||
*
|
||||
* @param 'ASC'|'DESC' $order the sorting order, default is Order::Ascending
|
||||
*
|
||||
* @return readableCollection&Selectable The ordered collection of versions
|
||||
* @return ReadableCollection&Selectable The ordered collection of versions
|
||||
*/
|
||||
public function getVersionsOrdered(string $order = 'ASC'): ReadableCollection&Selectable
|
||||
{
|
||||
|
@ -73,7 +73,7 @@ class CV implements \Stringable
|
||||
/**
|
||||
* @Assert\Valid(traverse=true)
|
||||
*
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\JobBundle\Entity\CV\Formation>
|
||||
* @var Collection<int, CV\Formation>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)]
|
||||
// #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])]
|
||||
@ -82,7 +82,7 @@ class CV implements \Stringable
|
||||
/**
|
||||
* @Assert\Valid(traverse=true)
|
||||
*
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\JobBundle\Entity\CV\Experience>
|
||||
* @var Collection<int, CV\Experience>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)]
|
||||
// #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])]
|
||||
|
@ -45,7 +45,7 @@ class ProjetProfessionnel implements \Stringable
|
||||
private ?\DateTimeInterface $reportDate = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\JobBundle\Entity\Rome\Appellation>
|
||||
* @var Collection<int, Appellation>
|
||||
*/
|
||||
#[ORM\JoinTable(name: 'chill_job.projetprofessionnel_souhait')]
|
||||
#[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])]
|
||||
@ -94,7 +94,7 @@ class ProjetProfessionnel implements \Stringable
|
||||
private ?string $enCoursConstruction = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\JobBundle\Entity\Rome\Appellation>
|
||||
* @var Collection<int, Appellation>
|
||||
*/
|
||||
#[ORM\JoinTable(name: 'chill_job.projetprofessionnel_valide')]
|
||||
#[ORM\ManyToMany(targetEntity: Appellation::class)]
|
||||
|
@ -33,7 +33,7 @@ class Metier
|
||||
private ?string $code = '';
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\JobBundle\Entity\Rome\Appellation>
|
||||
* @var \Doctrine\Common\Collections\Collection<int, Appellation>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: Appellation::class, mappedBy: 'metier')]
|
||||
private \Doctrine\Common\Collections\Collection $appellations;
|
||||
|
@ -17,15 +17,14 @@ use Symfony\Component\Console\Input\InputInterface;
|
||||
use Symfony\Component\Console\Input\InputOption;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
use Symfony\Component\HttpKernel\KernelInterface;
|
||||
use Symfony\Contracts\Translation\TranslatorInterface;
|
||||
use Symfony\Component\Translation\Translator;
|
||||
use Symfony\Component\Console\Helper\Table;
|
||||
|
||||
|
||||
class DetectTranslationDuplicatesCommand extends Command
|
||||
{
|
||||
protected static $defaultName = 'chill:detect-duplicate-translations';
|
||||
|
||||
public function __construct(private readonly TranslatorInterface $translator, private readonly KernelInterface $kernel)
|
||||
public function __construct(private readonly Translator $translator, private readonly KernelInterface $kernel)
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
@ -50,7 +49,7 @@ class DetectTranslationDuplicatesCommand extends Command
|
||||
$bundlePath = $bundle->getPath();
|
||||
$translationDir = $this->getTranslationDirectory($bundle->getName(), $bundlePath);
|
||||
|
||||
if ($translationDir && is_dir($translationDir)) {
|
||||
if (null !== $translationDir && is_dir($translationDir)) {
|
||||
foreach (glob($translationDir.'/*.yaml') as $file) {
|
||||
$this->translator->addResource('yaml', $file, $locale);
|
||||
}
|
||||
@ -64,45 +63,45 @@ class DetectTranslationDuplicatesCommand extends Command
|
||||
// Iterate through each domain in the catalogue
|
||||
foreach ($catalogue->all() as $domain => $translations) {
|
||||
foreach ($translations as $key => $value) {
|
||||
if ($this->isExcludedNamespace("$domain.$key", $excludedNamespaces)) {
|
||||
if ($this->isExcludedNamespace("{$domain}.{$key}", $excludedNamespaces)) {
|
||||
continue;
|
||||
}
|
||||
if (is_array($value)) {
|
||||
$this->flattenTranslation($value, "$domain.$key", $allTranslations);
|
||||
$this->flattenTranslation($value, "{$domain}.{$key}", $allTranslations);
|
||||
} else {
|
||||
if (!isset($allTranslations[$value])) {
|
||||
$allTranslations[$value] = [];
|
||||
}
|
||||
$allTranslations[$value][] = "$domain.$key";
|
||||
$allTranslations[$value][] = "{$domain}.{$key}";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Detect values that appear in more than one key
|
||||
$duplicates = array_filter($allTranslations, function ($keys) {
|
||||
return count($keys) > 1;
|
||||
});
|
||||
$duplicates = array_filter($allTranslations, fn($keys) => count($keys) > 1);
|
||||
|
||||
$duplicatesHash = $this->generateDuplicatesHash($duplicates);
|
||||
|
||||
if ($expectedHash) {
|
||||
if ('' !== $expectedHash) {
|
||||
if ($duplicatesHash === $expectedHash) {
|
||||
$output->writeln('<info>Translations are consistent with the expected hash.</info>');
|
||||
|
||||
$output->writeln("<info>Current duplicate hash: $duplicatesHash</info>");
|
||||
$output->writeln("<info>Current duplicate hash: {$duplicatesHash}</info>");
|
||||
|
||||
return Command::SUCCESS;
|
||||
} else {
|
||||
}
|
||||
$output->writeln('<error>Translation hash mismatch! Potential duplicate added.</error>');
|
||||
$this->renderDuplicatesTable($output, $duplicates, $locale);
|
||||
|
||||
$output->writeln("<info>Current duplicate hash: $duplicatesHash</info>");
|
||||
$output->writeln("<info>Current duplicate hash: {$duplicatesHash}</info>");
|
||||
|
||||
return Command::FAILURE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
$this->renderDuplicatesTable($output, $duplicates, $locale);
|
||||
|
||||
$output->writeln("<info>Current duplicate hash: $duplicatesHash</info>");
|
||||
$output->writeln("<info>Current duplicate hash: {$duplicatesHash}</info>");
|
||||
|
||||
return Command::SUCCESS;
|
||||
}
|
||||
@ -110,7 +109,7 @@ class DetectTranslationDuplicatesCommand extends Command
|
||||
private function flattenTranslation(array $translations, string $prefix, array &$allTranslations): void
|
||||
{
|
||||
foreach ($translations as $key => $value) {
|
||||
$fullKey = "$prefix.$key";
|
||||
$fullKey = "{$prefix}.{$key}";
|
||||
if (is_array($value)) {
|
||||
$this->flattenTranslation($value, $fullKey, $allTranslations);
|
||||
} else {
|
||||
@ -126,7 +125,7 @@ class DetectTranslationDuplicatesCommand extends Command
|
||||
{
|
||||
$translationDir = $bundlePath.'/translations';
|
||||
|
||||
if ($bundleName === 'ChillAsideActivityBundle') {
|
||||
if ('ChillAsideActivityBundle' === $bundleName) {
|
||||
$translationDir = $bundlePath.'/src/translations';
|
||||
}
|
||||
|
||||
@ -141,10 +140,11 @@ class DetectTranslationDuplicatesCommand extends Command
|
||||
private function isExcludedNamespace(string $key, array $excludedNamespaces): bool
|
||||
{
|
||||
foreach ($excludedNamespaces as $namespace) {
|
||||
if (str_starts_with($key, $namespace)) {
|
||||
if (str_starts_with($key, (string) $namespace)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -160,12 +160,13 @@ class DetectTranslationDuplicatesCommand extends Command
|
||||
|
||||
private function renderDuplicatesTable(OutputInterface $output, array $duplicates, string $locale): void
|
||||
{
|
||||
if (empty($duplicates)) {
|
||||
$output->writeln("<info>No duplicate translations found for locale '$locale'.</info>");
|
||||
if ([] === $duplicates) {
|
||||
$output->writeln("<info>No duplicate translations found for locale '{$locale}'.</info>");
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
$output->writeln("<comment>Duplicate translations found for locale '$locale':</comment>");
|
||||
$output->writeln("<comment>Duplicate translations found for locale '{$locale}':</comment>");
|
||||
$table = new Table($output);
|
||||
$table->setHeaders(['Translation', 'Used in Keys']);
|
||||
|
||||
|
@ -64,7 +64,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter
|
||||
private bool $enabled = true;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\MainBundle\Entity\GroupCenter>
|
||||
* @var Collection<int, GroupCenter>
|
||||
*/
|
||||
#[ORM\ManyToMany(targetEntity: GroupCenter::class, inversedBy: 'users')]
|
||||
#[ORM\Cache(usage: 'NONSTRICT_READ_WRITE')]
|
||||
@ -83,7 +83,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter
|
||||
private ?Location $mainLocation = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\MainBundle\Entity\User\UserScopeHistory>&Selectable
|
||||
* @var Collection<int, UserScopeHistory>&Selectable
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'user', targetEntity: UserScopeHistory::class, cascade: ['persist', 'remove'], orphanRemoval: true)]
|
||||
private Collection&Selectable $scopeHistories;
|
||||
@ -98,7 +98,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter
|
||||
private ?string $salt = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\MainBundle\Entity\User\UserJobHistory>&Selectable
|
||||
* @var Collection<int, UserJobHistory>&Selectable
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'user', targetEntity: UserJobHistory::class, cascade: ['persist', 'remove'], orphanRemoval: true)]
|
||||
private Collection&Selectable $jobHistories;
|
||||
|
@ -36,7 +36,7 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface
|
||||
use TrackUpdateTrait;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\MainBundle\Entity\Workflow\EntityWorkflowComment>
|
||||
* @var Collection<int, EntityWorkflowComment>
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'entityWorkflow', targetEntity: EntityWorkflowComment::class, orphanRemoval: true)]
|
||||
private Collection $comments;
|
||||
|
@ -107,7 +107,7 @@ class EntityWorkflowStep
|
||||
private ?string $transitionByEmail = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\MainBundle\Entity\Workflow\EntityWorkflowStepHold>
|
||||
* @var Collection<int, EntityWorkflowStepHold>
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'step', targetEntity: EntityWorkflowStepHold::class)]
|
||||
private Collection $holdsOnStep;
|
||||
|
@ -261,7 +261,7 @@ final readonly class UserRepository implements UserRepositoryInterface
|
||||
* allows to make a first search amongst users based on role and center
|
||||
* and, then filter those users having some flags.
|
||||
*
|
||||
* @param \Chill\MainBundle\Entity\User[] $amongstUsers
|
||||
* @param User[] $amongstUsers
|
||||
*/
|
||||
public function findUsersHavingFlags($flag, array $amongstUsers = []): array
|
||||
{
|
||||
|
@ -71,7 +71,7 @@ interface UserRepositoryInterface extends ObjectRepository
|
||||
* allows to make a first search amongst users based on role and center
|
||||
* and, then filter those users having some flags.
|
||||
*
|
||||
* @param \Chill\MainBundle\Entity\User[] $amongstUsers
|
||||
* @param User[] $amongstUsers
|
||||
*/
|
||||
public function findUsersHavingFlags(mixed $flag, array $amongstUsers = []): array;
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ namespace Chill\MainBundle\Security\Resolver;
|
||||
final readonly class CenterResolverDispatcher implements CenterResolverDispatcherInterface
|
||||
{
|
||||
/**
|
||||
* @param \Chill\MainBundle\Security\Resolver\CenterResolverInterface[] $resolvers
|
||||
* @param CenterResolverInterface[] $resolvers
|
||||
*/
|
||||
public function __construct(private iterable $resolvers = []) {}
|
||||
|
||||
|
@ -16,7 +16,7 @@ use Chill\MainBundle\Entity\Center;
|
||||
final readonly class CenterResolverManager implements CenterResolverManagerInterface
|
||||
{
|
||||
/**
|
||||
* @param \Chill\MainBundle\Security\Resolver\CenterResolverInterface[] $resolvers
|
||||
* @param CenterResolverInterface[] $resolvers
|
||||
*/
|
||||
public function __construct(private iterable $resolvers = [])
|
||||
{
|
||||
|
@ -17,7 +17,7 @@ use Doctrine\Common\Collections\Collection;
|
||||
final readonly class ScopeResolverDispatcher
|
||||
{
|
||||
/**
|
||||
* @param \Chill\MainBundle\Security\Resolver\ScopeResolverInterface[] $resolvers
|
||||
* @param ScopeResolverInterface[] $resolvers
|
||||
*/
|
||||
public function __construct(private iterable $resolvers) {}
|
||||
|
||||
|
@ -30,7 +30,7 @@ use Symfony\Component\Workflow\Registry;
|
||||
class EntityWorkflowManager
|
||||
{
|
||||
/**
|
||||
* @param \Chill\MainBundle\Workflow\EntityWorkflowHandlerInterface[] $handlers
|
||||
* @param EntityWorkflowHandlerInterface[] $handlers
|
||||
*/
|
||||
public function __construct(private readonly iterable $handlers, private readonly Registry $registry) {}
|
||||
|
||||
|
@ -114,3 +114,6 @@ services:
|
||||
Chill\MainBundle\Service\EntityInfo\ViewEntityInfoManager:
|
||||
arguments:
|
||||
$vienEntityInfoProviders: !tagged_iterator chill_main.entity_info_provider
|
||||
|
||||
Symfony\Component\Translation\Translator:
|
||||
alias: translator.default
|
||||
|
@ -135,7 +135,7 @@ class AccompanyingPeriod implements
|
||||
private ?Location $administrativeLocation = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\CalendarBundle\Entity\Calendar>&Selectable
|
||||
* @var Collection<int, Calendar>&Selectable
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'accompanyingPeriod', targetEntity: Calendar::class)]
|
||||
private Collection&Selectable $calendars;
|
||||
@ -153,7 +153,7 @@ class AccompanyingPeriod implements
|
||||
private ?ClosingMotive $closingMotive = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\PersonBundle\Entity\AccompanyingPeriod\Comment>
|
||||
* @var Collection<int, Comment>
|
||||
*/
|
||||
#[Assert\NotBlank(groups: [AccompanyingPeriod::STEP_DRAFT])]
|
||||
#[ORM\OneToMany(mappedBy: 'accompanyingPeriod', targetEntity: Comment::class, cascade: ['persist', 'remove'], orphanRemoval: true)]
|
||||
|
@ -112,7 +112,7 @@ class AccompanyingPeriodWork implements AccompanyingPeriodLinkedWithSocialIssues
|
||||
private Collection $referrersHistory;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\SocialWork\Result>
|
||||
* @var Collection<int, Result>
|
||||
*/
|
||||
#[Serializer\Groups(['read', 'docgen:read', 'accompanying_period_work:edit'])]
|
||||
#[ORM\ManyToMany(targetEntity: Result::class, inversedBy: 'accompanyingPeriodWorks')]
|
||||
|
@ -36,7 +36,7 @@ class Household implements HasCentersInterface
|
||||
/**
|
||||
* Addresses.
|
||||
*
|
||||
* @var Collection<int, \Chill\MainBundle\Entity\Address>
|
||||
* @var Collection<int, Address>
|
||||
*/
|
||||
#[Serializer\Groups(['write'])]
|
||||
#[ORM\ManyToMany(targetEntity: Address::class, cascade: ['persist', 'remove', 'merge', 'detach'])]
|
||||
@ -48,7 +48,7 @@ class Household implements HasCentersInterface
|
||||
private CommentEmbeddable $commentMembers;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\PersonBundle\Entity\Household\HouseholdComposition>&Selectable
|
||||
* @var Collection<int, HouseholdComposition>&Selectable
|
||||
*/
|
||||
#[Assert\Valid(groups: ['household_composition'], traverse: true)]
|
||||
#[ORM\OneToMany(mappedBy: 'household', targetEntity: HouseholdComposition::class, cascade: ['persist'], orphanRemoval: true)]
|
||||
|
@ -83,7 +83,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
/**
|
||||
* The person's accompanying periods (when the person was accompanied by the center).
|
||||
*
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\AccompanyingPeriodParticipation>
|
||||
* @var Collection<int, AccompanyingPeriodParticipation>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: AccompanyingPeriodParticipation::class, mappedBy: 'person', cascade: ['persist', 'remove', 'merge', 'detach'])]
|
||||
#[ORM\OrderBy(['startDate' => Criteria::DESC])]
|
||||
@ -92,7 +92,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
/**
|
||||
* The accompanying period requested by the Person.
|
||||
*
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\AccompanyingPeriod>
|
||||
* @var Collection<int, AccompanyingPeriod>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: AccompanyingPeriod::class, mappedBy: 'requestorPerson')]
|
||||
private Collection $accompanyingPeriodRequested;
|
||||
@ -100,7 +100,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
/**
|
||||
* Addresses.
|
||||
*
|
||||
* @var Collection<int, \Chill\MainBundle\Entity\Address>
|
||||
* @var Collection<int, Address>
|
||||
*/
|
||||
#[ORM\ManyToMany(targetEntity: Address::class, cascade: ['persist', 'remove', 'merge', 'detach'])]
|
||||
#[ORM\JoinTable(name: 'chill_person_persons_to_addresses')]
|
||||
@ -108,7 +108,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
private Collection $addresses;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\PersonAltName>
|
||||
* @var Collection<int, PersonAltName>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: PersonAltName::class, mappedBy: 'person', cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)]
|
||||
private Collection $altNames;
|
||||
@ -121,7 +121,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
private ?\DateTime $birthdate = null;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\BudgetBundle\Entity\Charge>
|
||||
* @var Collection<int, Charge>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: Charge::class, mappedBy: 'person')]
|
||||
private Collection $budgetCharges;
|
||||
@ -150,7 +150,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
private ?PersonCenterCurrent $centerCurrent = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\PersonBundle\Entity\Person\PersonCenterHistory>&Selectable
|
||||
* @var Collection<int, PersonCenterHistory>&Selectable
|
||||
*/
|
||||
#[ORM\OneToMany(mappedBy: 'person', targetEntity: PersonCenterHistory::class, cascade: ['persist', 'remove'])]
|
||||
private Collection&Selectable $centerHistory;
|
||||
@ -252,13 +252,13 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
/**
|
||||
* Read-only field, computed by the database.
|
||||
*
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\Household\PersonHouseholdAddress>
|
||||
* @var Collection<int, PersonHouseholdAddress>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: PersonHouseholdAddress::class, mappedBy: 'person')]
|
||||
private Collection $householdAddresses;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\Household\HouseholdMember>
|
||||
* @var Collection<int, HouseholdMember>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: HouseholdMember::class, mappedBy: 'person')]
|
||||
private Collection $householdParticipations;
|
||||
@ -325,14 +325,14 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
private ?int $numberOfChildren = null;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\PersonPhone>
|
||||
* @var Collection<int, PersonPhone>
|
||||
*/
|
||||
#[Assert\Valid(traverse: true)]
|
||||
#[ORM\OneToMany(targetEntity: PersonPhone::class, mappedBy: 'person', cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)]
|
||||
private Collection $otherPhoneNumbers;
|
||||
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\AccompanyingPeriod>
|
||||
* @var Collection<int, AccompanyingPeriod>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: AccompanyingPeriod::class, mappedBy: 'personLocation')]
|
||||
private Collection $periodLocatedOn;
|
||||
@ -356,7 +356,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI
|
||||
#[ORM\Column(type: \Doctrine\DBAL\Types\Types::BOOLEAN)]
|
||||
private bool $proxyAccompanyingPeriodOpenState = false; // TO-DELETE ?
|
||||
/**
|
||||
* @var Collection<int, \Chill\PersonBundle\Entity\Person\PersonResource>
|
||||
* @var Collection<int, PersonResource>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: PersonResource::class, mappedBy: 'personOwner')]
|
||||
private Collection $resources;
|
||||
|
@ -39,7 +39,7 @@ class Evaluation
|
||||
private ?\DateInterval $notificationDelay = null;
|
||||
|
||||
/**
|
||||
* @var \Doctrine\Common\Collections\Collection<int, \Chill\PersonBundle\Entity\SocialWork\SocialAction>
|
||||
* @var Collection<int, SocialAction>
|
||||
*/
|
||||
#[ORM\ManyToMany(targetEntity: SocialAction::class, mappedBy: 'evaluations')]
|
||||
private Collection $socialActions;
|
||||
|
Loading…
x
Reference in New Issue
Block a user