using System; using Volo.Abp.Domain.Entities.Auditing; using Volo.Abp.MultiTenancy; namespace Kurs.Platform.Entities; public class BlogPost : FullAuditedEntity, IMultiTenant { public Guid? TenantId { get; set; } public string Title { get; set; } public string Slug { get; set; } public string ContentTr { get; set; } public string ContentEn { get; set; } public string Summary { get; set; } public string CoverImage { get; set; } public string ReadTime { get; set; } public Guid CategoryId { get; set; } public virtual BlogCategory Category { get; set; } public Guid AuthorId { get; set; } public int? ViewCount { get; set; } = 0; public int? LikeCount { get; set; } = 0; public int? CommentCount { get; set; } = 0; public bool IsPublished { get; set; } = false; public DateTime? PublishedAt { get; set; } public void Publish() { IsPublished = true; PublishedAt = DateTime.UtcNow; } public void Unpublish() { IsPublished = false; PublishedAt = null; } }