using System.Text.Json.Serialization;

namespace WmsMobileServe.ApiServe.Mobile.Dto;



/// <summary>
/// 码盘完成请求入库的参数
/// </summary>
public class BindingVehicleInReq
{
    /// <summary>
    /// 载具号
    /// </summary>
    [JsonPropertyName("vehicleNo")]
    public string? VehicleNo { get; set; }

    /// <summary>
    /// 入库模式
    /// </summary>
    /// <remarks>
    /// 1 -- 直接入库
    /// 2 -- 去往站台
    /// </remarks>
    [JsonPropertyName("taskType")]
    public int? TaskType { get; set; }

    /// <summary>
    /// 绑定的物料
    /// </summary>
    [JsonPropertyName("bindingGoods")]
    public List<BindingGoodsDetails>? BindingGoodsDetails { get; set; }

}

/// <summary>
/// 绑定的物品名称
/// </summary>
public class BindingGoodsDetails
{
    /// <summary>
    /// 箱号
    /// </summary>
    [JsonPropertyName("boxNo")]
    public string? BoxNo { get; set; }

    /// <summary>
    /// 每包数量
    /// </summary>
    [JsonPropertyName("numPerBox")]
    public decimal? NumPerBox { get; set; }

    /// <summary>
    /// 包装数量
    /// </summary>
    [JsonPropertyName("goodsNum")]
    public decimal? GoodsNum { get; set; }

    /// <summary>
    /// 包数量
    /// </summary>
    [JsonPropertyName("picketNum")]
    public decimal? PacketNum { get; set; }

    /// <summary>
    /// 零包数量
    /// </summary>
    [JsonPropertyName("otherNum")]
    public decimal? OtherNum { get; set; }

    /// <summary>
    /// 产品编码
    /// </summary>
    [JsonPropertyName("goodsId")]
    public string? GoodsId { get; set; }

    /// <summary>
    /// 销售订单
    /// </summary>
    [JsonPropertyName("saleOrderNo")]
    public string? SaleOrderNo { get; set; }

    /// <summary>
    /// 包装层级
    /// </summary>
    [JsonPropertyName("packetLevel")]
    public string? PacketLevel { get; set; }

    /// <summary>
    /// 周期
    /// </summary>
    [JsonPropertyName("cycle")]
    public string? Cycle { get; set; }

    /// <summary>
    /// 客户销售订单
    /// </summary>
    [JsonPropertyName("customSaleOrderNo")]
    public string? CustomSaleOrderNo { get; set; }

    /// <summary>
    /// 子库
    /// </summary>
    [JsonPropertyName("minorWarehouseId")]
    public string? MinorWarehouseId { get; set; }

    /// <summary>
    /// 产品描述
    /// </summary>
    [JsonPropertyName("goodsDesc")]
    public string? GoodsDesc { get; set; }
}
