feat:【mall 商城】优惠劵-模版(100% ele)

This commit is contained in:
YunaiV
2025-10-18 11:45:57 +08:00
parent 97e692d2fc
commit 2288748ca8
8 changed files with 458 additions and 463 deletions

View File

@@ -5,46 +5,28 @@ import { requestClient } from '#/api/request';
export namespace MallCouponApi {
/** 优惠券 */
export interface Coupon {
/** 优惠券编号 */
id: number;
/** 优惠券名称 */
name: string;
/** 优惠券状态 */
status: number;
/** 优惠券类型 */
type: number;
/** 优惠券金额 */
price: number;
/** 使用门槛 */
usePrice: number;
/** 商品范围 */
productScope: number;
/** 商品编号数组 */
productSpuIds: number[];
/** 有效期类型 */
validityType: number;
/** 固定日期-生效开始时间 */
validStartTime: Date;
/** 固定日期-生效结束时间 */
validEndTime: Date;
/** 领取日期-开始天数 */
fixedStartTerm: number;
/** 领取日期-结束天数 */
fixedEndTerm: number;
/** 每人限领个数 */
takeLimitCount: number;
/** 是否设置满多少金额可用 */
usePriceEnabled: boolean;
/** 商品分类编号数组 */
productCategoryIds: number[];
id: number; // 优惠券编号
name: string; // 优惠券名称
status: number; // 优惠券状态
type: number; // 优惠券类型
price: number; // 优惠券金额
usePrice: number; // 使用门槛
productScope: number; // 商品范围
productSpuIds: number[]; // 商品编号数组
validityType: number; // 有效期类型
validStartTime: Date; // 固定日期-生效开始时间
validEndTime: Date; // 固定日期-生效结束时间
fixedStartTerm: number; // 领取日期-开始天数
fixedEndTerm: number; // 领取日期-结束天数
takeLimitCount: number; // 每人限领个数
usePriceEnabled: boolean; // 是否设置满多少金额可用
productCategoryIds: number[]; // 商品分类编号数组
}
/** 发送优惠券 */
export interface CouponSendReqVO {
/** 优惠券编号 */
templateId: number;
/** 用户编号数组 */
userIds: number[];
templateId: number; // 优惠券编号
userIds: number[]; // 用户编号数组
}
}

View File

@@ -5,54 +5,26 @@ import { requestClient } from '#/api/request';
export namespace MallCouponTemplateApi {
/** 优惠券模板 */
export interface CouponTemplate {
/** 模板编号 */
id: number;
/** 模板名称 */
name: string;
/** 状态 */
status: number;
/** 发放数量 */
totalCount: number;
/** 每人限领个数 */
takeLimitCount: number;
/** 领取方式 */
takeType: number;
/** 使用门槛 */
usePrice: number;
/** 商品范围 */
productScope: number;
/** 商品范围值 */
productScopeValues: number[];
/** 有效期类型 */
validityType: number;
/** 固定日期-生效开始时间 */
validStartTime: Date;
/** 固定日期-生效结束时间 */
validEndTime: Date;
/** 领取日期-开始天数 */
fixedStartTerm: number;
/** 领取日期-结束天数 */
fixedEndTerm: number;
/** 优惠类型 */
discountType: number;
/** 折扣百分比 */
discountPercent: number;
/** 优惠金额 */
discountPrice: number;
/** 折扣上限 */
discountLimitPrice: number;
/** 已领取数量 */
takeCount: number;
/** 已使用数量 */
useCount: number;
}
/** 优惠券模板状态更新 */
export interface StatusUpdate {
/** 模板编号 */
id: number;
/** 状态 */
status: 0 | 1;
id: number; // 模板编号
name: string; // 模板名称
status: number; // 状态
totalCount: number; // 发放数量
takeLimitCount: number; // 每人限领个数
takeType: number; // 领取方式
usePrice: number; // 使用门槛
productScope: number; // 商品范围
productScopeValues: number[]; // 商品范围值
validityType: number; // 有效期类型
validStartTime: Date; // 固定日期-生效开始时间
validEndTime: Date; // 固定日期-生效结束时间
fixedStartTerm: number; // 领取日期-开始天数
fixedEndTerm: number; // 领取日期-结束天数
discountType: number; // 优惠类型
discountPercent?: number; // 折扣百分比
discountPrice: number; // 优惠金额
discountLimitPrice?: number; // 折扣上限
takeCount: number; // 已领取数量
useCount: number; // 已使用数量
}
}
@@ -71,9 +43,11 @@ export function updateCouponTemplate(
}
/** 更新优惠劵模板的状态 */
export function updateCouponTemplateStatus(id: number, status: 0 | 1) {
const data: MallCouponTemplateApi.StatusUpdate = { id, status };
return requestClient.put('/promotion/coupon-template/update-status', data);
export function updateCouponTemplateStatus(id: number, status: number) {
return requestClient.put('/promotion/coupon-template/update-status', {
id,
status,
});
}
/** 删除优惠劵模板 */
@@ -102,11 +76,3 @@ export function getCouponTemplateList(ids: number[]) {
`/promotion/coupon-template/list?ids=${ids}`,
);
}
/** 导出优惠劵模板 Excel */
export function exportCouponTemplateExcel(params: PageParam) {
return requestClient.get('/promotion/coupon-template/export-excel', {
params,
responseType: 'blob',
});
}

