mautic / app /bundles /LeadBundle /Entity /PointsChangeLog.php
chrisbryan17's picture
Upload folder using huggingface_hub
d2897cd verified
<?php
namespace Mautic\LeadBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Mautic\CoreBundle\Doctrine\Mapping\ClassMetadataBuilder;
use Mautic\CoreBundle\Entity\IpAddress;
use Mautic\PointBundle\Entity\Group;
class PointsChangeLog
{
public const TABLE_NAME = 'lead_points_change_log';
/**
* @var string
*/
private $id;
/**
* @var Lead
*/
private $lead;
/**
* @var IpAddress|null
*/
private $ipAddress;
/**
* @var string
*/
private $type;
/**
* @var string
*/
private $eventName;
/**
* @var string
*/
private $actionName;
/**
* @var int
*/
private $delta;
/**
* @var \DateTimeInterface
*/
private $dateAdded;
private ?Group $group = null;
public static function loadMetadata(ORM\ClassMetadata $metadata): void
{
$builder = new ClassMetadataBuilder($metadata);
$builder->setTable(self::TABLE_NAME)
->setCustomRepositoryClass(PointsChangeLogRepository::class)
->addIndex(['date_added'], 'point_date_added');
$builder->addBigIntIdField();
$builder->addLead(false, 'CASCADE', false, 'pointsChangeLog');
$builder->addIpAddress(true);
$builder->createField('type', 'text')
->length(50)
->build();
$builder->createField('eventName', 'string')
->columnName('event_name')
->build();
$builder->createField('actionName', 'string')
->columnName('action_name')
->build();
$builder->addField('delta', 'integer');
$builder->createManyToOne('group', Group::class)
->addJoinColumn('group_id', 'id', true, false, 'CASCADE')
->build();
$builder->addDateAdded();
}
/**
* Get id.
*/
public function getId(): int
{
return (int) $this->id;
}
/**
* Set type.
*
* @param string $type
*
* @return PointsChangeLog
*/
public function setType($type)
{
$this->type = $type;
return $this;
}
/**
* Get type.
*
* @return string
*/
public function getType()
{
return $this->type;
}
/**
* Set eventName.
*
* @param string $eventName
*
* @return PointsChangeLog
*/
public function setEventName($eventName)
{
$this->eventName = $eventName;
return $this;
}
/**
* Get eventName.
*
* @return string
*/
public function getEventName()
{
return $this->eventName;
}
/**
* Set actionName.
*
* @param string $actionName
*
* @return PointsChangeLog
*/
public function setActionName($actionName)
{
$this->actionName = $actionName;
return $this;
}
/**
* Get actionName.
*
* @return string
*/
public function getActionName()
{
return $this->actionName;
}
/**
* Set delta.
*
* @param int $delta
*
* @return PointsChangeLog
*/
public function setDelta($delta)
{
$this->delta = $delta;
return $this;
}
/**
* Get delta.
*
* @return int
*/
public function getDelta()
{
return $this->delta;
}
/**
* Set dateAdded.
*
* @param \DateTime $dateAdded
*
* @return PointsChangeLog
*/
public function setDateAdded($dateAdded)
{
$this->dateAdded = $dateAdded;
return $this;
}
/**
* Get dateAdded.
*
* @return \DateTimeInterface
*/
public function getDateAdded()
{
return $this->dateAdded;
}
/**
* Set lead.
*
* @return PointsChangeLog
*/
public function setLead(Lead $lead)
{
$this->lead = $lead;
return $this;
}
/**
* Get lead.
*
* @return Lead
*/
public function getLead()
{
return $this->lead;
}
/**
* @return PointsChangeLog
*/
public function setIpAddress(IpAddress $ipAddress)
{
$this->ipAddress = $ipAddress;
return $this;
}
/**
* @return IpAddress
*/
public function getIpAddress()
{
return $this->ipAddress;
}
public function getGroup(): ?Group
{
return $this->group;
}
public function setGroup(Group $group): void
{
$this->group = $group;
}
}