package com.elab.mq.model;

import javax.persistence.Column;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * mq_consumer_log
 * @author 
 */
@Table(name = "mq_consumer_log", catalog = "elab_db")
public class MqConsumerLogEntity implements Serializable {
    private Integer id;

    @Column(name = "producer_log_id")
    private Integer producerLogId;

    @Column(name="group_id")
    private String groupId;
    /**
     * 消息类型 : RMQ / KAFKA
     */
    @Column(name = "msg_type")
    private String msgType;

    /**
     * 应用的名称
     */
    @Column(name = "application_name")
    private String applicationName;

    /**
     * 应用的编号
     */
    @Column(name = "application_ip")
    private String applicationIp;

    /**
     * 主题
     */
    private String topic;

    /**
     * rmq是tag,kafka是分区index
     */
    @Column(name = "partition_name")
    private String partitionName;

    /**
     * 消息的key
     */
    @Column(name = "msg_key")
    private String msgKey;

    /**
     * rmq是消息编号,kafka是offset
     */
    @Column(name = "msg_id")
    private String msgId;

    /**
     * 应用的消费者方法定位
     */
    @Column(name = "module_method")
    private String moduleMethod;

    /**
     * 1成功 -1失败
     */
    @Column(name = "invoke_status")
    private Integer invokeStatus;

    /**
     * 日志编号
     */
    @Column(name = "log_id")
    private String logId;

    /**
     * 创建时间
     */
    @Column(name = "created_time")
    private Date createdTime;

    public String getGroupId() {
        return groupId;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }

    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

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

    public Integer getProducerLogId() {
        return producerLogId;
    }

    public void setProducerLogId(Integer producerLogId) {
        this.producerLogId = producerLogId;
    }

    public String getMsgType() {
        return msgType;
    }

    public void setMsgType(String msgType) {
        this.msgType = msgType;
    }

    public String getApplicationName() {
        return applicationName;
    }

    public void setApplicationName(String applicationName) {
        this.applicationName = applicationName;
    }

    public String getApplicationIp() {
        return applicationIp;
    }

    public void setApplicationIp(String applicationIp) {
        this.applicationIp = applicationIp;
    }

    public String getTopic() {
        return topic;
    }

    public void setTopic(String topic) {
        this.topic = topic;
    }

    public String getPartitionName() {
        return partitionName;
    }

    public void setPartitionName(String partitionName) {
        this.partitionName = partitionName;
    }

    public String getMsgKey() {
        return msgKey;
    }

    public void setMsgKey(String msgKey) {
        this.msgKey = msgKey;
    }

    public String getMsgId() {
        return msgId;
    }

    public void setMsgId(String msgId) {
        this.msgId = msgId;
    }

    public String getModuleMethod() {
        return moduleMethod;
    }

    public void setModuleMethod(String moduleMethod) {
        this.moduleMethod = moduleMethod;
    }

    public Integer getInvokeStatus() {
        return invokeStatus;
    }

    public void setInvokeStatus(Integer invokeStatus) {
        this.invokeStatus = invokeStatus;
    }

    public String getLogId() {
        return logId;
    }

    public void setLogId(String logId) {
        this.logId = logId;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }
}