using System;
using SqlSugar;
using System.Linq;
using System.ComponentModel;
using System.Collections.Generic;
using Tiger.Model.Minsun;
using Tiger.Model.Extensions;
using Microsoft.SqlServer.Server;
namespace Tiger.Model
{
///
/// 实体:库存信息
///
[Description("Primary:ID")]
[Serializable]
[SugarTable("WMS_ITEM")]
public class WMS_ITEM : DbEntityWithAuth
{
#region 构造函数
///
/// 实体:库存信息
///
public WMS_ITEM()
{ }
#endregion 构造函数
#region 公共属性
///
/// 条码
///
public string SN { get; set; }
///
/// 物料编码
///
public string ITEM_CODE { get; set; }
///
/// 条码类型(规则编码)
///
public string SN_TYPE { get; set; }
///
/// 储存状态(0NotExists不存在|10Incoming送货中|20WaitTest待检验|21Rejected需退货|30WaitIn待入库|40InStore在库|50OffShelf已下架|60Sended已发料|70Loaded已上料|80UseUp已耗尽|90Returned已退料|100Shipped已出货)
///
public int STATUS { get; set; }
///
/// 数量
///
public double QTY { get; set; }
///
/// 单位
///
public string UNIT { get; set; }
///
/// 生产日期
///
public DateTime PROD_DATE { get; set; } = DateTime.MinValue;
///
/// 首次入库日期
///
public DateTime FIRST_IN_DATE { get; set; } = DateTime.MinValue;
///
/// 业务单据编码
///
public string TRANS_CODE { get; set; }
///
/// 业务单据号码
///
public string TRANS_NO { get; set; }
///
/// 业务单据行号
///
public string TRANS_LINE { get; set; }
///
/// 来源单据编码
///
public string SOURCE_CODE { get; set; }
///
/// 来源单据号码
///
public string SOURCE_ORDER { get; set; }
///
/// 来源单据行号
///
public string SOURCE_LINE { get; set; }
///
/// 供应商代码
///
public string SUPP_CODE { get; set; }
///
/// 供应商批次号
///
public string SUPP_LOTNO { get; set; }
///
/// 批次号
///
public string LOTNO { get; set; }
///
/// 箱号
///
public string CARTON_NO { get; set; }
///
/// 栈板号
///
public string PALLET_NO { get; set; }
///
/// 仓库代码
///
public string WH_ID { get; set; }
///
/// 储区代码
///
public string REGION_ID { get; set; }
///
/// 货架/料车编码
///
public string SHELF_ID { get; set; }
///
/// 储位代码
///
public string LOCATION_ID { get; set; }
///
/// ERP库位代码
///
public string ERP_WH { get; set; }
///
/// 机型
///
public string ITEM_MODEL { get; set; }
///
/// 是否被单据锁定(Y/N)
///
public string IS_LOCKED { get; set; } = "N";
///
/// 备注
///
public string REMARK { get; set; }
///
/// 是否允许超期
///
public string IsAllowOverdue { get; set; }
///
/// 延期时间
///
//public double PostponeDays { get; set; }
#endregion 公共属性
#region 虚拟属性
/*例子
[SugarColumn(IsIgnore = true)]
public string FieldName { get; set; }
*/
#endregion 虚拟属性
#region 外键属性
/*例子
//一对一外键导航
[Navigate(NavigateType.OneToOne, nameof(ClassAId))]//一对一 ClassAId是WMS_ITEM类里面的外键ID字段
public ClassA ClassA { get; set; } //注意禁止手动赋值,只能是null
//一对多外键导航
[Navigate(NavigateType.OneToMany, nameof(ClassA.WMS_ITEMId))]//ClassA表中的WMS_ITEMId
public List ClassAList { get; set; }//注意禁止手动赋值,只能是null
//多对多外键导航
[Navigate(typeof(MappingClass), nameof(MappingClass.WMS_ITEMId), nameof(MappingClass.ClassAId))]//注意顺序
public List ClassAList { get; set; } //注意禁止手动赋值,只能是null
*/
#endregion 外键属性
#region 枚举变量
///
/// 储存状态(0NotExists不存在|10Incoming送货中|20WaitTest待检验|21Rejected需退货|30WaitIn待入库|40InStore在库|50OffShelf已下架|60Sended已发料|70Loaded已上料|80UseUp已耗尽|90Returned已退料|100Shipped已出货)
///
public enum STATUSs
{
[Description("不存在")]
NotExists = 0,
[Description("送货中")]
Incoming = 10,
[Description("已清点")]
Counted = 15,
[Description("待检验")]
WaitTest = 20,
[Description("需退货")]
Rejected = 22,
[Description("待入库")]
WaitIn = 30,
[Description("在库中")]
InStore = 40,
[Description("已下架")]
OffShelf = 50,
[Description("已发料")]
Sended = 60,
[Description("已上料")]
Loaded = 70,
[Description("已耗尽")]
UseUp = 80,
[Description("已退料")]
Returned = 90,
[Description("已出货")]
Shipped = 100,
[Description("已重工")]
Rework = 110,
}
#endregion 枚举变量
}//endClass
///
/// 上架执行信息
///
public class PutOnInfo
{
public WMS_WAREHOUSE Warehouse { get; set; }
public WMS_REGION Region { get; set; }
public WMS_SHELF Shelf { get; set; }
public WMS_LOCATION Location { get; set; }
public List Packages { get; set; } = new List();
public List Items { get; set; } = new List();
public List History { get; set; } = new List();
public List ItemsExt { get; set; } = new List();
}
///
/// 下架执行信息
///
public class TakeDownInfo
{
public List Packages { get; set; } = new List();
public List Items { get; set; } = new List();
public List History { get; set; } = new List();
}
///
/// 下架推荐策略实体
///
public class SuggestStrategy
{
public bool isFIFO { get; set; } = true;
public WMS_WAREHOUSE Warehouse { get; set; }
public WMS_REGION Region { get; set; }
public WMS_SHELF Shelf { get; set; }
public WMS_LOCATION Location { get; set; }
public List Packages { get; set; } = new List();
public List Items { get; set; } = new List();
public List History { get; set; } = new List();
}
///
/// 下架推荐策略实体
///
public class SuggestItem
{
public WMS_ITEM Item { get; set; }
public WMS_ITEM_POOL poolItem { get; set; }
public WMS_WAREHOUSE Warehouse { get; set; }
public WMS_REGION Region { get; set; }
public WMS_SHELF Shelf { get; set; }
public WMS_LOCATION Location { get; set; }
}
public class QueryItemInputDtl : BasePageInput
{
public bool? IsK { get; set; }
}
public class QueryItemInput : BaseInput
{
public bool? IsK { get; set; }
}
public class QueryItemView
{
public string ItemCode { get; set; }
public string ItemName { get; set; }
public string SumInfo { get; set; }
}
}