using System.ComponentModel.DataAnnotations;
using FoodsharingSiegen.Contracts.Enums;

namespace FoodsharingSiegen.Contracts.Entity
{
    /// <summary>
    /// The audit class (a. beging, 23.05.2022)
    /// </summary>
    public class Audit
    {
        #region Public Properties

        /// <summary>
        /// Gets or sets the value of the created (ab)
        /// </summary>
        public DateTime Created { get; set; }

        /// <summary>
        /// Gets or sets the value of the data 1 (ab)
        /// </summary>
        public string? Data1 { get; set; }

        /// <summary>
        /// Gets or sets the value of the data 2 (ab)
        /// </summary>
        public string? Data2 { get; set; }

        /// <summary>
        /// Gets or sets the value of the id (ab)
        /// </summary>
        [Key] public Guid Id { get; set; }

        /// <summary>
        /// Gets or sets the value of the type (ab)
        /// </summary>
        public AuditType Type { get; set; }

        /// <summary>
        /// Gets or sets the value of the user (ab)
        /// </summary>
        public User? User { get; set; }

        /// <summary>
        /// Gets or sets the value of the user id (ab)
        /// </summary>
        public Guid? UserID { get; set; }

        #endregion
    }
}