using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Enum;
namespace Pf2e.Database.Model.Structure.BackgroundRelation;
///
/// Элемент набора связей между предысторией и тренируемым навыком.
///
public class BackgroundTraining
{
///
/// Идентификатор элемента набора связей между предысторией и тренируемым навыком.
///
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[Column(Order = 1)]
[Comment("Идентификатор")]
public int Id { get; set; }
///
/// Идентификатор предыстории, к которой относится тренировка.
///
[Column(Order = 2)]
[Comment("Идентификатор предыстории")]
public int BackgroundId { get; set; }
///
/// Идентификатор тренируемого навыка.
///
[Column(Order = 3)]
[Comment("Идентификатор тренируемого навыка")]
public int TrainingId { get; set; }
///
/// Ранг тренировки, который получает персонаж при выборе данной предыстории.
///
[Column(Order = 4)]
[Comment("Ранг тренировки")]
public TrainingRank Rank { get; set; }
///
/// Предыстория, к которой относится тренировка.
///
[JsonIgnore]
public Background Background { get; set; } = null!;
///
/// Тренируемый навык, который получает персонаж при выборе данной предыстории.
///
public Training Training { get; set; } = null!;
}