using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; namespace Elwig.Models { [Table("payment_variant"), PrimaryKey("Year", "AvNr")] public class PaymentVar { [Column("year")] public int Year { get; set; } [Column("avnr")] public int AvNr { get; set; } [Column("name")] public string Name { get; set; } [Column("date")] public string DateString { get; set; } [NotMapped] public DateOnly Date { get => DateOnly.ParseExact(DateString, "yyyy-MM-dd"); set => DateString = value.ToString("yyyy-MM-dd"); } [Column("transfer_date")] public string? TransferDateString { get; set; } [NotMapped] public DateOnly? TransferDate { get => TransferDateString != null ? DateOnly.ParseExact(TransferDateString, "yyyy-MM-dd") : null; set => TransferDateString = value?.ToString("yyyy-MM-dd"); } [Column("test_variant")] public bool TestVariant { get; set; } [Column("calc_time")] public int? CalcTime { get; set; } [Column("bucket_1_name")] public string? Bucket1Name { get; set; } [Column("bucket_2_name")] public string? Bucket2Name { get; set; } [Column("bucket_3_name")] public string? Bucket3Name { get; set; } [Column("bucket_4_name")] public string? Bucket4Name { get; set; } [Column("bucket_5_name")] public string? Bucket5Name { get; set; } [Column("bucket_6_name")] public string? Bucket6Name { get; set; } [Column("bucket_7_name")] public string? Bucket7Name { get; set; } [Column("bucket_8_name")] public string? Bucket8Name { get; set; } [Column("bucket_9_name")] public string? Bucket9Name { get; set; } [Column("comment")] public string? Comment { get; set; } [Column("data")] public string Data { get; set; } [ForeignKey("Year")] public virtual Season Season { get; private set; } [InverseProperty("Variant")] public virtual ISet MemberPayments { get; private set; } } }