admin/src/Oms.Application/Dtos/Orders/ProductBillingSnapshotDtos.cs
2026-06-25 19:59:06 +08:00

72 lines
1.8 KiB
C#

using Oms.Application.Dtos.Channels;
namespace Oms.Application.Dtos.Orders;
/// <summary>
/// 销售产品价格发布快照(与渠道发布 JSON 同构)。
/// </summary>
public class SalesProductPricePublishSnapshotDto
{
/// <summary>
/// 销售产品主键。
/// </summary>
public int SalesProductId { get; set; }
/// <summary>
/// 价格项列表。
/// </summary>
public List<SalesProductPriceListOutput> Prices { get; set; } = [];
}
/// <summary>
/// 销售产品规则发布快照(与渠道发布 JSON 同构)。
/// </summary>
public class SalesProductRulesPublishSnapshotDto
{
/// <summary>
/// 产品基础信息。
/// </summary>
public SalesProductSaveInput? Product { get; set; }
/// <summary>
/// 分配的服务商列表。
/// </summary>
public List<SalesProductAllocationProviderOutput> Providers { get; set; } = [];
}
/// <summary>
/// 绑定到订单的快照版本信息。
/// </summary>
public class ProductSnapshotBinding
{
/// <summary>
/// 规则快照版本号。
/// </summary>
public string RulesVersion { get; set; } = string.Empty;
/// <summary>
/// 价格快照版本号。
/// </summary>
public string PriceVersion { get; set; } = string.Empty;
/// <summary>
/// 规则快照生效时间。
/// </summary>
public DateTime RulesEffectiveTime { get; set; }
/// <summary>
/// 价格快照生效时间。
/// </summary>
public DateTime PriceEffectiveTime { get; set; }
/// <summary>
/// 规则快照内容。
/// </summary>
public SalesProductRulesPublishSnapshotDto Rules { get; set; } = new();
/// <summary>
/// 价格快照内容。
/// </summary>
public SalesProductPricePublishSnapshotDto Price { get; set; } = new();
}