src/Entity/System/Order.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Entity\System;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\Common\Collections\Collection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. use Doctrine\ORM\Mapping\OneToOne;
  7. use Doctrine\ORM\Mapping\JoinColumn;
  8. /**
  9.  * Order
  10.  *
  11.  * @ORM\Table(
  12.  *     name="ps_orders",
  13.  *      indexes={
  14.  *
  15.  *           @ORM\Index(name="IDX_customer__order_state__total_paid", columns={"id_customer", "id_order_state", "total_paid"})
  16.  *      }
  17.  * )
  18.  *
  19.  * @ORM\Entity(repositoryClass="App\Repository\System\OrderRepository")
  20.  */
  21. class Order
  22. {
  23.     public const PRODUCTS_ORDER_TYPE 1;
  24.     public const PACK_ORDER_TYPE 2;
  25.     public const SERVICES_ORDER_TYPE 3;
  26.     public const PACK_AND_SERVICES_ORDER_TYPE 5;
  27.     /**
  28.      * @ORM\Id()
  29.      *
  30.      * @ORM\GeneratedValue()
  31.      *
  32.      * @ORM\Column(type="integer", name="id_order")
  33.      */
  34.     private $id;
  35.     /**
  36.      * One Order has One Cart.
  37.      *
  38.      * @var Cart|null
  39.      *
  40.      * @OneToOne(targetEntity="App\Entity\System\Cart", mappedBy="order")
  41.      *
  42.      * @JoinColumn(name="id_cart", referencedColumnName="id_cart", nullable=true)
  43.      */
  44.     private $cart;
  45.     /**
  46.      * @var string|null
  47.      *
  48.      * @ORM\Column(type="string", length=9, nullable=true)
  49.      */
  50.     private $reference;
  51.     /**
  52.      * @var int
  53.      *
  54.      * @ORM\Column(type="integer", length=10)
  55.      */
  56.     private $idCarrier;
  57.     /**
  58.      * @var Customer
  59.      *
  60.      * @ORM\ManyToOne(targetEntity="App\Entity\System\Customer", inversedBy="orders")
  61.      *
  62.      * @ORM\JoinColumn(nullable=false, name="id_customer", referencedColumnName="id_customer")
  63.      */
  64.     private $customer;
  65.     /**
  66.      * @var CodeDiscount|null
  67.      *
  68.      * @ORM\ManyToOne(targetEntity="App\Entity\System\CodeDiscount", inversedBy="orders")
  69.      *
  70.      * @ORM\JoinColumn(nullable=true, name="id_voucher")
  71.      */
  72.     private $idVoucher;
  73.     /**
  74.      * @var int
  75.      *
  76.      * @ORM\Column(type="integer", length=10)
  77.      */
  78.     private $idCurrency;
  79.     /**
  80.      * @var Address
  81.      *
  82.      * @ORM\ManyToOne(targetEntity="App\Entity\System\Address")
  83.      *
  84.      * @ORM\JoinColumn(name="id_address_delivery", referencedColumnName="id_address")
  85.      */
  86.     private $deliveryAddress;
  87.     /**
  88.      * @var Address
  89.      *
  90.      * @ORM\ManyToOne(targetEntity="App\Entity\System\Address")
  91.      *
  92.      * @ORM\JoinColumn(name="id_address_invoice", referencedColumnName="id_address")
  93.      */
  94.     private $invoiceAddress;
  95.     /**
  96.      * @var int
  97.      *
  98.      * @ORM\Column(type="integer", length=10, name="id_order_state")
  99.      */
  100.     private $orderStatus;
  101.     /**
  102.      * @var Language|null
  103.      *
  104.      * @ORM\ManyToOne(targetEntity="App\Entity\System\Language")
  105.      *
  106.      * @ORM\JoinColumn(name="id_lang", referencedColumnName="id_lang", nullable=true)
  107.      */
  108.     private $language;
  109.     /**
  110.      * @var string
  111.      *
  112.      * @ORM\Column(type="string", length=32, options={"default" : "-1"})
  113.      */
  114.     private $secureKey;
  115.     /**
  116.      * @var string
  117.      *
  118.      * @ORM\Column(type="string", length=255)
  119.      */
  120.     private $payment;
  121.     /**
  122.      * @var float
  123.      *
  124.      * @ORM\Column(type="decimal", precision=13, scale=6, options={"default" : 1.000000})
  125.      */
  126.     private $conversionRate;
  127.     /**
  128.      * @var string|null
  129.      *
  130.      * @ORM\Column(type="string", length=255, nullable=true)
  131.      */
  132.     private $module;
  133.     /**
  134.      * @var bool
  135.      *
  136.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", options={"default" : 0})
  137.      */
  138.     private $recyclable;
  139.     /**
  140.      * @var string|null
  141.      *
  142.      * @ORM\Column(type="string", length=32, nullable=true)
  143.      */
  144.     private $shippingNumber;
  145.     /**
  146.      * @var bool
  147.      *
  148.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", options={"default" : 0})
  149.      */
  150.     private $dropshipping;
  151.     /**
  152.      * @var float
  153.      *
  154.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  155.      */
  156.     private $totalDiscounts;
  157.     /**
  158.      * @var float
  159.      *
  160.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  161.      */
  162.     private $totalDiscountsTaxIncl;
  163.     /**
  164.      * @var float
  165.      *
  166.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  167.      */
  168.     private $totalDiscountsTaxExcl;
  169.     /**
  170.      * @var float
  171.      *
  172.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  173.      */
  174.     private $totalPaid;
  175.     /**
  176.      * @var float
  177.      *
  178.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  179.      */
  180.     private $totalPaidTaxIncl;
  181.     /**
  182.      * @var float
  183.      *
  184.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  185.      */
  186.     private $totalPaidTaxExcl;
  187.     /**
  188.      * @var float
  189.      *
  190.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  191.      */
  192.     private $totalPaidReal;
  193.     /**
  194.      * @var float
  195.      *
  196.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  197.      */
  198.     private $totalProducts;
  199.     /**
  200.      * @var float
  201.      *
  202.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  203.      */
  204.     private $totalProductsWt;
  205.     /**
  206.      * @var float
  207.      *
  208.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  209.      */
  210.     private $totalShipping;
  211.     /**
  212.      * @var float
  213.      *
  214.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  215.      */
  216.     private $totalShippingTaxIncl;
  217.     /**
  218.      * @var float
  219.      *
  220.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  221.      */
  222.     private $totalShippingTaxExcl;
  223.     /**
  224.      * @var float
  225.      *
  226.      * @ORM\Column(type="decimal", precision=10, scale=3, options={"default" : 0.000})
  227.      */
  228.     private $carrierTaxRate;
  229.     /**
  230.      * @var float
  231.      *
  232.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  233.      */
  234.     private $totalWrapping;
  235.     /**
  236.      * @var float
  237.      *
  238.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  239.      */
  240.     private $totalWrappingTaxIncl;
  241.     /**
  242.      * @var float
  243.      *
  244.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  245.      */
  246.     private $totalWrappingTaxExcl;
  247.     /**
  248.      * @var int|null
  249.      *
  250.      * @ORM\Column(type="integer", length=10, nullable=true, options={"default" : 0})
  251.      */
  252.     private $invoiceNumber;
  253.     /**
  254.      * @var int
  255.      *
  256.      * @ORM\Column(type="integer", length=10, options={"default" : 0})
  257.      */
  258.     private $deliveryNumber;
  259.     /**
  260.      * @var \DateTime|null
  261.      *
  262.      * @ORM\Column(type="datetime", nullable=true)
  263.      */
  264.     private $invoiceDate;
  265.     /**
  266.      * @var \DateTime|null
  267.      *
  268.      * @ORM\Column(type="datetime", nullable=true)
  269.      */
  270.     private $deliveryDate;
  271.     /**
  272.      * @var int
  273.      *
  274.      * @ORM\Column(type="integer", length=1, options={"default" : 0})
  275.      */
  276.     private $valid;
  277.     /**
  278.      * @var bool
  279.      *
  280.      * @ORM\Column(type="boolean", columnDefinition="tinyint(4)", options={"default" : 0})
  281.      */
  282.     private $validateTransfer;
  283.     /**
  284.      * @var string|null
  285.      *
  286.      * @ORM\Column(type="string", length=50, nullable=true)
  287.      */
  288.     private $refOrderSupplier;
  289.     /**
  290.      * @var \DateTime
  291.      *
  292.      * @ORM\Column(type="datetime")
  293.      */
  294.     private $dateAdd;
  295.     /**
  296.      * @var \DateTime
  297.      *
  298.      * @ORM\Column(type="datetime")
  299.      */
  300.     private $dateUpd;
  301.     /**
  302.      * @var float
  303.      *
  304.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  305.      */
  306.     private $purse;
  307.     /**
  308.      * @var float
  309.      *
  310.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  311.      */
  312.     private $dropshippingQty;
  313.     /**
  314.      * @var float
  315.      *
  316.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  317.      */
  318.     private $paymentMethodCost;
  319.     /**
  320.      * @var float
  321.      *
  322.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00})
  323.      */
  324.     private $dropshippingCost;
  325.     /**
  326.      * @var bool
  327.      *
  328.      * @ORM\Column(type="boolean", columnDefinition="tinyint(4)", options={"default" : 0})
  329.      */
  330.     private $re;
  331.     /**
  332.      * @var string|null
  333.      *
  334.      * @ORM\Column(type="string", length=254, nullable=true)
  335.      */
  336.     private $transactionId;
  337.     /**
  338.      * @var string|null
  339.      *
  340.      * @ORM\Column(type="string", length=40, nullable=true)
  341.      */
  342.     private $commentCarrier;
  343.     /**
  344.      * @var bool|null
  345.      *
  346.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", nullable=true, options={"default" : 0})
  347.      */
  348.     private $refund;
  349.     /**
  350.      * @var bool|null
  351.      *
  352.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", nullable=true, options={"default" : 0})
  353.      */
  354.     private $fullRefund;
  355.     /**
  356.      * @var string|null
  357.      *
  358.      * @ORM\Column(type="string", columnDefinition="enum('1', '2', '3','4')", options={"default" : "1"}, nullable=true)
  359.      */
  360.     private $intracomunitario;
  361.     /**
  362.      * @var bool|null
  363.      *
  364.      * @ORM\Column(type="boolean", columnDefinition="tinyint(4)", nullable=true)
  365.      */
  366.     private $isTracking;
  367.     /**
  368.      * @var bool|null
  369.      *
  370.      * @ORM\Column(type="boolean", columnDefinition="tinyint(4)", options={"default" : 0}, nullable=true)
  371.      */
  372.     private $stateDropshipping;
  373.     /**
  374.      * @var float|null
  375.      *
  376.      * @ORM\Column(type="float", options={"default" : 0}, nullable=true)
  377.      */
  378.     private $volWeight;
  379.     /**
  380.      * @var int|null
  381.      *
  382.      * @ORM\Column(type="integer", length=11, options={"default" : 0}, nullable=true)
  383.      */
  384.     private $idCarrierMaster;
  385.     /**
  386.      * @deprecated ya no se usa para nada
  387.      *
  388.      * @var string|null
  389.      *
  390.      * @ORM\Column(type="string", length=15, options={"default" : "0"}, nullable=true)
  391.      */
  392.     private $idOrderParent;
  393.     /**
  394.      * @var bool|null
  395.      *
  396.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", options={"default" : 0}, nullable=true)
  397.      */
  398.     private $quantityStockSupplier;
  399.     /**
  400.      * @var bool|null
  401.      *
  402.      * @ORM\Column(name="quantity_stock_supplier_3_5", type="boolean", columnDefinition="tinyint(1)", options={"default" : 0}, nullable=true)
  403.      */
  404.     private $quantityStockSupplier3To5;
  405.     /**
  406.      * @var bool|null
  407.      *
  408.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", options={"default" : 0}, nullable=true)
  409.      */
  410.     private $quantityFutureStock;
  411.     /**
  412.      * @var int|null
  413.      *
  414.      * @ORM\Column(type="integer", length=10, options={"default" : 0}, nullable=true)
  415.      */
  416.     private $idPack;
  417.     /**
  418.      * @var \DateTime|null
  419.      *
  420.      * @ORM\Column(type="datetime", nullable=true)
  421.      */
  422.     private $deliveredDate;
  423.     /**
  424.      * @var bool|null
  425.      *
  426.      * @ORM\Column(type="boolean", name="sujeto_pasivo", columnDefinition="tinyint(1)", options={"default" : 0}, nullable=true)
  427.      */
  428.     private $passiveSubject;
  429.     /**
  430.      * @var float|null
  431.      *
  432.      * @ORM\Column(type="decimal", precision=17, scale=2, options={"default" : 0.00}, nullable=true)
  433.      */
  434.     private $rapelAmount;
  435.     /**
  436.      * @var bool|null
  437.      *
  438.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", options={"default" : 0}, nullable=true)
  439.      */
  440.     private $api;
  441.     /**
  442.      * @var bool|null
  443.      *
  444.      * @ORM\Column(type="boolean", columnDefinition="tinyint(1)", options={"default" : 0}, nullable=true)
  445.      */
  446.     private $isSystem;
  447.     /**
  448.      * @var string|null
  449.      *
  450.      * @ORM\Column(type="string", length=64, nullable=true)
  451.      */
  452.     private $sellingChannel;
  453.     /**
  454.      * @var \DateTime|null
  455.      *
  456.      * @ORM\Column(type="date", nullable=true)
  457.      */
  458.     private $dateAmazon;
  459.     /**
  460.      * @var string|null
  461.      *
  462.      * @ORM\Column(type="string", length=256, nullable=true)
  463.      */
  464.     private $additionalParameters;
  465.     /**
  466.      * @var \DateTime|null
  467.      *
  468.      * @ORM\Column(type="datetime", nullable=true)
  469.      */
  470.     private $estimatedShippingDate;
  471.     /**
  472.      * @var \DateTime|null
  473.      *
  474.      * @ORM\Column(type="datetime", nullable=true)
  475.      */
  476.     private $scheduledConfirmationDate;
  477.     /**
  478.      * @var \DateTime|null
  479.      *
  480.      * @ORM\Column(type="datetime", nullable=true)
  481.      */
  482.     private $cancellationRequestDate;
  483.     /**
  484.      * @var string|null
  485.      *
  486.      * @ORM\Column(type="string", length=36, nullable=true)
  487.      */
  488.     private $a4bUuid;
  489.     /**
  490.      * @var bool|null
  491.      *
  492.      * @ORM\Column(type="integer", length=1, options={"default" : 0}, nullable=true)
  493.      */
  494.     private $dispute;
  495.     /**
  496.      * @var OrderDetail[]|ArrayCollection<OrderDetail>
  497.      *
  498.      * @ORM\OneToMany(targetEntity="App\Entity\System\OrderDetail", mappedBy="order", cascade={"all"}, orphanRemoval=true)
  499.      */
  500.     private $orderDetails;
  501.     /**
  502.      * @var Warehouse
  503.      *
  504.      * @ORM\ManyToOne(targetEntity="App\Entity\System\Warehouse")
  505.      *
  506.      * @ORM\JoinColumn(name="warehouse_id", referencedColumnName="id", nullable=false)
  507.      */
  508.     private $warehouse;
  509.     /**
  510.      * @var OrderNotification|null
  511.      *
  512.      * @ORM\OneToOne(targetEntity="OrderNotification", mappedBy="order")
  513.      */
  514.     private $notification;
  515.     /**
  516.      * @var Invoice[]|ArrayCollection
  517.      *
  518.      * @ORM\ManyToMany(targetEntity="Invoice", mappedBy="orders")
  519.      */
  520.     private $invoice;
  521.     /**
  522.      * @var OrderCancellationRequest|null
  523.      *
  524.      * @ORM\OneToOne(targetEntity="OrderCancellationRequest", mappedBy="order")
  525.      */
  526.     private ?OrderCancellationRequest $cancellationRequest;
  527.     /**
  528.      * @var string|null
  529.      *
  530.      * @ORM\Column(type="string", length=64, nullable=true)
  531.      */
  532.     private $paymentMethodType;
  533.     /**
  534.      * @var string|null
  535.      *
  536.      * @ORM\Column(type="string", nullable=true)
  537.      */
  538.     private $paypalPayerId;
  539.     /**
  540.      * @var string|null
  541.      *
  542.      * @ORM\Column(type="string", nullable=true)
  543.      */
  544.     private $paypalPayerEmail;
  545.     /**
  546.      * @var OrderTax|null
  547.      *
  548.      * @ORM\OneToOne(targetEntity="App\Entity\System\OrderTax", mappedBy="order")
  549.      */
  550.     private $orderTax;
  551.     /**
  552.      * @ORM\Column(type="boolean", options={"default" : 0})
  553.      */
  554.     private bool $fba false;
  555.     /**
  556.      * @ORM\Column(type="datetime", nullable=true)
  557.      */
  558.     private ?\DateTime $maxExpeditionDatetime null;
  559.     /**
  560.      * @ORM\Column(type="datetime", nullable=true)
  561.      */
  562.     private ?\DateTime $maxDeliveryDatetime null;
  563.     /**
  564.      * @ORM\Column(type="float", nullable=true)
  565.      */
  566.     private ?float $logisticWeight;
  567.     /**
  568.      * Order constructor.
  569.      */
  570.     public function __construct()
  571.     {
  572.         $this->secureKey = -1;
  573.         $this->conversionRate 1.000000;
  574.         $this->recyclable 0;
  575.         $this->dropshipping 0;
  576.         $this->totalDiscounts 0.00;
  577.         $this->totalDiscountsTaxIncl 0.00;
  578.         $this->totalDiscountsTaxExcl 0.00;
  579.         $this->totalPaid 0.00;
  580.         $this->totalPaidTaxIncl 0.00;
  581.         $this->totalPaidTaxExcl 0.00;
  582.         $this->totalPaidReal 0.00;
  583.         $this->totalProducts 0.00;
  584.         $this->totalProductsWt 0.00;
  585.         $this->totalShipping 0.00;
  586.         $this->totalShippingTaxIncl 0.00;
  587.         $this->totalShippingTaxExcl 0.00;
  588.         $this->carrierTaxRate 0.000;
  589.         $this->totalWrapping 0.00;
  590.         $this->totalWrappingTaxIncl 0.00;
  591.         $this->totalWrappingTaxExcl 0.00;
  592.         $this->invoiceNumber 0;
  593.         $this->deliveryNumber 0;
  594.         $this->valid 0;
  595.         $this->validateTransfer 0;
  596.         $this->purse 0.00;
  597.         $this->dropshippingQty 0.00;
  598.         $this->paymentMethodCost 0.00;
  599.         $this->dropshippingCost 0.00;
  600.         $this->re 0;
  601.         $this->refund 0;
  602.         $this->fullRefund false;
  603.         $this->intracomunitario '1';
  604.         $this->stateDropshipping 0;
  605.         $this->volWeight 0;
  606.         $this->idCarrierMaster 0;
  607.         $this->quantityStockSupplier 0;
  608.         $this->quantityStockSupplier3To5 0;
  609.         $this->quantityFutureStock 0;
  610.         $this->idPack 0;
  611.         $this->passiveSubject 0;
  612.         $this->rapelAmount 0;
  613.         $this->api 0;
  614.         $this->isSystem 0;
  615.         $this->orderDetails = new ArrayCollection();
  616.         $this->invoice = new ArrayCollection();
  617.     }
  618.     /**
  619.      * @return mixed
  620.      */
  621.     public function getId()
  622.     {
  623.         return $this->id;
  624.     }
  625.     /**
  626.      * @param int $id
  627.      *
  628.      * @return Order
  629.      */
  630.     public function setId($id): Order
  631.     {
  632.         $this->id $id;
  633.         return $this;
  634.     }
  635.     /**
  636.      * @return string|null
  637.      */
  638.     public function getReference(): ?string
  639.     {
  640.         return $this->reference;
  641.     }
  642.     /**
  643.      * @param string|null $reference
  644.      *
  645.      * @return Order
  646.      */
  647.     public function setReference(?string $reference): Order
  648.     {
  649.         $this->reference $reference;
  650.         return $this;
  651.     }
  652.     /**
  653.      * @return int
  654.      */
  655.     public function getIdCarrier(): int
  656.     {
  657.         return $this->idCarrier;
  658.     }
  659.     /**
  660.      * @param int $idCarrier
  661.      *
  662.      * @return Order
  663.      */
  664.     public function setIdCarrier(int $idCarrier): Order
  665.     {
  666.         $this->idCarrier $idCarrier;
  667.         return $this;
  668.     }
  669.     /**
  670.      * @return CodeDiscount|null
  671.      */
  672.     public function getIdVoucher(): ?CodeDiscount
  673.     {
  674.         if ($this->idVoucher && $this->idVoucher->getId() === 0) {
  675.             return null;
  676.         }
  677.         return $this->idVoucher;
  678.     }
  679.     /**
  680.      * @param CodeDiscount|null $idVoucher
  681.      *
  682.      * @return Order
  683.      */
  684.     public function setIdVoucher(?CodeDiscount $idVoucher): Order
  685.     {
  686.         $this->idVoucher $idVoucher;
  687.         return $this;
  688.     }
  689.     /**
  690.      * @return int
  691.      */
  692.     public function getIdCurrency(): int
  693.     {
  694.         return $this->idCurrency;
  695.     }
  696.     /**
  697.      * @param int $idCurrency
  698.      *
  699.      * @return Order
  700.      */
  701.     public function setIdCurrency(int $idCurrency): Order
  702.     {
  703.         $this->idCurrency $idCurrency;
  704.         return $this;
  705.     }
  706.     /**
  707.      * @return Address
  708.      */
  709.     public function getDeliveryAddress(): Address
  710.     {
  711.         return $this->deliveryAddress;
  712.     }
  713.     /**
  714.      * @param Address $deliveryAddress
  715.      *
  716.      * @return Order
  717.      */
  718.     public function setDeliveryAddress(Address $deliveryAddress): Order
  719.     {
  720.         $this->deliveryAddress $deliveryAddress;
  721.         return $this;
  722.     }
  723.     /**
  724.      * @return Address
  725.      */
  726.     public function getInvoiceAddress(): Address
  727.     {
  728.         return $this->invoiceAddress;
  729.     }
  730.     /**
  731.      * @param Address $invoiceAddress
  732.      *
  733.      * @return Order
  734.      */
  735.     public function setInvoiceAddress(Address $invoiceAddress): Order
  736.     {
  737.         $this->invoiceAddress $invoiceAddress;
  738.         return $this;
  739.     }
  740.     /**
  741.      * @return Language|null
  742.      */
  743.     public function getLanguage(): ?Language
  744.     {
  745.         return $this->language;
  746.     }
  747.     /**
  748.      * @param Language|null $language
  749.      *
  750.      * @return Order
  751.      */
  752.     public function setLanguage(?Language $language): Order
  753.     {
  754.         $this->language $language;
  755.         return $this;
  756.     }
  757.     /**
  758.      * @return string
  759.      */
  760.     public function getSecureKey(): string
  761.     {
  762.         return $this->secureKey;
  763.     }
  764.     /**
  765.      * @param string $secureKey
  766.      *
  767.      * @return Order
  768.      */
  769.     public function setSecureKey(string $secureKey): Order
  770.     {
  771.         $this->secureKey $secureKey;
  772.         return $this;
  773.     }
  774.     /**
  775.      * @return string
  776.      */
  777.     public function getPayment(): string
  778.     {
  779.         return $this->payment;
  780.     }
  781.     public function getPaymentMethod(): string
  782.     {
  783.         return $this->payment;
  784.     }
  785.     /**
  786.      * @param string $payment
  787.      *
  788.      * @return Order
  789.      */
  790.     public function setPayment(string $payment): Order
  791.     {
  792.         $this->payment $payment;
  793.         return $this;
  794.     }
  795.     /**
  796.      * @return float
  797.      */
  798.     public function getConversionRate(): float
  799.     {
  800.         return $this->conversionRate;
  801.     }
  802.     /**
  803.      * @param float $conversionRate
  804.      *
  805.      * @return Order
  806.      */
  807.     public function setConversionRate(float $conversionRate): Order
  808.     {
  809.         $this->conversionRate $conversionRate;
  810.         return $this;
  811.     }
  812.     /**
  813.      * @return string|null
  814.      */
  815.     public function getModule(): ?string
  816.     {
  817.         return $this->module;
  818.     }
  819.     /**
  820.      * @param string|null $module
  821.      *
  822.      * @return Order
  823.      */
  824.     public function setModule(?string $module): Order
  825.     {
  826.         $this->module $module;
  827.         return $this;
  828.     }
  829.     /**
  830.      * @return bool
  831.      */
  832.     public function isRecyclable(): bool
  833.     {
  834.         return $this->recyclable;
  835.     }
  836.     /**
  837.      * @param bool $recyclable
  838.      *
  839.      * @return Order
  840.      */
  841.     public function setRecyclable(bool $recyclable): Order
  842.     {
  843.         $this->recyclable $recyclable;
  844.         return $this;
  845.     }
  846.     /**
  847.      * @return string|null
  848.      */
  849.     public function getShippingNumber(): ?string
  850.     {
  851.         return $this->shippingNumber;
  852.     }
  853.     /**
  854.      * @param string|null $shippingNumber
  855.      *
  856.      * @return Order
  857.      */
  858.     public function setShippingNumber(?string $shippingNumber): Order
  859.     {
  860.         $this->shippingNumber $shippingNumber;
  861.         return $this;
  862.     }
  863.     /**
  864.      * @return bool
  865.      */
  866.     public function isDropshipping(): bool
  867.     {
  868.         return $this->dropshipping;
  869.     }
  870.     /**
  871.      * @param bool $dropshipping
  872.      *
  873.      * @return Order
  874.      */
  875.     public function setDropshipping(bool $dropshipping): Order
  876.     {
  877.         $this->dropshipping $dropshipping;
  878.         return $this;
  879.     }
  880.     /**
  881.      * @return float
  882.      */
  883.     public function getTotalDiscounts(): float
  884.     {
  885.         return $this->totalDiscounts;
  886.     }
  887.     /**
  888.      * @param float $totalDiscounts
  889.      *
  890.      * @return Order
  891.      */
  892.     public function setTotalDiscounts(float $totalDiscounts): Order
  893.     {
  894.         $this->totalDiscounts $totalDiscounts;
  895.         return $this;
  896.     }
  897.     /**
  898.      * @return float
  899.      */
  900.     public function getTotalDiscountsTaxIncl(): float
  901.     {
  902.         return $this->totalDiscountsTaxIncl;
  903.     }
  904.     /**
  905.      * @param float $totalDiscountsTaxIncl
  906.      *
  907.      * @return Order
  908.      */
  909.     public function setTotalDiscountsTaxIncl(float $totalDiscountsTaxIncl): Order
  910.     {
  911.         $this->totalDiscountsTaxIncl $totalDiscountsTaxIncl;
  912.         return $this;
  913.     }
  914.     /**
  915.      * @return float
  916.      */
  917.     public function getTotalDiscountsTaxExcl(): float
  918.     {
  919.         return $this->totalDiscountsTaxExcl;
  920.     }
  921.     /**
  922.      * @param float $totalDiscountsTaxExcl
  923.      *
  924.      * @return Order
  925.      */
  926.     public function setTotalDiscountsTaxExcl(float $totalDiscountsTaxExcl): Order
  927.     {
  928.         $this->totalDiscountsTaxExcl $totalDiscountsTaxExcl;
  929.         return $this;
  930.     }
  931.     /**
  932.      * @return float
  933.      */
  934.     public function getTotalPaid(): float
  935.     {
  936.         return $this->totalPaid;
  937.     }
  938.     /**
  939.      * @param float $totalPaid
  940.      *
  941.      * @return Order
  942.      */
  943.     public function setTotalPaid(float $totalPaid): Order
  944.     {
  945.         $this->totalPaid $totalPaid;
  946.         return $this;
  947.     }
  948.     /**
  949.      * @return float
  950.      */
  951.     public function getTotalPaidTaxIncl(): float
  952.     {
  953.         return $this->totalPaidTaxIncl;
  954.     }
  955.     /**
  956.      * @param float $totalPaidTaxIncl
  957.      *
  958.      * @return Order
  959.      */
  960.     public function setTotalPaidTaxIncl(float $totalPaidTaxIncl): Order
  961.     {
  962.         $this->totalPaidTaxIncl $totalPaidTaxIncl;
  963.         return $this;
  964.     }
  965.     /**
  966.      * @return float
  967.      */
  968.     public function getTotalPaidTaxExcl(): float
  969.     {
  970.         return $this->totalPaidTaxExcl;
  971.     }
  972.     /**
  973.      * @param float $totalPaidTaxExcl
  974.      *
  975.      * @return Order
  976.      */
  977.     public function setTotalPaidTaxExcl(float $totalPaidTaxExcl): Order
  978.     {
  979.         $this->totalPaidTaxExcl $totalPaidTaxExcl;
  980.         return $this;
  981.     }
  982.     /**
  983.      * @return float
  984.      */
  985.     public function getTotalPaidReal(): float
  986.     {
  987.         return $this->totalPaidReal;
  988.     }
  989.     /**
  990.      * @param float $totalPaidReal
  991.      *
  992.      * @return Order
  993.      */
  994.     public function setTotalPaidReal(float $totalPaidReal): Order
  995.     {
  996.         $this->totalPaidReal $totalPaidReal;
  997.         return $this;
  998.     }
  999.     /**
  1000.      * @return float
  1001.      */
  1002.     public function getTotalProducts(): float
  1003.     {
  1004.         return $this->totalProducts;
  1005.     }
  1006.     /**
  1007.      * @param float $totalProducts
  1008.      *
  1009.      * @return Order
  1010.      */
  1011.     public function setTotalProducts(float $totalProducts): Order
  1012.     {
  1013.         $this->totalProducts $totalProducts;
  1014.         return $this;
  1015.     }
  1016.     /**
  1017.      * @return float
  1018.      */
  1019.     public function getTotalProductsWt(): float
  1020.     {
  1021.         return $this->totalProductsWt;
  1022.     }
  1023.     /**
  1024.      * @param float $totalProductsWt
  1025.      *
  1026.      * @return Order
  1027.      */
  1028.     public function setTotalProductsWt(float $totalProductsWt): Order
  1029.     {
  1030.         $this->totalProductsWt $totalProductsWt;
  1031.         return $this;
  1032.     }
  1033.     /**
  1034.      * @return float
  1035.      */
  1036.     public function getTotalShipping(): float
  1037.     {
  1038.         return $this->totalShipping;
  1039.     }
  1040.     /**
  1041.      * @param float $totalShipping
  1042.      *
  1043.      * @return Order
  1044.      */
  1045.     public function setTotalShipping(float $totalShipping): Order
  1046.     {
  1047.         $this->totalShipping $totalShipping;
  1048.         return $this;
  1049.     }
  1050.     /**
  1051.      * @return float
  1052.      */
  1053.     public function getTotalShippingTaxIncl(): float
  1054.     {
  1055.         return $this->totalShippingTaxIncl;
  1056.     }
  1057.     /**
  1058.      * @param float $totalShippingTaxIncl
  1059.      *
  1060.      * @return Order
  1061.      */
  1062.     public function setTotalShippingTaxIncl(float $totalShippingTaxIncl): Order
  1063.     {
  1064.         $this->totalShippingTaxIncl $totalShippingTaxIncl;
  1065.         return $this;
  1066.     }
  1067.     /**
  1068.      * @return float
  1069.      */
  1070.     public function getTotalShippingTaxExcl(): float
  1071.     {
  1072.         return $this->totalShippingTaxExcl;
  1073.     }
  1074.     /**
  1075.      * @param float $totalShippingTaxExcl
  1076.      *
  1077.      * @return Order
  1078.      */
  1079.     public function setTotalShippingTaxExcl(float $totalShippingTaxExcl): Order
  1080.     {
  1081.         $this->totalShippingTaxExcl $totalShippingTaxExcl;
  1082.         return $this;
  1083.     }
  1084.     /**
  1085.      * @return float
  1086.      */
  1087.     public function getCarrierTaxRate(): float
  1088.     {
  1089.         return $this->carrierTaxRate;
  1090.     }
  1091.     /**
  1092.      * @param float $carrierTaxRate
  1093.      *
  1094.      * @return Order
  1095.      */
  1096.     public function setCarrierTaxRate(float $carrierTaxRate): Order
  1097.     {
  1098.         $this->carrierTaxRate $carrierTaxRate;
  1099.         return $this;
  1100.     }
  1101.     /**
  1102.      * @return float
  1103.      */
  1104.     public function getTotalWrapping(): float
  1105.     {
  1106.         return $this->totalWrapping;
  1107.     }
  1108.     /**
  1109.      * @param float $totalWrapping
  1110.      *
  1111.      * @return Order
  1112.      */
  1113.     public function setTotalWrapping(float $totalWrapping): Order
  1114.     {
  1115.         $this->totalWrapping $totalWrapping;
  1116.         return $this;
  1117.     }
  1118.     /**
  1119.      * @return float
  1120.      */
  1121.     public function getTotalWrappingTaxIncl(): float
  1122.     {
  1123.         return $this->totalWrappingTaxIncl;
  1124.     }
  1125.     /**
  1126.      * @param float $totalWrappingTaxIncl
  1127.      *
  1128.      * @return Order
  1129.      */
  1130.     public function setTotalWrappingTaxIncl(float $totalWrappingTaxIncl): Order
  1131.     {
  1132.         $this->totalWrappingTaxIncl $totalWrappingTaxIncl;
  1133.         return $this;
  1134.     }
  1135.     /**
  1136.      * @return float
  1137.      */
  1138.     public function getTotalWrappingTaxExcl(): float
  1139.     {
  1140.         return $this->totalWrappingTaxExcl;
  1141.     }
  1142.     /**
  1143.      * @param float $totalWrappingTaxExcl
  1144.      *
  1145.      * @return Order
  1146.      */
  1147.     public function setTotalWrappingTaxExcl(float $totalWrappingTaxExcl): Order
  1148.     {
  1149.         $this->totalWrappingTaxExcl $totalWrappingTaxExcl;
  1150.         return $this;
  1151.     }
  1152.     /**
  1153.      * @return int|null
  1154.      */
  1155.     public function getInvoiceNumber(): ?int
  1156.     {
  1157.         return $this->invoiceNumber;
  1158.     }
  1159.     /**
  1160.      * @param int|null $invoiceNumber
  1161.      *
  1162.      * @return Order
  1163.      */
  1164.     public function setInvoiceNumber(?int $invoiceNumber): Order
  1165.     {
  1166.         $this->invoiceNumber $invoiceNumber;
  1167.         return $this;
  1168.     }
  1169.     /**
  1170.      * @return int
  1171.      */
  1172.     public function getDeliveryNumber(): int
  1173.     {
  1174.         return $this->deliveryNumber;
  1175.     }
  1176.     /**
  1177.      * @param int $deliveryNumber
  1178.      *
  1179.      * @return Order
  1180.      */
  1181.     public function setDeliveryNumber(int $deliveryNumber): Order
  1182.     {
  1183.         $this->deliveryNumber $deliveryNumber;
  1184.         return $this;
  1185.     }
  1186.     /**
  1187.      * @return \DateTime|null
  1188.      */
  1189.     public function getInvoiceDate(): ?\DateTime
  1190.     {
  1191.         return $this->invoiceDate;
  1192.     }
  1193.     /**
  1194.      * @param \DateTime|null $invoiceDate
  1195.      *
  1196.      * @return Order
  1197.      */
  1198.     public function setInvoiceDate(?\DateTime $invoiceDate): Order
  1199.     {
  1200.         $this->invoiceDate $invoiceDate;
  1201.         return $this;
  1202.     }
  1203.     /**
  1204.      * @return \DateTime|null
  1205.      */
  1206.     public function getDeliveryDate(): ?\DateTime
  1207.     {
  1208.         return $this->deliveryDate;
  1209.     }
  1210.     /**
  1211.      * @param \DateTime|null $deliveryDate
  1212.      *
  1213.      * @return Order
  1214.      */
  1215.     public function setDeliveryDate(?\DateTime $deliveryDate): Order
  1216.     {
  1217.         $this->deliveryDate $deliveryDate;
  1218.         return $this;
  1219.     }
  1220.     /**
  1221.      * @return int
  1222.      */
  1223.     public function getValid(): int
  1224.     {
  1225.         return $this->valid;
  1226.     }
  1227.     /**
  1228.      * @param int $valid
  1229.      *
  1230.      * @return Order
  1231.      */
  1232.     public function setValid(int $valid): Order
  1233.     {
  1234.         $this->valid $valid;
  1235.         return $this;
  1236.     }
  1237.     /**
  1238.      * @return bool
  1239.      */
  1240.     public function isValidateTransfer(): bool
  1241.     {
  1242.         return $this->validateTransfer;
  1243.     }
  1244.     /**
  1245.      * @param bool $validateTransfer
  1246.      *
  1247.      * @return Order
  1248.      */
  1249.     public function setValidateTransfer(bool $validateTransfer): Order
  1250.     {
  1251.         $this->validateTransfer $validateTransfer;
  1252.         return $this;
  1253.     }
  1254.     /**
  1255.      * @return string|null
  1256.      */
  1257.     public function getRefOrderSupplier(): ?string
  1258.     {
  1259.         return $this->refOrderSupplier;
  1260.     }
  1261.     /**
  1262.      * @param string|null $refOrderSupplier
  1263.      *
  1264.      * @return Order
  1265.      */
  1266.     public function setRefOrderSupplier(?string $refOrderSupplier): Order
  1267.     {
  1268.         $this->refOrderSupplier $refOrderSupplier;
  1269.         return $this;
  1270.     }
  1271.     /**
  1272.      * @return \DateTime
  1273.      */
  1274.     public function getDateAdd(): \DateTime
  1275.     {
  1276.         return $this->dateAdd;
  1277.     }
  1278.     /**
  1279.      * @param \DateTime $dateAdd
  1280.      *
  1281.      * @return Order
  1282.      */
  1283.     public function setDateAdd(\DateTime $dateAdd): Order
  1284.     {
  1285.         $this->dateAdd $dateAdd;
  1286.         return $this;
  1287.     }
  1288.     /**
  1289.      * @return \DateTime
  1290.      */
  1291.     public function getDateUpd(): \DateTime
  1292.     {
  1293.         return $this->dateUpd;
  1294.     }
  1295.     /**
  1296.      * @param \DateTime $dateUpd
  1297.      *
  1298.      * @return Order
  1299.      */
  1300.     public function setDateUpd(\DateTime $dateUpd): Order
  1301.     {
  1302.         $this->dateUpd $dateUpd;
  1303.         return $this;
  1304.     }
  1305.     /**
  1306.      * @return float
  1307.      */
  1308.     public function getPurse(): float
  1309.     {
  1310.         return $this->purse;
  1311.     }
  1312.     /**
  1313.      * @param float $purse
  1314.      *
  1315.      * @return Order
  1316.      */
  1317.     public function setPurse(float $purse): Order
  1318.     {
  1319.         $this->purse $purse;
  1320.         return $this;
  1321.     }
  1322.     /**
  1323.      * @return float
  1324.      */
  1325.     public function getDropshippingQty(): float
  1326.     {
  1327.         return $this->dropshippingQty;
  1328.     }
  1329.     /**
  1330.      * @param float $dropshippingQty
  1331.      *
  1332.      * @return Order
  1333.      */
  1334.     public function setDropshippingQty(float $dropshippingQty): Order
  1335.     {
  1336.         $this->dropshippingQty $dropshippingQty;
  1337.         return $this;
  1338.     }
  1339.     /**
  1340.      * @return float
  1341.      */
  1342.     public function getPaymentMethodCost(): float
  1343.     {
  1344.         return $this->paymentMethodCost;
  1345.     }
  1346.     /**
  1347.      * @param float $paymentMethodCost
  1348.      *
  1349.      * @return Order
  1350.      */
  1351.     public function setPaymentMethodCost(float $paymentMethodCost): Order
  1352.     {
  1353.         $this->paymentMethodCost $paymentMethodCost;
  1354.         return $this;
  1355.     }
  1356.     /**
  1357.      * @return float
  1358.      */
  1359.     public function getDropshippingCost(): float
  1360.     {
  1361.         return $this->dropshippingCost;
  1362.     }
  1363.     /**
  1364.      * @param float $dropshippingCost
  1365.      *
  1366.      * @return Order
  1367.      */
  1368.     public function setDropshippingCost(float $dropshippingCost): Order
  1369.     {
  1370.         $this->dropshippingCost $dropshippingCost;
  1371.         return $this;
  1372.     }
  1373.     /**
  1374.      * @return bool
  1375.      */
  1376.     public function isRe(): bool
  1377.     {
  1378.         return $this->re;
  1379.     }
  1380.     /**
  1381.      * @param bool $re
  1382.      *
  1383.      * @return Order
  1384.      */
  1385.     public function setRe(bool $re): Order
  1386.     {
  1387.         $this->re $re;
  1388.         return $this;
  1389.     }
  1390.     /**
  1391.      * @return string|null
  1392.      */
  1393.     public function getTransactionId(): ?string
  1394.     {
  1395.         return $this->transactionId;
  1396.     }
  1397.     /**
  1398.      * @param string|null $transactionId
  1399.      *
  1400.      * @return Order
  1401.      */
  1402.     public function setTransactionId(?string $transactionId): Order
  1403.     {
  1404.         $this->transactionId $transactionId;
  1405.         return $this;
  1406.     }
  1407.     /**
  1408.      * @return string|null
  1409.      */
  1410.     public function getCommentCarrier(): ?string
  1411.     {
  1412.         return $this->commentCarrier;
  1413.     }
  1414.     /**
  1415.      * @param string|null $commentCarrier
  1416.      *
  1417.      * @return Order
  1418.      */
  1419.     public function setCommentCarrier(?string $commentCarrier): Order
  1420.     {
  1421.         $this->commentCarrier $commentCarrier;
  1422.         return $this;
  1423.     }
  1424.     /**
  1425.      * @return bool|null
  1426.      */
  1427.     public function getRefund(): ?bool
  1428.     {
  1429.         return $this->refund;
  1430.     }
  1431.     /**
  1432.      * @param bool|null $refund
  1433.      *
  1434.      * @return Order
  1435.      */
  1436.     public function setRefund(?bool $refund): Order
  1437.     {
  1438.         $this->refund $refund;
  1439.         return $this;
  1440.     }
  1441.     /**
  1442.      * @return string|null
  1443.      */
  1444.     public function getIntracomunitario(): ?string
  1445.     {
  1446.         return $this->intracomunitario;
  1447.     }
  1448.     /**
  1449.      * @param string|null $intracomunitario
  1450.      *
  1451.      * @return Order
  1452.      */
  1453.     public function setIntracomunitario(?string $intracomunitario): Order
  1454.     {
  1455.         $this->intracomunitario $intracomunitario;
  1456.         return $this;
  1457.     }
  1458.     /**
  1459.      * @return bool|null
  1460.      */
  1461.     public function getIsTracking(): ?bool
  1462.     {
  1463.         return $this->isTracking;
  1464.     }
  1465.     /**
  1466.      * @param bool|null $isTracking
  1467.      *
  1468.      * @return Order
  1469.      */
  1470.     public function setIsTracking(?bool $isTracking): Order
  1471.     {
  1472.         $this->isTracking $isTracking;
  1473.         return $this;
  1474.     }
  1475.     /**
  1476.      * @return bool|null
  1477.      */
  1478.     public function getStateDropshipping(): ?bool
  1479.     {
  1480.         return $this->stateDropshipping;
  1481.     }
  1482.     /**
  1483.      * @param bool|null $stateDropshipping
  1484.      *
  1485.      * @return Order
  1486.      */
  1487.     public function setStateDropshipping(?bool $stateDropshipping): Order
  1488.     {
  1489.         $this->stateDropshipping $stateDropshipping;
  1490.         return $this;
  1491.     }
  1492.     /**
  1493.      * @return float|null
  1494.      */
  1495.     public function getVolWeight(): ?float
  1496.     {
  1497.         return $this->volWeight;
  1498.     }
  1499.     /**
  1500.      * @param float|null $volWeight
  1501.      *
  1502.      * @return Order
  1503.      */
  1504.     public function setVolWeight(?float $volWeight): Order
  1505.     {
  1506.         $this->volWeight $volWeight;
  1507.         return $this;
  1508.     }
  1509.     /**
  1510.      * @return int|null
  1511.      */
  1512.     public function getIdCarrierMaster(): ?int
  1513.     {
  1514.         return $this->idCarrierMaster;
  1515.     }
  1516.     /**
  1517.      * @param int|null $idCarrierMaster
  1518.      *
  1519.      * @return Order
  1520.      */
  1521.     public function setIdCarrierMaster(?int $idCarrierMaster): Order
  1522.     {
  1523.         $this->idCarrierMaster $idCarrierMaster;
  1524.         return $this;
  1525.     }
  1526.     /**
  1527.      * @return string|null
  1528.      */
  1529.     public function getIdOrderParent(): ?string
  1530.     {
  1531.         return $this->idOrderParent;
  1532.     }
  1533.     /**
  1534.      * @param string|null $idOrderParent
  1535.      *
  1536.      * @return Order
  1537.      */
  1538.     public function setIdOrderParent(?string $idOrderParent): Order
  1539.     {
  1540.         $this->idOrderParent $idOrderParent;
  1541.         return $this;
  1542.     }
  1543.     /**
  1544.      * @return bool|null
  1545.      */
  1546.     public function getQuantityStockSupplier(): ?bool
  1547.     {
  1548.         return $this->quantityStockSupplier;
  1549.     }
  1550.     /**
  1551.      * @param bool|null $quantityStockSupplier
  1552.      *
  1553.      * @return Order
  1554.      */
  1555.     public function setQuantityStockSupplier(?bool $quantityStockSupplier): Order
  1556.     {
  1557.         $this->quantityStockSupplier $quantityStockSupplier;
  1558.         return $this;
  1559.     }
  1560.     /**
  1561.      * @return bool|null
  1562.      */
  1563.     public function getQuantityFutureStock(): ?bool
  1564.     {
  1565.         return $this->quantityFutureStock;
  1566.     }
  1567.     /**
  1568.      * @param bool|null $quantityFutureStock
  1569.      *
  1570.      * @return Order
  1571.      */
  1572.     public function setQuantityFutureStock(?bool $quantityFutureStock): Order
  1573.     {
  1574.         $this->quantityFutureStock $quantityFutureStock;
  1575.         return $this;
  1576.     }
  1577.     /**
  1578.      * @return int|null
  1579.      */
  1580.     public function getIdPack(): ?int
  1581.     {
  1582.         return $this->idPack;
  1583.     }
  1584.     /**
  1585.      * @param int|null $idPack
  1586.      *
  1587.      * @return Order
  1588.      */
  1589.     public function setIdPack(?int $idPack): Order
  1590.     {
  1591.         $this->idPack $idPack;
  1592.         return $this;
  1593.     }
  1594.     /**
  1595.      * @return \DateTime|null
  1596.      */
  1597.     public function getDeliveredDate(): ?\DateTime
  1598.     {
  1599.         return $this->deliveredDate;
  1600.     }
  1601.     /**
  1602.      * @param \DateTime|null $deliveredDate
  1603.      *
  1604.      * @return Order
  1605.      */
  1606.     public function setDeliveredDate(?\DateTime $deliveredDate): Order
  1607.     {
  1608.         $this->deliveredDate $deliveredDate;
  1609.         return $this;
  1610.     }
  1611.     /**
  1612.      * @return bool|null
  1613.      */
  1614.     public function getPassiveSubject(): ?bool
  1615.     {
  1616.         return $this->passiveSubject;
  1617.     }
  1618.     /**
  1619.      * @param bool|null $passiveSubject
  1620.      *
  1621.      * @return Order
  1622.      */
  1623.     public function setPassiveSubject(?bool $passiveSubject): Order
  1624.     {
  1625.         $this->passiveSubject $passiveSubject;
  1626.         return $this;
  1627.     }
  1628.     /**
  1629.      * @return float|null
  1630.      */
  1631.     public function getRapelAmount(): ?float
  1632.     {
  1633.         return $this->rapelAmount;
  1634.     }
  1635.     /**
  1636.      * @param float|null $rapelAmount
  1637.      *
  1638.      * @return Order
  1639.      */
  1640.     public function setRapelAmount(?float $rapelAmount): Order
  1641.     {
  1642.         $this->rapelAmount $rapelAmount;
  1643.         return $this;
  1644.     }
  1645.     /**
  1646.      * @return bool|null
  1647.      */
  1648.     public function getApi(): ?bool
  1649.     {
  1650.         return $this->api;
  1651.     }
  1652.     /**
  1653.      * @param bool|null $api
  1654.      *
  1655.      * @return Order
  1656.      */
  1657.     public function setApi(?bool $api): Order
  1658.     {
  1659.         $this->api $api;
  1660.         return $this;
  1661.     }
  1662.     /**
  1663.      * @return bool|null
  1664.      */
  1665.     public function getIsSystem(): ?bool
  1666.     {
  1667.         return $this->isSystem;
  1668.     }
  1669.     /**
  1670.      * @param bool|null $isSystem
  1671.      *
  1672.      * @return Order
  1673.      */
  1674.     public function setIsSystem(?bool $isSystem): Order
  1675.     {
  1676.         $this->isSystem $isSystem;
  1677.         return $this;
  1678.     }
  1679.     /**
  1680.      * @return string|null
  1681.      */
  1682.     public function getSellingChannel(): ?string
  1683.     {
  1684.         return $this->sellingChannel;
  1685.     }
  1686.     /**
  1687.      * @param string|null $sellingChannel
  1688.      *
  1689.      * @return Order
  1690.      */
  1691.     public function setSellingChannel(?string $sellingChannel): Order
  1692.     {
  1693.         $this->sellingChannel $sellingChannel;
  1694.         return $this;
  1695.     }
  1696.     /**
  1697.      * @return \DateTime|null
  1698.      */
  1699.     public function getDateAmazon(): ?\DateTime
  1700.     {
  1701.         return $this->dateAmazon;
  1702.     }
  1703.     /**
  1704.      * @param \DateTime|null $dateAmazon
  1705.      *
  1706.      * @return Order
  1707.      */
  1708.     public function setDateAmazon(?\DateTime $dateAmazon): Order
  1709.     {
  1710.         $this->dateAmazon $dateAmazon;
  1711.         return $this;
  1712.     }
  1713.     /**
  1714.      * @return string|null
  1715.      */
  1716.     public function getAdditionalParameters(): ?string
  1717.     {
  1718.         return $this->additionalParameters;
  1719.     }
  1720.     /**
  1721.      * @param string|null $additionalParameters
  1722.      *
  1723.      * @return Order
  1724.      */
  1725.     public function setAdditionalParameters(?string $additionalParameters): Order
  1726.     {
  1727.         $this->additionalParameters $additionalParameters;
  1728.         return $this;
  1729.     }
  1730.     /**
  1731.      * @return OrderDetail[]|ArrayCollection<OrderDetail>
  1732.      */
  1733.     public function getOrderDetails()
  1734.     {
  1735.         return $this->orderDetails;
  1736.     }
  1737.     /**
  1738.      * @param OrderDetail[] $orderDetails
  1739.      *
  1740.      * @return Order
  1741.      */
  1742.     public function setOrderDetails(array $orderDetails): Order
  1743.     {
  1744.         $this->orderDetails $orderDetails;
  1745.         return $this;
  1746.     }
  1747.     public function addOrderDetail(OrderDetail $orderDetail): Order
  1748.     {
  1749.         if (!$this->orderDetails->contains($orderDetail)) {
  1750.             $this->orderDetails[] = $orderDetail;
  1751.         }
  1752.         return $this;
  1753.     }
  1754.     public function getCustomer(): ?Customer
  1755.     {
  1756.         return $this->customer;
  1757.     }
  1758.     public function setCustomer(?Customer $customer): self
  1759.     {
  1760.         $this->customer $customer;
  1761.         return $this;
  1762.     }
  1763.     /**
  1764.      * @return \DateTime|null
  1765.      */
  1766.     public function getEstimatedShippingDate(): ?\DateTime
  1767.     {
  1768.         return $this->estimatedShippingDate;
  1769.     }
  1770.     /**
  1771.      * @param \DateTime|null $estimatedShippingDate
  1772.      *
  1773.      * @return Order
  1774.      */
  1775.     public function setEstimatedShippingDate(?\DateTime $estimatedShippingDate): self
  1776.     {
  1777.         $this->estimatedShippingDate $estimatedShippingDate;
  1778.         return $this;
  1779.     }
  1780.     /**
  1781.      * @return string|null
  1782.      */
  1783.     public function getA4bUuid(): ?string
  1784.     {
  1785.         return $this->a4bUuid;
  1786.     }
  1787.     /**
  1788.      * @param string|null $a4bUuid
  1789.      *
  1790.      * @return Order
  1791.      */
  1792.     public function setA4bUuid(?string $a4bUuid): self
  1793.     {
  1794.         $this->a4bUuid $a4bUuid;
  1795.         return $this;
  1796.     }
  1797.     /**
  1798.      * @return bool|null
  1799.      */
  1800.     public function getDispute(): ?bool
  1801.     {
  1802.         return $this->dispute;
  1803.     }
  1804.     /**
  1805.      * @param bool|null $dispute
  1806.      *
  1807.      * @return Order
  1808.      */
  1809.     public function setDispute(?bool $dispute): self
  1810.     {
  1811.         $this->dispute $dispute;
  1812.         return $this;
  1813.     }
  1814.     /**
  1815.      * @return int
  1816.      */
  1817.     public function getOrderStatus(): int
  1818.     {
  1819.         return $this->orderStatus;
  1820.     }
  1821.     /**
  1822.      * @param int $orderStatus
  1823.      *
  1824.      * @return Order
  1825.      */
  1826.     public function setOrderStatus(int $orderStatus): self
  1827.     {
  1828.         $this->orderStatus $orderStatus;
  1829.         return $this;
  1830.     }
  1831.     /**
  1832.      * @return Cart|null
  1833.      */
  1834.     public function getCart(): ?Cart
  1835.     {
  1836.         return $this->cart;
  1837.     }
  1838.     /**
  1839.      * @param Cart|null $cart
  1840.      *
  1841.      * @return Order
  1842.      */
  1843.     public function setCart(?Cart $cart): Order
  1844.     {
  1845.         $this->cart $cart;
  1846.         return $this;
  1847.     }
  1848.     /**
  1849.      * @return Warehouse
  1850.      */
  1851.     public function getWarehouse(): Warehouse
  1852.     {
  1853.         return $this->warehouse;
  1854.     }
  1855.     /**
  1856.      * @param Warehouse $warehouse
  1857.      *
  1858.      * @return Order
  1859.      */
  1860.     public function setWarehouse(Warehouse $warehouse): self
  1861.     {
  1862.         $this->warehouse $warehouse;
  1863.         return $this;
  1864.     }
  1865.     /**
  1866.      * @return Collection|Invoice[]
  1867.      */
  1868.     public function getInvoice(): Collection
  1869.     {
  1870.         return $this->invoice;
  1871.     }
  1872.     /**
  1873.      * @return bool|null
  1874.      */
  1875.     public function getQuantityStockSupplier3To5(): ?bool
  1876.     {
  1877.         return $this->quantityStockSupplier3To5;
  1878.     }
  1879.     /**
  1880.      * @param bool|null $quantityStockSupplier3To5
  1881.      */
  1882.     public function setQuantityStockSupplier3To5(?bool $quantityStockSupplier3To5): void
  1883.     {
  1884.         $this->quantityStockSupplier3To5 $quantityStockSupplier3To5;
  1885.     }
  1886.     /**
  1887.      * @return string|null
  1888.      */
  1889.     public function getPaymentMethodType(): ?string
  1890.     {
  1891.         return $this->paymentMethodType;
  1892.     }
  1893.     public function setPaymentMethodType(?string $paymentMethodType): void
  1894.     {
  1895.         $this->paymentMethodType $paymentMethodType;
  1896.     }
  1897.     public function getPaypalPayerId(): ?string
  1898.     {
  1899.         return $this->paypalPayerId;
  1900.     }
  1901.     public function setPaypalPayerId(?string $paypalPayerId): Order
  1902.     {
  1903.         $this->paypalPayerId $paypalPayerId;
  1904.         return $this;
  1905.     }
  1906.     public function getPaypalPayerEmail(): ?string
  1907.     {
  1908.         return $this->paypalPayerEmail;
  1909.     }
  1910.     public function setPaypalPayerEmail(?string $paypalPayerEmail): Order
  1911.     {
  1912.         $this->paypalPayerEmail $paypalPayerEmail;
  1913.         return $this;
  1914.     }
  1915.     public function getOrderTax(): ?OrderTax
  1916.     {
  1917.         return $this->orderTax;
  1918.     }
  1919.     public function setOrderTax(float $orderTax): Order
  1920.     {
  1921.         $this->orderTax $orderTax;
  1922.         return $this;
  1923.     }
  1924.     public function getDropshipping(): bool
  1925.     {
  1926.         return $this->dropshipping;
  1927.     }
  1928.     public function isFba(): bool
  1929.     {
  1930.         return $this->fba;
  1931.     }
  1932.     public function setFba(bool $fba): Order
  1933.     {
  1934.         $this->fba $fba;
  1935.         return $this;
  1936.     }
  1937.     public function getPaymentMethodTypeToOdoo(): ?string
  1938.     {
  1939.         if ($this->getPaymentMethodType() === 'mc') {
  1940.             return 'mastercard';
  1941.         }
  1942.         return $this->getPaymentMethodType();
  1943.     }
  1944.     public function getMaxExpeditionDatetime(): ?\DateTime
  1945.     {
  1946.         return $this->maxExpeditionDatetime;
  1947.     }
  1948.     public function setMaxExpeditionDatetime(\DateTime $maxExpeditionDatetime): Order
  1949.     {
  1950.         $this->maxExpeditionDatetime $maxExpeditionDatetime;
  1951.         return $this;
  1952.     }
  1953.     public function getMaxDeliveryDatetime(): ?\DateTime
  1954.     {
  1955.         return $this->maxDeliveryDatetime;
  1956.     }
  1957.     public function setMaxDeliveryDatetime(\DateTime $maxDeliveryDatetime): Order
  1958.     {
  1959.         $this->maxDeliveryDatetime $maxDeliveryDatetime;
  1960.         return $this;
  1961.     }
  1962.     public function getFullRefund(): ?bool
  1963.     {
  1964.         return $this->fullRefund;
  1965.     }
  1966.     public function setFullRefund(?bool $fullRefund): Order
  1967.     {
  1968.         $this->fullRefund $fullRefund;
  1969.         return $this;
  1970.     }
  1971.     public function getLogisticWeight(): ?float
  1972.     {
  1973.         return $this->logisticWeight;
  1974.     }
  1975.     public function setLogisticWeight(?float $logisticWeight): void
  1976.     {
  1977.         $this->logisticWeight $logisticWeight;
  1978.     }
  1979.     public function getScheduledConfirmationDate(): ?\DateTime
  1980.     {
  1981.         if (null === $this->scheduledConfirmationDate) {
  1982.             return null;
  1983.         }
  1984.         if ((int)$this->scheduledConfirmationDate->format('Y') <= 0) {
  1985.             // 0000-00-00 00:00:00 dates
  1986.             return null;
  1987.         }
  1988.         return $this->scheduledConfirmationDate;
  1989.     }
  1990.     public function setScheduledConfirmationDate(?\DateTime $scheduledConfirmationDate): void
  1991.     {
  1992.         $this->scheduledConfirmationDate $scheduledConfirmationDate;
  1993.     }
  1994.     public function getCancellationRequestDate(): ?\DateTime
  1995.     {
  1996.         if (null === $this->cancellationRequestDate) {
  1997.             return null;
  1998.         }
  1999.         if ((int)$this->cancellationRequestDate->format('Y') <= 0) {
  2000.             // 0000-00-00 00:00:00 dates
  2001.             return null;
  2002.         }
  2003.         return $this->cancellationRequestDate;
  2004.     }
  2005.     public function setCancellationRequestDate(?\DateTime $cancellationRequestDate): void
  2006.     {
  2007.         $this->cancellationRequestDate $cancellationRequestDate;
  2008.     }
  2009.     public function getCancellationRequest(): ?OrderCancellationRequest
  2010.     {
  2011.         return $this->cancellationRequest;
  2012.     }
  2013.     public function setCancellationRequest(?OrderCancellationRequest $cancellationRequest): void
  2014.     {
  2015.         $this->cancellationRequest $cancellationRequest;
  2016.     }
  2017.     public function getNotification(): ?OrderNotification
  2018.     {
  2019.         return $this->notification;
  2020.     }
  2021.     public function setNotification(?OrderNotification $notification): void
  2022.     {
  2023.         $this->notification $notification;
  2024.     }
  2025.     public function markAsRefunded(bool $isFullRefund): void
  2026.     {
  2027.         $this->refund true;
  2028.         $this->fullRefund $isFullRefund;
  2029.         $this->dateUpd = new \DateTime();
  2030.     }
  2031. }