using System.ComponentModel.DataAnnotations;
namespace Oms.Application.Dtos.Orders;
///
/// 手动添加订单费用入参。
///
public class OrderFeeAddInput
{
///
/// 订单主键。
///
[Required]
public int Id { get; set; }
///
/// 费用类型:receivable / payable。
///
[Required]
[StringLength(16)]
public string Type { get; set; } = string.Empty;
///
/// 费用项编码。
///
[Required]
[StringLength(64)]
public string CostItem { get; set; } = string.Empty;
///
/// 金额。
///
[Required]
public decimal Amount { get; set; }
///
/// 币种。
///
[Required]
[StringLength(16)]
public string Currency { get; set; } = string.Empty;
///
/// 计费阶段:forecast / inbound / outbound。
///
[Required]
[StringLength(16)]
public string ChargingStage { get; set; } = string.Empty;
///
/// 下游服务商(应付可选)。
///
[StringLength(128)]
public string? DownstreamProvider { get; set; }
///
/// 价格编号(可选)。
///
[StringLength(64)]
public string? PriceNo { get; set; }
///
/// 价格生效时间(可选)。
///
public DateTime? PriceEffectiveTime { get; set; }
}