package org.ta.pddserver.model.pddjy.request;

import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;

@EqualsAndHashCode(callSuper = true)
@Data
public class PddServiceConsoOrderUpdateRequest extends JYBaseRequestModel implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 服务商code（必填）
     */
    private String providerCode;

    /**
     * 集运仓code（必填）
     */
    private String consoWarehouseCode;

    /**
     * 集运单号（必填）
     */
    private String logisticsOrderCode;

    /**
     * 包裹数量（必填）
     */
    private Long packageQuantity;

    /**
     * 运单详情列表（必填）
     */
    private List<MailDetail> mailDetails;

    /**
     * 订单标记列表（非必填，枚举值：FREE_SHIPPING-包邮订单；PARENT_CHILD_PACKAGE-子母件）
     */
    private List<String> tags;


    /**
     * 运单详情
     */
    @Data
    public static class MailDetail {
        /**
         * 快递公司编号（必填）
         */
        private String expressCode;

        /**
         * 运单号（必填）
         */
        private String mailNo;
    }
}
