namespace EgwCoreLib.Lux.Data.DbModel.Supplier
{
//
// This is here so CodeMaid doesn't reorganize this document
//
[Table("buy_order")]
public class BuyOrderModel
{
///
/// ID del record
///
[Key]
public int BuyOrderID { get; set; }
///
/// Anno rif Ordine Fornitore
///
public int RefYear { get; set; } = DateTime.Today.Year;
///
/// Numero prog Ordine nell'anno (da calcolare)
///
public int RefNum { get; set; } = 0;
///
/// Indice revisione
///
public int RefRev { get; set; } = 1;
///
/// Codice calcolato Ordine ANNO.NUMERO.REV
///
[NotMapped]
public string BuyOrderCode
{
get => $"BO.{RefYear:00}.{RefNum:00000}.{RefRev:00}";
}
///
/// Descrizione generale
///
public string Description { get; set; } = "";
///
/// Fornitore (quandoa ssegnato, altrimenti è quotazione)
///
public int? SupplierID { get; set; } = null;
///
/// Ordine assegnato se ho un supplier definito
///
[NotMapped]
public bool Assigned => SupplierID != null;
///
/// DataOra inserimento
///
public DateTime Inserted { get; set; } = DateTime.Now;
///
/// DataOra ultima modifica
///
public DateTime Modified { get; set; } = DateTime.Now;
///
/// DataOra richiesta per il completamento dell'ordine di fornitura
///
public DateTime DueDateReq { get; set; } = DateTime.Today.AddDays(30);
///
/// note di consegna (opzionali)
///
public string ConsNote { get; set; } = "";
///
/// Enum stato Ordine Acquisto
///
public BuyOrderStates OrderState { get; set; } = BuyOrderStates.Created;
///
/// Navigazione Supplier
///
[ForeignKey("SupplierID")]
public virtual SupplierModel? SupplierNav { get; set; } = null;
///
/// Navigazione alle righe Ordine Acquisto
///
public virtual ICollection BuyOrderRowNav { get; set; } = new List();
}
}