using MediatR; using System.Text.Json.Serialization; using TakeoutSaaS.Application.App.Stores.Enums; using TakeoutSaaS.Domain.Stores.Enums; using TakeoutSaaS.Shared.Abstractions.Serialization; namespace TakeoutSaaS.Application.App.Stores.Commands; /// /// 租户端更新门店命令。 /// public sealed record UpdateStoreCommand : IRequest { /// /// 门店 ID。 /// [JsonConverter(typeof(SnowflakeIdJsonConverter))] public long Id { get; init; } /// /// 门店名称。 /// public string Name { get; init; } = string.Empty; /// /// 门店编码(可选,未传时保持原值)。 /// public string? Code { get; init; } /// /// 联系电话。 /// public string ContactPhone { get; init; } = string.Empty; /// /// 负责人。 /// public string ManagerName { get; init; } = string.Empty; /// /// 门店地址。 /// public string Address { get; init; } = string.Empty; /// /// 门店封面图。 /// public string? CoverImage { get; init; } /// /// 营业状态。 /// public StoreBusinessStatus? BusinessStatus { get; init; } /// /// 服务方式。 /// public IReadOnlyList? ServiceTypes { get; init; } }