ced8c7cff7
- 后端新增专区销量统计相关 VO 并扩展 ShopHomeSection 实体 - 新增批量查询专区销量汇总与商品排行的 Mapper 方法及接口 - Controller 增加获取专区销量统计的接口支持时间范围查询 - 前端接口定义新增专区销量统计类型及请求方法 - 专区管理页面列表新增销量件数、销售额列及销量详情按钮 - 实现专区销量统计弹窗支持时间筛选、汇总展示和排行显示 - 完成前端相关界面和交互设计,保证功能完整可用 - 统计口径基于已支付且未取消/退款订单商品实际成交数据
121 lines
2.3 KiB
TypeScript
121 lines
2.3 KiB
TypeScript
import type { PageParam } from '@/api';
|
|
|
|
/**
|
|
* 首页专区
|
|
*/
|
|
export interface HomeSection {
|
|
// 专区ID
|
|
sectionId?: number;
|
|
// 租户id
|
|
tenantId?: number;
|
|
// 专区标题
|
|
title?: string;
|
|
// 专区副标题
|
|
subtitle?: string;
|
|
// banner 图片URL
|
|
banner?: string;
|
|
// 关联分类ID(逗号分隔字符串,可选)
|
|
categoryIds?: string;
|
|
// 样式类型 0默认
|
|
styleType?: number;
|
|
// 是否受限专区 0否 1是
|
|
restricted?: number;
|
|
// 排序号(数字越小越靠前)
|
|
sortNumber?: number;
|
|
// 状态 0正常 1禁用
|
|
status?: number;
|
|
// 生效开始时间
|
|
startTime?: string;
|
|
// 生效结束时间
|
|
endTime?: string;
|
|
// 用户ID
|
|
userId?: number;
|
|
// 是否删除 0否 1是
|
|
deleted?: number;
|
|
// 创建时间
|
|
createTime?: string;
|
|
// 修改时间
|
|
updateTime?: string;
|
|
// 销量件数(统计, 非DB字段)
|
|
salesNum?: number;
|
|
// 销售额(统计, 非DB字段)
|
|
salesAmount?: number;
|
|
}
|
|
|
|
/**
|
|
* 首页专区搜索条件
|
|
*/
|
|
export interface HomeSectionParam extends PageParam {
|
|
// 专区标题(模糊)
|
|
title?: string;
|
|
// 状态 0正常 1禁用
|
|
status?: number;
|
|
// 是否受限专区 0/1
|
|
restricted?: number;
|
|
// 排序号
|
|
sortNumber?: number;
|
|
}
|
|
|
|
/**
|
|
* 专区权限校验结果
|
|
*/
|
|
export interface SectionPermission {
|
|
// 专区ID
|
|
sectionId?: number;
|
|
// 是否受限专区
|
|
restricted?: boolean;
|
|
// 当前用户是否允许访问
|
|
allowed?: boolean;
|
|
}
|
|
|
|
/**
|
|
* 专区商品(只读展示,字段按需取用)
|
|
*/
|
|
export interface SectionGoods {
|
|
goodsId?: number;
|
|
name?: string;
|
|
image?: string;
|
|
price?: string;
|
|
salePrice?: string;
|
|
stock?: number;
|
|
status?: number;
|
|
[key: string]: any;
|
|
}
|
|
|
|
/**
|
|
* 专区白名单用户
|
|
*/
|
|
export interface SectionUser {
|
|
id?: number;
|
|
sectionId?: number;
|
|
userId?: number;
|
|
}
|
|
|
|
/**
|
|
* 专区销量统计(含商品排行)
|
|
*/
|
|
export interface SectionSalesStatsVO {
|
|
// 专区ID
|
|
sectionId?: number;
|
|
// 销量件数
|
|
salesNum?: number;
|
|
// 销售额
|
|
salesAmount?: number;
|
|
// 统计开始时间
|
|
startTime?: string;
|
|
// 统计结束时间
|
|
endTime?: string;
|
|
// 商品销量排行
|
|
goodsRank?: SectionGoodsRankItem[];
|
|
}
|
|
|
|
/**
|
|
* 专区商品销量排行项
|
|
*/
|
|
export interface SectionGoodsRankItem {
|
|
goodsId?: number;
|
|
goodsName?: string;
|
|
salesNum?: number;
|
|
salesAmount?: number;
|
|
}
|