package com.horizon.wf.util.dto;

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

/**
 * 推送待办Dto
 *
 * @author sangxiaoming
 */
public class WbPushTodoDto implements Serializable {

    private String id;
    /**
     * 任务实例id *
     */
    private String taskInstId;
    /**
     * 来源系统代码 *
     */
    private String srcSystemCode = "JLYYPT";
    /**
     * 任务所属业务类型代码 *
     */
    private String bizTypeCode = "general";
    /**
     * 任务指派处理人 *
     */
    private List<String> assignees;

    /**
     * 任务标题 *
     */
    private String title;
    /**
     * 任务关联业务编码id
     */
    private String bizId;
    /**
     * 任务时间
     */
    private String taskTime;
    /**
     * 任务推送人
     */
    private String createUser;
    /**
     * 流程当前节点id
     */
    private String nodeDefId;
    /**
     * 流程当前节点名称
     */
    private String nodeDefName;
    /**
     * 重要等级(10：一般 20：急 30：加急 40：特急)
     */
    private String privilegeLevel;
    /**
     * 流程定义id
     */
    private String procDefId;
    /**
     * 流程实例名称
     */
    private String procDefName;
    /**
     * 流程实例id
     */
    private String procInstId;
    /**
     * 是否置顶(1置顶  0不置顶)
     */
    private String setTop;
    /**
     * 任务描述
     */
    private String taskDescription;
    /**
     * PC端待办详情访问链接 PC、App最少存在一个
     */
    private String todoDetailUrl;
    /**
     * 移动端待办详情访问链接 PC、App最少存在一个
     */
    private String todoDetailUrlMobile;
    /**
     * 0 待阅 1待办 默认1
     */
    private String taskType;


    /*辅助字段*/
    private Date pushTime;
    private String pushFlag;

    public WbPushTodoDto() {
    }

    public WbPushTodoDto(String id, String taskInstId, String srcSystemCode, String bizTypeCode, List<String> assignees, String title, String bizId, String taskTime, String createUser, String nodeDefId, String nodeDefName, String privilegeLevel, String procDefId, String procDefName, String procInstId, String setTop, String taskDescription, String todoDetailUrl, String todoDetailUrlMobile, String taskType, Date pushTime, String pushFlag) {
        this.id = id;
        this.taskInstId = taskInstId;
        this.srcSystemCode = srcSystemCode;
        this.bizTypeCode = bizTypeCode;
        this.assignees = assignees;
        this.title = title;
        this.bizId = bizId;
        this.taskTime = taskTime;
        this.createUser = createUser;
        this.nodeDefId = nodeDefId;
        this.nodeDefName = nodeDefName;
        this.privilegeLevel = privilegeLevel;
        this.procDefId = procDefId;
        this.procDefName = procDefName;
        this.procInstId = procInstId;
        this.setTop = setTop;
        this.taskDescription = taskDescription;
        this.todoDetailUrl = todoDetailUrl;
        this.todoDetailUrlMobile = todoDetailUrlMobile;
        this.taskType = taskType;
        this.pushTime = pushTime;
        this.pushFlag = pushFlag;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getTaskInstId() {
        return taskInstId;
    }

    public void setTaskInstId(String taskInstId) {
        this.taskInstId = taskInstId;
    }

    public String getSrcSystemCode() {
        return srcSystemCode;
    }

    public void setSrcSystemCode(String srcSystemCode) {
        this.srcSystemCode = srcSystemCode;
    }

    public String getBizTypeCode() {
        return bizTypeCode;
    }

    public void setBizTypeCode(String bizTypeCode) {
        this.bizTypeCode = bizTypeCode;
    }

    public List<String> getAssignees() {
        return assignees;
    }

    public void setAssignees(List<String> assignees) {
        this.assignees = assignees;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getBizId() {
        return bizId;
    }

    public void setBizId(String bizId) {
        this.bizId = bizId;
    }

    public String getTaskTime() {
        return taskTime;
    }

    public void setTaskTime(String taskTime) {
        this.taskTime = taskTime;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public String getNodeDefId() {
        return nodeDefId;
    }

    public void setNodeDefId(String nodeDefId) {
        this.nodeDefId = nodeDefId;
    }

    public String getNodeDefName() {
        return nodeDefName;
    }

    public void setNodeDefName(String nodeDefName) {
        this.nodeDefName = nodeDefName;
    }

    public String getPrivilegeLevel() {
        return privilegeLevel;
    }

    public void setPrivilegeLevel(String privilegeLevel) {
        this.privilegeLevel = privilegeLevel;
    }

    public String getProcDefId() {
        return procDefId;
    }

    public void setProcDefId(String procDefId) {
        this.procDefId = procDefId;
    }

    public String getProcDefName() {
        return procDefName;
    }

    public void setProcDefName(String procDefName) {
        this.procDefName = procDefName;
    }

    public String getProcInstId() {
        return procInstId;
    }

    public void setProcInstId(String procInstId) {
        this.procInstId = procInstId;
    }

    public String getSetTop() {
        return setTop;
    }

    public void setSetTop(String setTop) {
        this.setTop = setTop;
    }

    public String getTaskDescription() {
        return taskDescription;
    }

    public void setTaskDescription(String taskDescription) {
        this.taskDescription = taskDescription;
    }

    public String getTodoDetailUrl() {
        return todoDetailUrl;
    }

    public void setTodoDetailUrl(String todoDetailUrl) {
        this.todoDetailUrl = todoDetailUrl;
    }

    public String getTodoDetailUrlMobile() {
        return todoDetailUrlMobile;
    }

    public void setTodoDetailUrlMobile(String todoDetailUrlMobile) {
        this.todoDetailUrlMobile = todoDetailUrlMobile;
    }

    public String getTaskType() {
        return taskType;
    }

    public void setTaskType(String taskType) {
        this.taskType = taskType;
    }

    public Date getPushTime() {
        return pushTime;
    }

    public void setPushTime(Date pushTime) {
        this.pushTime = pushTime;
    }

    public String getPushFlag() {
        return pushFlag;
    }

    public void setPushFlag(String pushFlag) {
        this.pushFlag = pushFlag;
    }
}
