package com.yushu.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.yushu.common.annotation.Excel;
import com.yushu.common.core.domain.BaseEntity;

/**
 * 会话对象 sys_conversation
 * 
 * @author yushu
 * @date 2025-11-12
 */
public class SysConversation extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 会话ID */
    private String conversationId;

    /** 会话类型 */
    @Excel(name = "会话类型")
    private String conversationType;

    /** 会话名称 */
    @Excel(name = "会话名称")
    private String conversationName;

    /** 创建者ID */
    @Excel(name = "创建者ID")
    private Long creatorId;

    /** 创建者名称 */
    @Excel(name = "创建者名称")
    private String creatorName;

    /** 最后一条消息ID */
    private Long lastMessageId;

    /** 最后消息时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后消息时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date lastMessageTime;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    public void setConversationId(String conversationId) 
    {
        this.conversationId = conversationId;
    }

    public String getConversationId() 
    {
        return conversationId;
    }
    public void setConversationType(String conversationType) 
    {
        this.conversationType = conversationType;
    }

    public String getConversationType() 
    {
        return conversationType;
    }
    public void setConversationName(String conversationName) 
    {
        this.conversationName = conversationName;
    }

    public String getConversationName() 
    {
        return conversationName;
    }
    public void setCreatorId(Long creatorId) 
    {
        this.creatorId = creatorId;
    }

    public Long getCreatorId() 
    {
        return creatorId;
    }
    public void setCreatorName(String creatorName) 
    {
        this.creatorName = creatorName;
    }

    public String getCreatorName() 
    {
        return creatorName;
    }
    public void setLastMessageId(Long lastMessageId) 
    {
        this.lastMessageId = lastMessageId;
    }

    public Long getLastMessageId() 
    {
        return lastMessageId;
    }
    public void setLastMessageTime(Date lastMessageTime) 
    {
        this.lastMessageTime = lastMessageTime;
    }

    public Date getLastMessageTime() 
    {
        return lastMessageTime;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("conversationId", getConversationId())
            .append("conversationType", getConversationType())
            .append("conversationName", getConversationName())
            .append("creatorId", getCreatorId())
            .append("creatorName", getCreatorName())
            .append("lastMessageId", getLastMessageId())
            .append("lastMessageTime", getLastMessageTime())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}