package cn.timer.api.bean.spmk;

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

import javax.persistence.*;

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.swagger.IgnoreSwaggerParameter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* @author Tang 2019-11-25
*/
@Entity
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name="spmk_lcjd")
@ApiModel("流程节点")
public class SpmkLcjd extends Model<SpmkLcjd> {

    @Id
    @GeneratedValue
    @TableId (type = IdType.AUTO)
	@ApiModelProperty(value="编号",example="101")
    private Integer id;
    
	@ApiModelProperty(value="审批管理id",example="101")
    private Integer spglId;
    
	@ApiModelProperty(value="名称 ",example="名称")
    private String name;
    
	@ApiModelProperty(value="类型 0发起人 1审批人 2抄送人 3 条件",example="101")
    private Integer type;
    
	@ApiModelProperty(value="上级节点",example="101")
    private Integer upId;
    
	@ApiModelProperty(value="下级节点",example="101")
    private Integer dowmId;
    
	@ApiModelProperty(value="优先级 1 2 3 4 5",example="101")
    private Integer yxj;
    
	@ApiModelProperty(value="审批人设置类型 0指定成员 1主管 2角色 3发起人自选 4发起人自己 5表单里的联系人 6连续多级主管",example="101")
    private Integer sprszType;
    
	@ApiModelProperty(value="是否 代审批 找不到主管时,由上级主管代审批",example="101")
    private Integer isDsp;
    
	@ApiModelProperty(value="审批方式 0依次审批 1会签(须所有审批人同意)2或签(一名审批人同意或拒绝即可)",example="101")
    private Integer spfsType;
    
	@ApiModelProperty(value="审批人为空时 0自动通过 1自动转交管理员",example="101")
    private Integer sprwkType;
    
	@Transient
	@TableField(exist = false)
	private List<SpmkSxpz> spmkSxpzs;

	@Transient
	@TableField(exist = false)
	private List<SpmkLcjdEmpAsso> spmkLcjdEmpAssos;
	
	@Transient
	@TableField(exist = false)
	private List<SpmkLcjd> SpmkLcjds;
	
	
	
}