Files
2026-07-27 14:07:26 +08:00

2 lines
1.9 KiB
JavaScript

var e=(e,t,r)=>new Promise((o,n)=>{var i=e=>{try{u(r.next(e))}catch(t){n(t)}},d=e=>{try{u(r.throw(e))}catch(t){n(t)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,d);u((r=r.apply(e,t)).next())});import{h as t,x as r,i as o}from"./index-Bwsp5moo.js";import{o as n}from"./index.CeBfbFDv.js";const i=t("order",()=>{const t=r([]),i=r([]),d=e=>{const t=(e.items||[]).map(e=>({category:e.category,name:e.name,weight:e.weight,count:e.count,unit:e.unit,price:e.price,amount:void 0!==e.amount?e.amount:(e.weight||e.count||0)*(e.price||0),icon:e.icon})),r=void 0!==e.totalAmount?e.totalAmount:t.reduce((e,t)=>e+(t.amount||0),0);return{id:e.id,items:t,totalAmount:r,createTime:e.createTime,status:e.status||"pending",city:e.city,district:e.district,community:e.community,user:e.user}},u=()=>e(void 0,null,function*(){try{const e=yield n.getOrders();t.value=e.map(d)}catch(e){console.error("Failed to load orders:",e)}});return{orders:t,currentOrderItems:i,loadOrders:u,addOrderItem:e=>{i.value.push(e)},clearCurrentItems:()=>{i.value=[]},createOrder:(t,r)=>e(void 0,null,function*(){try{const e=t.reduce((e,t)=>e+(t.amount||0),0),i=o("collector_info"),d=i?JSON.parse(i).name:"",l={id:"",items:t,totalAmount:e,createTime:(new Date).toISOString(),status:"pending",city:null==r?void 0:r.city,district:null==r?void 0:r.district,community:null==r?void 0:r.community,user:null==r?void 0:r.user,collector:d},c=yield n.addOrder(l);return c?(yield u(),c):null}catch(e){return console.error("Failed to create order:",e),null}}),updateOrder:t=>e(void 0,null,function*(){try{yield n.updateOrder(t),yield u()}catch(e){console.error("Failed to update order:",e)}}),deleteOrder:t=>e(void 0,null,function*(){try{yield n.deleteOrder(t),yield u()}catch(e){console.error("Failed to delete order:",e)}}),getOrder:r=>e(void 0,null,function*(){return yield u(),t.value.find(e=>e.id===r)||null}),getTotalAmount:()=>i.value.reduce((e,t)=>e+(t.amount||0),0)}});export{i as u};