using System.Text.Json.Serialization;
using TakeoutSaaS.Shared.Abstractions.Serialization;
namespace TakeoutSaaS.Application.App.Stores.Dto;
///
/// 自提档期 DTO。
///
public sealed record StorePickupSlotDto
{
///
/// 档期 ID。
///
[JsonConverter(typeof(SnowflakeIdJsonConverter))]
public long Id { get; init; }
///
/// 门店 ID。
///
[JsonConverter(typeof(SnowflakeIdJsonConverter))]
public long StoreId { get; init; }
///
/// 名称。
///
public string Name { get; init; } = string.Empty;
///
/// 开始时间。
///
public TimeSpan StartTime { get; init; }
///
/// 结束时间。
///
public TimeSpan EndTime { get; init; }
///
/// 截单分钟。
///
public int CutoffMinutes { get; init; }
///
/// 容量。
///
public int Capacity { get; init; }
///
/// 已占用。
///
public int ReservedCount { get; init; }
///
/// 适用星期(1-7)。
///
public string Weekdays { get; init; } = string.Empty;
///
/// 是否启用。
///
public bool IsEnabled { get; init; }
}