feat(backend): 实现公开短链路由与秒级微官网详情 API (Task 08)
这个提交包含在:
@@ -252,3 +252,78 @@ export interface TenantProfile {
|
||||
/** 统一品牌 VI 套件 */
|
||||
brandKit: BrandKit;
|
||||
}
|
||||
|
||||
// ==========================================
|
||||
// 5. 公开微官网聚合门户契约 (Card Portal Public Data)
|
||||
// ==========================================
|
||||
|
||||
/**
|
||||
* BentoBlockPublic - 对外公开的 Bento 块契约 (已剔除内部运维与敏感字段)
|
||||
*/
|
||||
export interface BentoBlockPublic {
|
||||
/** 网格块主键 ID */
|
||||
id: number | string;
|
||||
/** 所属名片 ID */
|
||||
cardId: number | string;
|
||||
/** 组件类型 */
|
||||
type: BentoBlockType;
|
||||
/** 栅格跨列 (1 | 2) */
|
||||
colSpan: BentoColSpan;
|
||||
/** 栅格跨行 (1 | 2) */
|
||||
rowSpan: BentoRowSpan;
|
||||
/** 排序序号 (从小到大升序排列) */
|
||||
sortOrder: number;
|
||||
/** 块标题 */
|
||||
title?: string;
|
||||
/** 块正文 / 描述 / 嵌入内容 */
|
||||
content?: string;
|
||||
/** 多媒体资源 URL (图片/视频封面/音频) */
|
||||
mediaUrl?: string;
|
||||
/** 目标跳转外链 URL */
|
||||
linkUrl?: string;
|
||||
/** 扩展元数据配置 (禁止 any) */
|
||||
metaJson?: string | Record<string, unknown>;
|
||||
}
|
||||
|
||||
/**
|
||||
* CardPortalDetail - 对外公开的微官网名片详情聚合契约 (已脱敏员工账号及内部配置)
|
||||
*/
|
||||
export interface CardPortalDetail {
|
||||
/** 名片主键 ID */
|
||||
id: number | string;
|
||||
/** 自定义个性化短链 */
|
||||
slug?: string;
|
||||
/** 姓名 */
|
||||
name: string;
|
||||
/** 职业头衔/职位 */
|
||||
title: string;
|
||||
/** 所属企业/组织名称 */
|
||||
company: string;
|
||||
/** 个人签名 / 品牌 Slogan */
|
||||
slogan?: string;
|
||||
/** 头像 / 形象照 URL */
|
||||
avatarUrl?: string;
|
||||
/** 国际电话号码 */
|
||||
phone?: string;
|
||||
/** 电子邮箱 */
|
||||
email?: string;
|
||||
/** WhatsApp 国际直达账号/号码 */
|
||||
whatsapp?: string;
|
||||
/** LinkedIn 个人/企业主页链接 */
|
||||
linkedin?: string;
|
||||
/** 所在地时区 */
|
||||
timezone?: string;
|
||||
/** 姓名双语发音音频 URL (RFC 6350 语音扩展) */
|
||||
audioPronunciationUrl?: string;
|
||||
/** 主题样式代码 */
|
||||
themeCode?: string;
|
||||
/** 名片生命周期状态 */
|
||||
status: CardStatus;
|
||||
/** 聚合关联的全部有效 Bento 块列表 (按 sortOrder 升序排列) */
|
||||
bentoBlocks: BentoBlockPublic[];
|
||||
/** 企业/团队标准品牌 VI (可选) */
|
||||
brandKit?: BrandKit;
|
||||
/** 缓存时间戳 (毫秒),供客户端首屏秒开与协商缓存 */
|
||||
cachedAt?: number;
|
||||
}
|
||||
|
||||
|
||||
在新工单中引用
屏蔽一个用户