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

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

import javax.validation.Valid;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
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.rdc.tms.model.vo.SysImportTempletdUpdateVO;

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

/**
 *
 * 导入配置模板汇总 VO
 *
 *
 * @className: SysImportTemplethUpdateVO
 * @author: kh
 * @creationTime: 2022-01-12 10:12:37
 * @description:
 * @modifier:
 * @modifyTime:
 * @reviseRemarks:
 *
 * @version :1.0.0
 *
 */
@Data
@ApiModel("导入配置模板汇总 VO更新")
public class SysImportTemplethUpdateVO implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "模板汇总主键")
	@NotBlank(message = "模板汇总主键必填", groups = { AddGroup.class, EditGroup.class })
	@Size(max = 32, message = "模板汇总主键最大长度32", groups = { AddGroup.class, EditGroup.class })
	private Long hid;

	@ApiModelProperty(value = "是否启用，0否，1是", required = true)
	@Min(value = 0, message = "最小只能为0")
	@Max(value = 1, message = "最大只能为1")
	@NotNull(message = "是否启用，0否，1是必填", groups = { AddGroup.class, EditGroup.class })
	private Integer status;

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

	@ApiModelProperty(value = "明细", required = true)
	@Valid
	@NotEmpty(message = "明细不应该为空")
	List<SysImportTempletdUpdateVO> list;
}