View File

@@ -6,11 +6,11 @@ export namespace MallOrderApi {
/** 商品属性 */
export interface ProductProperty {
/** 属性的编号 */
propertyId?: null | number;
propertyId?: number;
/** 属性的名称 */
propertyName?: string;
/** 属性值的编号 */
valueId?: null | number;
valueId?: number;
/** 属性值的名称 */
valueName?: string;
}
@@ -18,35 +18,35 @@ export namespace MallOrderApi {
/** 订单项 */
export interface OrderItem {
/** 编号 */
id?: null | number;
id?: number;
/** 用户编号 */
userId?: null | number;
userId?: number;
/** 订单编号 */
orderId?: null | number;
orderId?: number;
/** 商品 SPU 编号 */
spuId?: null | number;
spuId?: number;
/** 商品 SPU 名称 */
spuName?: string;
/** 商品 SKU 编号 */
skuId?: null | number;
skuId?: number;
/** 商品图片 */
picUrl?: string;
/** 购买数量 */
count?: null | number;
count?: number;
/** 商品原价(总) */
originalPrice?: null | number;
originalPrice?: number;
/** 商品原价(单) */
originalUnitPrice?: null | number;
originalUnitPrice?: number;
/** 商品优惠(总) */
discountPrice?: null | number;
discountPrice?: number;
/** 商品实付金额(总) */
payPrice?: null | number;
payPrice?: number;
/** 子订单分摊金额(总) */
orderPartPrice?: null | number;
orderPartPrice?: number;
/** 分摊后子订单实付金额(总) */
orderDividePrice?: null | number;
orderDividePrice?: number;
/** 售后状态 */
afterSaleStatus?: null | number;
afterSaleStatus?: number;
/** 属性数组 */
properties?: ProductProperty[];
price?: number;
@@ -54,104 +54,104 @@ export namespace MallOrderApi {
/** 订单日志 */
export interface OrderLog {
/** 日志编号 */
id: number;
/** 日志内容 */
content?: string;
/** 创建时间 */
createTime?: Date;
/** 用户类型 */
userType?: number;
/** 用户编号 */
userId?: number;
}
/** 订单 */
export interface Order {
/** 订单编号 */
id?: null | number;
id?: number;
/** 订单流水号 */
no?: string;
/** 下单时间 */
createTime?: Date | null;
createTime?: Date;
/** 订单类型 */
type?: null | number;
type?: number;
/** 订单来源 */
terminal?: null | number;
terminal?: number;
/** 用户编号 */
userId?: null | number;
userId?: number;
/** 用户 IP */
userIp?: string;
/** 用户备注 */
userRemark?: string;
/** 订单状态 */
status?: null | number;
status?: number;
/** 购买的商品数量 */
productCount?: null | number;
productCount?: number;
/** 订单完成时间 */
finishTime?: Date | null;
finishTime?: Date;
/** 订单取消时间 */
cancelTime?: Date | null;
cancelTime?: Date;
/** 取消类型 */
cancelType?: null | number;
cancelType?: number;
/** 商家备注 */
remark?: string;
/** 支付订单编号 */
payOrderId?: null | number;
payOrderId?: number;
/** 是否已支付 */
payStatus?: boolean;
/** 付款时间 */
payTime?: Date | null;
payTime?: Date;
/** 支付渠道 */
payChannelCode?: string;
/** 商品原价(总) */
totalPrice?: null | number;
totalPrice?: number;
/** 订单优惠(总) */
discountPrice?: null | number;
discountPrice?: number;
/** 运费金额 */
deliveryPrice?: null | number;
deliveryPrice?: number;
/** 订单调价(总) */
adjustPrice?: null | number;
adjustPrice?: number;
/** 应付金额(总) */
payPrice?: null | number | string;
payPrice?: number;
/** 发货方式 */
deliveryType?: null | number;
deliveryType?: number;
/** 自提门店编号 */
pickUpStoreId?: number;
/** 自提核销码 */
pickUpVerifyCode?: string;
/** 配送模板编号 */
deliveryTemplateId?: null | number;
deliveryTemplateId?: number;
/** 发货物流公司编号 */
logisticsId?: number;
/** 发货物流单号 */
logisticsNo?: string;
/** 发货时间 */
deliveryTime?: Date | null;
deliveryTime?: Date;
/** 收货时间 */
receiveTime?: Date | null;
receiveTime?: Date;
/** 收件人名称 */
receiverName?: string;
/** 收件人手机 */
receiverMobile?: string;
/** 收件人邮编 */
receiverPostCode?: null | number;
receiverPostCode?: number;
/** 收件人地区编号 */
receiverAreaId?: null | number;
receiverAreaId?: number;
/** 收件人地区名字 */
receiverAreaName?: string;
/** 收件人详细地址 */
receiverDetailAddress?: string;
/** 售后状态 */
afterSaleStatus?: null | number;
afterSaleStatus?: number;
/** 退款金额 */
refundPrice?: null | number;
refundPrice?: number;
/** 优惠劵编号 */
couponId?: null | number;
couponId?: number;
/** 优惠劵减免金额 */
couponPrice?: null | number;
couponPrice?: number;
/** 积分抵扣的金额 */
pointPrice?: null | number;
pointPrice?: number;
/** VIP 减免金额 */
vipPrice?: null | number;
vipPrice?: number;
/** 订单项列表 */
items?: OrderItem[];
/** 下单用户信息 */
@@ -159,7 +159,7 @@ export namespace MallOrderApi {
/** 用户头像 */
avatar?: string;
/** 用户编号 */
id?: null | number;
id?: number;
/** 用户昵称 */
nickname?: string;
};
@@ -168,7 +168,7 @@ export namespace MallOrderApi {
/** 用户头像 */
avatar?: string;
/** 用户编号 */
id?: null | number;
id?: number;
/** 用户昵称 */
nickname?: string;
};
@@ -195,7 +195,7 @@ export namespace MallOrderApi {
/** 发货方式 */
expressType: string;
/** 物流公司编号 */
logisticsId: null | number;
logisticsId: number;
/** 物流编号 */
logisticsNo: string;
}
@@ -229,13 +229,6 @@ export namespace MallOrderApi {
/** 收件人详细地址 */
receiverDetailAddress: string;
}
export interface OrderExpressTrackRespDTO {
/** 发生时间 */
time: Date;
/** 快递状态 */
content: string;
}
}
/** 查询交易订单列表 */
@@ -264,9 +257,7 @@ export function getOrder(id: number) {
/** 查询交易订单物流详情 */
export function getExpressTrackList(id: number) {
return requestClient.get<MallOrderApi.OrderExpressTrackRespDTO[]>(
`/trade/order/get-express-track-list?id=${id}`,
);
return requestClient.get(`/trade/order/get-express-track-list?id=${id}`);
}
/** 订单发货 */
@@ -296,7 +287,7 @@ export function pickUpOrder(id: number) {
/** 订单核销 */
export function pickUpOrderByVerifyCode(pickUpVerifyCode: string) {
return requestClient.put('/trade/order/pick-up-by-verify-code', {
return requestClient.put('/trade/order/pick-up-by-verify-code', undefined, {
params: { pickUpVerifyCode },
});
}