You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

153 lines
4.8 KiB
C#

using System.ComponentModel;
using DS.Module.Core;
using DS.Module.Core.Data;
using SqlSugar;
namespace DS.WMS.Core.Op.Entity
{
/// <summary>
/// 业务相关费用状态表
/// </summary>
[SqlSugar.SugarTable("op_business_fee_status", "业务相关费用状态表")]
public class BusinessFeeStatus : BaseModel<long>
{
/// <summary>
/// 业务Id
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "业务Id", IsNullable = false, Length = 100)]
public long BusinessId { get; set; }
/// <summary>
/// 业务类型 1.海运出口
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "业务类型 1.海运出口", IsNullable = false, DefaultValue = "1")]
public BusinessType BusinessType { get; set; } = BusinessType.OceanShippingExport;
/// <summary>
/// 应收费用状态
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "应收费用状态", IsNullable = false, DefaultValue = "0")]
public BillFeeStatus ARFeeStatus { get; set; } = BillFeeStatus.NotEntered;
/// <summary>
/// 应付费用状态
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "应付费用状态", IsNullable = false, DefaultValue = "0")]
public BillFeeStatus APFeeStatus { get; set; } = BillFeeStatus.NotEntered;
/// <summary>
/// 应收开票状态
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "应收开票状态", IsNullable = false, DefaultValue = "0")]
public int ARInvoiceStatus { get; set; } = 0;
/// <summary>
/// 应付开票状态
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "应付开票状态", IsNullable = false, DefaultValue = "0")]
public int APInvoiceStatus { get; set; } = 0;
/// <summary>
/// 应收对账状态
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "应收对账状态", IsNullable = false, DefaultValue = "0")]
public int ARCheckStatus { get; set; } = 0;
/// <summary>
/// Desc:是否业务锁定
/// </summary>
[SugarColumn(ColumnDescription = "是否业务锁定", DefaultValue = "0")]
public bool? IsBusinessLocking { get; set; } = false;
/// <summary>
/// Desc:是否费用锁定
/// </summary>
[SugarColumn(ColumnDescription = "是否费用锁定", DefaultValue = "0")]
public bool? IsFeeLocking { get; set; } = false;
/// <summary>
/// 整单费用审核状态
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "整单费用审核状态", IsNullable = true, DefaultValue = "0")]
public BillAuditStatus BillAuditStatus { get; set; } = 0;
/// <summary>
/// 整单费用状态时间
/// </summary>
6 months ago
[SqlSugar.SugarColumn(ColumnDescription = "整单费用状态时间", IsNullable = true)]
public DateTime BillFeeStatusTime { get; set; }
[SugarColumn(ColumnDescription = "当前审批工作流ID", IsNullable = true)]
public long? FlowId { get; set; }
/// <summary>
/// 业务初始化费用状态
/// </summary>
/// <param name="businessId"></param>
/// <returns></returns>
public static BusinessFeeStatus Init(long businessId)
{
return new BusinessFeeStatus()
{
BusinessId = businessId,
ARFeeStatus = 0,
APFeeStatus = 0,
ARInvoiceStatus = 0,
APInvoiceStatus = 0,
ARCheckStatus = 0,
IsBusinessLocking = false,
IsFeeLocking = false,
BillAuditStatus = BillAuditStatus.Pending,
6 months ago
//BillFeeStatusTime = null,
};
}
}
/// <summary>
/// 业务类型
/// </summary>
public enum BusinessType
{
/// <summary>
/// 海运出口
/// </summary>
OceanShippingExport = 1,
/// <summary>
/// 海运进口
/// </summary>
OceanShippingImport = 2
}
/// <summary>
/// 整单审核状态
/// </summary>
public enum BillAuditStatus
{
/// <summary>
/// 待提交
/// </summary>
[Description("待提交")]
Pending = 0,
/// <summary>
/// 提交审核
/// </summary>
[Description("提交审核")]
AuditSubmitted = 1,
/// <summary>
/// 审核通过
/// </summary>
[Description("审核通过")]
AuditPassed = 2,
/// <summary>
/// 驳回提交
/// </summary>
[Description("驳回提交")]
Rejected = 3
}
}