package org.jeecg.modules.basedata.entity;

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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * @Description: 工时任务
 * @author： jeecg-boot
 * @date：   2020-07-14
 * @version： V1.0
 */
@Data
@TableName("fd_work_tasks")
public class FdWorkTasks implements Serializable {
    private static final long serialVersionUID = 1L;
    
	/**工时任务主键*/
	@TableId(type = IdType.UUID)
	private String id;
	/**任务名称*/
	@Excel(name = "任务名称", width = 15)
	@NotEmpty(message = "任务名称不能为空")
	private String name;
	/**1临床2生物分析3非项目工时任务*/
	@Excel(name = "1临床2生物分析3非项目工时任务", width = 15)
	@NotEmpty(message = "类型不能为空")
	private String type;
	/**删除标记0正常1删除*/
	@Excel(name = "删除标记0正常1删除", width = 15)
	private String delFlag;
	/**创建人*/
	@Excel(name = "创建人", width = 15)
	private String createBy;
	/**创建时间*/
	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private Date createTime;
	/**最后修改人*/
	@Excel(name = "最后修改人", width = 15)
	private String updateBy;
	/**最后修改时间*/
	@Excel(name = "最后修改时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private Date updateTime;
	/**备注*/
	@Excel(name = "备注", width = 15)
	private String memo;
	/**父级分类*/
	@Excel(name = "父级分类", width = 15)
	private String parentId;
	/**对应的所有父级分类，以逗号隔开*/
	@Excel(name = "对应的所有父级分类，以逗号隔开", width = 15)
	private String parentIds;
	/**扩展字段1*/
	@Excel(name = "扩展字段1", width = 15)
	private String def1;
	/**扩展字段2*/
	@Excel(name = "扩展字段2", width = 15)
	private String def2;
	/**扩展字段3*/
	@Excel(name = "扩展字段3", width = 15)
	private String def3;
	/**扩展字段4*/
	@Excel(name = "扩展字段4", width = 15)
	private String def4;
	/**扩展字段5*/
	@Excel(name = "扩展字段5", width = 15)
	private String def5;
	/**排序*/
	@Excel(name = "排序", width = 15)
	@NotNull(message = "排序不能为空")
	private Integer sort;

	@TableField(exist = false)
	private List<FdWorkTasks> fdWorkTasksList;
}
