package com.tofly.pojo.message;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 消息推送数据表:TF_YWPN_MESSAGEPUSH_W
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "TF_YWPN_MESSAGEPUSH_W", resultMap = "messagepushMap")
@KeySequence("TF_YWPN_MESSAGEPUSH_W")
@ApiModel
public class Messagepush extends Model<Messagepush> {
    private static final long serialVersionUID = 1L;

    /**
     * 唯一编码
     */
    @TableId(value = "ID", type = IdType.INPUT)
    @ApiModelProperty(value = "唯一编码")
    private Long id;
    /**
     * 消息主题
     */
    @ApiModelProperty(value = "消息主题")
    private String topic;
    /**
     * 消息详情
     */
    @ApiModelProperty(value = "消息详情")
    private String message;
    /**
     * 回复的原消息ID
     */
    @ApiModelProperty(value = "回复的原消息ID")
    private Long replyId;
    /**
     * 消息类型：0普通消息 1抢维修 2巡检 3工地 4隐患 5管网工单  6业务工单 7基础数据处理 0001上报 0002审核
     */
    @ApiModelProperty(value = "消息类型：0普通消息 1抢维修 2巡检 3工地 4隐患 5管网工单  6业务工单 7基础数据处理 0001上报 0002审核 12业务工单 13报装业务")
    private String type;

    /**
     * 消息链接表名
     */
    @ApiModelProperty(value = "消息链接表名")
    private String tableName;
    /**
     * 链接ID
     */
    @ApiModelProperty(value = "链接ID")
    private Long tableId;
    /**
     * 路由地址进行跳转
     */
    @ApiModelProperty(value = "路由地址进行跳转")
    private String routeIp;
    /**
     * APP路由地址进行跳转
     */
    @ApiModelProperty(value = "APP路由地址进行跳转")
    private String routeIpApp;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @TableField(value = "CREATE_USER", fill = FieldFill.INSERT)
    private Long createUser;
    @TableField(exist = false)
    @ApiModelProperty(hidden = true)
    private String createUserName;

    @ApiModelProperty("是否加急 0否 1是")
    private String isEmergency;

}
