320 lines
7.0KB

  1. <?php
  2. namespace Lc\ShopBundle\Model;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\Common\Collections\Collection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. /**
  7. * @ORM\MappedSuperclass()
  8. */
  9. abstract class Address extends AbstractEntity
  10. {
  11. /**
  12. * @ORM\ManyToOne(targetEntity="Lc\ShopBundle\Context\UserInterface", inversedBy="addresses")
  13. * @ORM\JoinColumn(nullable=true)
  14. */
  15. protected $user;
  16. /**
  17. * @ORM\Column(type="string", length=255)
  18. */
  19. protected $title;
  20. /**
  21. * @ORM\Column(type="string", length=31)
  22. */
  23. protected $type;
  24. /**
  25. * @ORM\Column(type="boolean", nullable=true)
  26. */
  27. protected $civility;
  28. /**
  29. * @ORM\Column(type="string", length=127, nullable=true)
  30. */
  31. protected $lastname;
  32. /**
  33. * @ORM\Column(type="string", length=127, nullable=true)
  34. */
  35. protected $firstname;
  36. /**
  37. * @ORM\Column(type="text")
  38. */
  39. protected $address;
  40. /**
  41. * @ORM\Column(type="string", length=31)
  42. */
  43. protected $zip;
  44. /**
  45. * @ORM\Column(type="string", length=255)
  46. */
  47. protected $city;
  48. /**
  49. * @ORM\Column(type="string", length=255)
  50. */
  51. protected $country;
  52. /**
  53. * @ORM\Column(type="string", length=255, nullable=true)
  54. */
  55. protected $company;
  56. /**
  57. * @ORM\Column(type="string", length=127, nullable=true)
  58. */
  59. protected $siret;
  60. /**
  61. * @ORM\Column(type="string", length=127, nullable=true)
  62. */
  63. protected $tva;
  64. /**
  65. * @ORM\Column(type="string", length=127, nullable=true)
  66. */
  67. protected $phone;
  68. /**
  69. * @ORM\Column(type="text", nullable=true)
  70. */
  71. protected $comment;
  72. /**
  73. * @ORM\OneToOne(targetEntity="Lc\ShopBundle\Context\PointSaleInterface", mappedBy="address", cascade={"persist", "remove"})
  74. */
  75. protected $pointSale;
  76. /**
  77. * @ORM\OneToOne(targetEntity="Lc\ShopBundle\Context\MerchantInterface", mappedBy="address", cascade={"persist", "remove"})
  78. */
  79. protected $merchant;
  80. public function __construct()
  81. {
  82. $this->shopOrders = new ArrayCollection();
  83. }
  84. public function getUser(): ?User
  85. {
  86. return $this->user;
  87. }
  88. public function setUser(?User $user): self
  89. {
  90. $this->user = $user;
  91. return $this;
  92. }
  93. public function getTitle(): ?string
  94. {
  95. return $this->title;
  96. }
  97. public function setTitle(string $title): self
  98. {
  99. $this->title = $title;
  100. return $this;
  101. }
  102. public function getType(): ?string
  103. {
  104. return $this->type;
  105. }
  106. public function setType(string $type): self
  107. {
  108. $this->type = $type;
  109. return $this;
  110. }
  111. public function getCivility(): ?bool
  112. {
  113. return $this->civility;
  114. }
  115. public function setCivility(?bool $civility): self
  116. {
  117. $this->civility = $civility;
  118. return $this;
  119. }
  120. public function getLastname(): ?string
  121. {
  122. return $this->lastname;
  123. }
  124. public function setLastname(?string $lastname): self
  125. {
  126. $this->lastname = $lastname;
  127. return $this;
  128. }
  129. public function getFirstname(): ?string
  130. {
  131. return $this->firstname;
  132. }
  133. public function setFirstname(?string $firstname): self
  134. {
  135. $this->firstname = $firstname;
  136. return $this;
  137. }
  138. public function getAddress(): ?string
  139. {
  140. return $this->address;
  141. }
  142. public function setAddress(string $address): self
  143. {
  144. $this->address = $address;
  145. return $this;
  146. }
  147. public function getZip(): ?string
  148. {
  149. return $this->zip;
  150. }
  151. public function setZip(string $zip): self
  152. {
  153. $this->zip = $zip;
  154. return $this;
  155. }
  156. public function getCity(): ?string
  157. {
  158. return $this->city;
  159. }
  160. public function setCity(string $city): self
  161. {
  162. $this->city = $city;
  163. return $this;
  164. }
  165. public function getCountry(): ?string
  166. {
  167. return $this->country;
  168. }
  169. public function setCountry(string $country): self
  170. {
  171. $this->country = $country;
  172. return $this;
  173. }
  174. public function getCompany(): ?string
  175. {
  176. return $this->company;
  177. }
  178. public function setCompany(?string $company): self
  179. {
  180. $this->company = $company;
  181. return $this;
  182. }
  183. public function getSiret(): ?string
  184. {
  185. return $this->siret;
  186. }
  187. public function setSiret(?string $siret): self
  188. {
  189. $this->siret = $siret;
  190. return $this;
  191. }
  192. public function getTva(): ?string
  193. {
  194. return $this->tva;
  195. }
  196. public function setTva(?string $tva): self
  197. {
  198. $this->tva = $tva;
  199. return $this;
  200. }
  201. public function getPhone(): ?string
  202. {
  203. return $this->phone;
  204. }
  205. public function setPhone(?string $phone): self
  206. {
  207. $this->phone = $phone;
  208. return $this;
  209. }
  210. public function getComment(): ?string
  211. {
  212. return $this->comment;
  213. }
  214. public function setComment(?string $comment): self
  215. {
  216. $this->comment = $comment;
  217. return $this;
  218. }
  219. public function getPointSale(): ?PointSale
  220. {
  221. return $this->pointSale;
  222. }
  223. public function setPointSale(PointSale $pointSale): self
  224. {
  225. $this->pointSale = $pointSale;
  226. // set the owning side of the relation if necessary
  227. if ($pointSale->getAddress() !== $this) {
  228. $pointSale->setAddress($this);
  229. }
  230. return $this;
  231. }
  232. public function getMerchant(): ?Merchant
  233. {
  234. return $this->merchant;
  235. }
  236. public function setMerchant(Merchant $merchant): self
  237. {
  238. $this->merchant = $merchant;
  239. // set the owning side of the relation if necessary
  240. if ($merchant->getAddress() !== $this) {
  241. $merchant->setAddress($this);
  242. }
  243. return $this;
  244. }
  245. }