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

import java.io.Serializable;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

import com.prolog.product.core.base.group.AddGroup;
import com.prolog.product.core.base.group.EditGroup;
import com.prolog.product.core.framework.annotation.FillBranch;
import com.prolog.product.core.framework.annotation.FillEnterprise;
import com.prolog.product.core.framework.annotation.IdGen;

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

/**
 * 打印路由配置表 Vo
 * <p>
 * Copyright: Copyright (C) 2020 prolog-int, Inc. All rights reserved.
 * <p>
 * Company: 湖北普罗格科技股份有限公司
 *
 *
 * @author zxs
 * @since 2020-05-29 18:26
 */
@Data
@ApiModel("打印路由配置表 VO")
public class SysDefineprintrouteVO implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "企业ID")
	@NotBlank(message = "企业ID必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 30, message = "企业ID最大长度30", groups = { AddGroup.class, EditGroup.class })
	@FillEnterprise
	private Long enterpriseid;

	@ApiModelProperty(value = "仓ID")
	@NotBlank(message = "仓ID必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 30, message = "仓ID最大长度30", groups = { AddGroup.class, EditGroup.class })
	@FillBranch
	private Long branchid;

	@ApiModelProperty(value = "路由配置ID")
	@NotBlank(message = "路由配置ID必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 30, message = "路由配置ID最大长度30", groups = { AddGroup.class, EditGroup.class })
	@IdGen(name = "printrouteid", seed = "L")
	private String printrouteid;

	@ApiModelProperty(value = "IP地址")
	@NotBlank(message = "IP地址必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 30, message = "IP地址最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String printername;

	@ApiModelProperty(value = "状态")
	@NotNull(message = "状态必填", groups = { AddGroup.class, EditGroup.class })
	private Integer status;

	@ApiModelProperty(value = "工号")
	@Size(max = 30, message = "工号最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String operatorcode;

	@ApiModelProperty(value = "人员名称")
	@Size(max = 30, message = "人员名称最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String operatorname;

	@ApiModelProperty(value = "字符属性扩展1")
	@Size(max = 30, message = "字符属性扩展1最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String attrStr1;

	@ApiModelProperty(value = "字符属性扩展2")
	@Size(max = 30, message = "字符属性扩展2最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String attrStr2;

	@ApiModelProperty(value = "字符属性扩展3")
	@Size(max = 30, message = "字符属性扩展3最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String attrStr3;

	@ApiModelProperty(value = "字符属性扩展4")
	@Size(max = 30, message = "字符属性扩展4最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String attrStr4;

	@ApiModelProperty(value = "字符属性扩展5")
	@Size(max = 30, message = "字符属性扩展5最大长度30", groups = { AddGroup.class, EditGroup.class })
	private String attrStr5;

	@ApiModelProperty(value = "模糊条件")
	private String condition;

	@ApiModelProperty(value = "备注")
	private String remark;

	private Integer pageNum;

	private Integer pageSize;
}
