package com.iailab.module.system.dal.dataobject.notify; import com.iailab.framework.common.enums.UserTypeEnum; import com.iailab.framework.mybatis.core.dataobject.BaseDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import lombok.*; import java.time.LocalDateTime; import java.util.Map; /** * 站内信 DO * * @author xrcoder */ @TableName(value = "system_notify_message", autoResultMap = true) @KeySequence("system_notify_message_seq") // 用于 Oracleã€PostgreSQLã€Kingbaseã€DB2ã€H2 æ•°æ®åº“的主键自增。如果是 MySQL ç‰æ•°æ®åº“,å¯ä¸å†™ã€‚ @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class NotifyMessageDO extends BaseDO { /** * 站内信编å·ï¼Œè‡ªå¢ž */ @TableId private Long id; /** * ç”¨æˆ·ç¼–å· * * å…³è” MemberUserDO çš„ id å—段ã€æˆ–者 AdminUserDO çš„ id å—段 */ private Long userId; /** * 用户类型 * * 枚举 {@link UserTypeEnum} */ private Integer userType; // ========= 模æ¿ç›¸å…³å—段 ========= /** * æ¨¡ç‰ˆç¼–å· * * å…³è” {@link NotifyTemplateDO#getId()} */ private Long templateId; /** * 模版编ç * * å…³è” {@link NotifyTemplateDO#getCode()} */ private String templateCode; /** * 模版类型 * * 冗余 {@link NotifyTemplateDO#getType()} */ private Integer templateType; /** * 模版å‘é€äººå称 * * 冗余 {@link NotifyTemplateDO#getNickname()} */ private String templateNickname; /** * 模版内容 * * 基于 {@link NotifyTemplateDO#getContent()} æ ¼å¼åŒ–åŽçš„内容 */ private String templateContent; /** * 模版å‚æ•° * * 基于 {@link NotifyTemplateDO#getParams()} 输入åŽçš„å‚æ•° */ @TableField(typeHandler = JacksonTypeHandler.class) private Map<String, Object> templateParams; // ========= 读å–相关å—段 ========= /** * 是å¦å·²è¯» */ private Boolean readStatus; /** * 阅读时间 */ private LocalDateTime readTime; }