Models: Add Credit
This commit is contained in:
104
Elwig/Models/Credit.cs
Normal file
104
Elwig/Models/Credit.cs
Normal file
@ -0,0 +1,104 @@
|
||||
using Elwig.Helpers;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Elwig.Models {
|
||||
[Table("credit"), PrimaryKey("Year", "TgNr"), Index("Year", "AvNr", "MgNr", IsUnique = true)]
|
||||
public class Credit {
|
||||
[Column("year")]
|
||||
public int Year { get; set; }
|
||||
|
||||
[Column("tgnr")]
|
||||
public int TgNr { get; set; }
|
||||
|
||||
[NotMapped]
|
||||
public string TgId => $"{Year}/{TgNr:000}";
|
||||
|
||||
[Column("mgnr")]
|
||||
public int MgNr { get; set; }
|
||||
|
||||
[Column("avnr")]
|
||||
public int AvNr { get; set; }
|
||||
|
||||
[Column("net_amount")]
|
||||
public long NetAmountValue { get; set; }
|
||||
[NotMapped]
|
||||
public decimal NetAmount {
|
||||
get => Utils.DecFromDb(NetAmountValue, 2);
|
||||
set => NetAmountValue = Utils.DecToDb(value, 2);
|
||||
}
|
||||
|
||||
[Column("prev_net_amount")]
|
||||
public long? PrevNetAmountValue { get; set; }
|
||||
[NotMapped]
|
||||
public decimal? PrevNetAmount {
|
||||
get => PrevNetAmountValue != null ? Utils.DecFromDb(PrevNetAmountValue.Value, 2) : null;
|
||||
set => PrevNetAmountValue = value != null ? Utils.DecToDb(value.Value, 2) : null;
|
||||
}
|
||||
|
||||
[Column("vat")]
|
||||
public double VatValue { get; set; }
|
||||
[NotMapped]
|
||||
public decimal Vat {
|
||||
get => (decimal)VatValue;
|
||||
set => VatValue = (double)value;
|
||||
}
|
||||
|
||||
[Column("vat_amount")]
|
||||
public long VatAmountValue { get; private set; }
|
||||
[NotMapped]
|
||||
public decimal VatAmount {
|
||||
get => Utils.DecFromDb(VatAmountValue, 2);
|
||||
}
|
||||
|
||||
[Column("gross_amount")]
|
||||
public long GrossAmountValue { get; private set; }
|
||||
[NotMapped]
|
||||
public decimal GrossAmount {
|
||||
get => Utils.DecFromDb(GrossAmountValue, 2);
|
||||
}
|
||||
|
||||
[Column("modifiers")]
|
||||
public long? ModifiersValue { get; set; }
|
||||
[NotMapped]
|
||||
public decimal? Modifiers {
|
||||
get => ModifiersValue != null ? Utils.DecFromDb(ModifiersValue.Value, 2) : null;
|
||||
set => ModifiersValue = value != null ? Utils.DecToDb(value.Value, 2) : null;
|
||||
}
|
||||
|
||||
[Column("prev_modifiers")]
|
||||
public long? PrevModifiersValue { get; set; }
|
||||
[NotMapped]
|
||||
public decimal? PrevModifiers {
|
||||
get => PrevModifiersValue != null ? Utils.DecFromDb(PrevModifiersValue.Value, 2) : null;
|
||||
set => PrevModifiersValue = value != null ? Utils.DecToDb(value.Value, 2) : null;
|
||||
}
|
||||
|
||||
[Column("amount")]
|
||||
public long AmountValue { get; private set; }
|
||||
[NotMapped]
|
||||
public decimal Amount {
|
||||
get => Utils.DecFromDb(AmountValue, 2);
|
||||
}
|
||||
|
||||
[Column("ctime")]
|
||||
public long CTime { get; private set; }
|
||||
[NotMapped]
|
||||
public DateTime CreatedTimestamp => DateTimeOffset.FromUnixTimeSeconds(CTime).LocalDateTime;
|
||||
|
||||
[Column("mtime")]
|
||||
public long MTime { get; private set; }
|
||||
[NotMapped]
|
||||
public DateTime ModifiedTimestamp => DateTimeOffset.FromUnixTimeSeconds(CTime).LocalDateTime;
|
||||
|
||||
[ForeignKey("Year, AvNr, MgNr")]
|
||||
public virtual PaymentMember Payment { get; private set; }
|
||||
|
||||
[ForeignKey("Year, AvNr")]
|
||||
public virtual PaymentVar Variant { get; private set; }
|
||||
|
||||
[ForeignKey("MgNr")]
|
||||
public virtual Member Member { get; private set; }
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user