90 lines
2.8 KiB
JavaScript
90 lines
2.8 KiB
JavaScript
import { adminApi,requestUtils} from '@deotaland/utils';
|
||
|
||
export class AdminOrders {
|
||
constructor() {
|
||
// 初始化防抖函数
|
||
this.debouncedSaveProgress = this.createDebouncedSaveProgress();
|
||
}
|
||
|
||
/**
|
||
* 创建防抖的保存进度函数
|
||
* 防止频繁调用API,延迟1秒执行
|
||
*/
|
||
createDebouncedSaveProgress() {
|
||
let timeout;
|
||
return (params) => {
|
||
return new Promise((resolve, reject) => {
|
||
clearTimeout(timeout);
|
||
timeout = setTimeout(async () => {
|
||
try {
|
||
const result = await requestUtils.common(adminApi.default.updateOrderStatus, params);
|
||
resolve(result);
|
||
} catch (error) {
|
||
reject(error);
|
||
}
|
||
}, 1000); // 1秒防抖延迟
|
||
});
|
||
};
|
||
}
|
||
//获取订单详情
|
||
getOrderDetail(params){
|
||
return requestUtils.common(adminApi.default.getOrderDetailt,params);
|
||
}
|
||
//获取订单列表
|
||
getOrderList(params){
|
||
params.source_type = 0
|
||
return requestUtils.common(adminApi.default.getOrderList,params);
|
||
}
|
||
//同意退款
|
||
refundApprove(params){
|
||
return requestUtils.common(adminApi.default.refundApprove,params);
|
||
}
|
||
//拒绝退款
|
||
refundReject(params){
|
||
return requestUtils.common(adminApi.default.refundReject,params);
|
||
}
|
||
//同意/拒绝订单
|
||
updateOrderStatus(type=0,audit_reject_reason='',data){//0未通过,1已通过
|
||
let params = {
|
||
id:data.id,
|
||
order_status:type==0?1:2
|
||
}
|
||
if(audit_reject_reason&&type==0){
|
||
params.audit_reject_reason = audit_reject_reason;
|
||
}
|
||
return requestUtils.common(adminApi.default.updateOrderStatus,params);
|
||
}
|
||
//完成拆件
|
||
completeDisassembly(data){
|
||
let params = {
|
||
order_status:3,
|
||
id:data.id
|
||
}
|
||
return requestUtils.common(adminApi.default.updateOrderStatus,params);
|
||
}
|
||
//订单统计
|
||
getOrderStatistics(){
|
||
return requestUtils.common(adminApi.default.getOrderStatistics);
|
||
}
|
||
//保存拆件进度(带防抖功能)
|
||
saveDisassemblyProgress(params){
|
||
// 使用防抖函数来避免频繁调用API
|
||
return this.debouncedSaveProgress(params);
|
||
}
|
||
//修改订单支付状态
|
||
updatePayStatus(data,type=0){//0未支付,1已支付
|
||
let parmas = {
|
||
id:data.id,
|
||
}
|
||
if(type==1){
|
||
parmas.payment_status = 1;
|
||
parmas.order_status = 3;
|
||
parmas.refund_status =0;
|
||
}else{
|
||
parmas.payment_status = 0;
|
||
parmas.order_status = 0;
|
||
parmas.refund_status =0;
|
||
}
|
||
return requestUtils.common(adminApi.default.updateOrderStatus,parmas);
|
||
}
|
||
} |