using SqlSugar;
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
namespace Tiger.Model
{
///
/// 实体:采购单(ERP)
///
[Description("Primary:ID")]
[Serializable]
[SugarTable("BIZ_ERP_PO")]
public class BIZ_ERP_PO : DbEntityWithAuth
{
#region 构造函数
///
/// 实体:采购单(ERP)
///
public BIZ_ERP_PO()
{ }
#endregion 构造函数
#region 公共属性
///
/// 单据号码
///
public string BILLCODE { get; set; }
///
/// 单据时间
///
public DateTime BILLDATE { get; set; } = DateTime.MinValue;
///
/// 单据类型
///
public int BILLTYPE { get; set; }
///
/// 单据状态
///
public int STATUS { get; set; }
///
/// 币种
///
public string CURRENCY { get; set; }
///
/// 汇率
///
public double EXCHANGERATE { get; set; }
///
/// 物料编码
///
public string PURDEPTCODE { get; set; }
///
/// 采购员代码
///
public string PUREMPLOYEECODE { get; set; }
///
/// 供应商代码
///
public string SUPPLIERCODE { get; set; }
///
/// 备注
///
public string REMARK { 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; }
#endregion 公共属性
#region 虚拟属性
/*例子
[SugarColumn(IsIgnore = true)]
public string FieldName { get; set; }
*/
#endregion 虚拟属性
#region 外键属性
/*例子
//一对一外键导航
[Navigate(NavigateType.OneToOne, nameof(ClassAId))]//一对一 ClassAId是BIZ_ERP_PO类里面的外键ID字段
public ClassA ClassA { get; set; } //注意禁止手动赋值,只能是null
//一对多外键导航
[Navigate(NavigateType.OneToMany, nameof(ClassA.BIZ_ERP_POId))]//ClassA表中的BIZ_ERP_POId
public List ClassAList { get; set; }//注意禁止手动赋值,只能是null
//多对多外键导航
[Navigate(typeof(MappingClass), nameof(MappingClass.BIZ_ERP_POId), nameof(MappingClass.ClassAId))]//注意顺序
public List ClassAList { get; set; } //注意禁止手动赋值,只能是null
*/
[Navigate(NavigateType.OneToMany, nameof(BILLCODE), nameof(BIZ_ERP_PO_DTL.BILLCODE))]
public List DetailsWithGhost { get; set; }//注意禁止手动赋值,只能是null
[SugarColumn(IsIgnore = true)]
public List Details => DetailsWithGhost?.Where(q => !q.GHOST_ROW).ToList();
#endregion 外键属性
#region 枚举变量
/*例子
public enum FieldNames
{
[Description("枚举描述0")]
Enum0,
[Description("枚举描述1")]
Enum1,
}
*/
public enum STATUSs
{
[Description("新建\\开立")]
INIT = 1,
[Description("作业中")]
WORKING = 2,
[Description("完成")]
COMPLETE = 9
}
#endregion
}//endClass
}