|
|
|
|
using DS.Module.Core;
|
|
|
|
|
using DS.WMS.Core.Op.Entity;
|
|
|
|
|
using Masuit.Tools.Systems;
|
|
|
|
|
using SqlSugar;
|
|
|
|
|
|
|
|
|
|
namespace DS.WMS.Core.Fee.Dtos
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务
|
|
|
|
|
/// </summary>
|
|
|
|
|
public class BusinessDto
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long BusinessId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务类型
|
|
|
|
|
/// </summary>
|
|
|
|
|
public BusinessType BusinessType { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务类型描述
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string BusinessTypeText => BusinessType.GetDescription();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 应收费用状态
|
|
|
|
|
/// </summary>
|
|
|
|
|
public BillFeeStatus? ARFeeStatus { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 应收费用状态描述
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string ARFeeStatusText => ARFeeStatus?.GetDescription();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 应付费用状态
|
|
|
|
|
/// </summary>
|
|
|
|
|
public BillFeeStatus? APFeeStatus { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 应付费用状态描述
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string APFeeStatusText => APFeeStatus?.GetDescription();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 委托单位ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long ClientId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 委托单位名称
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? ClientName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 主提单号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? MBLNO { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 分提单号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? HBLNO { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 开船日期
|
|
|
|
|
/// </summary>
|
|
|
|
|
public DateTime? ETD { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务状态
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? BusinessStatus { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务锁定
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool? IsBusinessLocking { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用锁定
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool? IsFeeLocking { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 委托编号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string CustomerNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 报关单号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? CustomNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 揽货人ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long? SaleId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 揽货人名称
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
|
|
public string? Sale { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 集装箱
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? CntrTotal { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 会计期间
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? AccountDate { get; set; }
|
|
|
|
|
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long? SourceId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务来源
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? SourceName { get; set; }
|
|
|
|
|
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long? SourceDetailId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 来源明细
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
|
|
public string? DetailName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 经营单位
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? BusinessUnit { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 备注
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Remark { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 其他备注
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Note { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建人ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long CreateBy { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建人用户名
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string CreateByName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 操作ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long? OperatorId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 操作员
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
|
|
public string? Operator { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 起运港
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? LoadPort { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 卸货港
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? DischargePort { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 船名
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Vessel { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 航次
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Voyage { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 客服员ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long? CustomerServiceId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 客服员
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? CustomerServiceName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 收货地
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? ReceiptPlace { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 目的地
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Destination { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 订单号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? OrderNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 运杂费比例
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal? FreightRatio { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 品名
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? GoodsName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 付费方式
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? MBLFrt { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 承运人/船公司
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Carrier { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 场站
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Yard { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 订舱公司
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Forwarder { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 签单方式
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? IssueType { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 运费协议号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? ContractNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 所属分部ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
//[IgnoreDataMember]
|
|
|
|
|
public long SaleDeptId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 所属分部名
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? SaleDeptName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 装运方式
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? BLType { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 货物标识
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? CargoId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 危险品等级
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? DangerClass { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 运输类型
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? ShipmentType { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务日期
|
|
|
|
|
/// </summary>
|
|
|
|
|
public DateTime? BusinessDate { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 国外代理ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long? AgentId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 发票号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? InvoiceNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 订舱编号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? BookingNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 结算方式
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? StlName { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 业务费用
|
|
|
|
|
/// </summary>
|
|
|
|
|
public class BusinessFeeDto : BusinessDto
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用记录ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long RecordId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用状态
|
|
|
|
|
/// </summary>
|
|
|
|
|
public FeeStatus FeeStatus { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用状态描述
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string FeeStatusText { get { return FeeStatus.GetDescription(); } }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 收付类型(收、付) 1应收 2 应付
|
|
|
|
|
/// </summary>
|
|
|
|
|
public FeeType FeeType { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 收付类型描述
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string FeeTypeText { get { return FeeType.GetDescription(); } }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long FeeId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用名称
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string FeeName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用英文名称
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? FeeEnName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用对象ID
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long CustomerId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用对象
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string CustomerName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用对象全称
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? CustomerFullName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 费用标准
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? Unit { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 单价
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal UnitPrice { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 数量
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal Quantity { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal Amount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 币别
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string Currency { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 汇率
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal? ExchangeRate { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 佣金比率
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal CommissionRate { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 结算金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal SettlementAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 开票金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal InvoiceAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 申请金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal OrderAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 申请开票金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal OrderInvoiceAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 申请结算金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal OrderSettlementAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 申请发票开票金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal OrderInvSettlementAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
///// <summary>
|
|
|
|
|
///// 未开票金额
|
|
|
|
|
///// </summary>
|
|
|
|
|
//public decimal InvoiceAmountRest { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 是否机密费用
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool IsOpen { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 对帐编号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? DebitNo { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 是否对帐
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool IsDebit { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 是否垫付费用
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool IsAdvancedPay { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 是否禁开发票
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool IsInvoice { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 是否财务费用
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool IsAcc { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 税率
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal TaxRate { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 含税单价
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal TaxUnitPrice { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 不含税金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal NoTaxAmount { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 财务税率 (销项税率)
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal AccTaxRate { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 销项税额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal AccTax { get { return Amount * AccTaxRate; } }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 销项金额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal AccTaxValue { get { return Amount - AccTax; } }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 税额
|
|
|
|
|
/// </summary>
|
|
|
|
|
public decimal Tax { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 核算单位Id
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long? SaleOrgId { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 核算单位
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string? SaleOrg { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建人
|
|
|
|
|
/// </summary>
|
|
|
|
|
public long CreateBy { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建人名字
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string CreateByName { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建时间
|
|
|
|
|
/// </summary>
|
|
|
|
|
public DateTime CreateTime { get; set; }
|
|
|
|
|
}
|
|
|
|
|
}
|