99 lines
3.0 KiB
TypeScript
99 lines
3.0 KiB
TypeScript
import type { PageParam, PageResult } from '@vben/request';
|
|
|
|
import type { MallOrderApi } from '#/api/mall/trade/order';
|
|
|
|
import { requestClient } from '#/api/request';
|
|
|
|
export namespace MallAfterSaleApi {
|
|
/** 交易售后 */
|
|
export interface AfterSale {
|
|
id?: number; // 售后编号
|
|
no?: string; // 售后单号
|
|
status?: number; // 退款状态
|
|
way?: number; // 售后方式
|
|
type?: number; // 售后类型
|
|
userId?: number; // 用户编号
|
|
applyReason?: string; // 申请原因
|
|
applyDescription?: string; // 补充描述
|
|
applyPicUrls?: string[]; // 补充凭证图片
|
|
orderId?: number; // 交易订单编号
|
|
orderNo?: string; // 订单流水号
|
|
orderItemId?: number; // 交易订单项编号
|
|
spuId?: number; // 商品 SPU 编号
|
|
spuName?: string; // 商品 SPU 名称
|
|
skuId?: number; // 商品 SKU 编号
|
|
properties?: {
|
|
propertyId?: number; // 属性的编号
|
|
propertyName?: string; // 属性的名称
|
|
valueId?: number; // 属性值的编号
|
|
valueName?: string; // 属性值的名称
|
|
}[]; // 属性数组
|
|
picUrl?: string; // 商品图片
|
|
count?: number; // 退货商品数量
|
|
auditTime?: Date; // 审批时间
|
|
auditUserId?: number; // 审批人
|
|
auditReason?: string; // 审批备注
|
|
refundPrice?: number; // 退款金额,单位:分
|
|
payRefundId?: number; // 支付退款编号
|
|
refundTime?: Date; // 退款时间
|
|
logisticsId?: number; // 退货物流公司编号
|
|
logisticsNo?: string; // 退货物流单号
|
|
deliveryTime?: Date; // 退货时间
|
|
receiveTime?: Date; // 收货时间
|
|
receiveReason?: string; // 收货备注
|
|
order?: MallOrderApi.Order; // 关联订单
|
|
orderItem?: MallOrderApi.OrderItem; // 关联订单项
|
|
logs?: any[]; // 关联售后日志
|
|
}
|
|
|
|
/** 拒绝售后请求 */
|
|
export interface AfterSaleDisagreeReqVO {
|
|
/** 售后编号 */
|
|
id: number;
|
|
/** 拒绝原因 */
|
|
reason: string;
|
|
}
|
|
}
|
|
|
|
/** 获得交易售后分页 */
|
|
export function getAfterSalePage(params: PageParam) {
|
|
return requestClient.get<PageResult<MallAfterSaleApi.AfterSale>>(
|
|
'/trade/after-sale/page',
|
|
{ params },
|
|
);
|
|
}
|
|
|
|
/** 获得交易售后详情 */
|
|
export function getAfterSale(id: number) {
|
|
return requestClient.get<MallAfterSaleApi.AfterSale>(
|
|
`/trade/after-sale/get-detail?id=${id}`,
|
|
);
|
|
}
|
|
|
|
/** 同意售后 */
|
|
export function agreeAfterSale(id: number) {
|
|
return requestClient.put(`/trade/after-sale/agree?id=${id}`);
|
|
}
|
|
|
|
/** 拒绝售后 */
|
|
export function disagreeAfterSale(
|
|
data: MallAfterSaleApi.AfterSaleDisagreeReqVO,
|
|
) {
|
|
return requestClient.put('/trade/after-sale/disagree', data);
|
|
}
|
|
|
|
/** 确认收货 */
|
|
export function receiveAfterSale(id: number) {
|
|
return requestClient.put(`/trade/after-sale/receive?id=${id}`);
|
|
}
|
|
|
|
/** 拒绝收货 */
|
|
export function refuseAfterSale(id: number) {
|
|
return requestClient.put(`/trade/after-sale/refuse?id=${id}`);
|
|
}
|
|
|
|
/** 确认退款 */
|
|
export function refundAfterSale(id: number) {
|
|
return requestClient.put(`/trade/after-sale/refund?id=${id}`);
|
|
}
|