2 lines
4.2 KiB
JavaScript
2 lines
4.2 KiB
JavaScript
import{g as e,x as s,c as t,s as a,a as l,N as c,k as o,u as d,f as r,M as u,d as i,F as n,z as f,O as _,p as m,l as p,e as h,b as k,L as v,m as g,H as y}from"./index-CNYlV1RC.js";import{u as x}from"./order.BpURIlRG.js";import{f as b}from"./order.D0BkIm8K.js";import{_ as j}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./index.CDOq1eCZ.js";const F=j(e({__name:"list",setup(e){const j=x(),F=s([]),w=t(()=>j.orders.length>0&&F.value.length===j.orders.length),C=t(()=>F.value.reduce((e,s)=>{const t=j.orders.find(e=>e.id===s);return e+((null==t?void 0:t.totalAmount)||0)},0)),O=()=>{w.value?F.value=[]:F.value=j.orders.map(e=>e.id)},A=e=>{y({title:"确认删除",content:"确定要删除这笔订单吗?",success:s=>{return t=this,a=null,l=function*(){s.confirm&&(yield j.deleteOrder(e),F.value=F.value.filter(s=>s!==e))},new Promise((e,s)=>{var c=e=>{try{d(l.next(e))}catch(t){s(t)}},o=e=>{try{d(l.throw(e))}catch(t){s(t)}},d=s=>s.done?e(s.value):Promise.resolve(s.value).then(c,o);d((l=l.apply(t,a)).next())});var t,a,l}})},P=e=>{const s=[];return e.city&&s.push(e.city),e.district&&s.push(e.district),e.community&&s.push(e.community),e.user&&s.push(e.user),s.join(" > ")||"未选择区域"};return a(()=>{j.loadOrders()}),(e,s)=>{const t=p,a=o,y=g;return d(),l(a,{class:"container"},{default:c(()=>[r(a,{class:"content"},{default:c(()=>[u(j).orders.length>0?(d(),l(a,{key:0,class:"order-list"},{default:c(()=>[(d(!0),i(n,null,f(u(j).orders,e=>(d(),l(a,{key:e.id,class:"order-item"},{default:c(()=>[r(a,{class:"order-checkbox",onClick:_(s=>(e=>{const s=F.value.indexOf(e);s>-1?F.value.splice(s,1):F.value.push(e)})(e.id),["stop"])},{default:c(()=>[r(a,{class:m(["checkbox",{checked:F.value.includes(e.id)}])},{default:c(()=>[F.value.includes(e.id)?(d(),l(t,{key:0,class:"check-icon"},{default:c(()=>[h("✓")]),_:1})):k("",!0)]),_:2},1032,["class"])]),_:2},1032,["onClick"]),r(a,{class:"order-content"},{default:c(()=>[r(a,{class:"order-header"},{default:c(()=>[r(a,{class:"order-region"},{default:c(()=>[r(t,{class:"region-icon"},{default:c(()=>[h("📍")]),_:1}),r(t,{class:"region-text"},{default:c(()=>[h(v(P(e)),1)]),_:2},1024)]),_:2},1024),r(t,{class:"order-time"},{default:c(()=>[h(v(u(b)(e.createTime)),1)]),_:2},1024)]),_:2},1024),r(a,{class:"order-items"},{default:c(()=>[(d(!0),i(n,null,f(e.items,(e,s)=>(d(),l(a,{key:s,class:"order-item-row"},{default:c(()=>[r(t,{class:"item-name"},{default:c(()=>[h(v(e.name),1)]),_:2},1024),r(a,{class:"item-info"},{default:c(()=>[r(t,{class:"item-weight"},{default:c(()=>[h(v(e.weight||e.count)+" "+v("kg"===e.unit?"kg":"个"),1)]),_:2},1024),r(t,{class:"item-price"},{default:c(()=>[h("¥"+v(e.price.toFixed(2))+"/"+v("kg"===e.unit?"kg":"个"),1)]),_:2},1024)]),_:2},1024),r(t,{class:"item-amount"},{default:c(()=>[h("¥"+v((e.amount||0).toFixed(2)),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),r(a,{class:"order-footer"},{default:c(()=>[r(a,{class:"order-total"},{default:c(()=>[r(t,{class:"total-label"},{default:c(()=>[h("合计:")]),_:1}),r(t,{class:"total-amount"},{default:c(()=>[h("¥"+v((e.totalAmount||0).toFixed(2)),1)]),_:2},1024)]),_:2},1024),r(a,{class:"order-actions"},{default:c(()=>[r(t,{class:"delete-btn",onClick:_(s=>A(e.id),["stop"])},{default:c(()=>[h("删除")]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})):(d(),l(a,{key:1,class:"empty-state"},{default:c(()=>[r(y,{class:"empty-icon",src:"./static/no-orders.png",mode:"aspectFit"}),r(t,{class:"empty-text"},{default:c(()=>[h("暂无订单")]),_:1}),r(t,{class:"empty-hint"},{default:c(()=>[h("完成回收后将在此显示订单记录")]),_:1})]),_:1}))]),_:1}),u(j).orders.length>0?(d(),l(a,{key:0,class:"bottom-bar"},{default:c(()=>[r(a,{class:"select-all",onClick:O},{default:c(()=>[r(a,{class:m(["checkbox",{checked:w.value}])},{default:c(()=>[w.value?(d(),l(t,{key:0,class:"check-icon"},{default:c(()=>[h("✓")]),_:1})):k("",!0)]),_:1},8,["class"]),r(t,{class:"select-text"},{default:c(()=>[h("全选")]),_:1})]),_:1}),r(a,{class:"selected-info"},{default:c(()=>[r(t,{class:"selected-count"},{default:c(()=>[h("已选 "+v(F.value.length)+" 单",1)]),_:1}),r(t,{class:"selected-total"},{default:c(()=>[h("合计: ¥"+v(C.value.toFixed(2)),1)]),_:1})]),_:1})]),_:1})):k("",!0)]),_:1})}}}),[["__scopeId","data-v-2d039526"]]);export{F as default};
|