mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-13 13:54:23 +00:00
add list for addresses
This commit is contained in:
parent
a133f56dce
commit
ff5b0bc258
@ -2,10 +2,12 @@
|
|||||||
|
|
||||||
namespace Chill\PersonBundle\Entity\Household;
|
namespace Chill\PersonBundle\Entity\Household;
|
||||||
|
|
||||||
|
use Doctrine\Common\Collections\ArrayCollection;
|
||||||
use Doctrine\ORM\Mapping as ORM;
|
use Doctrine\ORM\Mapping as ORM;
|
||||||
use Doctrine\Common\Collections\Collection;
|
use Doctrine\Common\Collections\Collection;
|
||||||
use Chill\MainBundle\Entity\Address;
|
|
||||||
use Symfony\Component\Serializer\Annotation as Serializer;
|
use Symfony\Component\Serializer\Annotation as Serializer;
|
||||||
|
use Chill\MainBundle\Entity\Address;
|
||||||
|
use Chill\PersonBundle\Entity\Household\HouseholdMember;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ORM\Entity
|
* @ORM\Entity
|
||||||
@ -24,16 +26,10 @@ class Household
|
|||||||
* @ORM\Column(type="integer")
|
* @ORM\Column(type="integer")
|
||||||
* @Serializer\Groups({"read"})
|
* @Serializer\Groups({"read"})
|
||||||
*/
|
*/
|
||||||
private $id;
|
private ?int $id;
|
||||||
|
|
||||||
public function getId(): ?int
|
|
||||||
{
|
|
||||||
return $this->id;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Addresses
|
* Addresses
|
||||||
* @var Collection
|
|
||||||
*
|
*
|
||||||
* @ORM\ManyToMany(
|
* @ORM\ManyToMany(
|
||||||
* targetEntity="Chill\MainBundle\Entity\Address",
|
* targetEntity="Chill\MainBundle\Entity\Address",
|
||||||
@ -41,8 +37,26 @@ class Household
|
|||||||
* @ORM\JoinTable(name="chill_person_household_to_addresses")
|
* @ORM\JoinTable(name="chill_person_household_to_addresses")
|
||||||
* @ORM\OrderBy({"validFrom" = "DESC"})
|
* @ORM\OrderBy({"validFrom" = "DESC"})
|
||||||
*/
|
*/
|
||||||
private $addresses;
|
private Collection $addresses;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ORM\OneToMany(
|
||||||
|
* targetEntity=HouseholdMember::class,
|
||||||
|
* mappedBy="household"
|
||||||
|
* )
|
||||||
|
*/
|
||||||
|
private Collection $members;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->addresses = new ArrayCollection();
|
||||||
|
$this->members = new ArrayCollection();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getId(): ?int
|
||||||
|
{
|
||||||
|
return $this->id;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param Address $address
|
* @param Address $address
|
||||||
@ -74,4 +88,34 @@ class Household
|
|||||||
return $this->addresses;
|
return $this->addresses;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Collection|HouseholdMember[]
|
||||||
|
*/
|
||||||
|
public function getMembers(): Collection
|
||||||
|
{
|
||||||
|
return $this->members;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addMember(HouseholdMember $member): self
|
||||||
|
{
|
||||||
|
if (!$this->members->contains($member)) {
|
||||||
|
$this->members[] = $member;
|
||||||
|
$member->setHousehold($this);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function removeMember(HouseholdMember $member): self
|
||||||
|
{
|
||||||
|
if ($this->members->removeElement($member)) {
|
||||||
|
// set the owning side to null (unless already changed)
|
||||||
|
if ($member->getHousehold() === $this) {
|
||||||
|
$member->setHousehold(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
|
|
||||||
<p>Household with id {{ household.id }}</p>
|
<p>Household with id {{ household.id }}</p>
|
||||||
|
|
||||||
<a class="sc-button bt-update" href="{{ chill_path_add_return_path('chill_person_household_address_move', { 'household_id': household.id }) }}">
|
<a class="sc-button bt-update"
|
||||||
|
href="{{ chill_path_add_return_path('chill_person_household_address_move', { 'household_id': household.id }) }}">
|
||||||
{{ 'Move household'|trans }}
|
{{ 'Move household'|trans }}
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user