using Microsoft.EntityFrameworkCore;
using PARR.Domain.Constants;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace PARR.Domain.Entities.TemplateEntities
{
    /// <summary>
    /// Шаблоны находящиеся в процессе переименования
    /// </summary>
    [Table("TemplateRenamePendings", Schema = DatabaseSchemas.Template)]
    [Comment("Шаблоны находящиеся в процессе переименования")]
    [Index(nameof(OldName), IsUnique = true)]
    public class TemplateRenamePending
    {
        [Key]
        public Guid TemplateId { get; set; }

        public DateTimeOffset DateCreated { get; set; }

        /// <summary>
        /// Старое имя шаблона
        /// </summary>
        [Comment("Старое имя шаблона")]
        public required string OldName { get; set; }


        [ForeignKey(nameof(TemplateId))]
        public required Template Template { get; set; }
    }
}
