package com.zcxk.process.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zcxk.model.ProgramItem;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * (ProcessDefinition)实体类
 *
 * @author hym
 * @since 2020-12-22 15:05:50
 */
@Data
@ApiModel
public class ProcessDefinition implements Serializable {
    private static final long serialVersionUID = -54254054788559937L;
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Integer id;
    /**
     * 流程名称
     */
    @ApiModelProperty(value = "流程名称")
    private String processName;
    /**
     * 流程标识
     */
    @ApiModelProperty(value = "流程标识")
    private String processKey;
    /**
     * 流程描述
     */
    @ApiModelProperty(value = "流程描述")
    private String processDesc;
    /**
     * 租户id
     */
    @ApiModelProperty(value = "租户id",hidden = true)
    private String tenantId;
    /**
     * 任务类型
     */
    @ApiModelProperty(value = "任务类型,1表务工单，2停通水工单，3抢修工单，4漏点定位工单，5测漏工单,6违章跑水工单,7巡检任务,8测漏任务,9养护任务")
    private Integer taskType;
    /**
     * 公司id
     */
    @ApiModelProperty(value = "公司id")
    private Integer companyOrgId;
    /**
     * 业务类型
     */
    @ApiModelProperty(value = "业务类型,1工单，2任务")
    private Integer businessType;
    /**
     * 关联activiti
     */
    @ApiModelProperty(value = "关联activiti",hidden = true)
    private String actDefId;
    /**
     * 关联activiti
     */
    @ApiModelProperty(value = "关联activiti",hidden = true)
    private String actModelId;
    /**
     * 关联activiti
     */
    @ApiModelProperty(value = "关联activiti",hidden = true)
    private String actDeployId;
    /**
     * 版本
     */
    @ApiModelProperty(value = "版本",hidden = true)
    private Integer version;
    /**
     * 运行版本
     */
    @ApiModelProperty(value = "运行版本",hidden = true)
    private Integer runningVersion;
    /**
     * 流程状态，1：草稿 2：启用 3：禁用
     */
    @ApiModelProperty(value = "流程状态，1：草稿 2：启用 3：禁用",hidden = true)
    private String processStatus;
    @ApiModelProperty(value = "",hidden = true)
    private String isMain;
    /**
     * BPMN缩略图
     */
    @ApiModelProperty(value = "BPMN缩略图",hidden = true)
    private String bpmnIcon;
    /**
     * BPMN文件内容
     */
    @ApiModelProperty(value = "BPMN文件内容",hidden = true)
    private String bpmnContent;
    /**
     * 状态
     */
    @ApiModelProperty(value = "状态",hidden = true)
    private Integer status;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人",hidden = true)
    private String createBy;
    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人",hidden = true)
    private String updateBy;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间",hidden = true)
    private Date dateCreate;
    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间",hidden = true)
    private Date dateUpdate;
    private List<ProgramItem> programItems;
    @ApiModelProperty(value = "公司ids")
    private List<Integer>companyIds;
}