- 新增地址类型定义,增强前端地址数据结构 - 新增地址编辑页面,支持地址智能识别和定位选点功能 - 地址编辑支持省市区选择及默认地址设置 - 新增地址列表页面,支持地址展示、删除、编辑和选择功能 - 实现售后申请页面,支持选择售后类型和退款原因 - 售后申请支持商品选择、退款金额计算和凭证上传 - 新增售后详情页面,支持售后状态展示及申请取消 - 优化页面加载和用户交互体验,增加错误提示和权限处理
280 lines
5.4 KiB
TypeScript
280 lines
5.4 KiB
TypeScript
import type { PageParam } from '@/api/index';
|
|
|
|
/**
|
|
* 邀请记录表
|
|
*/
|
|
export interface InviteRecord {
|
|
// 主键ID
|
|
id?: number;
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 被邀请人ID
|
|
inviteeId?: number;
|
|
// 邀请人姓名
|
|
inviterName?: string;
|
|
// 被邀请人姓名
|
|
inviteeName?: string;
|
|
// 邀请来源 (qrcode, link, share等)
|
|
source?: string;
|
|
// 场景值
|
|
scene?: string;
|
|
// 邀请状态: pending-待注册, registered-已注册, activated-已激活
|
|
status?: 'pending' | 'registered' | 'activated';
|
|
// 邀请时间
|
|
inviteTime?: string;
|
|
// 注册时间
|
|
registerTime?: string;
|
|
// 激活时间
|
|
activateTime?: string;
|
|
// 备注
|
|
comments?: string;
|
|
// 是否删除, 0否, 1是
|
|
deleted?: number;
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请统计表
|
|
*/
|
|
export interface InviteStats {
|
|
// 主键ID
|
|
id?: number;
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 统计日期
|
|
statDate?: string;
|
|
// 总邀请数
|
|
totalInvites?: number;
|
|
// 成功注册数
|
|
successfulRegistrations?: number;
|
|
// 激活用户数
|
|
activatedUsers?: number;
|
|
// 转化率
|
|
conversionRate?: number;
|
|
// 今日邀请数
|
|
todayInvites?: number;
|
|
// 本周邀请数
|
|
weeklyInvites?: number;
|
|
// 本月邀请数
|
|
monthlyInvites?: number;
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请来源统计表
|
|
*/
|
|
export interface InviteSourceStats {
|
|
// 主键ID
|
|
id?: number;
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 来源类型
|
|
source?: string;
|
|
// 来源名称
|
|
sourceName?: string;
|
|
// 邀请数量
|
|
inviteCount?: number;
|
|
// 成功数量
|
|
successCount?: number;
|
|
// 转化率
|
|
conversionRate?: number;
|
|
// 统计日期
|
|
statDate?: string;
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
}
|
|
|
|
/**
|
|
* 小程序码记录表
|
|
*/
|
|
export interface MiniProgramCode {
|
|
// 主键ID
|
|
id?: number;
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 场景值
|
|
scene?: string;
|
|
// 小程序码URL
|
|
codeUrl?: string;
|
|
// 页面路径
|
|
pagePath?: string;
|
|
// 二维码宽度
|
|
width?: number;
|
|
// 环境版本
|
|
envVersion?: string;
|
|
// 过期时间
|
|
expireTime?: string;
|
|
// 使用次数
|
|
useCount?: number;
|
|
// 最后使用时间
|
|
lastUseTime?: string;
|
|
// 状态: active-有效, expired-过期, disabled-禁用
|
|
status?: 'active' | 'expired' | 'disabled';
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请记录搜索条件
|
|
*/
|
|
export interface InviteRecordParam extends PageParam {
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 被邀请人ID
|
|
inviteeId?: number;
|
|
// 邀请状态
|
|
status?: string;
|
|
// 邀请来源
|
|
source?: string;
|
|
// 开始时间
|
|
startTime?: string;
|
|
// 结束时间
|
|
endTime?: string;
|
|
// 关键词搜索
|
|
keywords?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请统计搜索条件
|
|
*/
|
|
export interface InviteStatsParam extends PageParam {
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 统计开始日期
|
|
startDate?: string;
|
|
// 统计结束日期
|
|
endDate?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请来源统计搜索条件
|
|
*/
|
|
export interface InviteSourceStatsParam extends PageParam {
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 来源类型
|
|
source?: string;
|
|
// 统计开始日期
|
|
startDate?: string;
|
|
// 统计结束日期
|
|
endDate?: string;
|
|
}
|
|
|
|
/**
|
|
* 小程序码搜索条件
|
|
*/
|
|
export interface MiniProgramCodeParam extends PageParam {
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 状态
|
|
status?: string;
|
|
// 场景值
|
|
scene?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请排行榜数据
|
|
*/
|
|
export interface InviteRanking {
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 邀请人姓名
|
|
inviterName?: string;
|
|
// 邀请人头像
|
|
inviterAvatar?: string;
|
|
// 邀请数量
|
|
inviteCount?: number;
|
|
// 成功数量
|
|
successCount?: number;
|
|
// 转化率
|
|
conversionRate?: number;
|
|
// 排名
|
|
rank?: number;
|
|
// 奖励金额
|
|
rewardAmount?: number;
|
|
}
|
|
|
|
/**
|
|
* 邀请奖励配置
|
|
*/
|
|
export interface InviteRewardConfig {
|
|
// 主键ID
|
|
id?: number;
|
|
// 奖励类型: register-注册奖励, activate-激活奖励, order-订单奖励
|
|
rewardType?: string;
|
|
// 奖励名称
|
|
rewardName?: string;
|
|
// 奖励金额
|
|
rewardAmount?: number;
|
|
// 奖励积分
|
|
rewardPoints?: number;
|
|
// 奖励优惠券ID
|
|
couponId?: number;
|
|
// 是否启用
|
|
enabled?: boolean;
|
|
// 生效时间
|
|
effectTime?: string;
|
|
// 失效时间
|
|
expireTime?: string;
|
|
// 备注
|
|
comments?: string;
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
}
|
|
|
|
/**
|
|
* 邀请奖励记录
|
|
*/
|
|
export interface InviteRewardRecord {
|
|
// 主键ID
|
|
id?: number;
|
|
// 邀请记录ID
|
|
inviteRecordId?: number;
|
|
// 邀请人ID
|
|
inviterId?: number;
|
|
// 被邀请人ID
|
|
inviteeId?: number;
|
|
// 奖励类型
|
|
rewardType?: string;
|
|
// 奖励金额
|
|
rewardAmount?: number;
|
|
// 奖励积分
|
|
rewardPoints?: number;
|
|
// 优惠券ID
|
|
couponId?: number;
|
|
// 发放状态: pending-待发放, issued-已发放, failed-发放失败
|
|
status?: 'pending' | 'issued' | 'failed';
|
|
// 发放时间
|
|
issueTime?: string;
|
|
// 失败原因
|
|
failReason?: string;
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
}
|