package com.jeelowcode.service.bpm.config.framework.portal.core.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.Date;

import static com.jeelowcode.tool.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
import static com.jeelowcode.tool.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;

/**
 * 描述：接收异构系统流程请求参数
 *
 * @author shelly
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ReceiveRequestInfoDTO {

    /**
     * 系统编码
     */
    @JsonProperty("syscode")
    private String sysCode;
    /**
     * 流程实例ID
     */
    @JsonProperty("flowid")
    private String flowId;
    /**
     * 标题
     */
    @JsonProperty("requestname")
    private String requestName;
    /**
     * 流程类型名称
     */
    @JsonProperty("workflowname")
    private String workflowName;
    /**
     * 节点名称
     */
    @JsonProperty("nodename")
    private String nodeName;
    /**
     * PC端URL
     */
    @JsonProperty("pcurl")
    private String pcUrl;
    /**
     * APP端URL
     */
    @JsonProperty("appurl")
    private String appUrl;
    /**
     * 流程处理状态,0:待办,2:已办,4:办结
     */
    @JsonProperty("isremark")
    private String isRemark;
    /**
     * 流程查看状态,0:待处理,1:处理中,2:处理完成
     */
    @JsonProperty("viewtype")
    private String viewType;
    /**
     * 创建人
     */
    private String creator;
    /**
     * 创建时间
     */
    @JsonProperty("createdatetime")
    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT)
    private Date createDateTime;
    /**
     * 接收人
     */
    private String receiver;
    /**
     * 接收时间
     */
    @JsonProperty("receivedatetime")
    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT)
    private Date receiveDateTime;
    /**
     * 接收时间戳
     */
    @JsonProperty("receivets")
    private String receiveTs;

}
