﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using TimetableWebAPI.Domain.Common;

namespace TimetableWebAPI.Domain.Entities
{
    /// <summary>
    ///     Таблица в базе данных, описывающая город
    /// </summary>
    public class City : EntityBase<Guid>
    {
        #region Инициализаторы

        /// <summary>
        ///     Инициализатор обьекта
        /// </summary>
        public City()
        {
            CreatedAt = DateTime.UtcNow;
            LastUpdatedAt = DateTime.UtcNow;
        }

        #endregion

        #region Свойства объекта

        /// <summary>
        ///     Наименование города
        /// </summary>
        [Required]
        public string Name { get; set; }

        #endregion

        #region Навигационные поля

        /// <summary>
        ///     Возвращает список всех школ, имеющихся в городе
        /// </summary>
        public virtual ICollection<School> Schools { get; set; }

        #endregion
    }
}