<?php
namespace App\Entity;
use Knp\DoctrineBehaviors\Contract\Entity\SoftDeletableInterface;
use Knp\DoctrineBehaviors\Model\SoftDeletable\SoftDeletableTrait;
use Knp\DoctrineBehaviors\Model\Blameable\BlameableTrait;
use Knp\DoctrineBehaviors\Contract\Entity\BlameableInterface;
use Knp\DoctrineBehaviors\Model\Timestampable\TimestampableTrait;
use Knp\DoctrineBehaviors\Contract\Entity\TimestampableInterface;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use Symfony\Component\HttpFoundation\File\File;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* @ORM\Entity
* @ORM\Table(name="orders")
*/
class Order implements BlameableInterface, TimestampableInterface, SoftDeletableInterface {
use BlameableTrait;
use TimestampableTrait;
use SoftDeletableTrait;
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="orders")
*/
private $user;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Cart")
*/
private $cart;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\DeliveryCountry")
*/
private $deliveryCountry;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\DeliveryMethod")
*/
private $deliveryMethod;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PaymentMethod")
*/
private $paymentMethod;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\RebateCode", cascade={"all"}, inversedBy="orders")
*/
private $rebateCode;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\OrderStatus")
*/
private $status;
/**
* @Doctrine\ORM\Mapping\Column(name="total_cost", type="decimal", precision=10, scale=2, nullable=true)
*/
protected $totalCost;
/**
* @Doctrine\ORM\Mapping\Column(name="total_cost_no_rebate", type="decimal", precision=10, scale=2, nullable=true)
*/
protected $totalCostNoRebate;
/**
* @Doctrine\ORM\Mapping\Column(name="shipping_cost", type="decimal", precision=10, scale=2, nullable=true)
*/
protected $shippingCost;
/**
* @var string
*
* @ORM\Column(name="tracking_number", type="string", length=40, nullable=true)
*/
private $trackingNumber;
/**
* @var string
*
* @ORM\Column(name="dotpay_number", type="string", length=40, nullable=true)
*/
private $dotpayNumber;
/**
* @var string
*
* @ORM\Column(name="gopay", type="string", length=40, nullable=true)
*/
private $gopay;
/**
* @var string
*
* @ORM\Column(name="session", type="string", length=40, nullable=true)
*/
private $session;
/**
* @var string
*
* @ORM\Column(name="code", type="string", length=40, nullable=true)
*/
private $code;
/**
* @var string
*
* @ORM\Column(name="notes", type="text", nullable=true)
*/
private $notes;
/**
* @var string
*
* @ORM\Column(name="email", type="string", length=255, nullable=true)
*/
private $email;
/**
* @var string
*
* @ORM\Column(name="phone", type="string", length=255, nullable=true)
*/
private $phone;
/**
* @var string
*
* @ORM\Column(name="ip", type="string", length=40, nullable=true)
*/
private $ip;
/**
* @var string
*
* @ORM\Column(name="user_agent", type="text", nullable=true)
*/
private $userAgent;
/**
* @var string
*
* @ORM\Column(name="rebate_code_content", type="string", length=255, nullable=true)
*/
private $rebateCodeContent;
/**
* @ORM\OneToMany(targetEntity="App\Entity\OrderProduct", mappedBy="order", cascade={"all"})
* @Doctrine\ORM\Mapping\OrderBy({"id" = "DESC"})
*/
protected $products;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Currency")
*/
private $currency;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Language")
*/
private $language;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Address", cascade={"all"})
* @ORM\JoinColumn(name="address_id", referencedColumnName="id", onDelete="CASCADE")
*/
protected $address;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Address", cascade={"all"})
* @ORM\JoinColumn(name="invoice_address_id", referencedColumnName="id", onDelete="CASCADE")
*/
protected $invoiceAddress;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Address", cascade={"all"})
* @ORM\JoinColumn(name="delivery_address_id", referencedColumnName="id", onDelete="CASCADE")
*/
protected $deliveryAddress;
/**
* @Doctrine\ORM\Mapping\Column(type="boolean", name="paid", nullable=true)
*/
protected $paid = false;
/**
* @Doctrine\ORM\Mapping\Column(name="send_to_heureka", type="boolean", nullable=true)
*/
protected $sendToHeureka = false;
/**
* @Doctrine\ORM\Mapping\Column(type="boolean", name="confirmed", nullable=true)
*/
protected $confirmed = false;
/**
* @var \DateTime
*
* @ORM\Column(name="sent_date", type="datetime", nullable=true)
*/
private $sentDate;
/**
* @return \DateTime
*/
public function getCommentRequestSendDate()
{
return $this->commentRequestSendDate;
}
/**
* @param \DateTime $commentRequestSendDate
*/
public function setCommentRequestSendDate(\DateTime $commentRequestSendDate): void
{
$this->commentRequestSendDate = $commentRequestSendDate;
}
/**
* @var \DateTime
*
* @ORM\Column(name="comment_request_send_date", type="datetime", nullable=true)
*/
private $commentRequestSendDate;
/**
* @Doctrine\ORM\Mapping\Column(type="boolean", name="phone_request", nullable=true)
*/
protected $phoneRequest = false;
/**
* @var \DateTime
*
* @ORM\Column(name="ga4sent_data", type="datetime", nullable=true)
*/
private $ga4SentData;
/**
* @var string
*
* @ORM\Column(name="pay_uredirect_url", type="text", nullable=true)
*/
private $payURedirectUrl;
/**
* @var string
*
* @ORM\Column(name="pay_uorder_id", type="text", nullable=true)
*/
private $payUOrderId;
/**
* @var string
*
* @ORM\Column(name="pay_upayment_status", type="text", nullable=true)
*/
private $payUPaymentStatus;
public $storeDeliveryAddress;
public $storeInvoiceAddress;
public $shippingNumber;
public $PCStatus;
public $PCNotConfirmed;
public $PCStatusId;
public $PCDataAvailable;
public $plannedSendDate;
public $pcInvoices;
public $pcProFormas;
public function getLanguage(): ?Language
{
return $this->language;
}
public function setLanguage(?Language $language): self
{
$this->language = $language;
return $this;
}
/**
* Constructor
*/
public function __construct()
{
$this->products = new \Doctrine\Common\Collections\ArrayCollection();
$this->storeDeliveryAddress = new Address();
$this->storeInvoiceAddress = new Address();
}
public function getTotalCostBrutto() {
//return round($this->getTotalCost()*1.23,2);
return $this->getTotalCost();
}
public function getOrderCeneoString() {
$produktyString = '';
/** @var $product OrderProduct */
foreach ($this->getOrderProducts() as $product) {
$produktyString = $produktyString.'#'.$product->getProduct()->getId();
}
return $produktyString;
}
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set totalCost
*
* @param string $totalCost
*
* @return Order
*/
public function setTotalCost($totalCost)
{
$this->totalCost = $totalCost;
return $this;
}
/**
* Get totalCost
*
* @return string
*/
public function getTotalCost()
{
return $this->totalCost;
}
/**
* Set shippingCost
*
* @param string $shippingCost
*
* @return Order
*/
public function setShippingCost($shippingCost)
{
$this->shippingCost = $shippingCost;
return $this;
}
/**
* Get shippingCost
*
* @return float
*/
public function getShippingCost()
{
return $this->shippingCost;
}
/**
* Set session
*
* @param string $session
*
* @return Order
*/
public function setSession($session)
{
$this->session = $session;
return $this;
}
/**
* Get session
*
* @return string
*/
public function getSession()
{
return $this->session;
}
/**
* Set ip
*
* @param string $ip
*
* @return Order
*/
public function setIp($ip)
{
$this->ip = $ip;
return $this;
}
/**
* Get ip
*
* @return string
*/
public function getIp()
{
return $this->ip;
}
/**
* Set userAgent
*
* @param string $userAgent
*
* @return Order
*/
public function setUserAgent($userAgent)
{
$this->userAgent = $userAgent;
return $this;
}
/**
* Get userAgent
*
* @return string
*/
public function getUserAgent()
{
return $this->userAgent;
}
/**
* Set rebateCodeContent
*
* @param string $rebateCodeContent
*
* @return Order
*/
public function setRebateCodeContent($rebateCodeContent)
{
$this->rebateCodeContent = $rebateCodeContent;
return $this;
}
/**
* Get rebateCodeContent
*
* @return string
*/
public function getRebateCodeContent()
{
return $this->rebateCodeContent;
}
/**
* Set user
*
* @param \App\Entity\User $user
*
* @return Order
*/
public function setUser(\App\Entity\User $user = null)
{
$this->user = $user;
return $this;
}
/**
* Get user
*
* @return \App\Entity\User
*/
public function getUser()
{
return $this->user;
}
/**
* Set cart
*
* @param \App\Entity\Cart $cart
*
* @return Order
*/
public function setCart(\App\Entity\Cart $cart = null)
{
$this->cart = $cart;
return $this;
}
/**
* Get cart
*
* @return \App\Entity\Cart
*/
public function getCart()
{
return $this->cart;
}
/**
* Set deliveryCountry
*
* @param \App\Entity\DeliveryCountry $deliveryCountry
*
* @return Order
*/
public function setDeliveryCountry(\App\Entity\DeliveryCountry $deliveryCountry = null)
{
$this->deliveryCountry = $deliveryCountry;
return $this;
}
/**
* Get deliveryCountry
*
* @return \App\Entity\DeliveryCountry
*/
public function getDeliveryCountry()
{
return $this->deliveryCountry;
}
/**
* Set deliveryMethod
*
* @param \App\Entity\DeliveryMethod $deliveryMethod
*
* @return Order
*/
public function setDeliveryMethod(\App\Entity\DeliveryMethod $deliveryMethod = null)
{
$this->deliveryMethod = $deliveryMethod;
return $this;
}
/**
* Get deliveryMethod
*
* @return \App\Entity\DeliveryMethod
*/
public function getDeliveryMethod()
{
return $this->deliveryMethod;
}
/**
* Set paymentMethod
*
* @param \App\Entity\PaymentMethod $paymentMethod
*
* @return Order
*/
public function setPaymentMethod(\App\Entity\PaymentMethod $paymentMethod = null)
{
$this->paymentMethod = $paymentMethod;
return $this;
}
/**
* Get paymentMethod
*
* @return \App\Entity\PaymentMethod
*/
public function getPaymentMethod()
{
return $this->paymentMethod;
}
/**
* Set rebateCode
*
* @param \App\Entity\RebateCode $rebateCode
*
* @return Order
*/
public function setRebateCode(\App\Entity\RebateCode $rebateCode = null)
{
$this->rebateCode = $rebateCode;
return $this;
}
/**
* Get rebateCode
*
* @return \App\Entity\RebateCode
*/
public function getRebateCode()
{
return $this->rebateCode;
}
/**
* Add product
*
* @param \App\Entity\OrderProduct $product
*
* @return Order
*/
public function addProduct(\App\Entity\OrderProduct $product)
{
$this->products[] = $product;
return $this;
}
/**
* Remove product
*
* @param \App\Entity\OrderProduct $product
*/
public function removeProduct(\App\Entity\OrderProduct $product)
{
$this->products->removeElement($product);
}
/**
* Get products
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getOnlyOrderProducts()
{
return $this->products;
}
/**
* Get products
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getProducts()
{
if ($this->products->count() == 0) {
if (is_object($this->getCart())) {
return $this->getCart()->getProducts();
}
}
return $this->products;
}
public function getOrderProducts() {
return $this->products;
}
public function getProductsAsTablePl() {
$table = '<table style="width:100%;">';
$table .= '<tr style="font-weight: bold"><td>Nazwa</td><td></td><td>Ilość</td><td>Cena</td></tr>';
/** @var $product OrderProduct */
foreach ($this->getProducts() as $product) {
$equipments = '';
if ($product->getEquipments()->count()) {
$equipments = '<br/>Wyposażenie dodatkowe: <Br/><strong>'.$product->getEquipmentAsString().'</strong>';
}
$table .= '<tr><td>'.$product->getProductName().$equipments.'</td><td></td><td>'.$product->getQuantity().'</td><td>'.$product->getPrice().'</td></tr>';
if ($product->getParameterValues()->count()) {
$variants = '';
/** @var $value OrderProductParameterValue */
foreach ($product->getParameterValues() as $value) {
$variants .= '<strong>'.$value->getParameter()->getName().': </strong>'.$value->getParameterValue()->getName().'<br/>';
}
$table .= '<tr><td colspan="3">Wariant produktu: <em><br/>'.$variants.'</em></td></tr>';
}
}
$table .= '<tr><td colspan="3" style="height:5px;"></td>';
$table .= '</table>';
return $table;
}
public function getProductsAsTableCz() {
$table = '<table style="width: 100%;">';
$table .= '<tr style="font-weight: bold"><td>Název produktu</td><td></td><td>Počet</td></tr>';
/** @var $product OrderProduct */
foreach ($this->getProducts() as $product) {
$equipments = '';
if ($product->getEquipments()->count()) {
$equipments = '<br/>Lze objednat dodatečné vybavení: <Br/>'.$product->getEquipmentAsString();
}
$table .= '<tr><td>'.$product->getProductName().$equipments.'</td><td></td><td>'.$product->getQuantity().'</td></tr>';
if ($product->getParameterValues()->count()) {
$variants = '';
/** @var $value OrderProductParameterValue */
foreach ($product->getParameterValues() as $value) {
$variants .= '<strong>'.$value->getParameter()->getName().': </strong>'.$value->getParameterValue()->getName().'<br/>';
}
$table .= '<tr><td colspan="3">Varianta: <em><br/>'.$variants.'</em></td></tr>';
}
}
$table .= '<tr><td colspan="3" style="height:5px;"></td>';
$table .= '</table>';
return $table;
}
public function getProductsAsTableSk() {
$table = '<table style="width: 100%;">';
$table .= '<tr style="font-weight: bold"><td>Název produktu</td><td></td><td>Počet</td></tr>';
/** @var $product OrderProduct */
foreach ($this->getProducts() as $product) {
$equipments = '';
if ($product->getEquipments()->count()) {
$equipments = '<br/>Lze objednat dodatečné vybavení: <Br/>'.$product->getEquipmentAsString();
}
$table .= '<tr><td>'.$product->getProductName().$equipments.'</td><td></td><td>'.$product->getQuantity().'</td></tr>';
if ($product->getParameterValues()->count()) {
$variants = '';
/** @var $value OrderProductParameterValue */
foreach ($product->getParameterValues() as $value) {
$variants .= '<strong>'.$value->getParameter()->getName().': </strong>'.$value->getParameterValue()->getName().'<br/>';
}
$table .= '<tr><td colspan="3">Varianta: <em><br/>'.$variants.'</em></td></tr>';
}
}
$table .= '<tr><td colspan="3" style="height:5px;"></td>';
$table .= '</table>';
return $table;
}
public function getProductsAsTableRo() {
$table = '<table style="width: 100%;">';
$table .= '<tr style="font-weight: bold"><td>Denumire</td><td></td><td>cantitate</td></tr>';
/** @var $product OrderProduct */
foreach ($this->getProducts() as $product) {
$equipments = '';
if ($product->getEquipments()->count()) {
$equipments = '<br/>Echipament adițional: <Br/>'.$product->getEquipmentAsString();
}
$table .= '<tr><td>'.$product->getProductName().$equipments.'</td><td></td><td>'.$product->getQuantity().'</td></tr>';
if ($product->getParameterValues()->count()) {
$variants = '';
/** @var $value OrderProductParameterValue */
foreach ($product->getParameterValues() as $value) {
$variants .= '<strong>'.$value->getParameter()->getName().': </strong>'.$value->getParameterValue()->getName().'<br/>';
}
$table .= '<tr><td colspan="3">Varianta: <em><br/>'.$variants.'</em></td></tr>';
}
}
$table .= '<tr><td colspan="3" style="height:5px;"></td>';
$table .= '</table>';
return $table;
}
/**
* Set address
*
* @param \App\Entity\Address $address
*
* @return Order
*/
public function setAddress(\App\Entity\Address $address = null)
{
$this->deliveryAddress = $address;
return $this;
}
/**
* Get address
*
* @return \App\Entity\Address
*/
public function getAddress()
{
return $this->deliveryAddress;
}
/**
* Set invoiceAddress
*
* @param \App\Entity\Address $invoiceAddress
*
* @return Order
*/
public function setInvoiceAddress(\App\Entity\Address $invoiceAddress = null)
{
$this->invoiceAddress = $invoiceAddress;
return $this;
}
/**
* Get invoiceAddress
*
* @return \App\Entity\Address
*/
public function getInvoiceAddress()
{
return $this->invoiceAddress;
}
/**
* Set deliveryAddress
*
* @param \App\Entity\Address $deliveryAddress
*
* @return Order
*/
public function setDeliveryAddress(\App\Entity\Address $deliveryAddress = null)
{
$this->deliveryAddress = $deliveryAddress;
return $this;
}
/**
* Get deliveryAddress
*
* @return \App\Entity\Address
*/
public function getDeliveryAddress()
{
return $this->deliveryAddress;
}
/**
* Set totalCostNoRebate
*
* @param string $totalCostNoRebate
*
* @return Order
*/
public function setTotalCostNoRebate($totalCostNoRebate)
{
$this->totalCostNoRebate = $totalCostNoRebate;
return $this;
}
/**
* Get totalCostNoRebate
*
* @return string
*/
public function getTotalCostNoRebate()
{
return $this->totalCostNoRebate;
}
/**
* Set currency
*
* @param \App\Entity\Currency $currency
*
* @return Order
*/
public function setCurrency(\App\Entity\Currency $currency = null)
{
$this->currency = $currency;
return $this;
}
/**
* Get currency
*
* @return \App\Entity\Currency
*/
public function getCurrency()
{
return $this->currency;
}
/**
* Set email
*
* @param string $email
*
* @return Order
*/
public function setEmail($email)
{
$this->email = $email;
return $this;
}
/**
* Get email
*
* @return string
*/
public function getEmail()
{
return $this->email;
}
/**
* Set phone
*
* @param string $phone
*
* @return Order
*/
public function setPhone($phone)
{
$this->phone = $phone;
return $this;
}
/**
* Get phone
*
* @return string
*/
public function getPhone()
{
return $this->phone;
}
/**
* Set notes
*
* @param string $notes
*
* @return Order
*/
public function setNotes($notes)
{
$this->notes = $notes;
return $this;
}
/**
* Get notes
*
* @return string
*/
public function getNotes()
{
return $this->notes;
}
/**
* Set trackingNumber
*
* @param string $trackingNumber
*
* @return Order
*/
public function setTrackingNumber($trackingNumber)
{
$this->trackingNumber = $trackingNumber;
return $this;
}
/**
* Get trackingNumber
*
* @return string
*/
public function getTrackingNumber()
{
return $this->trackingNumber;
}
/**
* Set code
*
* @param string $code
*
* @return Order
*/
public function setCode($code)
{
$this->code = $code;
return $this;
}
/**
* Get code
*
* @return string
*/
public function getCode()
{
return $this->code;
}
/**
* Set status
*
* @param \App\Entity\OrderStatus $status
*
* @return Order
*/
public function setStatus(\App\Entity\OrderStatus $status = null)
{
$this->status = $status;
return $this;
}
/**
* Get status
*
* @return \App\Entity\OrderStatus
*/
public function getStatus()
{
return $this->status;
}
/**
* Set paid
*
* @param boolean $paid
*
* @return Order
*/
public function setPaid($paid)
{
$this->paid = $paid;
return $this;
}
/**
* Get paid
*
* @return boolean
*/
public function getPaid()
{
return $this->paid;
}
/**
* Set confirmed
*
* @param boolean $confirmed
*
* @return Order
*/
public function setConfirmed($confirmed)
{
$this->confirmed = $confirmed;
return $this;
}
/**
* Get confirmed
*
* @return boolean
*/
public function getConfirmed()
{
return $this->confirmed;
}
/**
* Set sentDate
*
* @param \DateTime $sentDate
*
* @return Order
*/
public function setSentDate($sentDate)
{
$this->sentDate = $sentDate;
return $this;
}
/**
* Get sentDate
*
* @return \DateTime
*/
public function getSentDate()
{
return $this->sentDate;
}
public function getDotpayNumber(): ?string
{
return $this->dotpayNumber;
}
public function setDotpayNumber(?string $dotpayNumber): self
{
$this->dotpayNumber = $dotpayNumber;
return $this;
}
/**
* @return string
*/
public function getGopay()
{
return $this->gopay;
}
/**
* @param string $gopay
*/
public function setGopay($gopay)
{
$this->gopay = $gopay;
}
public function getDiscount() {
if ($this->getRebateCode()) {
return (round(($this->getTotalCostNoRebate() - $this->getTotalCost())/1.21,2));
}
}
public function getProductsForCjWithRebate() {
if ($this->getRebateCode() and $this->getRebateCode()->getCodeType() == RebateCode::CODE_TYPE_PERCENT) {
$s = '';
/** @var $product OrderProduct */
$c = 0;
foreach ($this->getOrderProducts() as $product) {
$c = $c + 1;
$disc = 1 - ($this->getRebateCode()->getPercent()/100);
$pr = $product->getPrice()/$disc;
$price = round($pr/1.21,2);
$s .= '&item'.$c.'='.$product->getProduct()->getId().'&amt'.$c.'='.$price.'&qty'.$c.'='.$product->getQuantity();
}
$s .= '&COUPON='.$this->getRebateCode()->getCode().'&DISCOUNT='.$this->getDiscount();
return $s;
} else {
return $this->productsForCj();
}
}
public function productsForCj() {
//&item1=[item_id]&amt1=[item_unit_price]&qty1=[item_quantity]
$s = '';
/** @var $product OrderProduct */
$c = 0;
foreach ($this->getOrderProducts() as $product) {
$c = $c + 1;
$price = round($product->getPrice()/1.21,2);
$s .= '&item'.$c.'='.$product->getProduct()->getId().'&amt'.$c.'='.$price.'&qty'.$c.'='.$product->getQuantity();
}
return $s;
}
/**
* @return mixed
*/
public function getPhoneRequest()
{
return $this->phoneRequest;
}
/**
* @param mixed $phoneRequest
*/
public function setPhoneRequest($phoneRequest)
{
$this->phoneRequest = $phoneRequest;
}
/**
* @return bool
*/
public function isSendToHeureka()
{
return $this->sendToHeureka;
}
/**
* @param bool $sendToHeureka
*/
public function setSendToHeureka(bool $sendToHeureka)
{
$this->sendToHeureka = $sendToHeureka;
}
/**
* @return \DateTime
*/
public function getGa4SentData()
{
return $this->ga4SentData;
}
/**
* @param \DateTime $ga4SentData
*/
public function setGa4SentData(\DateTime $ga4SentData)
{
$this->ga4SentData = $ga4SentData;
}
public function getSendToHeureka(): ?bool
{
return $this->sendToHeureka;
}
/**
* @return string
*/
public function getPayURedirectUrl()
{
return $this->payURedirectUrl;
}
/**
* @param string $payURedirectUrl
*/
public function setPayURedirectUrl($payURedirectUrl)
{
$this->payURedirectUrl = $payURedirectUrl;
}
/**
* @return string
*/
public function getPayUOrderId()
{
return $this->payUOrderId;
}
/**
* @param string $payUOrderId
*/
public function setPayUOrderId($payUOrderId)
{
$this->payUOrderId = $payUOrderId;
}
/**
* @return string
*/
public function getPayUPaymentStatus()
{
return $this->payUPaymentStatus;
}
/**
* @param string $payUPaymentStatus
*/
public function setPayUPaymentStatus($payUPaymentStatus): void
{
$this->payUPaymentStatus = $payUPaymentStatus;
}
}