package com.prolog.rdc.tms.model.vo.message;

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

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import org.springframework.format.annotation.DateTimeFormat;

/**
*  VO
* <p>
* Copyright: Copyright (C) 2022 prolog-int, Inc. All rights reserved.
* <p>
* Company: 湖北普罗格科技股份有限公司
*
*
* @author hongbo.pan
* @since 2022-11-17 16:03:45
*/
@Data
public class MessageSendLogVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "消息日志ID")
    private Long id;

    @ApiModelProperty(value = "消息配置ID")
    private Long messageConfigId;

    @ApiModelProperty(value = "消息配置名称")
    private String messageName;

    @ApiModelProperty(value = "消息类型MESSAGE_TYPE")
    private String messageType;

    @ApiModelProperty(value = "消息推送类型MESSAGE_SEND_TYPE")
    private String sendType;

    @ApiModelProperty(value = "消息单据类型MESSAGE_ORDER_TYPE")
    private String orderType;

    @ApiModelProperty(value = "消息单据号")
    private String orderNo;

    @ApiModelProperty(value = "消息内容")
    private String content;

    @ApiModelProperty(value = "消息条件")
    private String condition;

    @ApiModelProperty(value = "消息对象")
    private String noticeTo;

    @ApiModelProperty(value = "推送状态0成功  1失败")
    private String sendStatus;

    @ApiModelProperty(value = "推送时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date sendTime;

    @ApiModelProperty(value = "失败原因")
    private String errorMsg;

    @ApiModelProperty(value = "重试次数")
    private Long retryCount;

    @ApiModelProperty(value = "最后重试时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date retryTime;

    @ApiModelProperty(value = "请求入参")
    private String requestParam;

    @ApiModelProperty(value = "接收企业ID")
    private Long enterpriseId;

    @ApiModelProperty(value = "接收企业名称")
    private String enterpriseName;

    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createtime;

    @ApiModelProperty(value = "创建人")
    private String createperson;

    @ApiModelProperty(value = "修改时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updatetime;

    @ApiModelProperty(value = "修改人")
    private String updateperson;

}
