Implement referral, points, coupons, commission, member levels, and order integration with migration SQL and background jobs. Co-authored-by: Cursor <cursoragent@cursor.com>
36 lines
997 B
C#
36 lines
997 B
C#
using Oms.Application.Dtos.Orders;
|
||
|
||
namespace Oms.Application.Services.Orders;
|
||
|
||
/// <summary>
|
||
/// 算价用的收件地址(国家 + 省市区邮编)。
|
||
/// </summary>
|
||
internal readonly record struct OrderBillingAddress(
|
||
string CountryCode,
|
||
string? Province,
|
||
string? City,
|
||
string? ZipCode);
|
||
|
||
/// <summary>
|
||
/// 订单单次算价上下文:快照、分区键、计费重、货类、价区键、仓库。
|
||
/// </summary>
|
||
internal sealed class OrderBillingContext
|
||
{
|
||
public required ProductSnapshotBinding SnapshotBinding { get; init; }
|
||
|
||
public required IReadOnlyList<string> ZoneKeys { get; init; }
|
||
|
||
public required decimal ChargeableWeight { get; init; }
|
||
|
||
public required string CargoAttribute { get; init; }
|
||
|
||
/// <summary>
|
||
/// 卖价 JSON 价区键(如 普通客户、VIP1、客户组1)。
|
||
/// </summary>
|
||
public string? PriceTierKey { get; init; }
|
||
|
||
public int? WarehouseId { get; init; }
|
||
|
||
public string? WarehouseName { get; init; }
|
||
}
|