Files
template-10586/app/api/shop/shopDealerPoster/model/index.ts
赵忠林 5e26fdc7fb feat(app): 初始化项目配置和页面结构
- 添加 .dockerignore 和 .env.example 配置文件
- 添加 .gitignore 忽略规则配置
- 创建服务端代理API路由(_file、_modules、_server)
- 集成 Ant Design Vue 组件库并配置SSR样式提取
- 定义API响应类型封装
- 创建基础布局组件(blank、console)
- 实现应用中心页面和组件(AppsCenter)
- 添加文章列表测试页面
- 配置控制台导航菜单结构
- 实现控制台头部组件
- 创建联系页面表单
2026-01-17 18:23:37 +08:00

94 lines
1.8 KiB
TypeScript

import type { PageParam } from '@/api';
/**
* 分销商海报设置
*/
export interface ShopDealerPoster {
// 主键ID
id?: number;
// 海报名称
name?: string;
// 背景图片URL
backgroundImage?: string;
// 海报配置(JSON格式)
config?: string;
// 是否启用
enabled?: boolean;
// 是否默认
isDefault?: boolean;
// 排序
sort?: number;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string | Date;
// 修改时间
updateTime?: string | Date;
}
/**
* 海报配置
*/
export interface PosterConfig {
// 背景图片
backgroundImage?: string;
// 海报尺寸
width?: number;
height?: number;
// 是否显示头像
showAvatar?: boolean;
// 头像URL
avatarUrl?: string;
// 头像宽度
avatarWidth?: number;
// 头像形状 circle|square
avatarShape?: string;
// 是否显示昵称
showNickname?: boolean;
// 昵称
nickname?: string;
// 昵称字体大小
nicknameFontSize?: number;
// 昵称颜色
nicknameColor?: string;
// 是否显示二维码
showQrcode?: boolean;
// 二维码URL
qrcodeUrl?: string;
// 二维码宽度
qrcodeWidth?: number;
// 元素位置配置
elements?: {
avatar?: { x: number; y: number };
nickname?: { x: number; y: number };
qrcode?: { x: number; y: number };
[key: string]: { x: number; y: number } | undefined;
};
}
/**
* 分销商海报设置搜索条件
*/
export interface ShopDealerPosterParam extends PageParam {
id?: number;
name?: string;
enabled?: boolean;
keywords?: string;
}
/**
* 海报生成参数
*/
export interface PosterGenerateParam {
// 用户ID
userId: number;
// 海报配置
config?: PosterConfig;
// 用户信息
userInfo?: {
nickname?: string;
avatar?: string;
qrcode?: string;
};
}