using System.ComponentModel;

namespace CareFusion.Lib.StorageSystem.Helpers.Enums
{
    /// <summary>
    /// Defines source of the expiration date for a pack.
    /// </summary>
    public enum ExpiryDateSource
    {
        /// <summary>
        /// Mainly for old entires.
        /// </summary>        
        Unknown = 0,

        /// <summary>
        /// Standard expiry, calculated automatically depending on the parameter 'Stock.ExpiryTime.Default.*'.
        /// </summary>
        [Description("Auto calculated")]
        AutoCalculated = 1,

        /// <summary>
        /// Manually entered expiration date.
        /// </summary>
        [Description("Manual entry")]
        ManualEntry = 2,

        /// <summary>
        /// Expiration date sent by IT system.
        /// </summary>
        [Description("IT system")]
        ITSystem = 3,

        /// <summary>
        /// Expiration date sent via EasyLoad OCR.
        /// </summary>
        OCR = 4,

        /// <summary>
        /// Expiration date extracted from bar code.
        /// </summary>
        Barcode = 5,

        /// <summary>
        /// Expiration date was sent by external system during infeed process.
        /// </summary>
        Infeed = 6,

        /// <summary>
        /// Expiration date is disabled
        /// </summary>
        None = 7
    }
}