package org.jeecg.modules.okki.wechatgroup.entity;

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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: okki_shop_wechat_group_msg
 * @Author: jeecg-boot
 * @Date:   2024-09-09
 * @Version: V1.0
 */
@Data
@TableName("okki_shop_wechat_group_msg")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="okki_shop_wechat_group_msg对象", description="okki_shop_wechat_group_msg")
public class OkkiShopWechatGroupMsg implements Serializable {
    private static final long serialVersionUID = 1L;

	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;
	/**消息id*/
	@Excel(name = "消息id", width = 15)
    @ApiModelProperty(value = "消息id")
    private String msgId;
	/**群id*/
	@Excel(name = "群id", width = 15)
    @ApiModelProperty(value = "群id")
    private String roomId;
	/**seq*/
	@Excel(name = "seq", width = 15)
    @ApiModelProperty(value = "seq")
    private Integer seq;
	/**目前有send(发送消息)/recall(撤回消息)/switch(切换企业日志)三种类型*/
	@Excel(name = "目前有send(发送消息)/recall(撤回消息)/switch(切换企业日志)三种类型", width = 15)
    @ApiModelProperty(value = "目前有send(发送消息)/recall(撤回消息)/switch(切换企业日志)三种类型")
    private String action;
	/**消息发送方id。同一企业内容为userid，非相同企业为external_userid*/
	@Excel(name = "消息发送方id。同一企业内容为userid，非相同企业为external_userid", width = 15)
    @ApiModelProperty(value = "消息发送方id。同一企业内容为userid，非相同企业为external_userid")
    private String fromId;
	/**消息接收方列表，可能是多个，同一个企业内容为userid，非相同企业为external_userid*/
	@Excel(name = "消息接收方列表，可能是多个，同一个企业内容为userid，非相同企业为external_userid", width = 15)
    @ApiModelProperty(value = "消息接收方列表，可能是多个，同一个企业内容为userid，非相同企业为external_userid")
    private String tolist;
	/**消息发送时间*/
	@Excel(name = "消息发送时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "消息发送时间")
    private Date msgTime;
	/**消息类型*/
	@Excel(name = "消息类型", width = 15)
    @ApiModelProperty(value = "消息类型")
    private String msgType;
	/**消息内容*/
	@Excel(name = "消息内容", width = 15)
    @ApiModelProperty(value = "消息内容")
    private String content;
	/**clientId*/
	@Excel(name = "clientId", width = 15)
    @ApiModelProperty(value = "clientId")
    private Integer clientId;
	/**siteId*/
	@Excel(name = "siteId", width = 15)
    @ApiModelProperty(value = "siteId")
    private Integer siteId;
	/**createTime*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "createTime")
    private Date createTime;
	/**updateTime*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "updateTime")
    private Date updateTime;


    /**消息发送方id。同一企业内容为userid，非相同企业为external_userid*/
    @TableField(exist = false)
    private String from;
    /**消息接收方列表，可能是多个，同一个企业内容为userid，非相同企业为external_userid*/

    @TableField(exist = false)
    private String tcName;
}
