using MediatR;
using System.ComponentModel.DataAnnotations;
using TakeoutSaaS.Application.App.Merchants.Dto;

namespace TakeoutSaaS.Application.App.Merchants.Commands;

/// <summary>
/// 新建商户合同。
/// </summary>
public sealed record CreateMerchantContractCommand(
    [property: Required] long MerchantId,
    [property: Required, MaxLength(64)] string ContractNumber,
    DateTime StartDate,
    DateTime EndDate,
    [property: Required, MaxLength(512)] string FileUrl) : IRequest<MerchantContractDto>;
