package cn.iocoder.yudao.module.im.controller.admin.friend.vo;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import lombok.Data;
|
|
import java.time.LocalDateTime;
|
|
/**
|
* IM 好友 Response VO
|
*
|
* @author 芋道源码
|
*/
|
@Schema(description = "管理后台 - IM 好友 Response VO")
|
@Data
|
public class ImFriendRespVO {
|
|
@Schema(description = "关系记录编号", example = "1024")
|
private Long id;
|
|
@Schema(description = "好友的用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "2048")
|
private Long friendUserId;
|
|
@Schema(description = "是否免打扰", example = "false")
|
private Boolean silent;
|
|
@Schema(description = "好友展示备注(仅自己可见)", example = "老张")
|
private String displayName;
|
|
@Schema(description = "好友展示备注的拼音(小写无空格)", example = "laozhang")
|
private String displayNamePinyin;
|
|
@Schema(description = "添加来源", example = "1")
|
private Integer addSource; // 参见 ImFriendAddSourceEnum 枚举
|
|
@Schema(description = "是否置顶联系人", example = "false")
|
private Boolean pinned;
|
|
@Schema(description = "是否拉黑(仅自己可见)", example = "false")
|
private Boolean blocked;
|
|
@Schema(description = "好友状态", example = "0")
|
private Integer status;
|
|
@Schema(description = "添加好友时间")
|
private LocalDateTime addTime;
|
|
@Schema(description = "删除好友时间")
|
private LocalDateTime deleteTime;
|
|
@Schema(description = "最近更新时间(增量拉取游标用)")
|
private LocalDateTime updateTime;
|
|
// ========== 下面是聚合字段,方便前端显示 ==========
|
|
@Schema(description = "好友昵称(实时聚合自 AdminUser)", example = "芋道")
|
private String nickname;
|
|
@Schema(description = "好友昵称的拼音(小写无空格)", example = "yudao")
|
private String nicknamePinyin;
|
|
@Schema(description = "好友头像(实时聚合自 AdminUser)")
|
private String avatar;
|
|
}
|