package com.storlead.sales.mail.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.storlead.framework.mybatis.entity.SysBaseField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * <p>
 * 邮箱smtp_setting
 * </p>
 *
 * @author chenkq
 * @since 2024-05-28
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("smtp_pop_settings")
@ApiModel(value="SmtpPopSettingsEntity对象", description="邮箱smtp_setting")
public class SmtpPopSettingsEntity extends SysBaseField {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "审批人ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "收件服务器")
    @TableField("receive_server")
    private String receiveServer;

    @ApiModelProperty(value = "收件端口")
    @TableField("receive_port")
    private String receivePort;

    @ApiModelProperty(value = "smtp服务器")
    @TableField("smtp_server")
    private String smtpServer;

    @ApiModelProperty(value = "smtp端口")
    @TableField("smtp_port")
    private String smtpPort;

    @ApiModelProperty(value = "协议类型1:POP3/IMAP")
    @TableField("protocol_type")
    private String protocolType;

    @ApiModelProperty(value = "邮箱")
    @TableField("email_address")
    private String emailAddress;

    @ApiModelProperty(value = "密码:需要加密")
    @TableField("email_password")
    private String emailPassword;

    @ApiModelProperty(value = "是否默认")
    @TableField("use_default")
    private Integer useDefault;

    @ApiModelProperty(value = "是否ssl")
    @TableField("smtp_ssl")
    private Integer smtpSsl;

    @ApiModelProperty(value = "是否tls")
    @TableField("smtp_tls")
    private Integer smtpTls;

    @ApiModelProperty(value = "是否ssl")
    @TableField("receive_ssl")
    private Integer receiveSsl;

    @ApiModelProperty(value = "是否ssl")
    @TableField("sender_nick_name")
    private String senderNickName;

    @ApiModelProperty(value = "获取多少天前面的数据")
    @TableField("pull_day")
    private Integer pullDay;

    @ApiModelProperty(value = "保留多少天的数据")
    @TableField("reserve_day")
    private Integer reserveDay;

    @ApiModelProperty(value = "是否开启删除服务器邮件：0 未开启，1：开启")
    @TableField("is_delete_mail")
    private Integer isDeleteMail;

    @ApiModelProperty(value = "自动回复标题")
    @TableField("reply_title")
    private String replyTitle;

    @ApiModelProperty(value = "自动回复开始时间")
    @TableField("reply_on_time")
    private Date replyOnTime;

    @ApiModelProperty(value = "自动邮件内容")
    @TableField("reply_content")
    private String replyContent;

    @ApiModelProperty(value = "是否自动回复")
    @TableField("is_auto_reply")
    private Integer isAutoReply;

    @ApiModelProperty(value = "错误次数")
    @TableField("connect_error_count")
    private Integer connectErrorCount;
}
