LabelUpdateInputVo.cs 1.74 KB
namespace FoodLabeling.Application.Contracts.Dtos.Label;

public class LabelUpdateInputVo
{
    public string LabelName { get; set; } = string.Empty;

    public string TemplateCode { get; set; } = string.Empty;

    public string? PartnerId { get; set; }

    public List<string>? PartnerIds { get; set; }

    /// <summary>适用 Company(单选);与 <see cref="PartnerId"/> / <see cref="PartnerIds"/> 合并</summary>
    public List<string>? CompanyIds { get; set; }

    /// <summary>
    /// 适用 Region 范围:<c>ALL</c> / <c>SPECIFIED</c>。
    /// 亦可在 <see cref="RegionIds"/> / <see cref="LocationIds"/> 传哨兵 <c>["ALL"]</c>(与新增一致,PUT 支持)。
    /// </summary>
    public string? AppliedRegionType { get; set; }

    /// <summary>适用 Region 多选;可含 <c>ALL</c></summary>
    public List<string>? RegionIds { get; set; }

    /// <summary>与 <see cref="RegionIds"/> 相同;可含 <c>ALL</c></summary>
    public List<string>? GroupIds { get; set; }

    /// <summary>
    /// 适用门店 Id 数组;可含 <c>ALL</c>;落库 <c>fl_label_location</c>,全量覆盖
    /// </summary>
    public List<string>? LocationIds { get; set; }

    /// <summary>
    /// 兼容旧入参:单门店 Id;与 <see cref="LocationIds"/> 合并,首项写入 <c>fl_label.LocationId</c>
    /// </summary>
    public string? LocationId { get; set; }

    public string LabelCategoryId { get; set; } = string.Empty;

    /// <summary>标签类型 Id(<c>fl_label_type.Id</c>);可选,未传时清空类型绑定</summary>
    public string? LabelTypeId { get; set; }

    public List<string> ProductIds { get; set; } = new();

    public object? LabelInfoJson { get; set; }

    public bool State { get; set; } = true;
}