[#14] Models: Add DeliveryAncmt
This commit is contained in:
56
Elwig/Models/Entities/DeliveryAncmt.cs
Normal file
56
Elwig/Models/Entities/DeliveryAncmt.cs
Normal file
@ -0,0 +1,56 @@
|
||||
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.FamilyName, Member.MiddleName, Member.GivenName,
|
||||
Member.BillingAddress?.Name,
|
||||
], keywords);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user