2025-06-23 21:22:11 +00:00
|
|
|
using System;
|
|
|
|
|
using Volo.Abp.Domain.Entities.Auditing;
|
2025-08-20 12:04:48 +00:00
|
|
|
using Volo.Abp.MultiTenancy;
|
2025-06-23 21:22:11 +00:00
|
|
|
|
|
|
|
|
namespace Kurs.Platform.Entities;
|
|
|
|
|
|
2025-08-20 15:00:58 +00:00
|
|
|
public class BlogPost : FullAuditedEntity<Guid>, IMultiTenant
|
2025-06-23 21:22:11 +00:00
|
|
|
{
|
|
|
|
|
public Guid? TenantId { get; set; }
|
2025-10-07 11:19:12 +00:00
|
|
|
|
2025-06-23 21:22:11 +00:00
|
|
|
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; }
|
|
|
|
|
|
2025-08-20 19:26:08 +00:00
|
|
|
public int? ViewCount { get; set; } = 0;
|
|
|
|
|
public int? LikeCount { get; set; } = 0;
|
|
|
|
|
public int? CommentCount { get; set; } = 0;
|
2025-06-23 21:22:11 +00:00
|
|
|
|
2025-08-20 19:26:08 +00:00
|
|
|
public bool IsPublished { get; set; } = false;
|
2025-06-23 21:22:11 +00:00
|
|
|
public DateTime? PublishedAt { get; set; }
|
|
|
|
|
|
|
|
|
|
public void Publish()
|
|
|
|
|
{
|
|
|
|
|
IsPublished = true;
|
|
|
|
|
PublishedAt = DateTime.UtcNow;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void Unpublish()
|
|
|
|
|
{
|
|
|
|
|
IsPublished = false;
|
|
|
|
|
PublishedAt = null;
|
|
|
|
|
}
|
|
|
|
|
}
|