using Microsoft.EntityFrameworkCore;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;

namespace Elwig.Models.Entities {
    [Table("wb_kg"), PrimaryKey("KgNr")]
    public class WbKg {
        [Column("kgnr")]
        public int KgNr { get; set; }

        [Column("glnr")]
        public int? GlNr { get; set; }

        [ForeignKey("KgNr")]
        public virtual AT_Kg AtKg { get; private set; }

        [ForeignKey("GlNr")]
        public virtual WbGl Gl { get; private set; }

        [InverseProperty("Kg")]
        public virtual ISet<WbRd> Rds { get; private set; }

        [NotMapped]
        public WbGem Gem => AtKg.Gem.WbGem;

        [NotMapped]
        public WineOrigin Origin => Gem.Origin;
    }
}