package com.ruoyi.zhdd.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.zhdd.domain.PlanFile;
import com.ruoyi.zhdd.domain.PlanTask;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;
import java.util.List;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 预案管理业务对象 b_plan
 *
 * @author xitong
 * @date 2021-09-28
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("预案管理业务对象")
public class PlanBo extends BaseEntity {

    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    private String id;

    /**
     * 预案名称
     */
    @ApiModelProperty(value = "预案名称")
    @NotBlank(message = "name不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     * 预案类型
     */
    @ApiModelProperty(value = "预案类型")
    @NotNull(message = "type不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer type;

    /**
     * 创建部门
     */
    @ApiModelProperty(value = "创建部门")
    @NotBlank(message = "createDept不能为空", groups = { AddGroup.class, EditGroup.class })
    private String createDept;

    /**
     * $column.columnComment
     */
    @ApiModelProperty(value = "$column.columnComment")
    private String delFlag;


    /**
     * 分页大小
     */
    @ApiModelProperty("分页大小")
    private Integer pageSize;

    /**
     * 当前页数
     */
    @ApiModelProperty("当前页数")
    private Integer pageNum;

    /**
     * 排序列
     */
    @ApiModelProperty("排序列")
    private String orderByColumn;

    /**
     * 排序的方向desc或者asc
     */
    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
    private String isAsc;

    @ApiModelProperty("预案任务")
    private List<PlanTask> planTasks;

    @ApiModelProperty("预案文件")
    private List<PlanFile> planFiles;

}
