<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use JMS\Serializer\Annotation\Groups;
/**
* @ORM\Table("UsergroupStat")
*
* @ORM\HasLifecycleCallbacks()
*
* @ORM\Entity(repositoryClass="App\Repository\UserGroupStatRepository")
*/
class UserGroupStat
{
/**
* @Groups({"grouplist"})
*
* @ORM\Id()
*
* @ORM\GeneratedValue()
*
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\OneToOne(targetEntity="App\Entity\UserGroup", inversedBy="userGroupStat", cascade={"persist", "remove"})
*
* @ORM\JoinColumn(name="group_id", referencedColumnName="id", nullable=false)
*/
private $userGroup;
/**
* @Groups({"groupdetails", "membergrouplist"})
*
* @ORM\Column(type="integer")
*/
private $post_count = 0;
/**
* @Groups({"groupdetails", "membergrouplist"})
*
* @ORM\Column(type="integer")
*/
private $member_count = 0;
/**
* @Groups({"grouplist"})
*
* @ORM\Column(type="datetime", nullable=true)
*/
private $last_post_at;
/**
* @ORM\Column(type="datetime")
*/
private $created_at;
/**
* @ORM\PrePersist()
*/
public function prePersistValues()
{
if (!$this->getCreatedAt()) {
$this->setCreatedAt(new \DateTime());
}
}
public function getId(): ?int
{
return $this->id;
}
public function getUserGroup(): ?UserGroup
{
return $this->userGroup;
}
public function setUserGroup(UserGroup $userGroup): self
{
$this->userGroup = $userGroup;
return $this;
}
public function getPostCount(): ?int
{
return $this->post_count;
}
public function setPostCount(int $post_count): self
{
$this->post_count = $post_count;
return $this;
}
public function getMemberCount(): ?int
{
return $this->member_count;
}
public function setMemberCount(int $member_count): self
{
$this->member_count = $member_count;
return $this;
}
public function getLastPostAt(): ?\DateTimeInterface
{
return $this->last_post_at;
}
public function setLastPostAt(?\DateTimeInterface $last_post_at): self
{
$this->last_post_at = $last_post_at;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->created_at;
}
public function setCreatedAt(\DateTimeInterface $created_at): self
{
$this->created_at = $created_at;
return $this;
}
}