using System;
using SqlSugar;
using System.Linq;
using System.ComponentModel;
using System.Collections.Generic;
namespace Tiger.Model
{
///
/// 实体:销售出库单(ERP)
///
[Description("Primary:ID")]
[Serializable]
[SugarTable("BIZ_ERP_SALE_OUT")]
public class BIZ_ERP_SALE_OUT : DbEntityWithAuth
{
#region 构造函数
///
/// 实体:销售出库单(ERP)
///
public BIZ_ERP_SALE_OUT()
{ }
#endregion 构造函数
#region 公共属性
///
/// 单据代码
///
public string BILLCODE { get; set; }
///
/// 单据日期
///
public DateTime BILLDATE { get; set; } = DateTime.MinValue;
///
/// 单据状态
///
public int STATUS { get; set; }
///
/// 业务类型
///
public string BIZTYPE { get; set; }
///
/// 仓库代码
///
public string WAREHOUSECODE { get; set; }
///
/// 来源单据类型
///
public int SOURCETYPE { get; set; }
///
/// 来源单据代码
///
public string SOURCECODE { get; set; }
///
/// 销售人员
///
public string SALES_MAN { get; set; }
///
/// 客户编码
///
public string SUPPLIER_CODE { get; set; }
///
/// 备注
///
public string REMARK { get; set; }
///
/// ERP单据代码
///
public string ERP_BILL_CODE { get; set; }
///
/// -1:未处理,0:同步处理完,>0:同步处理失败次数
///
public int HANDLED { get; set; }
///
/// 最后一次同步处理日期
///
public DateTime HANDLED_DATE { get; set; } = DateTime.MinValue;
///
/// 过账提交的JSON
///
public string COMMIT_JSON { get; set; }
///
/// 过账提交的返回信息
///
public string COMMIT_MSG { get; set; }
///
/// 多角流程编号
///
public string POLYGONAL_CODE { get; set; }
///
/// 多角流程序号
///
public string POLYGONAL_NO { get; set; }
///
/// 目标据点
///
public string TARGET_ORG { get; set; }
#endregion 公共属性
#region 虚拟属性
/*例子
[SugarColumn(IsIgnore = true)]
public string FieldName { get; set; }
*/
#endregion 虚拟属性
#region 外键属性
/*例子
//一对一外键导航
[Navigate(NavigateType.OneToOne, nameof(ClassAId))]//一对一 ClassAId是BIZ_ERP_SALE_OUT类里面的外键ID字段
public ClassA ClassA { get; set; } //注意禁止手动赋值,只能是null
//一对多外键导航
[Navigate(NavigateType.OneToMany, nameof(ClassA.BIZ_ERP_SALE_OUTId))]//ClassA表中的BIZ_ERP_SALE_OUTId
public List ClassAList { get; set; }//注意禁止手动赋值,只能是null
//多对多外键导航
[Navigate(typeof(MappingClass), nameof(MappingClass.BIZ_ERP_SALE_OUTId), nameof(MappingClass.ClassAId))]//注意顺序
public List ClassAList { get; set; } //注意禁止手动赋值,只能是null
*/
[Navigate(NavigateType.OneToMany, nameof(BIZ_ERP_SALE_OUT_DTL.BILLCODE), nameof(BILLCODE))]
public List DetailsWithGhost { get; set; }//注意禁止手动赋值,只能是null
[SugarColumn(IsIgnore = true)]
public List Details => DetailsWithGhost?.Where(q => !q.GHOST_ROW).ToList();
[Navigate(NavigateType.OneToMany, nameof(BIZ_ERP_SALE_OUT_SN.ORDER_NO), nameof(BILLCODE))]
public List SnListWithGhost { get; set; }//注意禁止手动赋值,只能是null
[SugarColumn(IsIgnore = true)]
public List SnList => SnListWithGhost?.Where(q => !q.GHOST_ROW).ToList();
#endregion 外键属性
#region 枚举变量
/*例子
public enum FieldNames
{
[Description("枚举描述0")]
Enum0,
[Description("枚举描述1")]
Enum1,
}
*/
public enum STATUSs
{
[Description("新增")]
INIT,
[Description("作业中")]
WORKING,
[Description("完成")]
COMPLETE
}
#endregion 枚举变量
}//endClass
}