8d8080c7bf
- HomeSection 模型增加 discountRate 字段,默认 1.00 表示不打折 - zoneEdit 组件新增折扣系数输入框,支持设置 0.01~1 之间的折扣率 - 后端 guilixu-java 增加专区折扣逻辑,成交价=市场价×折扣系数,保证后端价格计算安全 - 小程序 guilixu-taro 频道详情和商品详情支持专区折扣展示和传参 - 购物车新增 sectionId 字段,支持专区折扣价计算,完善购物车加购与价格计算逻辑 - 提供对应迁移 SQL 脚本更新数据库结构(专区折扣率与购物车 section_id) - 修复历史订单商品支付状态,补偿专区销量统计数据 - MEMORY 文档补充详细开发与设计说明,明确双后端接口调度和业务逻辑划分
123 lines
2.4 KiB
TypeScript
123 lines
2.4 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;
|
|
// 专区商城价折扣系数, 成交价=市场价×系数, 默认1.00不打折
|
|
discountRate?: 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;
|
|
}
|