<?php
namespace App\Entity\Gos;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Table(name="salesmanago_event", indexes={@ORM\Index(name="id_cart", columns={"id_cart"})})
* @ORM\Entity(repositoryClass="App\Repository\SalesManagoEventRepository")
* @ORM\HasLifecycleCallbacks
*/
class SalesManagoEvent
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @ORM\Column(type="string", name="salesmanago_id", length=100, nullable=true)
*/
private $salesManagoId;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Gos\User", inversedBy="salesManagoEvent")
* @ORM\JoinColumn(name="user_id", referencedColumnName="id")
*/
private $user;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Gos\Orders", inversedBy="salesManagoEvent")
* @ORM\JoinColumn()
*/
private $orders;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Gos\SalesManagoEventType", inversedBy="event")
* @ORM\JoinColumn()
*/
private $eventType;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Gos\SalesManagoActionType", inversedBy="event")
* @ORM\JoinColumn()
*/
private $actionType;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $jsonToSend;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $sentResponse;
/**
* @ORM\Column(type="datetime")
*/
private $createdAt;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $idCart;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Gos\PortalSettings", inversedBy="salesManagoEvents")
* @ORM\JoinColumn(name="portal_settings_id", referencedColumnName="id", onDelete="SET NULL")
*/
private $portalSettings;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updatedAt;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updatedCartAt;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isWaitingForNextInvoiceDate;
/** @ORM\PrePersist() */
public function prePersist()
{
$this->createdAt = new \DateTime();
}
/** @ORM\PreUpdate() */
public function preUpdate()
{
$this->updatedAt = new \DateTime();
}
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set createdAt
*
* @param \DateTime $createdAt
*
* @return SalesManagoEvent
*/
public function setCreatedAt($createdAt)
{
$this->createdAt = $createdAt;
return $this;
}
/**
* Get createdAt
*
* @return \DateTime
*/
public function getCreatedAt()
{
return $this->createdAt;
}
/**
* Set updatedAt
*
* @param \DateTime $updatedAt
*
* @return SalesManagoEvent
*/
public function setUpdatedAt($updatedAt)
{
$this->updatedAt = $updatedAt;
return $this;
}
/**
* Get updatedAt
*
* @return \DateTime
*/
public function getUpdatedAt()
{
return $this->updatedAt;
}
/**
* Set updatedCartAt
*
* @param \DateTime $updatedCartAt
*
* @return SalesManagoEvent
*/
public function setUpdatedCartAt($updatedCartAt)
{
$this->updatedCartAt = $updatedCartAt;
return $this;
}
/**
* Get updatedCartAt
*
* @return \DateTime
*/
public function getUpdatedCartAt()
{
return $this->updatedCartAt;
}
/**
* Constructor
*/
public function __construct()
{
$this->orders = new \Doctrine\Common\Collections\ArrayCollection();
}
/**
* Set jsonToSend
*
* @param string $jsonToSend
*
* @return SalesManagoEvent
*/
public function setJsonToSend($jsonToSend)
{
$this->jsonToSend = $jsonToSend;
return $this;
}
/**
* Get jsonToSend
*
* @return string
*/
public function getJsonToSend()
{
return $this->jsonToSend;
}
/**
* Set sentResponse
*
* @param string $sentResponse
*
* @return SalesManagoEvent
*/
public function setSentResponse($sentResponse)
{
$this->sentResponse = $sentResponse;
return $this;
}
/**
* Get sentResponse
*
* @return string
*/
public function getSentResponse()
{
return $this->sentResponse;
}
/**
* Set user
*
* @param \App\Entity\Gos\User $user
*
* @return SalesManagoEvent
*/
public function setUser(\App\Entity\Gos\User $user = null)
{
$this->user = $user;
return $this;
}
/**
* Get user
*
* @return \App\Entity\Gos\User
*/
public function getUser()
{
return $this->user;
}
/**
* Set event
*
* @param string $event
*
* @return SalesManagoEvent
*/
public function setEvent($event)
{
$this->event = $event;
return $this;
}
/**
* Get event
*
* @return string
*/
public function getEvent()
{
return $this->event;
}
/**
* Set eventType
*
* @param \App\Entity\Gos\SalesManagoEventType $eventType
*
* @return SalesManagoEvent
*/
public function setEventType(\App\Entity\Gos\SalesManagoEventType $eventType = null)
{
$this->eventType = $eventType;
return $this;
}
/**
* Get eventType
*
* @return \App\Entity\Gos\SalesManagoEventType
*/
public function getEventType()
{
return $this->eventType;
}
/**
* Set actionType
*
* @param \App\Entity\Gos\SalesManagoActionType $actionType
*
* @return SalesManagoEvent
*/
public function setActionType(\App\Entity\Gos\SalesManagoActionType $actionType = null)
{
$this->actionType = $actionType;
return $this;
}
/**
* Get actionType
*
* @return \App\Entity\Gos\SalesManagoActionType
*/
public function getActionType()
{
return $this->actionType;
}
/**
* Set orders
*
* @param \App\Entity\Gos\Orders $orders
*
* @return SalesManagoEvent
*/
public function setOrders(\App\Entity\Gos\Orders $orders = null)
{
$this->orders = $orders;
return $this;
}
/**
* Get orders
*
* @return \App\Entity\Gos\Orders
*/
public function getOrders()
{
return $this->orders;
}
/**
* Set salesManagoId
*
* @param string $salesManagoId
*
* @return SalesManagoEvent
*/
public function setSalesManagoId($salesManagoId)
{
$this->salesManagoId = $salesManagoId;
return $this;
}
/**
* Get salesManagoId
*
* @return string
*/
public function getSalesManagoId()
{
return $this->salesManagoId;
}
/**
* Set portalSettings
*
* @param \App\Entity\Gos\PortalSettings $portalSettings
*
* @return SalesManagoEvent
*/
public function setPortalSettings(\App\Entity\Gos\PortalSettings $portalSettings = null)
{
$this->portalSettings = $portalSettings;
return $this;
}
/**
* Get portalSettings
*
* @return \App\Entity\Gos\PortalSettings
*/
public function getPortalSettings()
{
return $this->portalSettings;
}
public function __toString()
{
return (string)$this->getId();
}
/**
* Set idCart
*
* @param integer $idCart
*
* @return SalesManagoEvent
*/
public function setIdCart($idCart)
{
$this->idCart = $idCart;
return $this;
}
/**
* Get idCart
*
* @return integer
*/
public function getIdCart()
{
return $this->idCart;
}
public function getIsWaitingForNextInvoiceDate(): ?bool
{
return $this->isWaitingForNextInvoiceDate;
}
public function setIsWaitingForNextInvoiceDate(?bool $isWaitingForNextInvoiceDate): self
{
$this->isWaitingForNextInvoiceDate = $isWaitingForNextInvoiceDate;
return $this;
}
}