You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

236 line
7.6KB

  1. <?php
  2. namespace Lc\CaracoleBundle\Model\Order;
  3. use Doctrine\Common\Collections\Collection;
  4. use Lc\CaracoleBundle\Model\Address\AddressInterface;
  5. use Lc\CaracoleBundle\Model\Config\TaxRateInterface;
  6. use Lc\CaracoleBundle\Model\File\DocumentInterface;
  7. use Lc\CaracoleBundle\Model\PointSale\PointSaleInterface;
  8. use Lc\CaracoleBundle\Model\Section\SectionInterface;
  9. use Lc\CaracoleBundle\Model\User\VisitorInterface;
  10. use Lc\SovBundle\Model\Ticket\TicketInterface;
  11. use Lc\SovBundle\Model\User\UserInterface;
  12. interface OrderShopInterface
  13. {
  14. public function getValidationDate(): ?\DateTimeInterface;
  15. public function setValidationDate(\DateTimeInterface $validationDate
  16. ): OrderShopModel;
  17. public function getUser(): ?UserInterface;
  18. public function setUser(?UserInterface $user): OrderShopModel;
  19. public function getInvoiceAddress(): ?AddressInterface;
  20. public function setInvoiceAddress(?AddressInterface $invoiceAddress): OrderShopModel;
  21. public function getInvoiceAddressText(): ?string;
  22. public function setInvoiceAddressText(string $invoiceAddressText): OrderShopModel;
  23. public function getComment(): ?string;
  24. public function setComment(?string $comment): OrderShopModel;
  25. public function getMeanPayment(): ?string;
  26. public function setMeanPayment(string $meanPayment): OrderShopModel;
  27. /**
  28. * @return Collection|OrderStatusHistoryInterface[]
  29. */
  30. public function getOrderStatusHistories(): Collection;
  31. public function addOrderStatusHistory(OrderStatusHistoryInterface $orderStatusHistory
  32. ): OrderShopModel;
  33. public function removeOrderStatusHistory(OrderStatusHistoryInterface $orderStatusHistory
  34. ): OrderShopModel;
  35. /**
  36. * @return Collection|OrderPaymentInterface[]
  37. */
  38. public function getOrderPayments($meanPayment = null): Collection;
  39. public function addOrderPayment(OrderPaymentInterface $orderPayment): OrderShopModel;
  40. public function removeOrderPayment(OrderPaymentInterface $orderPayment
  41. ): OrderShopModel;
  42. /**
  43. * @return Collection|OrderProductInterface[]
  44. */
  45. public function getOrderProducts(): Collection;
  46. public function addOrderProduct(OrderProductInterface $orderProduct): OrderShopModel;
  47. public function removeOrderProduct(OrderProductInterface $orderProduct
  48. ): OrderShopModel;
  49. public function getVisitor(): ?VisitorInterface;
  50. public function setVisitor(?VisitorInterface $visitor): OrderShopModel;
  51. public function getDeliveryInfos(): ?string;
  52. public function setDeliveryInfos(?string $deliveryInfos): OrderShopModel;
  53. public function getOrderStatus(): ?OrderStatusInterface;
  54. public function setOrderStatusProtected(?OrderStatusInterface $orderStatus
  55. ): OrderShopModel;
  56. /**
  57. * @return Collection|OrderReductionCartInterface[]
  58. */
  59. public function getOrderReductionCarts(): Collection;
  60. public function addOrderReductionCart(OrderReductionCartInterface $orderReductionCart
  61. ): OrderShopModel;
  62. public function removeOrderReductionCart(OrderReductionCartInterface $orderReductionCart
  63. ): OrderShopModel;
  64. /**
  65. * @return Collection|OrderReductionCreditInterface[]
  66. */
  67. public function getOrderReductionCredits(): Collection;
  68. public function addOrderReductionCredit(OrderReductionCreditInterface $orderReductionCredit
  69. ): OrderShopModel;
  70. public function removeOrderReductionCredit(OrderReductionCreditInterface $orderReductionCredit
  71. ): OrderShopModel;
  72. /**
  73. * @return Collection|DocumentInterface[]
  74. */
  75. public function getDocuments(): Collection;
  76. public function addDocument(DocumentInterface $document): OrderShopModel;
  77. public function removeDocument(DocumentInterface $document): OrderShopModel;
  78. /**
  79. * @return Collection|TicketInterface[]
  80. */
  81. public function getTickets(): Collection;
  82. public function addTicket(TicketInterface $ticket): OrderShopModel;
  83. public function removeTicket(TicketInterface $ticket): OrderShopModel;
  84. public function getSection(): ?SectionInterface;
  85. public function setSection(?SectionInterface $section): OrderShopModel;
  86. public function getCycleId(): ?int;
  87. public function setCycleId(?int $cycleId): OrderShopModel;
  88. public function getOrderShopCreatedAt(): ?\DateTimeInterface;
  89. public function setOrderShopCreatedAt(?\DateTimeInterface $orderShopCreatedAt
  90. ): OrderShopModel;
  91. public function getIdValidOrder(): ?int;
  92. public function setIdValidOrder(?int $idValidOrder): OrderShopModel;
  93. public function getDeliveryAddress(): ?AddressInterface;
  94. public function setDeliveryAddress(?AddressInterface $deliveryAddress
  95. ): OrderShopModel;
  96. public function getDeliveryAddressText(): ?string;
  97. public function setDeliveryAddressText(string $deliveryAddressText): OrderShopModel;
  98. public function getDeliveryPointSale(): ?PointSaleInterface;
  99. public function setDeliveryPointSale(?PointSaleInterface $deliveryPointSale
  100. ): OrderShopModel;
  101. public function getDeliveryType(): ?string;
  102. public function setDeliveryType(?string $deliveryType): OrderShopModel;
  103. public function getDeliveryPrice(): ?float;
  104. public function setDeliveryPrice(?float $deliveryPrice): OrderShopModel;
  105. public function getDeliveryTaxRate(): ?TaxRateInterface;
  106. public function setDeliveryTaxRate(?TaxRateInterface $deliveryTaxRate
  107. ): OrderShopModel;
  108. public function getReference(): ?string;
  109. public function setReference(?string $reference): OrderShopModel;
  110. public function getMainOrderShop(): ?self;
  111. public function setMainOrderShop(?OrderShopModel $mainOrderShop): OrderShopModel;
  112. /**
  113. * @return Collection|OrderShopInterface[]
  114. */
  115. public function getComplementaryOrderShops(): Collection;
  116. public function addComplementaryOrderShop(OrderShopModel $complementaryOrderShop
  117. ): OrderShopModel;
  118. public function removeComplementaryOrderShop(OrderShopModel $complementaryOrderShop
  119. ): OrderShopModel;
  120. public function getDeclineComplementaryOrderShop(): ?bool;
  121. public function setDeclineComplementaryOrderShop(?bool $declineComplementaryOrderShop
  122. ): OrderShopModel;
  123. public function getOrderAllowByAdmin(): ?bool;
  124. public function setOrderAllowByAdmin(?bool $orderAllowByAdmin): OrderShopModel;
  125. public function getHasReach(): ?int;
  126. public function setHasReach(?int $hasReach): OrderShopModel;
  127. public function getStatTotal(): ?float;
  128. public function setStatTotal(?float $statTotal): OrderShopModel;
  129. public function getStatTotalWithTax(): ?float;
  130. public function setStatTotalWithTax(?float $statTotalWithTax): OrderShopModel;
  131. public function getStatTotalOrderProductsWithReductions(): ?float;
  132. public function setStatTotalOrderProductsWithReductions(?float $statTotalOrderProductsWithReductions
  133. ): OrderShopModel;
  134. public function getStatTotalOrderProductsWithTaxAndReductions(): ?float;
  135. public function setStatTotalOrderProductsWithTaxAndReductions(?float $statTotalOrderProductsWithTaxAndReductions
  136. ): OrderShopModel;
  137. public function getStatMarginOrderProductsWithReductions(): ?float;
  138. public function setStatMarginOrderProductsWithReductions(?float $statMarginOrderProductsWithReductions
  139. ): OrderShopModel;
  140. public function getStatDeliveryPriceWithReduction(): ?float;
  141. public function setStatDeliveryPriceWithReduction(?float $statDeliveryPriceWithReduction
  142. ): OrderShopModel;
  143. public function getStatDeliveryPriceWithTaxAndReduction(): ?float;
  144. public function setStatDeliveryPriceWithTaxAndReduction(?float $statDeliveryPriceWithTaxAndReduction
  145. ): OrderShopModel;
  146. }