package com.prolog.rdc.tms.model.vo.intelligent;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @author hongbo.pan
 * @date 2023/8/24
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class IntelligentDispatchVO extends IntelligentDispatchShipBillQueryVO {

    @NotEmpty
    @ApiModelProperty(value = "调度限制条件")
    private List<String> intelligentRestrictionList;

    @NotBlank
    @ApiModelProperty(value = "调度最优规则")
    private String intelligentRule;

    @NotBlank
    @ApiModelProperty(value = "调度类型")
    private String intelligentDispatchType;

    @NotNull
    @ApiModelProperty(value = "已选运单数")
    private Long selectShipBillNum;

    @ApiModelProperty(value = "车辆id集合")
    private List<Long> vehicleIdList;

    @Valid
    @ApiModelProperty(value = "车型集合")
    private List<IntelligentDispatchVehicleTypeVO> vehicleTypeVOList;

}
