using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OASystem.Domain.Entities.PersonnelModule
{
    /// <summary>
    /// 物品详细表
    /// </summary>
    [SugarTable(tableName: "Pm_GoodsInfo", tableDescription: "物品详细表")]
    public class Pm_GoodsInfo : EntityBase
    {
        /// <summary>
        /// 类型Id
        /// SetData Id
        /// </summary>
        [SugarColumn(ColumnDescription = "类型Id", IsNullable = true, ColumnDataType = "int")]
        public int Type { get; set; }

        /// <summary>
        /// 物品名称
        /// </summary>
        [SugarColumn(ColumnDescription = "物品名称", IsNullable = true, ColumnDataType = "varchar(100)")]
        public string? Name { get; set; }

        /// <summary>
        /// 累计入库数量
        /// </summary>
        [SugarColumn(ColumnDescription = "累计入库数量", IsNullable = true, ColumnDataType = "decimal(8,2)")]
        public decimal SQ_Total { get; set; }

        /// <summary>
        /// 累计出库数量
        /// </summary>
        [SugarColumn(ColumnDescription = "累计出库数量", IsNullable = true, ColumnDataType = "decimal(8,2)")]
        public decimal OQ_Total { get; set; }

        /// <summary>
        /// 累计金额
        /// </summary>
        [SugarColumn(ColumnDescription = "累计金额", IsNullable = true, ColumnDataType = "decimal(10,2)")]
        public decimal PriceTotal { get; set; }

        /// <summary>
        /// 现有库存
        /// </summary>
        [SugarColumn(ColumnDescription = "现有库存", IsNullable = true, ColumnDataType = "decimal(8,2)")]
        public decimal StockQuantity { get; set; }

        /// <summary>
        /// 单位(个、箱、包 等等)
        /// </summary>
        [SugarColumn(ColumnDescription = "单位(个、箱、包 等等)", IsNullable = true, ColumnDataType = "varchar(20)")]
        public string Unit { get; set; }

        /// <summary>
        /// 最后操作人
        /// </summary>
        [SugarColumn(ColumnDescription = "最后操作人", IsNullable = true, ColumnDataType = "int")]
        public int LastUpdateUserId { get; set; }

        /// <summary>
        /// 最后操作时间
        /// </summary>
        [SugarColumn(ColumnDescription = "最后操作时间", IsNullable = true, ColumnDataType = "datetime")]
        public DateTime LastUpdateTime { get; set; }
    }
}