package com.cf.imes.module.executor.controller.admin.manage.pack.vo;


import com.cf.imes.framework.common.pojo.PageParam;
import com.cf.imes.module.executor.validation.manage.pack.OrderPackagedStatusValid;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;

import jakarta.validation.constraints.Pattern;

@Schema(description = "管理后台 - 打包分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PackPageReqVO extends PageParam {


    @Schema(description = "打包状态(0：未打包，1：已打包)", requiredMode = Schema.RequiredMode.REQUIRED)
    @OrderPackagedStatusValid
    private Integer status;


    @Schema(description = "订单号")
    @Pattern(regexp = "^[0-9]*$",message = "订单号必须为数字")
    @Length(max = 19,message = "订单号长度不能超过19")
    private String orderId;


    @Schema(description = "自定义单号")
    @Length(max = 32,message = "自定义单号数据过长，请重新输入")
    private String customOrderNo;


    @Schema(description = "经销商")
    @Length(max = 255, message = "经销商数据过长，请重新输入")
    private String dealer;


    @Schema(description = "客户")
    @Length(max = 255, message = "客户数据过长，请重新输入")
    private String customer;


    @Schema(description = "地址")
    @Length(max = 255, message = "收货地址数据过长，请重新输入")
    private String address;


    @Schema(description = "是否翻页-true：上，false：下")
    private Boolean isUp;


}
