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

import com.prolog.product.core.base.group.AddGroup;
import com.prolog.product.core.base.group.EditGroup;
import com.prolog.product.core.framework.annotation.DbQuerySymbol;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * 
 *
 * 行政区域 VO
 *
 * @className :LmsTmsZoneVO
 * @author :fanzw
 * @creationTime :2020/07/03
 * @description :
 * @modifier :fanzw
 * @modifyTime :2020/07/03
 * @reviseRemarks:
 *
 * @version :1.0.0
 *
 */
@Data
@ApiModel("行政区域 VO")
public class LmsTmsZoneVO implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "区域ID")
	@NotBlank(message = "区域ID必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 10, message = "区域ID最大长度10", groups = { AddGroup.class, EditGroup.class })
	@DbQuerySymbol("eq")
	private String zoneid;

	@ApiModelProperty(value = "区域名称")
	@NotBlank(message = "区域名称必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 60, message = "区域名称最大长度60", groups = { AddGroup.class, EditGroup.class })
	private String zname;

	@ApiModelProperty(value = "简称")
	@NotBlank(message = "简称必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 60, message = "简称最大长度60", groups = { AddGroup.class, EditGroup.class })
	private String keyvalue;

	@ApiModelProperty(value = "层级")
	@NotNull(message = "层级必填", groups = { AddGroup.class, EditGroup.class })
	private Integer zlevel;

	@ApiModelProperty(value = "父级ID")
	@Size(max = 10, message = "父级ID最大长度10", groups = { AddGroup.class, EditGroup.class })
	private String fatherid;

	@ApiModelProperty(value = "父级名称")
	@Size(max = 60, message = "父级名称最大长度60", groups = { AddGroup.class, EditGroup.class })
	private String fullname;

	@ApiModelProperty(value = "补充说明")
	@Size(max = 10, message = "补充说明最大长度10", groups = { AddGroup.class, EditGroup.class })
	private String sortcode;

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

	private int pageNum;

	private int pageSize;
}
