using System.Runtime.Serialization;
using DS.Module.Core.Enums;
using Masuit.Tools.Systems;
namespace DS.WMS.Core.Settlement.Dtos
{
///
/// 结算相关
///
public class SettlementDto
{
///
/// ID
///
public long Id { get; set; }
///
/// 申请单编号
///
public string ApplicationNO { get; set; }
///
/// 客户/结算单位ID
///
public long? CustomerId { get; set; }
///
/// 客户名称/结算单位
///
public string? CustomerName { get; set; }
///
/// 客户银行账号ID
///
public long? CustomerBankId { get; set; }
///
/// 客户银行
///
public string? CustomerBankName { get; set; }
///
/// 客户结算账户
///
public string? CustomerAccount { get; set; }
///
/// 币别
///
public string? Currency { get; set; }
///
/// 结算金额
///
public decimal Amount { get; set; }
///
/// 原始金额
///
public string OriginalAmount => string.Concat(Currency, Amount);
///
/// 结算日期
///
public DateTime SettlementDate { get; set; }
///
/// 结算方式ID
///
public long? SettlementTypeId { get; set; }
///
/// 结算方式名称
///
public string? SettlementTypeName { get; set; }
///
/// 结算类型
///
public SettlementMode Mode { get; set; }
public string ModeText => Mode.GetDescription();
///
/// 单据类型
///
public SettlementBillType BillType { get; set; }
public string BillTypeText => BillType.GetDescription();
///
/// 结算银行账户
///
public string? Account { get; set; }
///
/// 结算业务类别
///
public SettlementCategory? Category { get; set; }
public string? CategoryText => Category?.GetDescription();
///
/// 是否锁定
///
public bool IsLocked { get; set; }
[IgnoreDataMember]
public long? LockUserId { get; set; }
///
/// 锁定用户
///
public string? LockUser { get; set; }
///
/// 锁定时间
///
public DateTime? LockTime { get; set; }
[IgnoreDataMember]
public long? UnlockUserId { get; set; }
///
/// 解锁用户
///
public string? UnlockUser { get; set; }
///
/// 解锁时间
///
public DateTime? UnlockTime { get; set; }
///
/// 结算单号
///
public string? SettlementNO { get; set; }
///
/// 相关号码
///
public string? RelativeNO { get; set; }
///
/// 所属机构(公司)ID
///
[IgnoreDataMember]
public long? OrgId { get; set; }
///
/// 所属机构(公司)名称
///
public string? OrgName { get; set; }
///
/// 所属分部ID
///
public long? SaleDeptId { get; set; }
///
/// 所属分部
///
public string? SaleDeptName { get; set; }
///
/// 备注
///
public string? Note { get; set; }
[IgnoreDataMember]
public long CreateBy { get; set; }
///
/// 创建人/结算人
///
public string? CreateByName { get; set; }
///
/// 创建日期
///
public DateTime CreateTime { get; set; }
}
}