package cn.timer.api.bean.spmk;

import java.util.Date;

import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import cn.timer.api.config.exception.ValidationMsg;
import cn.timer.api.config.validation.Insert;
import cn.timer.api.config.validation.Ranks;
import cn.timer.api.config.validation.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author Tang 2020-04-17
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "spmk_approval_template_g")
@ApiModel("审批模板组")
public class SpmkApprovalTemplateG extends Model<SpmkApprovalTemplateG> {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue
	@TableId(type = IdType.AUTO)
	@ApiModelProperty(value = "编号 编号", example = "101")
	@NotNull(groups = {Ranks.class,Insert.class,Update.class},message = ValidationMsg.NOTNULL)
	private Integer id;

	@ApiModelProperty(value = "组名 ", example = "组名")
	private String name;

	@ApiModelProperty(value = "排序 排序", example = "101")
	@NotNull(groups = {Ranks.class},message = ValidationMsg.NOTNULL)
	private Integer ranks;

	@TableField(fill = FieldFill.INSERT_UPDATE)
	@ApiModelProperty(value = "编辑时间 ", example = "编辑时间")
	private Date updateTime;

}