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.

336 lines
7.7 KiB
C#

using System.ComponentModel;
using DS.WMS.Core.Op.Entity;
namespace DS.WMS.Core.Fee.Dtos
{
/// <summary>
/// 申请单关联业务
/// </summary>
public class BizApplication
{
/// <summary>
/// 业务Id
/// </summary>
public long Id { get; set; }
/// <summary>
/// 业务类型
/// </summary>
public BusinessType BusinessType { get; set; }
/// <summary>
/// 委托编号
/// </summary>
public string? CustomerNo { get; set; }
/// <summary>
/// 委托单位
/// </summary>
public string? ClientName { get; set; }
/// <summary>
/// 费用对象/结费单位
/// </summary>
public long? CustomerId { get; set; }
/// <summary>
/// 费用对象/结费单位名称
/// </summary>
public string? CustomerName { get; set; }
/// <summary>
/// 主提单号
/// </summary>
public string? MBLNO { get; set; }
/// <summary>
/// 分提单号
/// </summary>
public string? HBLNO { get; set; }
/// <summary>
/// 订舱编号
/// </summary>
public string? BookingNO { get; set; }
/// <summary>
/// 开船日期
/// </summary>
public DateTime? ETD { get; set; }
/// <summary>
/// 揽货人ID
/// </summary>
public long? SaleId { get; set; }
/// <summary>
/// 揽货人名称
/// </summary>
public string? SaleName { get; set; }
/// <summary>
/// 更改单
/// </summary>
public string? ChangeOrder { get; set; }
/// <summary>
/// 会计期间
/// </summary>
public string? AccountDate { get; set; }
/// <summary>
/// 操作员ID
/// </summary>
public long? OperatorId { get; set; }
/// <summary>
/// 操作员
/// </summary>
public string? Operator { get; set; }
/// <summary>
/// 录入人ID
/// </summary>
public long CreateBy { get; set; }
/// <summary>
/// 录入人
/// </summary>
public string CreateByName { get; set; }
/// <summary>
/// 集装箱
/// </summary>
public string? CntrTotal { 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>
/// 结费方式
/// </summary>
public string? StlName { get; set; }
/// <summary>
/// 所属部门ID
/// </summary>
public long SaleDeptId { get; set; }
/// <summary>
/// 所属部门名称
/// </summary>
public string? SaleDeptName { get; set; }
/// <summary>
/// 备注
/// </summary>
public string? Note { get; set; }
}
/// <summary>
/// 用于付费申请的业务信息
/// </summary>
public class BizPaymentApplication : BizApplication
{
/// <summary>
/// RMB未付
/// </summary>
public decimal UnpaidRMB { get; set; }
/// <summary>
/// USD未付
/// </summary>
public decimal UnpaidUSD { get; set; }
/// <summary>
/// 其他未付
/// </summary>
public decimal UnpaidOther { get; set; }
/// <summary>
/// RMB未收
/// </summary>
public decimal UnreceivedRMB { get; set; }
/// <summary>
/// USD未收
/// </summary>
public decimal UnreceivedUSD { get; set; }
/// <summary>
/// RMB未收
/// </summary>
public decimal UnreceivedOther { get; set; }
/// <summary>
/// 合计未收
/// </summary>
public decimal UnreceivedTotal { get => UnreceivedRMB + UnreceivedUSD + UnreceivedOther; }
/// <summary>
/// RMB未开票
/// </summary>
public decimal UnpaidRMBInv { get; set; }
/// <summary>
/// USD未开票
/// </summary>
public decimal UnpaidUSDInv { get; set; }
/// <summary>
/// 是否垫付费用
/// </summary>
public bool? IsAdvancedPay { get; set; }
/// <summary>
/// 是否禁开发票
/// </summary>
public bool? IsInvoice { get; set; }
}
/// <summary>
/// 用于发票申请的业务信息
/// </summary>
public class BizInvoiceApplication : BizApplication
{
/// <summary>
/// 付款未结算金额
/// </summary>
public decimal UnSettlementPaid { get; set; }
/// <summary>
/// 收款未结算金额
/// </summary>
public decimal UnSettlementCharged { get; set; }
/// <summary>
/// RMB未开票
/// </summary>
public decimal UnBilledRMB { get; set; }
/// <summary>
/// USD未开票
/// </summary>
public decimal UnBilledUSD { get; set; }
/// <summary>
/// 其他未开票
/// </summary>
public decimal UnBilledOther { get; set; }
/// <summary>
/// 已申请金额
/// </summary>
public decimal OrderAmount { get; set; }
/// <summary>
/// 已结算金额
/// </summary>
public decimal SettlementAmount { get; set; }
/// <summary>
/// 已开票金额
/// </summary>
public decimal InvoiceAmount { get; set; }
/// <summary>
/// 对账编号
/// </summary>
public string? DebitNo { get; set; }
/// <summary>
/// 发票号
/// </summary>
public string? InvoiceNO { get; set; }
}
/// <summary>
/// 费用范围
/// </summary>
public enum FeeRange
{
/// <summary>
/// 全部费用
/// </summary>
[Description("全部费用")]
All = 0,
/// <summary>
/// 未结费用
/// </summary>
[Description("未结费用")]
Unsettled = 1,
/// <summary>
/// 已结费用
/// </summary>
[Description("已结费用")]
Settled = 2,
/// <summary>
/// 已付未收
/// </summary>
[Description("已付未收")]
PaidNotReceived = 3,
/// <summary>
/// 已收未付
/// </summary>
[Description("已收未付")]
ReceivedNotPaid = 4,
/// <summary>
/// 未申请未结算
/// </summary>
[Description("未申请未结算")]
NotAppliedSettled = 5,
/// <summary>
/// 未对账未结算
/// </summary>
[Description("未对账未结算")]
UnreconciledSettled = 6,
/// <summary>
/// 未开票未结算
/// </summary>
[Description("未开票未结算")]
NotIssuedSettled = 7,
/// <summary>
/// 已对账未结算
/// </summary>
[Description("已对账未结算")]
ReconciledNotSettled = 8,
/// <summary>
/// 未收未付
/// </summary>
[Description("未收未付")]
NotReceivedPaid = 9,
/// <summary>
/// 已结算未开票
/// </summary>
[Description("已结算未开票")]
SettledNotIssued = 10
}
}