Files
ERP_Distribution/Distribution/Models/ItemSerialNumber.cs

27 lines
1.1 KiB
C#

using System.ComponentModel.DataAnnotations.Schema;
namespace Distribution.Models
{
/// <summary>One row per physical serial-tracked unit. Quantity is always 1.</summary>
public class ItemSerialNumber : Template
{
public Guid FK_ItemId { get; set; }
[ForeignKey("FK_ItemId")]
public Item Item { get; set; }
public string SerialNumber { get; set; }
public SerialStatus Status { get; set; } = SerialStatus.InStock;
public Guid? CurrentLocationId { get; set; }
public LocationType? CurrentLocationType { get; set; }
public DateTime ReceivedAt { get; set; }
/// <summary>Snapshotted at receipt when Item.AllowCustomWarrantyPeriod is true; otherwise null and the system default applies when the warranty starts.</summary>
public int? WarrantyPeriodDaysOverride { get; set; }
/// <summary>Set when the serial is sold/delivered: sale date + (override ?? system default). Null while in stock or if Item.HasWarranty is false.</summary>
public DateTime? WarrantyExpiresAt { get; set; }
}
}