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

namespace IWS5.DatabaseAccess.IwsDataModels;

[Table("ATExportDefinition")]
public partial class AtexportDefinition
{
    [Key]
    public int Id { get; set; }

    public int ProcessId { get; set; }

    public int? ExportTypeId { get; set; }

    public int? DoneFlagId { get; set; }

    public int? ExportFileFormatId { get; set; }

    public int TemplateId { get; set; }

    [ForeignKey("DoneFlagId")]
    [InverseProperty("AtexportDefinitions")]
    public virtual AtexportFlagTxt? DoneFlag { get; set; }

    [ForeignKey("ExportFileFormatId")]
    [InverseProperty("AtexportDefinitions")]
    public virtual AtimportDocumentType? ExportFileFormat { get; set; }

    [ForeignKey("ExportTypeId")]
    [InverseProperty("AtexportDefinitions")]
    public virtual AtexportType? ExportType { get; set; }

    [ForeignKey("TemplateId")]
    [InverseProperty("AtexportDefinitions")]
    public virtual Attemplate Template { get; set; } = null!;

    [ForeignKey("ExportDefinitionId")]
    [InverseProperty("ExportDefinitions")]
    public virtual ICollection<AtexportLocation> ExportLocations { get; set; } = new List<AtexportLocation>();
}
