Files
elwig/Elwig/Models/Entities/DeliveryAncmt.cs
Lorenz Stechauner f48c6a02cb
All checks were successful
Test / Run tests (push) Successful in 2m49s
[#54] Member: Add IsJuridicalPerson
2024-08-12 15:18:34 +02:00

57 lines
1.8 KiB
C#

using Elwig.Helpers;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
namespace Elwig.Models.Entities {
[Table("delivery_announcement"), PrimaryKey("Year", "DsNr", "MgNr", "SortId")]
public class DeliveryAncmt {
[Column("year")]
public int Year { get; set; }
[Column("dsnr")]
public int DsNr { get; set; }
[Column("mgnr")]
public int MgNr { get; set; }
[Column("sortid")]
public required string SortId { get; set; }
[Column("weight")]
public int Weight { get; set; }
[Column("type")]
public required string Type { get; set; }
[Column("ctime"), DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public long CTime { get; private set; }
[NotMapped]
public DateTime CreatedTimestamp => DateTimeOffset.FromUnixTimeSeconds(CTime).LocalDateTime;
[Column("mtime"), DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public long MTime { get; private set; }
[NotMapped]
public DateTime ModifiedTimestamp => DateTimeOffset.FromUnixTimeSeconds(MTime).LocalDateTime;
[ForeignKey("Year, DsNr")]
public virtual DeliverySchedule Schedule { get; private set; } = null!;
[ForeignKey("MgNr")]
public virtual Member Member { get; private set; } = null!;
[ForeignKey("SortId")]
public virtual WineVar Variety { get; private set; } = null!;
public int SearchScore(IEnumerable<string> keywords) {
return Utils.GetSearchScore([
Schedule.Description,
Member.Name, Member.MiddleName, Member.GivenName,
Member.BillingAddress?.FullName,
], keywords);
}
}
}