using Bp.Sync.Domain.Elastics.BaseEntities;
using System;
using System.ComponentModel.DataAnnotations;

namespace Bp.Sync.Domain.Elastics.Davs
{
    public class InboundDetailDavElastic : ElasticBaseEntityWithKey<long>

    {
        public long BillId { get; set; }
        public long BillSyncId { get; set; }
        public long ProductId { get; set; }

        [MaxLength(256)]
        public string ProductCode { get; set; }

        [MaxLength(256)]
        public string ProductDavCode { get; set; }

        [MaxLength(2048)]
        public string ProductName { get; set; }

        /// <summary>
        /// Số đăng ký lưu hành
        /// </summary>
        [MaxLength(256)]
        public string ProductRegisterNo { get; set; }

        [MaxLength(256)]
        public string ManufactureBatchNo { get; set; }

        public DateTimeOffset ExpirationDate { get; set; }
        public DateTimeOffset ManufactureDate { get; set; }

        [MaxLength(256)]
        public string InboundUnit { get; set; }

        public int InboundUnitId { get; set; }
        public decimal InboundQuantity { get; set; }
        public decimal InboundWholesaleCost { get; set; }

        /// <summary>
        /// Id cua sp trong phieu nhap kho
        /// </summary>
        public long ProductInboundId { get; set; }
    }
}