Files
AIGC/demo/deploy_baota/frontend/static/orders-06ae6033.js

2 lines
3.5 KiB
JavaScript
Raw Normal View History

import{az as f,r as n}from"./vue-vendor-164775a6.js";import{g as O,a as v,c as g,u as S,b as p,s as y,d as m}from"./orders-ff5aaa05.js";const C=f("orders",()=>{const c=n([]),t=n(null),l=n(!1),u=n({page:0,size:10,total:0,totalPages:0}),d=async(s={})=>{try{l.value=!0,console.log("OrderStore: 开始获取订单,参数:",s);const e=await O(s);return console.log("OrderStore: API原始响应:",e),e.success?(c.value=e.data.content||e.data,u.value={page:e.data.number||0,size:e.data.size||10,total:e.data.totalElements||e.data.length,totalPages:e.data.totalPages||1},console.log("OrderStore: 处理后的订单数据:",c.value),console.log("OrderStore: 分页信息:",u.value)):console.error("OrderStore: API返回失败:",e.message),e}catch(e){return console.error("OrderStore: 获取订单异常:",e),{success:!1,message:"获取订单列表失败"}}finally{l.value=!1}};return{orders:c,currentOrder:t,loading:l,pagination:u,fetchOrders:d,fetchOrderById:async s=>{var e,o;try{l.value=!0;const r=await v(s);console.log("OrderStore: 获取订单详情响应:",r);const a=(r==null?void 0:r.data)||r||{};return console.log("OrderStore: 解析后的响应数据:",a),a.success&&a.data?(t.value=a.data,console.log("OrderStore: 设置后的订单详情:",t.value),{success:!0,data:a.data}):a.success===!1?(console.error("OrderStore: API返回失败:",a.message),{success:!1,message:a.message||"获取订单详情失败"}):a.id||a.orderNumber?(t.value=a,{success:!0,data:a}):(console.error("OrderStore: API返回数据格式错误:",a),{success:!1,message:"API返回数据格式错误"})}catch(r){return console.error("OrderStore: 获取订单详情异常:",r),{success:!1,message:((o=(e=r.response)==null?void 0:e.data)==null?void 0:o.message)||r.message||"获取订单详情失败"}}finally{l.value=!1}},createNewOrder:async s=>{try{l.value=!0;const e=await g(s);return e.success&&await d(),e}catch(e){return console.error("Create order error:",e),{success:!1,message:"创建订单失败"}}finally{l.value=!1}},updateOrder:async(s,e,o)=>{try{l.value=!0;const r=await S(s,e,o);if(r.success){const a=c.value.find(i=>i.id===s);a&&(a.status=e,a.updatedAt=new Date().toISOString()),t.value&&t.value.id===s&&(t.value.status=e,t.value.updatedAt=new Date().toISOString())}return r}catch(r){return console.error("Update order error:",r),{success:!1,message:"更新订单状态失败"}}finally{l.value=!1}},cancelOrderById:async(s,e)=>{try{l.value=!0;const o=await p(s,e);if(o.success){const r=c.value.find(a=>a.id===s);r&&(r.status="CANCELLED",r.cancelledAt=new Date().toISOString()),t.value&&t.value.id===s&&(t.value.status="CANCELLED",t.value.cancelledAt=new Date().toISOString())}return o}catch(o){return console.error("Cancel order error:",o),{success:!1,message:"取消订单失败"}}finally{l.value=!1}},shipOrderById:async(s,e)=>{try{l.value=!0;const o=await y(s,e);if(o.success){const r=c.value.find(a=>a.id===s);r&&(r.status="SHIPPED",r.shippedAt=new Date().toISOString()),t.value&&t.value.id===s&&(t.value.status="SHIPPED",t.value.shippedAt=new Date().toISOString())}return o}catch(o){return console.error("Ship order error:",o),{success:!1,message:"发货失败"}}finally{l.value=!1}},completeOrderById:async s=>{try{l.value=!0;const e=await m(s);if(e.success){const o=c.value.find(r=>r.id===s);o&&(o.status="COMPLETED",o.deliveredAt=new Date().toISOString()),t.value&&t.value.id===s&&(t.value.status="COMPLETED",t.value.deliveredAt=new Date().toISOString())}return e}catch(e){return console.error("Complete order error:",e),{success:!1,message:"完成订单失败"}}finally{l.value=!1}}}});export{C as u};