PageSourceSearch

https://www.ego886.com/js/OrdersPanel-CVrKjoKk.js

js ego886.com collected 2026-10-07 21:56:23 UTC 80,219 bytes, 77 lines download raw bytes

1var zt=Object.defineProperty,Ft=Object.defineProperties;var Ht=Object.getOwnPropertyDescriptors;var We=Object.getOwnPropertySymbols;var Qt=Object.prototype.hasOwnProperty,Kt=Object.prototype.propertyIsEnumerable;var Ge=(l,v,y)=>v in l?zt(l,v,{enumerable:!0,configurable:!0,writable:!0,value:y}):l[v]=y,W=(l,v)=>{for(var y in v||(v={}))Qt.call(v,y)&&Ge(l,y,v[y]);if(We)for(var y of We(v))Kt.call(v,y)&&Ge(l,y,v[y]);return l},G=(l,v)=>Ft(l,Ht(v));var P=(l,v,y)=>new Promise((_,b)=>{var O=I=>{try{L(y.next(I))}catch(U){b(U)}},x=I=>{try{L(y.throw(I))}catch(U){b(U)}},L=I=>I.done?_(I.value):Promise.resolve(I.value).then(O,x);L((y=y.apply(l,v)).next())});import{c as te,d as Ye,e as r,g as n,j as e,f,s as je,t as a,w as Ze,k as D,F as V,E as se,B as be,D as w,l as Wt,r as E,b as Gt,p as Jt,y as ge,z as $e,R as Je,O as Xe,A as Xt,h as Yt}from"./vue-vendor-BqEqlBN8.js";import A from"./ui-CkOmIgyG.js";import{P as S,_ as et,u as Zt,l as J,T as es,K as ts}from"./index-zKxGK1P5.js";import{a as ss,g as ns,b as as,d as os,e as rs,f as is,r as ls,s as ds}from"./orderService-CQ5c6xZB.js";import{s as us}from"./reviewService-Bn4uhPe1.js";import cs from"./ChatRoom-hMMgbXE-.js";import{u as ps}from"./useMobileDetect-DY6eHhra.js";import"./vendor-CgfLlPlq.js";import"./parse-hlf3C9cV.js";import"./query-mEIUYlNa.js";import"./chatService-BdMjgNH-.js";import"./imageUploadService-DQy10MQx.js";import"./cloudinary-B73r6PJ4.js";import"./alertConfig-D3aG3kyc.js";function vs(l){return{711:"7-ELEVEN 超商取貨","7-ELEVEN":"7-ELEVEN 超商取貨",FAMI:"全家超商取貨",全家:"全家超商取貨",HILIFE:"萊爾富超商取貨",萊爾富:"萊爾富超商取貨",OKMART:"OK mart 超商取貨","OK Mart":"OK mart 超商取貨",cvs:"超商取貨",convenience_store:"超商取貨"}[l]||l||"超商取貨"}function ms(l){if(!l)return null;const v=new Date(l),y=new Date(v);y.setDate(y.getDate()+7);const _=new Date,b=y.getTime()-_.getTime(),O=Math.ceil(b/(1e3*60*60*24));return{deadline:y,daysLeft:O,isExpired:O<0,isUrgent:O<=2&&O>=0}}function fs(l){return P(this,null,function*(){var y,_;if(!S.User.current())return{success:!1,shipments:new Map,message:"請先登入"};if(!l||l.length===0)return{success:!0,shipments:new Map};try{const b=S.Object.extend("tk_Shipment"),O=S.Object.extend("tk_Order"),x=l.map(N=>O.createWithoutData(N)),L=new S.Query(b);L.containedIn("order",x),L.descending("createdAt");const I=yield L.find(),U=new Map;for(const N of I){const Q=(y=N.get("order"))==null?void 0:y.id;Q&&!U.has(Q)&&U.set(Q,{objectId:N.id,trackingNumber:N.get("trackingNumber")||"",orderNumber:N.get("orderNumber")||"",provider:N.get("provider")||"",providerName:N.get("providerName")||vs(N.get("provider")),status:N.get("status")||"pending",estimatedDelivery:N.get("estimatedDelivery"),deliveredAt:N.get("deliveredAt"),receiverName:N.get("receiverName")||"",receiverPhone:N.get("receiverPhone")||"",receiverAddress:N.get("receiverAddress")||"",latestUpdate:N.get("latestUpdate")||null})}return{success:!0,shipments:U}}catch(b){return b.code===119||(_=b.message)!=null&&_.includes("does not exist")?{success:!0,shipments:new Map}:{success:!1,shipments:new Map,message:b.message}}})}function Ce(l){return l?l.id?l.id:l.objectId?l.objectId:null:null}function gs(){return P(this,arguments,function*(l={}){var O;const v=S.User.current();if(!v)return{success:!1,returns:[],message:"請先登入"};const{status:y,page:_=1,limit:b=50}=l;try{const x=S.Object.extend("tk_Return"),L=new S.Query(x);return L.equalTo("user",v),y&&L.equalTo("status",y),L.descending("createdAt"),L.skip((_-1)*b),L.limit(b),{success:!0,returns:(yield L.find()).map(N=>({id:N.id,objectId:N.id,returnNumber:N.get("returnNumber")||"",orderNumber:N.get("orderNumber")||"",status:N.get("status")||"pending",statusName:Be(N.get("status")),reasonName:N.get("reasonName")||N.get("reason")||"",reasonDetail:N.get("reasonDetail")||"",refundAmount:N.get("refundAmount")||0,returnTrackingNumber:N.get("returnTrackingNumber")||"",returnProvider:N.get("returnProvider")||"",createdAt:N.get("createdAt")}))}}catch(x){return x.code===119||(O=x.message)!=null&&O.includes("does not exist")?{success:!0,returns:[]}:{success:!1,returns:[],message:x.message}}})}function bs(l){return P(this,null,function*(){const v=S.User.current();if(!v)return{success:!1,return:null,message:"請先登入"};try{const y=S.Object.extend("tk_Return"),_=new S.Query(y);_.include("order");const b=yield _.get(l);if(Ce(b.get("user"))!==v.id)return{success:!1,return:null,message:"無權查看此退貨記錄"};const x=b.get("order");let L=null;x&&(L={productAmount:x.get("productAmount")||0,shippingFee:x.get("shippingFee")||0,couponDiscount:x.get("couponDiscount")||0,couponInfo:x.get("couponInfo")||null,pointsDiscount:x.get("pointsDiscount")||0,pointsUsed:x.get("pointsUsed")||0,totalAmount:x.get("totalAmount")||0});const I={wrong_item:"商品錯誤",defective:"商品瑕疵/損壞",not_as_described:"商品與描述不符",size_issue:"尺寸不符",changed_mind:"改變心意",duplicate_order:"重複下單",other:"其他原因"},U=b.get("reasonType"),N=b.get("reasonName")||I[U]||b.get("reason")||"";return{success:!0,return:{id:b.id,objectId:b.id,returnNumber:b.get("returnNumber")||"",orderNumber:b.get("orderNumber")||"",status:b.get("status")||"pending",statusName:Be(b.get("status")),type:b.get("type")||"return_refund",reasonType:U||"",reasonName:N,reason:b.get("reason")||"",description:b.get("reasonDetail")||b.get("description")||"",refundAmount:b.get("refundAmount")||0,actualRefundAmount:b.get("actualRefundAmount"),returnProvider:b.get("returnProvider")||"",returnTrackingNumber:b.get("returnTrackingNumber")||"",items:b.get("items")||[],statusHistory:b.get("statusHistory")||[],orderInfo:L,createdAt:b.get("createdAt")}}}catch(y){return y.code===101?{success:!1,return:null,message:"找不到此退貨記錄"}:{success:!1,return:null,message:y.message}}})}function ys(l,v){return P(this,null,function*(){const y=S.User.current();if(!y)return{success:!1,message:"請先登入"};const{provider:_,trackingNumber:b}=v;if(!b)return{success:!1,message:"請輸入物流單號"};const O=b.trim().replace(/[<>"'`;]/g,"");if(O.length<5||O.length>50)return{success:!1,message:"物流單號長度不正確"};try{const x=S.Object.extend("tk_Return"),I=yield new S.Query(x).get(l);if(Ce(I.get("user"))!==y.id)return{success:!1,message:"無權操作此退貨記錄"};const N=I.get("status");if(N!=="approved")return{success:!1,message:`目前狀態為「${Be(N)}」,無法填寫物流資訊`};I.set("returnTrackingNumber",O),I.set("returnProvider",_),I.set("status","shipping_back");const Q=I.get("statusHistory")||[];return Q.push({status:"shipping_back",statusName:"退貨中",description:`已填寫物流資訊,單號:${O}`,timestamp:new Date}),I.set("statusHistory",Q),yield I.save(),{success:!0,message:"物流資訊已提交"}}catch(x){return x.code===101?{success:!1,message:"找不到此退貨記錄"}:{success:!1,message:x.message}}})}function hs(l,v="買家取消"){return P(this,null,function*(){const y=S.User.current();if(!y)return{success:!1,message:"請先登入"};const _=(v||"買家取消").trim().substring(0,200).replace(/[<>"'`;]/g,"");try{const b=S.Object.extend("tk_Return"),x=yield new S.Query(b).get(l);if(Ce(x.get("user"))!==y.id)return{success:!1,message:"無權操作此退貨記錄"};const I=x.get("status");if(!["pending","approved"].includes(I))return{success:!1,message:`目前狀態為「${Be(I)}」,無法取消`};x.set("status","cancelled");const U=x.get("statusHistory")||[];return U.push({status:"cancelled",statusName:"已取消",description:_,cancelledAt:new Date().toISOString(),timestamp:new Date}),x.set("statusHistory",U),yield x.save(),{success:!0,message:"已取消退貨申請"}}catch(b){return b.code===101?{success:!1,message:"找不到此退貨記錄"}:{success:!1,message:b.message}}})}function ks(l){return P(this,null,function*(){const v=S.User.current();if(!v)return{success:!1,message:"請先登入"};const{orderId:y,orderNumber:_,type:b,reasonType:O,reason:x,items:L,refundAmount:I}=l;if(!y||!_)return{success:!1,message:"訂單資訊不完整"};if(!O)return{success:!1,message:"請選擇退貨原因"};try{const U=S.Object.extend("tk_Order"),Q=yield new S.Query(U).get(y);if(Ce(Q.get("user"))!==v.id)return{success:!1,message:"無權對此訂單申請退貨"};const ue=S.Object.extend("tk_Return"),ce=new S.Query(ue);if(ce.equalTo("order",Q),ce.notContainedIn("status",["cancelled","rejected","completed"]),yield ce.first())return{success:!1,message:"此訂單已有進行中的退貨申請"};const k=Date.now().toString(36).toUpperCase(),ne=Math.random().toString(36).substring(2,6).toUpperCase(),g=`RET${k}${ne}`;let d=Q.get("seller");if(d&&d.className==="_User"){const Y=S.Object.extend("tk_MemberData"),C=new S.Query(Y);C.equalTo("user",d),d=yield C.first()}const R=new ue;R.set("returnNumber",g),R.set("order",Q),R.set("orderNumber",_),R.set("user",v),R.set("buyerName",v.get("displayName")||v.get("nickname")||v.get("username")||""),d&&R.set("seller",d),R.set("type",b||"return_refund"),R.set("reasonType",O),R.set("reason",x||""),R.set("items",L||Q.get("items")||[]),R.set("refundAmount",I||Q.get("totalAmount")||0),R.set("status","pen
1ding"),R.set("statusHistory",[{status:"pending",statusName:"待審核",description:"買家已提交退貨申請",timestamp:new Date}]);const K=new S.ACL;if(K.setReadAccess(v,!0),K.setWriteAccess(v,!0),d){const Y=Ce(d.get("user"));Y&&(K.setReadAccess(Y,!0),K.setWriteAccess(Y,!0))}return K.setRoleReadAccess("Admin",!0),K.setRoleWriteAccess("Admin",!0),R.setACL(K),yield R.save(),{success:!0,message:"退貨申請已提交",returnId:R.id,returnNumber:g}}catch(U){return{success:!1,message:U.message||"申請失敗,請稍後再試"}}})}function Be(l){return{pending:"待審核",approved:"已同意",rejected:"已拒絕",shipping_back:"退貨中",received:"已收到退貨",refunded:"已退款",completed:"已完成",cancelled:"已取消"}[l]||l||"未知"}const ws={class:"order-card"},_s={class:"store-header"},Ns={class:"store-info-left"},$s={class:"store-name",tabindex:"0"},Cs={class:"order-number",tabindex:"0"},Ts={class:"order-products"},xs={class:"product-content"},As={class:"product-left"},Ss=["src","alt"],Ds={class:"product-info"},Is={class:"product-name-section"},Os={class:"product-name",tabindex:"0"},Rs={key:0,class:"product-variant",tabindex:"0"},Bs={class:"product-quantity",tabindex:"0"},Ps={class:"product-price",tabindex:"0"},Es={class:"price-current"},Ms={key:0,class:"more-items-hint"},Ls={key:0,class:"tracking-section"},Us={class:"tracking-header"},js={class:"tracking-info"},qs={class:"tracking-row"},Vs={class:"tracking-value"},zs={key:0,class:"tracking-row"},Fs={class:"tracking-value"},Hs={key:1,class:"tracking-latest"},Qs={class:"update-time"},Ks={class:"shipping-info-section"},Ws={class:"shipping-info-row"},Gs={class:"shipping-label"},Js={class:"shipping-value"},Xs={class:"shipping-address"},Ys={class:"order-footer"},Zs={class:"order-total-section"},en={class:"total-amount",tabindex:"0"},tn={class:"order-actions-section"},sn={class:"delivery-info"},nn={key:0,tabindex:"0"},an={class:"action-buttons"},on={key:1,class:"btn btn-secondary",disabled:""},rn={key:3,class:"btn btn-secondary",disabled:""},ln={key:6,class:"btn btn-secondary",disabled:""},dn={key:8,class:"btn btn-secondary",disabled:""},un={__name:"OrderCard",props:{order:{type:Object,required:!0}},emits:["pay","cancel","complete","review","reorder","refund","open-chat","view-tracking","copy-order","copy-tracking","view-detail"],setup(l){const v=l,y={pending:"退貨審核中",approved:"退貨已同意",rejected:"退貨已拒絕",shipping_back:"退貨運送中",received:"已收到退貨",refunded:"已退款",completed:"退貨完成",cancelled:"退貨已取消"},_=te(()=>v.order.returnStatus?y[v.order.returnStatus]||v.order.returnStatus:""),b={pending_payment:"待付款",processing:"待出貨",paid:"待出貨",shipped:"待收貨",delivered:"待確認收貨",completed:"已完成",cancelled:"已取消",refunding:"退款中",refunded:"已退款",failed:"付款失敗"},O={pending_payment:"status-pending",processing:"status-paid",paid:"status-paid",shipped:"status-shipped",delivered:"status-shipped",completed:"status-completed",cancelled:"status-cancelled",refunding:"status-refunding",refunded:"status-refunded",failed:"status-failed"},x={pending:"待取件",picked_up:"已取件",in_transit:"運送中",out_for_delivery:"配送中",delivered:"已送達",exception:"異常",returned:"已退回"},L={home_delivery:"宅配到府",cvs:"超商取貨",convenience_store:"超商取貨",convenience_711:"7-11 取貨",convenience_family:"全家取貨",convenience_hilife:"萊爾富取貨",convenience_okmart:"OK 取貨",self_pickup:"面交/自取"},I=te(()=>b[v.order.status]||v.order.status),U=te(()=>O[v.order.status]||""),N=te(()=>{var d;const g=(d=v.order.shipment)==null?void 0:d.status;return x[g]||g}),Q=te(()=>L[v.order.shippingMethod]||v.order.shippingMethod||"配送中"),de=te(()=>{const g=v.order.shippingAddress;return g?typeof g=="string"?g:g.storeName?`${g.storeName} ${g.storeAddr||""}`:g.address?g.address:`${g.city||""}${g.district||""}${g.detail||""}`:"未提供地址"}),ue=g=>g.specifications&&Object.keys(g.specifications).length>0,ce=g=>!g||typeof g!="object"?"":Object.entries(g).map(([d,R])=>{if(!R)return null;
1if(typeof R=="string"&&R.includes(":")){const Y=R.split(",").map(C=>C.trim()).filter(C=>{var Te;const ae=(Te=C.split(":")[1])==null?void 0:Te.trim();return ae&&ae!=="預設"});return Y.length===0?null:Y.join(", ")}return R==="預設"?null:`${d}: ${R}`}).filter(Boolean).join(", "),pe=g=>g?new Date(g).toLocaleString("zh-TW",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",k=g=>g?new Date(g).toLocaleDateString("zh-TW",{month:"numeric",day:"numeric"}):"",ne=g=>typeof g!="number"||isNaN(g)?"0":g.toLocaleString("zh-TW");return(g,d)=>{var K,Y;const R=Ye("router-link");return n(),r("div",ws,[e("section",_s,[e("div",Ns,[e("div",$s,a(l.order.storeName||"星星電商"),1),e("div",Cs,[d[18]||(d[18]=e("span",{class:"order-number-label"},"訂單編號:",-1)),e("span",{class:"order-number-value",onClick:d[0]||(d[0]=C=>g.$emit("copy-order",l.order.orderNumber))},a(l.order.orderNumber),1),e("i",{class:"fas fa-copy copy-icon",title:"複製訂單編號",onClick:d[1]||(d[1]=C=>g.$emit("copy-order",l.order.orderNumber))})]),(K=l.order.seller)!=null&&K.id?(n(),r("button",{key:0,class:"btn-chat",onClick:d[2]||(d[2]=C=>g.$emit("open-chat",l.order.seller.id,l.order.storeName))},[...d[19]||(d[19]=[e("i",{class:"fas fa-comments"},null,-1),e("span",null,"聊聊",-1)])])):f("",!0)]),(Y=l.order.seller)!=null&&Y.id?(n(),je(R,{key:0,to:`/shop/${l.order.seller.id}`,class:"btn-shop"},{default:Ze(()=>[...d[20]||(d[20]=[e("i",{class:"fas fa-store"},null,-1),e("span",null,"查看賣場",-1)])]),_:1},8,["to"])):f("",!0),e("div",{class:D(["order-status-badge",U.value]),tabindex:"0"},a(I.value),3)]),e("section",Ts,[(n(!0),r(V,null,se(l.order.items,(C,ae)=>(n(),r("div",{key:C.id,class:D(["product-item",{"hidden-mobile":ae>=2}])},[e("div",xs,[e("div",As,[e("img",{src:C.productImage||"/placeholder.png",alt:C.productName,class:"product-image",tabindex:"0"},null,8,Ss),e("div",Ds,[e("div",Is,[e("span",Os,a(C.productName),1)]),ue(C)?(n(),r("div",Rs,a(ce(C.specifications)),1)):f("",!0),e("div",Bs,"x"+a(C.quantity),1)])]),e("div",Ps,[e("span",Es,"$"+a(ne(C.price)),1)])])],2))),128)),l.order.items.length>2?(n(),r("div",Ms," 還有 "+a(l.order.items.length-2)+" 件商品 ",1)):f("",!0)]),l.order.status==="shipped"&&l.order.shipment?(n(),r("section",Ls,[e("div",Us,[d[21]||(d[21]=e("i",{class:"fas fa-truck"},null,-1)),d[22]||(d[22]=e("span",{class:"tracking-title"},"物流追蹤",-1)),e("span",{class:D(["tracking-status",l.order.shipment.status])},a(N.value),3)]),e("div",js,[e("div",qs,[d[23]||(d[23]=e("span",{class:"tracking-label"},"物流商:",-1)),e("span",Vs,a(l.order.shipment.providerName||"配送中"),1)]),l.order.shipment.trackingNumber?(n(),r("div",zs,[d[25]||(d[25]=e("span",{class:"tracking-label"},"物流單號:",-1)),e("span",Fs,a(l.order.shipment.trackingNumber),1),e("button",{class:"copy-btn",onClick:d[3]||(d[3]=be(C=>g.$emit("copy-tracking",l.order.shipment.trackingNumber),["stop"]))},[...d[24]||(d[24]=[e("i",{class:"fas fa-copy"},null,-1)])])])):f("",!0),l.order.shipment.latestUpdate?(n(),r("div",Hs,[d[26]||(d[26]=e("i",{class:"fas fa-circle"},null,-1)),e("span",null,a(l.order.shipment.latestUpdate.description),1),e("span",Qs,a(k(l.order.shipment.latestUpdate.time)),1)])):f("",!0)]),e("button",{class:"btn-tracking",onClick:d[4]||(d[4]=C=>g.$emit("view-tracking",l.order))},[...d[27]||(d[27]=[e("i",{class:"fas fa-map-marker-alt"},null,-1),w(" 查看物流詳情 ",-1)])])])):f("",!0),e("section",Ks,[e("div",Ws,[e("span",Gs,[d[28]||(d[28]=e("i",{class:"fas fa-truck"},null,-1)),w(" "+a(Q.value),1)]),e("span",Js,a(l.order.contactName)+" | "+a(l.order.contactPhone),1)]),e("div",Xs,[d[29]||(d[29]=e("i",{class:"fas fa-map-marker-alt"},null,-1)),w(" "+a(de.value),1)])]),e("div",Ys,[e("div",Zs,[d[30]||(d[30]=e("label",{class:"total-label"},"訂單金額:",-1)),e("div",en,"$"+a(ne(l.order.totalAmount)),1)]),e("div",tn,[e("div",sn,[l.order.createdAt?(n(),r("span",nn,"下單時間:"+a(pe(l.order.createdAt)),1)):f("",!0)]),e("section",an,[e("button",{class:"btn btn-outline",onClick:d[5]||(d[5]=C=>g.$emit("view-detail",l.order))},[...d[31]||(d[31]=[e("i",{class:"fas fa-file-alt"},null,-1),w(" 訂單詳情 ",-1)])]),l.order.status==="pending_payment"?(n(),r(V,{key:0},[e("button",{class:"btn btn-primary",onClick:d[6]||(d[6]=C=>g.$emit("pay",l.order))},"去付款"),e("button",{class:"btn btn-secondary",onClick:d[7]||(d[7]=C=>g.$emit("cancel",l.order))},"取消訂單")],64)):l.order.status==="failed"?(n(),r(V,{key:1},[e("button",{class:"btn btn-primary",onClick:d[8]||(d[8]=C=>g.$emit("pay",l.order))},"重新付款"),e("button",{class:"btn btn-secondary",onClick:d[9]||(d[9]=C=>g.$emit("cancel",l.order))},"取消訂單")],64)):l.order.status==="paid"||l.order.status==="processing"?(n(),r("button",{key:2,class:"btn btn-secondary",onClick:d[10]||(d[10]=C=>{var ae;return g.$emit("open-chat",(ae=l.order.seller)==null?void 0:ae.id,l.order.storeName)})},[...d[32]||(d[32]=[e("i",{class:"fas fa-comments"},null,-1),w(" 聯繫賣家 ",-1)])])):l.order.status==="shipped"?(n(),r("button",{key:3,class:"btn btn-primary",onClick:d[11]||(d[11]=C=>g.$emit("complete",l.order))},"確認收貨")):l.order.status==="delivered"?(n(),r(V,{key:4},[e("button",{class:"btn btn-primary",onClick:d[12]||(d[12]=C=>g.$emit("complete",l.order))},"確認收貨"),e("button",{class:"btn btn-secondary",onClick:d[13]||(d[13]=C=>g.$emit("refund",l.order))},"申請退款/退貨")],64)):l.order.status==="completed"?(n(),r(V,{key:5},[l.order.allReviewed?(n(),r("button",on,"已評價")):(n(),r("button",{key:0,class:"btn btn-primary",onClick:d[14]||(d[14]=C=>g.$emit("review",l.order))},"評價")),e("button",{class:"btn btn-secondary",onClick:d[15]||(d[15]=C=>g.$emit("reorder",l.order))},"再買一次"),l.order.returnStatus?(n(),r("button",rn,a(_.value),1)):(n(),r("button",{key:2,class:"btn btn-secondary",onClick:d[16]||(d[16]=C=>g.$emit("refund",l.order))},"申請退款/退貨"))],64)):l.order.status==="refunding"?(n(),r("button",ln,[...d[33]||(d[33]=[e("i",{class:"fas fa-hourglass-half"},null,-1),w(" 退款處理中 ",-1)])])):l.order.status==="cancelled"?(n(),r("button",{key:7,class:"btn btn-primary",onClick:d[17]||(d[17]=C=>g.$emit("reorder",l.order))},"重新下單")):l.order.status==="refunded"?(n(),r("button",dn,"已退款")):f("",!0)])])])])}}},cn=et(un,[["__scopeId","data-v-5793c88c"]]),pn={class:"orders-panel-wrapper"},vn={class:"orders-page"},mn={class:"tabs-section",role:"tablist"},fn=["title","aria-selected","onClick"],gn={class:"tab-text"},bn={key:0,class:"tab-count"},yn={class:"search-section"},hn={class:"search-filter-row"},kn={class:"search-container"},wn={class:"filter-buttons"},_n={class:"sort-dropdown"},Nn=["value"],$n={class:"filter-btn-text"},Cn={key:0,class:"date-filter-panel"},Tn={class:"date-presets"},xn=["onClick"],An={class:"date-inputs"},Sn={class:"date-input-group"},Dn={class:"date-input-group"},In={key:1,class:"filter-result-hint"},On={key:0},Rn={key:1},Bn={class:"result-count"},Pn={role:"tabpanel"},En={key:0,class:"skeleton-container"},Mn={class:"return-status-tabs"},Ln=["onClick"],Un={key:0,class:"return-tab-count"},jn={key:0,class:"empty-unified"},qn={class:"empty-desc"},Vn={class:"return-header"},zn={class:"return-number"},Fn={class:"return-info"},Hn={class:"return-row"},Qn={class:"return-value"},Kn={class:"return-row"},Wn={class:"return-value"},Gn={class:"return-row"},Jn={class:"return-value"},Xn={class:"return-amount-section"},Yn={class:"amount-value"}
1,Zn={key:0,class:"return-shipping-card"},ea={class:"shipping-details"},ta={class:"shipping-row"},sa={class:"shipping-value"},na={class:"shipping-row"},aa={class:"shipping-value tracking-number"},oa=["onClick"],ra={class:"return-actions"},ia=["onClick"],la=["onClick"],da=["onClick"],ua={key:0,class:"empty-state-enhanced"},ca={class:"empty-title"},pa={class:"empty-desc"},va={class:"empty-actions"},ma={key:0,class:"pagination-section"},fa=["disabled"],ga=["disabled"],ba={class:"page-info-wrapper"},ya={class:"page-info"},ha={class:"page-jump"},ka=["max"],wa=["disabled"],_a=["disabled"],Na={key:0,class:"chat-room-overlay"},$a={class:"modal-header"},Ca={key:0,class:"modal-body"},Ta={class:"return-detail-section"},xa={class:"return-detail-row"},Aa={class:"detail-value"},Sa={class:"return-detail-row"},Da={class:"detail-value"},Ia={class:"return-detail-row"},Oa={class:"detail-value"},Ra={class:"return-detail-row"},Ba={class:"return-detail-row"},Pa={class:"detail-value"},Ea={class:"return-detail-section"},Ma={class:"return-detail-row"},La={class:"detail-value"},Ua={key:0,class:"return-detail-row"},ja={class:"detail-value"},qa={key:1,class:"return-detail-row"},Va={class:"detail-value"},za={key:0,class:"return-items-section"},Fa=["src","alt"],Ha={class:"return-item-info"},Qa={class:"return-item-name"},Ka={key:0,class:"return-item-specs"},Wa={class:"return-item-qty"},Ga={class:"return-item-price"},Ja={key:1,class:"return-detail-section"},Xa={class:"amount-breakdown"},Ya={class:"amount-row"},Za={class:"amount-row"},eo={key:0,class:"amount-row discount"},to={key:0,class:"coupon-code"},so={key:1,class:"amount-row discount"},no={class:"points-info"},ao={class:"amount-row"},oo={class:"return-detail-section refund-amount-section"},ro={class:"return-detail-row"},io={class:"detail-value amount"},lo={key:0,class:"return-detail-row"},uo={class:"detail-value amount actual"},co={key:2,class:"return-shipping-info"},po={key:0,class:"return-detail-row"},vo={class:"detail-value"},mo={class:"return-detail-row"},fo={class:"detail-value"},go={class:"modal-header"},bo={class:"modal-body"},yo={class:"form-group"},ho={class:"form-group"},ko={class:"modal-actions"},wo=["disabled"],_o={class:"modal-header"},No={key:0,class:"modal-body"},$o={class:"detail-card"},Co={class:"detail-header"},To={class:"detail-info"},xo={class:"provider-name"},Ao={class:"tracking-number-text"},So={key:0,class:"progress-tracker cvs-tracker"},Do={key:1,class:"progress-tracker"},Io={class:"pickup-alert-icon"},Oo={key:0,class:"fas fa-exclamation-triangle"},Ro={key:1,class:"fas fa-clock"},Bo={key:2,class:"fas fa-store"},Po={class:"pickup-alert-content"},Eo={class:"pickup-alert-title"},Mo={class:"pickup-alert-text"},Lo={key:3,class:"info-section store-info"},Uo={class:"store-card"},jo={class:"store-name"},qo={key:0,class:"store-address"},Vo={key:1,class:"store-id"},zo={key:4,class:"info-section"},Fo={class:"info-grid"},Ho={class:"info-item"},Qo={class:"value"},Ko={class:"info-item"},Wo={class:"value"},Go={key:0,class:"info-item full-width"},Jo={class:"value"},Xo={class:"timeline-section"},Yo={key:0,class:"full-timeline"},Zo={key:0,class:"timeline-line"},er={class:"timeline-content"},tr={class:"timeline-status"},sr={class:"timeline-desc"},nr={key:0,class:"timeline-location"},ar={class:"timeline-time"},or={key:1,class:"empty-timeline"},rr={class:"modal-header"},ir={key:0,class:"modal-body order-detail-body"},lr={class:"order-detail-section"},dr={class:"detail-grid"},ur={class:"detail-item"},cr={class:"detail-item"},pr={class:"detail-item"},vr={class:"detail-value"},mr={class:"detail-item"},fr={class:"detail-value"},gr={class:"order-detail-section"},br={class:"order-items-list"},yr=["src","alt"],hr={class:"item-info"},kr={class:"item-name"},wr={key:0,class:"item-specs"},_r={class:"item-qty"},Nr={class:"item-price"},$r={class:"order-detail-section"},Cr={class:"amount-breakdown"},Tr={class:"amount-row"},xr={class:"amount-row"},Ar={key:0,class:"amount-row discount"},Sr={key:0,class:"coupon-code"},Dr={key:1,class:"amount-row discount"},Ir={class:"points-info"},Or={class:"amount-row total"},Rr={class:"total-amount"},Br={class:"order-detail-section"},Pr={class:"detail-grid"},Er={class:"detail-item"},Mr={class:"detail-value"},Lr={key:0,class:"detail-item"},Ur={class:"detail-value"},jr={class:"order-detail-section"},qr={class:"detail-grid"},Vr={class:"detail-item"},zr={class:"detail-value"},Fr={class:"detail-item"},Hr={class:"detail-value"},Qr={class:"detail-item"},Kr={class:"detail-value"},Wr={class:"detail-item full-width"},Gr={class:"detail-value"},Jr={key:0,class:"cvs-store-section"},Xr={class:"cvs-store-card"},Yr={class:"cvs-store-info"},Zr={class:"cvs-store-name"},ei={key:0,class:"cvs-store-address"},ti={key:1,class:"cvs-store-code"},si={class:"order-detail-section"},ni={class:"order-timeline"},ai={class:"timeline-content"},oi={class:"timeline-time"},ri={class:"timeline-content"},ii={class:"timeline-time"},li={class:"timeline-content"},di={class:"timeline-time"},ui={class:"timeline-content"},ci={class:"timeline-time"},pi={key:3,class:"timeline-item cancelled"},vi={class:"timeline-content"},mi={key:0,class:"timeline-reason"},fi={class:"timeline-time"},gi={key:0,class:"order-detail-section"},bi={class:"remark-content"},X="OrdersPanel",yi="您可以透過賣家名稱,訂單編號或商品名稱搜尋",hi={__name:"OrdersPanel",props:{initialTab:{type:String,default:""}},setup(l){const v={confirmButtonColor:"#ee4d2d"},y=(s,t="")=>A.fire(G(W({},v),{icon:"success",title:s,text:t})),_=(s,t="")=>A.fire(G(W({},v),{icon:"error",title:s,text:t})),b=(s,t="")=>A.fire(G(W({},v),{icon:"warning",title:s,text:t})),O=Wt(),{isMobile:x}=ps(),{setTimeout:L,setInterval:I,clearInterval:U,clearTimeout:N}=Zt(),Q=E(!1),de=E(""),ue=E(""),ce=()=>{Q.value=!1},pe=E(!1),k=E(null),ne=E([]),g=te(()=>{var s;return(s=k.value)!=null&&s.arrivedAt?ms(k.value.arrivedAt):null}),d=te(()=>{if(!k.value)return!1;const s=k.value.provider||k.value.providerName||"";return["711","7-ELEVEN","FAMI","全家","HILIFE","萊爾富","OKMART","OK Mart","cvs","convenience_store"].some(t=>s.toLowerCase().includes(t.toLowerCase()))||!!k.value.storeName}),R=["pending","in_transit","arrived_store","picked_up_by_customer","delivered"],K=s=>{var c;const t=(c=k.value)==null?void 0:c.status;if(!t)return!1;const p=R.indexOf(t),u=R.indexOf(s);return p>=u},Y=s=>{if(!s)return!1;const t=s.status;
1return["paid","processing"].includes(t)&&s.convenienceStore},C=E(!1);E(null);const ae=s=>P(null,null,function*(){if(!s||!Y(s)){b("無法修改","此訂單狀態不允許修改取貨門市");return}if((yield A.fire({title:"修改取貨門市",text:"確定要修改取貨門市嗎?將會開啟門市選擇頁面。",icon:"question",showCancelButton:!0,confirmButtonText:"開始選擇",cancelButtonText:"取消",confirmButtonColor:"#ee4d2d"})).isConfirmed){C.value=!0;try{const p=`CHANGE_STORE_${s.id}_${Date.now()}`,u=`${window.location.origin}/.netlify/functions/store-callback`;localStorage.setItem("changeStoreOrderId",s.id),localStorage.setItem("changeStoreOrderNumber",s.orderNumber);const i=yield(yield fetch("/.netlify/functions/newebpay-store-map",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderId:p,returnUrl:u,storeType:Te(s.shippingMethod)})})).json();if(i.success){const m=document.createElement("form");m.method="POST",m.action=i.formAction,m.target="_blank";for(const[T,j]of Object.entries(i.formData)){const B=document.createElement("input");B.type="hidden",B.name=T,B.value=j,m.appendChild(B)}document.body.appendChild(m),m.submit(),document.body.removeChild(m),tt(s.id),A.fire({title:"已開啟門市選擇視窗",html:`
2          <p>請在新視窗中選擇新的取貨門市</p>
3          <p class="text-muted">選擇完成後會自動更新</p>
4        `,icon:"info",confirmButtonColor:"#ee4d2d"})}else throw new Error(i.message||"無法開啟門市選擇")}catch(p){_("開啟失敗",p.message||"請稍後再試")}finally{C.value=!1}}}),Te=s=>({"7-ELEVEN":"1",全家:"2",萊爾富:"3","OK Mart":"4",convenience_store:"1"})[s]||"1";let ke=null;const tt=s=>{ke&&U(ke);let t=0;const p=120;ke=I(()=>P(null,null,function*(){if(t++,t>p){U(ke);return}try{const u=localStorage.getItem("selectedStore"),c=localStorage.getItem("changeStoreOrderId");if(u&&c===s){const i=JSON.parse(u);localStorage.removeItem("selectedStore"),localStorage.removeItem("changeStoreOrderId"),localStorage.removeItem("changeStoreOrderNumber"),U(ke),yield st(s,i)}}catch(u){}}),1e3)},st=(s,t)=>P(null,null,function*(){C.value=!0;try{const p=yield os(s,{storeCode:t.storeCode,storeName:t.storeName,storeAddr:t.storeAddr});p.success?(y("門市已更新",`已更新為:${t.storeName}`),we.value=!1,yield me()):_("更新失敗",p.message||"請稍後再試")}catch(p){_("更新失敗",p.message||"請稍後再試")}finally{C.value=!1}}),Pe=E([]),xe=E(!1),ye=E(!1),$=E(null),ve=E({provider:"",trackingNumber:""}),Ae=E(!1),Se=E(""),nt=te(()=>{const s={"":0,pending:0,approved:0,shipping_back:0,refunded:0};return Pe.value.forEach(t=>{s[""]++,s[t.status]!==void 0&&s[t.status]++}),[{label:"全部",value:"",count:s[""]},{label:"待審核",value:"pending",count:s.pending},{label:"已同意",value:"approved",count:s.approved},{label:"退貨中",value:"shipping_back",count:s.shipping_back},{label:"已退款",value:"refunded",count:s.refunded}]}),qe=te(()=>{const s=Se.value,t=Z.value.trim().toLowerCase(),p=t.length>0;let u=null,c=null;if(F.value.startDate){const m=new Date(F.value.startDate);isNaN(m.getTime())||(m.setHours(0,0,0,0),u=m)}if(F.value.endDate){const m=new Date(F.value.endDate);isNaN(m.getTime())||(m.setHours(23,59,59,999),c=m)}let i=Pe.value.filter(m=>{var T,j,B;if(s&&m.status!==s||p&&!(((T=m.returnNumber)==null?void 0:T.toLowerCase().includes(t))||((j=m.orderNumber)==null?void 0:j.toLowerCase().includes(t))||((B=m.reasonName)==null?void 0:B.toLowerCase().includes(t))))return!1;if(u||c){const M=new Date(m.createdAt);if(isNaN(M.getTime())||u&&M<u||c&&M>c)return!1}return!0});return i.sort((m,T)=>{switch(Oe.value){case"createdAt_asc":{const j=new Date(m.createdAt),B=new Date(T.createdAt),M=isNaN(j.getTime())?0:j.getTime(),z=isNaN(B.getTime())?0:B.getTime();return M-z}case"totalAmount_desc":return(T.refundAmount||0)-(m.refundAmount||0);case"totalAmount_asc":return(m.refundAmount||0)-(T.refundAmount||0);default:{const j=new Date(m.createdAt),B=new Date(T.createdAt),M=isNaN(j.getTime())?0:j.getTime();return(isNaN(B.getTime())?0:B.getTime())-M}}}),i}),at=s=>({1:"7-ELEVEN 超商",2:"全家便利商店",3:"萊爾富",4:"OK 超商",cvs_711:"7-ELEVEN",cvs_family:"全家",cvs_hilife:"萊爾富",cvs_ok:"OK 超商",tcat:"黑貓宅急便",hct:"新竹物流",post:"郵局",other:"其他"})[s]||s||"超商寄件",ot=s=>P(null,null,function*(){try{yield navigator.clipboard.writeText(s),A.fire({icon:"success",title:"已複製物流單號",timer:1500,showConfirmButton:!1})}catch(t){J.error(X,"複製失敗:",t)}}),we=E(!1),h=E(null),Ve=s=>P(null,null,function*(){if(s)try{yield navigator.clipboard.writeText(s),A.fire({icon:"success",title:"已複製",text:`訂單編號 ${s} 已複製到剪貼簿`,timer:1500,showConfirmButton:!1})}catch(t){J.error(X,"複製失敗:",t),A.fire({icon:"error",title:"複製失敗",timer:1500,showConfirmButton:!1})}}),rt=(s,t)=>P(null,null,function*(){if(!s)return;if(!S.User.current()){(yield A.fire(G(W({},v),{icon:"info",title:"請先登入",text:"登入後即可與賣家聊聊",confirmButtonText:"前往登入",showCancelButton:!0,cancelButtonText:"取消"}))).isConfirmed&&O.push("/login?redirect="+encodeURIComponent(window.location.pathname));return}if(!x.value){de.value=s,ue.value=t||"賣家",Q.value=!0;return}O.push({path:"/member/chat",query:{sellerId:s,sellerName:t||"賣家"}})}),Ee=Gt(),it=l,De=E([{type:"all",label:"全部",count:0},{type:"pending_payment",label:"待付款",count:0},{type:"paid",label:"待出貨",count:0},{type:"shipped",label:"待收貨",count:0},{type:"completed",label:"已完成",count:0},{type:"cancelled",label:"已取消",count:0},{type:"refunded",label:"退貨/退款",count:0}]),le=E("all"),Z=E(""),_e=E(!0),Ie=E([]),q=E({page:1,limit:10,total:0,totalPages:0}),he=E(1),Me=E(!1),F=E({startDate:"",endDate:""}),lt=[{label:"最近 7 天",days:7},{label:"最近 30 天",days:30},{label:"最近 90 天",days:90}],Oe=E("createdAt_desc"),dt=[{value:"createdAt_desc",label:"最新訂單"},{value:"createdAt_asc",label:"最舊訂單"},{value:"totalAmount_desc",label:"金額高到低"},{value:"totalAmount_asc",label:"金額低到高"}],oe=s=>
4s?new Date(s).toLocaleString("zh-TW",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",ut=s=>s?new Date(s).toLocaleString("zh-TW",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",ct={pending:"待取件",picked_up:"已取件",in_transit:"運送中",out_for_delivery:"配送中",delivered:"已送達",exception:"異常",returned:"已退回"},pt=s=>ct[s]||s,re=s=>{if(!k.value)return!1;const t=["pending","picked_up","in_transit","out_for_delivery","delivered"],p=t.indexOf(s);return t.indexOf(k.value.status)>=p},vt=s=>P(null,null,function*(){try{yield navigator.clipboard.writeText(s),A.fire({toast:!0,position:"top",icon:"success",title:"已複製物流單號",showConfirmButton:!1,timer:1500})}catch(t){A.fire({toast:!0,position:"top",icon:"error",title:"複製失敗",showConfirmButton:!1,timer:1500})}}),mt=s=>P(null,null,function*(){s.shipment&&(k.value=s.shipment,ne.value=s.shipment.history||[],pe.value=!0)}),ft=s=>{h.value=s,we.value=!0},gt={pending_payment:"待付款",processing:"待出貨",paid:"待出貨",shipped:"待收貨",delivered:"待確認",completed:"已完成",cancelled:"已取消",refunding:"退款中",refunded:"已退款",failed:"付款失敗"},bt=s=>gt[s]||ss(s)||s,yt={pending_payment:"status-pending",processing:"status-paid",paid:"status-paid",shipped:"status-shipped",delivered:"status-shipped",completed:"status-completed",cancelled:"status-cancelled",refunding:"status-refunding",refunded:"status-refunded",failed:"status-failed"},ht=s=>yt[s]||"",kt={newebpay_credit:"信用卡",newebpay_atm:"ATM 轉帳",newebpay_cvs:"超商代碼繳費",newebpay_barcode:"超商條碼繳費",newebpay_cvscom:"超商取貨付款",cash_on_delivery:"貨到付款"},wt=s=>kt[s]||s||"未指定",_t={home_delivery:"宅配到府",cvs:"超商取貨",convenience_store:"超商取貨",convenience_711:"7-11 取貨",convenience_family:"全家取貨",convenience_hilife:"萊爾富取貨",convenience_okmart:"OK 取貨",self_pickup:"面交/自取"},Nt=s=>_t[s]||s||"配送中",$t=s=>s?typeof s=="string"?s:s.storeName?`${s.storeName} ${s.storeAddr||""}`:s.address?s.address:`${s.city||""}${s.district||""}${s.detail||""}`:"未提供地址",ze=s=>!s||typeof s!="object"?"":Object.entries(s).map(([t,p])=>!p||p==="預設"?null:`${t}: ${p}
4`).filter(Boolean).join(", "),Ct=s=>!s.items||!Array.isArray(s.items)?0:s.items.reduce((t,p)=>t+p.price*p.quantity,0),Tt={pending:"待審核",approved:"已同意",rejected:"已拒絕",shipping_back:"退貨中",received:"已收到退貨",refunded:"已退款",completed:"已完成",cancelled:"已取消"},Fe=s=>Tt[s]||s,xt={pending:"status-pending",approved:"status-paid",rejected:"status-cancelled",shipping_back:"status-shipped",received:"status-shipped",refunded:"status-completed",completed:"status-completed",cancelled:"status-cancelled"},He=s=>xt[s]||"",Ne=()=>P(null,null,function*(){_e.value=!0;try{const s=yield gs({status:null,page:1,limit:50});s.success&&(Pe.value=s.returns||[])}catch(s){J.error(X,"載入退貨列表失敗:",s),_("載入失敗","無法載入退貨列表,請稍後再試")}finally{_e.value=!1}}),At=s=>P(null,null,function*(){try{const t=yield bs(s.id);t.success?($.value=t.return,xe.value=!0):_("載入失敗",t.message||"無法載入退貨詳情")}catch(t){J.error(X,"載入退貨詳情失敗:",t),_("載入失敗","請稍後再試")}}),St=s=>{$.value=s,ve.value={provider:"",trackingNumber:""},ye.value=!0},Dt=()=>P(null,null,function*(){if(!$.value){_("錯誤","請先選擇退貨項目");return}if(!ve.value.trackingNumber){b("請輸入物流單號");return}Ae.value=!0;try{const s=yield ys($.value.id,ve.value);s.success?(y("物流資訊已提交"),ye.value=!1,Ne().catch(()=>{})):_("提交失敗",s.message)}catch(s){J.error(X,"提交退貨物流失敗:",s),_("提交失敗","請稍後再試")}finally{Ae.value=!1}}),It=s=>P(null,null,function*(){if((yield A.fire(G(W({},v),{title:"確定要取消退貨申請嗎?",text:`退貨編號:${s.returnNumber}`,icon:"warning",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"確認取消"}))).isConfirmed)try{const p=yield hs(s.id,"買家取消");p.success?(y("已取消退貨申請"),Ne().catch(()=>{})):_("取消失敗",p.message)}catch(p){J.error(X,"取消退貨失敗:",p),_("取消失敗","請稍後再試")}}),me=()=>P(null,null,function*(){_e.value=!0;try{const s=yield ns({status:le.value,page:q.value.page,limit:q.value.limit});if(s.success){const t=s.orders.map(i=>{var m;return{id:i.id,orderNumber:i.orderNumber,storeName:((m=i.seller)==null?void 0:m.storeName)||"星星電商",seller:i.seller,status:i.status,totalAmount:i.totalAmount,productAmount:i.productAmount||0,items:i.items||[],createdAt:i.createdAt,shippingAddress:i.shippingAddress,shippingMethod:i.shippingMethod,shippingFee:i.shippingFee||0,contactName:i.contactName,contactPhone:i.contactPhone,paymentMethod:i.paymentMethod,paymentStatus:i.paymentStatus,couponDiscount:i.couponDiscount||0,couponInfo:i.couponInfo,pointsUsed:i.pointsUsed||0,pointsDiscount:i.pointsDiscount||0,remark:i.remark,paidAt:i.paidAt,shippedAt:i.shippedAt,completedAt:i.completedAt,cancelledAt:i.cancelledAt,cancelReason:i.cancelReason,shipment:null}}),p=t.filter(i=>i.status==="shipped").map(i=>i.id);if(p.length>0)try{const i=yield fs(p);if(i.success&&i.shipments){for(const m of t)if(m.status==="shipped"){const T=i.shipments.get(m.id);T&&(m.shipment=T)}}}catch(i){J.warn(X,"批量獲取物流資訊失敗:",i)}const u=t.map(i=>i.id);if(u.length>0)try{const i=S.Object.extend("tk_Return"),m=S.Object.extend("tk_Order"),T=new S.Query(i),j=u.map(z=>{const ee=new m;return ee.id=z,ee});T.containedIn("order",j),T.notContainedIn("status",["cancelled","rejected","completed"]),T.select(["order","status"]);const B=yield T.find(),M={};B.forEach(z=>{const ee=z.get("order");ee&&(M[ee.id]=z.get("status"))});for(const z of t)z.returnStatus=M[z.id]||null}catch(i){J.warn(X,"查詢退貨狀態失敗:",i)}const c=t.filter(i=>i.status==="completed");if(c.length>0)try{const i=[];if(c.forEach(m=>{m.items.forEach(T=>{T.productId&&!i.includes(T.productId)&&i.push(T.productId)})}),i.length>0){const m=S.User.current();if(m){const T=S.Object.extend("tk_Review"),j=S.Object.extend("tk_Product"),B=new S.Query(T);B.equalTo("user",m);const M=i.map(o=>{const H=new j;return H.id=o,H});B.containedIn("product",M),B.notEqualTo("status","rejected"),B.select(["product"]);const z=yield B.find(),ee=new Set(z.map(o=>{var H;return(H=o.get("product"))==null?void 0:H.id}
4).filter(Boolean));for(const o of c)o.allReviewed=o.items.length>0&&o.items.every(H=>ee.has(H.productId))}}}catch(i){J.warn(X,"查詢評價狀態失敗:",i)}Ie.value=t,q.value=s.pagination||q.value}else J.error(X,"載入訂單失敗:",s.message)}catch(s){J.error(X,"載入訂單失敗:",s),_("載入失敗","無法載入訂單資料")}finally{_e.value=!1}}),Ot=s=>{const t=new Date,p=new Date;p.setDate(p.getDate()-s),F.value.startDate=p.toISOString().split("T")[0],F.value.endDate=t.toISOString().split("T")[0]},Qe=()=>{F.value.startDate="",F.value.endDate=""},Rt=()=>{Me.value=!Me.value},ie=te(()=>F.value.startDate||F.value.endDate),Le=te(()=>{let s=[...Ie.value];if(Z.value.trim()){const u=Z.value.toLowerCase();s=s.filter(c=>{var i,m,T,j;return((i=c.id)==null?void 0:i.toLowerCase().includes(u))||((m=c.storeName)==null?void 0:m.toLowerCase().includes(u))||((T=c.orderNumber)==null?void 0:T.toLowerCase().includes(u))||((j=c.items)==null?void 0:j.some(B=>{var M;return(M=B.productName)==null?void 0:M.toLowerCase().includes(u)}))})}if(F.value.startDate){const u=new Date(F.value.startDate);u.setHours(0,0,0,0),s=s.filter(c=>new Date(c.createdAt)>=u)}if(F.value.endDate){const u=new Date(F.value.endDate);u.setHours(23,59,59,999),s=s.filter(c=>new Date(c.createdAt)<=u)}const[t,p]=Oe.value.split("_");return s.sort((u,c)=>{let i=u[t],m=c[t];return t==="createdAt"&&(i=new Date(i).getTime(),m=new Date(m).getTime()),p==="asc"?i>m?1:-1:i<m?1:-1}),s}),Bt=s=>{le.value=s,q.value.page=1,s==="refunded"?Ne().catch(()=>{}):me().catch(()=>{})},fe=s=>{q.value.page=s,he.value=s,me().catch(()=>{}),Pt()},Ke=()=>{const s=parseInt(he.value,10);if(isNaN(s)||s<1){he.value=1,fe(1);return}if(s>q.value.totalPages){he.value=q.value.totalPages,fe(q.value.totalPages);return}fe(s)},Pt=()=>{const s=document.querySelector(".orders-page");s&&s.scrollIntoView({behavior:"smooth",block:"start"})};let Ue=null;const Et=()=>{Ue&&N(Ue),Ue=L(()=>{},300)},Mt=s=>P(null,null,function*(){var p;if((yield A.fire(G(W({},v),{title:"前往付款",html:`<p>訂單編號:${s.orderNumber}</p>
5           <p>應付金額:<strong style="color: #ee4d2d;">NT$ ${((p=s.totalAmount)==null?void 0:p.toLocaleString())||0}</strong></p>`,icon:"info",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"確認付款"}))).isConfirmed){A.fire({title:"處理中...",text:"正在產生付款連結",allowOutsideClick:!1,didOpen:()=>A.showLoading()});try{const u=yield ls(s.id);A.close(),u.success&&u.payment?ds(u.payment):b("付款連結產生失敗",u.message||"請稍後再試")}catch(u){J.error(X,"產生付款連結失敗:",u),_("付款失敗",u.message||"請稍後再試或聯絡客服")}}}),Lt=s=>P(null,null,function*(){const t=yield A.fire(G(W({},v),{title:"請選擇取消原因",text:`訂單編號:${s.orderNumber}`,icon:"warning",input:"select",inputOptions:{我改變主意了:"我改變主意了",找到更便宜的商品:"找到更便宜的商品",重複下單:"重複下單",商品資訊有誤:"商品資訊有誤",配送時間太長:"配送時間太長",付款方式不符:"付款方式不符",其他原因:"其他原因"},inputPlaceholder:"請選擇取消原因",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"下一步",inputValidator:c=>{if(!c)return"請選擇取消原因"}}));if(!t.isConfirmed)return;let p=t.value;if(p==="其他原因"){const c=yield A.fire(G(W({},v),{title:"請輸入取消原因",text:"請詳細說明取消原因",icon:"info",input:"textarea",inputPlaceholder:"請輸入詳細原因...",showCancelButton:!0,cancelButtonText:"返回",confirmButtonText:"確認取消",inputValidator:i=>{if(!i||i.trim().length<5)return"請輸入至少 5 個字的取消原因"}}));if(!c.isConfirmed)return;p=`其他原因:${c.value}`}if((yield A.fire(G(W({},v),{title:"確定要取消訂單嗎?",html:`
6      <div style="text-align: left; margin: 20px 0;">
7        <p><strong>訂單編號:</strong>${s.orderNumber}</p>
8        <p><strong>取消原因:</strong>${p}</p>
9      </div>
10      <p style="color: #dc3545; margin-top: 15px;">訂單取消後將無法恢復</p>
11    `,icon:"warning",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"確認取消訂單",confirmButtonColor:"#dc3545"}))).isConfirmed)try{const c=yield is(s.id,p);if(c.success)y("訂單已取消"),me().catch(()=>{}),Re().catch(()=>{});else throw new Error(c.message)}catch(c){_("取消失敗",c.message)}}),Ut=s=>P(null,null,function*(){if((yield A.fire(G(W({},v),{title:"確認收貨?",text:"確認後訂單將完成",icon:"question",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"確認收貨"}))).isConfirmed)try{const p=yield rs(s.id);if(p.success)y("已確認收貨","訂單已完成"),me().catch(()=>{}),Re().catch(()=>{});else throw new Error(p.message)}catch(p){_("操作失敗",p.message)}}),jt=s=>P(null,null,function*(){if(!s.items||s.items.length===0){b("無法重新下單","訂單中沒有商品資訊");return}if(!(yield A.fire(G(W({},v),{title:"重新下單",html:`<p>將以下 ${s.items.length} 件商品加入購物車:</p>
12           <ul style="text-align: left; max-height: 200px; overflow-y: auto;">
13             ${s.items.map(c=>`<li>${c.productName} x ${c.quantity}</li>`).join("")}
14           </ul>`,icon:"question",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"加入購物車"}))).isConfirmed)return;A.fire({title:"處理中...",allowOutsideClick:!1,didOpen:()=>A.showLoading()});let p=0;const u=[];for(const c of s.items)try{const i=c.specifications||null,m=yield es(c.productId,c.quantity||1,i);m.success?p++:u.push({name:c.productName,reason:m.message})}catch(i){J.error(X,"加入購物車失敗:",c.productName,i),u.push({name:c.productName,reason:"加入失敗"})}A.close(),u.length===0?(yield A.fire(G(W({},v),{title:"已加入購物車",text:`成功加入 ${p} 件商品`,icon:"success",showCancelButton:!0,confirmButtonText:"前往購物車",cancelButtonText:"繼續逛逛"}))).isConfirmed&&O.push("/cart"):p>0?(yield A.fire(G(W({},v),{title:"部分商品已加入",html:`<p>成功:${p} 件</p>
15             <p>失敗:${u.length} 件</p>
16             <p style="color: #999; font-size: 12px;">
17               ${u.map(i=>`${i.name}: ${i.reason}`).join("<br>")}
18             </p>`,icon:"warning",showCancelButton:!0,confirmButtonText:"前往購物車",cancelButtonText:"關閉"}))).isConfirmed&&O.push("/cart"):_("加入失敗","商品可能已下架或缺貨")}),qt=s=>P(null,null,function*(){const t={商品瑕疵:"商品瑕疵",商品與描述不符:"商品與描述不符",收到錯
18誤商品:"收到錯誤商品",商品損壞:"商品損壞",尺寸不合:"尺寸不合",不想要了:"不想要了",其他:"其他"},{value:p}=yield A.fire(G(W({},v),{title:"申請退款/退貨",html:`
19      <div style="text-align: left;">
20        <div style="margin-bottom: 16px; padding: 12px; background: #f5f5f5; border-radius: var(--radius-sm);">
21          <div style="font-size: 13px; color: #666;">訂單編號</div>
22          <div style="font-size: 15px; font-weight: 500; color: #333;">${s.orderNumber}</div>
23        </div>
24
25        <div style="margin-bottom: 16px;">
26          <label style="display: block; margin-bottom: 8px; font-weight: 500;">申請類型</label>
27          <select id="swal-type" style="width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: var(--radius-xs); font-size: 14px;">
28            <option value="return_refund">退貨退款</option>
29            <option value="refund_only">僅退款(不退貨)</option>
30          </select>
31        </div>
32
33        <div style="margin-bottom: 16px;">
34          <label style="display: block; margin-bottom: 8px; font-weight: 500;">退貨原因 <span style="color: #ee4d2d;">*</span></label>
35          <select id="swal-reason-type" style="width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: var(--radius-xs); font-size: 14px;">
36            <option value="">請選擇原因</option>
37            ${Object.entries(t).map(([u,c])=>`<option value="${u}">${c}</option>`).join("")}
38          </select>
39        </div>
40
41        <div style="margin-bottom: 16px;">
42          <label style="display: block; margin-bottom: 8px; font-weight: 500;">詳細說明</label>
43          <textarea id="swal-reason" placeholder="請描述您的問題(選填)" style="width: 100%; height: 80px; padding: 10px; border: 1px solid #ddd; border-radius: var(--radius-xs); resize: none; font-size: 14px;"></textarea>
44        </div>
45
46        <div style="padding: 12px; background: #fff7e6; border-radius: var(--radius-sm); font-size: 13px; color: #d48806;">
47          <i class="fas fa-info-circle" style="margin-right: 6px;"></i>
48          退款金額:NT$ ${(s.totalAmount||0).toLocaleString()}
49        </div>
50      </div>
51    `,focusConfirm:!1,showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"提交申請",preConfirm:()=>{var m,T,j;const u=((m=document.getElementById("swal-type"))==null?void 0:m.value)||"",c=((T=document.getElementById("swal-reason-type"))==null?void 0:T.value)||"",i=((j=document.getElementById("swal-reason"))==null?void 0:j.value)||"";return c?{type:u,reasonType:c,reason:i}:(A.showValidationMessage("請選擇退貨原因"),!1)}}));if(p){A.fire(G(W({},v),{title:"處理中...",text:"正在提交退貨申請",allowOutsideClick:!1,showConfirmButton:!1,didOpen:()=>{A.showLoading()}}));try{const u=yield ks({orderId:s.objectId||s.id,orderNumber:s.orderNumber,type:p.type,reasonType:p.reasonType,reason:p.reason,items:s.items,refundAmount:s.totalAmount});if(u.success){const c=Ie.value.findIndex(i=>(i.objectId||i.id)===(s.objectId||s.id));c!==-1&&(Ie.value[c].returnStatus="pending"),yield A.fire(G(W({},v),{icon:"success",title:"申請已提交",html:`
52          <div style="text-align: center;">
53            <p>退貨編號:<strong>${u.returnNumber}</strong></p>
54            <p style="font-size: 13px; color: #666; margin-top: 8px;">賣家將在 1-3 個工作天內審核您的申請</p>
55          </div>
56        `})),le.value="refunded",Ne().catch(()=>{}),Re().catch(()=>{})}else _("申請失敗",u.message||"請稍後再試")}catch(u){J.error(X,"申請退貨失敗:",u),_("申請失敗","系統錯誤,請稍後再試")}}}),Vt=s=>P(null,null,function*(){if(s.items.length===0){b("沒有可評價的商品");return}let t=s.items[0];if(s.items.length>1){const u={};s.items.forEach((i,m)=>{u[m]=i.productName});const{value:c}=yield A.fire(G(W({},v),{title:"選擇要評價的商品",input:"select",inputOptions:u,inputPlaceholder:"選擇商品",showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"下一步"}));if(c===void 0)return;t=s.items[c]}const{value:p}=yield A.fire(G(W({},v),{title:"商品評價",html:`
57      <div style="text-align: left; margin-bottom: 16px;">
58        <div style="display: flex; align-items: center; gap: 12px; margin-bottom: 16px;">
59          <img src="${t.productImage||"/placeholder.png"}" alt="" style="width: 60px; height: 60px; object-fit: cover; border-radius: var(--radius-xs);">
60          <div style="flex: 1;">
61            <div style="font-size: 14px; color: #333; margin-bottom: 4px;">${t.productName}</div>
62            <div style="font-size: 12px; color: #888;">${t.specifications?Object.values(t.specifications).filter(u=>u&&u!=="預設").join(" / "):""}</div>
63          </div>
64        </div>
65
66        <label style="display: block; margin-bottom: 8px; font-weight: 500;">評分</label>
67        <div id="rating-stars" style="display: flex; gap: 8px; margin-bottom: 16px;">
68          ${[1,2,3,4,5].map(u=>`
69            <span class="star-btn" data-rating="${u}" style="font-size: 28px; cursor: pointer; color: #ddd; transition: color 0.2s;">★</span>
70          `).join("")}
71        </div>
72        <input type="hidden" id="swal-rating" value="5">
73
74        <label style="display: block; margin-bottom: 8px; font-weight: 500;">評價內容</label>
75        <textarea id="swal-comment" placeholder="分享您對商品的想法(至少10個字)" style="width: 100%; height: 100px; padding: 10px; border: 1px solid #ddd; border-radius: var(--radius-xs); resize: none; font-size: 14px;"></textarea>
76      </div>
77    `,focusConfirm:!1,showCancelButton:!0,cancelButtonText:"取消",confirmButtonText:"提交評價",didOpen:()=>{const u=document.querySelectorAll(".star-btn"),c=document.getElementById("swal-rating");c&&(u.forEach(i=>i.style.color="#ffc107"),u.forEach((i,m)=>{const T=()=>{const M=m+1;c&&(c.value=M),u.forEach((z,ee)=>{z.style.color=ee<M?"#ffc107":"#ddd"})},j=()=>{u.forEach((M,z)=>{M.style.color=z<=m?"#ffc107":"#ddd"})},B=()=>{const M=parseInt((c==null?void 0:c.value)||5,10);u.forEach((z,ee)=>{z.style.color=ee<M?"#ffc107":"#ddd"})};i.addEventListener("click",T),i.addEventListener("mouseenter",j),i.addEventListener("mouseleave",B)}))},preConfirm:()=>{var m,T;const u=parseInt(((m=document.getElementById("swal-rating"))==null?void 0:m.value)||5,10),c=((T=document.getElementById("swal-comment"))==null?void 0:T.value)||"",i=ts(c);return i.isValid?{rating:u,comment:i.sanitized}:(A.showValidationMessage(i.error),!1)}}));if(p)try{A.fire({title:"提交中...",allowOutsideClick:!1,didOpen:()=>A.showLoading()});const u=yield us(t.productId,{rating:p.rating,comment:p.comment,images:[]});u.success?(y("評價成功","感謝您的評價!"),me().catch(()=>{})):_("評價失敗",u.message)}catch(u){J.error(X,"提交評價失敗:",u),_("評價失敗",u.message||"提交評價時發生錯誤")}}),Re=()=>P(null,null,function*(){try{const s=yield as();s.success&&De.value.forEach(t=>{t.type!=="refunded"&&(t.count=s.counts[t.type]||0)})}catch(s){J.warn(X,"獲取訂單數量失敗:",s)}try{const s=S.User.current();if(s){const t=S.Object.extend("tk_Return"),p=new S.Query(t);p.equalTo("user",s);const u=yield p.count(),c=De.value.find(i=>i.type==="refunded");c&&(c.count=u)}}catch(s){J.warn(X,"獲取退貨數量失敗:",s)}});return Jt(()=>P(null,null,function*(){const s=it.initialTab||Ee.query.orderTab||"all";De.value.some(t=>t.type===s)&&(le.value=s),Ee.query.search&&(Z.value=Ee.query.search);try{le.value==="refunded"?yield Ne():yield me(),yield Re()}catch(t){J.error(X,"載入訂單資料失敗:",t)}})),(s,t)=>{var u,c,i,m,T,j,B,M,z,ee;const p=Ye("router-link");return n(),r("div",pn,[e("div",vn,[e("section",mn,[(n(!0),r(V,null,se(De.value,o=>(n(),r("a",{key:o.type,href:"#",class:D(["tab-item",{active:le.value===o.type}]),title:o.label,role:"tab","aria-selected":le.value===o.type,onClick:be(H=>Bt(o.type),["prevent"])},[e("span",gn,a(o.label),1),o.count>0?(n(),r("span",bn,"("+a(o.count)+")",1)):f("",!0)],10,fn))),128))]),e("section",yn,[e("div",hn,[e("div",kn,[t[27]||(t[27]=e("i",{class:"fas fa-search search-icon",style:{"font-size":"19px"}},null,-1)),ge(e("input",{"onUpdate:modelValue":t[0]||(t[0]=o=>Z.value=o),role:"search",autocomplete:"off",placeholder:yi,onInput:Et},null,544),[[$e,Z.value]])]),e("div",wn,[e("div",_n,[ge(e("select",{"onUpdate:modelValue":t[1]||(t[1]=o=>Oe.value=o),class:"sort-select"},[(n(),r(V,null,se(dt,o=>e("option",{key:o.value,value:o.value},a(o.label),9,Nn)),64))],512),[[Je,Oe.value]])]),e("button",{class:D(["filter-btn",{active:ie.value}]),onClick:Rt},[t[28]||(t[28]=e("i",{class:"fas fa-calendar-alt"},null,-1)),e("span",$n,a(ie.value?"已篩選":"日期"),1)],2)])]),Me.value?(n(),r("div",Cn,[e("div",Tn,[(n(),r(V,null,se(lt,o=>e("button",{key:o.days,class:"preset-btn",onClick:H=>Ot(o.days)},a(o.label),9,xn)),64))]),e("div",An,[e("div",Sn,[t[29]||(t[29]=e("label",null,"開始日期",-1)),ge(e("input",{type:"date","onUpdate:modelValue":t[2]||(t[2]=o=>F.value.startDate=o),class:"date-input"},null,512),[[$e,F.value.startDate]])]),t[32]||(t[32]=e("span",{class:"date-separator"},"至",-1)),e("div",Dn,[t[30]||(t[30]=e("label",null,"結束日期",-1)),ge(e("input",{type:"date","onUpdate:modelValue":t[3]||(t[3]=o=>
77F.value.endDate=o),class:"date-input"},null,512),[[$e,F.value.endDate]])]),ie.value?(n(),r("button",{key:0,class:"clear-filter-btn",onClick:Qe},[...t[31]||(t[31]=[e("i",{class:"fas fa-times"},null,-1),w(" 清除 ",-1)])])):f("",!0)])])):f("",!0),ie.value||Z.value?(n(),r("div",In,[Z.value?(n(),r("span",On,"搜尋「"+a(Z.value)+"」",1)):f("",!0),ie.value?(n(),r("span",Rn,a(F.value.startDate)+" ~ "+a(F.value.endDate),1)):f("",!0),e("span",Bn,"(找到 "+a(Le.value.length)+" 筆)",1)])):f("",!0)]),e("main",Pn,[_e.value?(n(),r("div",En,[(n(),r(V,null,se(3,o=>e("div",{key:o,class:"order-skeleton"},[...t[33]||(t[33]=[Xe('<div class="skeleton-header" data-v-c6823dbb><div class="skeleton-store-name" data-v-c6823dbb></div><div class="skeleton-status" data-v-c6823dbb></div></div><div class="skeleton-content" data-v-c6823dbb><div class="skeleton-image" data-v-c6823dbb></div><div class="skeleton-info" data-v-c6823dbb><div class="skeleton-line long" data-v-c6823dbb></div><div class="skeleton-line short" data-v-c6823dbb></div></div><div class="skeleton-price" data-v-c6823dbb></div></div><div class="skeleton-footer" data-v-c6823dbb><div class="skeleton-line short" data-v-c6823dbb></div><div class="skeleton-buttons" data-v-c6823dbb><div class="skeleton-btn" data-v-c6823dbb></div><div class="skeleton-btn" data-v-c6823dbb></div></div></div>',3)])])),64))])):le.value==="refunded"?(n(),r(V,{key:1},[e("div",Mn,[(n(!0),r(V,null,se(nt.value,o=>(n(),r("button",{key:o.value,class:D(["return-status-tab",{active:Se.value===o.value}]),onClick:H=>Se.value=o.value},[w(a(o.label)+" ",1),o.count>0?(n(),r("span",Un,a(o.count),1)):f("",!0)],10,Ln))),128))]),qe.value.length===0?(n(),r("div",jn,[t[34]||(t[34]=e("i",{class:"fas fa-box-open empty-icon"},null,-1)),t[35]||(t[35]=e("h4",{class:"empty-title"},"暫無退貨/退款記錄",-1)),e("p",qn,a(Se.value?"此狀態下沒有退貨申請":"您目前沒有退貨/退款申請"),1)])):(n(!0),r(V,{key:1},se(qe.value,o=>(n(),r("div",{key:o.id,class:"return-card"},[e("div",Vn,[e("div",zn,"退貨編號:"+a(o.returnNumber),1),e("div",{class:D(["order-status-badge",He(o.status)])},a(Fe(o.status)),3)]),e("div",Fn,[e("div",Hn,[t[36]||(t[36]=e("span",{class:"return-label"},"原訂單:",-1)),e("span",Qn,a(o.orderNumber),1)]),e("div",Kn,[t[37]||(t[37]=e("span",{class:"return-label"},"申請時間:",-1)),e("span",Wn,a(oe(o.createdAt)),1)]),e("div",Gn,[t[38]||(t[38]=e("span",{class:"return-label"},"退貨原因:",-1)),e("span",Jn,a(o.reasonName),1)])]),e("div",Xn,[t[39]||(t[39]=e("span",{class:"amount-label"},"退款金額",-1)),e("span",Yn,"NT$ "+a((o.refundAmount||0).toLocaleString()),1)]),o.returnTrackingNumber&&["approved","shipping_back"].includes(o.status)?(n(),r("div",Zn,[t[43]||(t[43]=e("div",{class:"shipping-notice"},[e("i",{class:"fas fa-truck"}),e("span",null,"賣家已建立退貨物流,請至超商寄回商品")],-1)),e("div",ea,[e("div",ta,[t[40]||(t[40]=e("span",{class:"shipping-label"},"物流方式",-1)),e("span",sa,a(at(o.returnProvider)),1)]),e("div",na,[t[42]||(t[42]=e("span",{class:"shipping-label"},"物流單號",-1)),e("span",aa,[w(a(o.returnTrackingNumber)+" ",1),e("button",{class:"copy-btn",onClick:be(H=>ot(o.returnTrackingNumber),["stop"])},[...t[41]||(t[41]=[e("i",{class:"fas fa-copy"},null,-1)])],8,oa)])])]),t[44]||(t[44]=e("div",{class:"shipping-hint"},[e("i",{class:"fas fa-info-circle"}),w(" 請攜帶商品至指定超商,告知店員「寄件」並提供此物流單號 ")],-1))])):f("",!0),e("div",ra,[e("button",{class:"btn-unified btn-secondary",onClick:H=>At(o)}," 查看詳情 ",8,ia),o.status==="approved"&&!o.returnTrackingNumber?(n(),r("button",{key:0,class:"btn-unified btn-primary",onClick:H=>St(o)}," 填寫物流資訊 ",8,la)):f("",!0),["pending","approved"].includes(o.status)?(n(),r("button",{key:1,class:"btn-unified btn-outline-danger",onClick:H=>It(o)}," 取消申請 ",8,da)):f("",!0)])]))),128))],64)):(n(),r(V,{key:2},[Le.value.length===0?(n(),r("div",ua,[t[47]||(t[47]=e("div",{class:"empty-icon-wrapper"},[e("i",{class:"fas fa-shopping-bag empty-icon"})],-1)),e("h4",ca,a(Z.value||ie.value?"找不到符合的訂單":"暫無訂單"),1),e("p",pa,[Z.value||ie.value?(n(),r(V,{key:0},[w(" 請嘗試調整搜尋條件或清除篩選 ")],64)):(n(),r(V,{key:1},[w(" 快去挑選喜歡的商品吧 ")],64))]),e("div",va,[Z.value||ie.value?(n(),r("button",{key:0,class:"btn-u
77nified btn-secondary",onClick:t[4]||(t[4]=o=>{Z.value="",Qe()})},[...t[45]||(t[45]=[e("i",{class:"fas fa-times"},null,-1),w(" 清除篩選 ",-1)])])):f("",!0),!Z.value&&!ie.value?(n(),je(p,{key:1,to:"/",class:"btn-unified btn-primary"},{default:Ze(()=>[...t[46]||(t[46]=[e("i",{class:"fas fa-shopping-cart"},null,-1),w(" 開始購物 ",-1)])]),_:1})):f("",!0)])])):(n(!0),r(V,{key:1},se(Le.value,o=>(n(),je(cn,{key:o.id,order:o,onPay:Mt,onCancel:Lt,onComplete:Ut,onReview:Vt,onReorder:jt,onRefund:qt,onOpenChat:rt,onViewTracking:mt,onCopyOrder:Ve,onCopyTracking:vt,onViewDetail:ft},null,8,["order"]))),128))],64))]),q.value.totalPages>1?(n(),r("div",ma,[e("button",{class:"page-btn page-btn-icon",disabled:q.value.page<=1,title:"首頁",onClick:t[5]||(t[5]=o=>fe(1))},[...t[48]||(t[48]=[e("i",{class:"fas fa-angle-double-left"},null,-1)])],8,fa),e("button",{class:"page-btn",disabled:q.value.page<=1,onClick:t[6]||(t[6]=o=>fe(q.value.page-1))}," 上一頁 ",8,ga),e("div",ba,[e("span",ya,"第 "+a(q.value.page)+" 頁,共 "+a(q.value.totalPages)+" 頁",1),e("div",ha,[t[49]||(t[49]=e("span",null,"跳至",-1)),ge(e("input",{"onUpdate:modelValue":t[7]||(t[7]=o=>he.value=o),type:"number",class:"page-jump-input",min:1,max:q.value.totalPages,onKeyup:Xt(Ke,["enter"])},null,40,ka),[[$e,he.value,void 0,{number:!0}]]),t[50]||(t[50]=e("span",null,"頁",-1)),e("button",{class:"page-btn page-btn-go",onClick:Ke},"GO")])]),e("button",{class:"page-btn",disabled:q.value.page>=q.value.totalPages,onClick:t[8]||(t[8]=o=>fe(q.value.page+1))}," 下一頁 ",8,wa),e("button",{class:"page-btn page-btn-icon",disabled:q.value.page>=q.value.totalPages,title:"末頁",onClick:t[9]||(t[9]=o=>fe(q.value.totalPages))},[...t[51]||(t[51]=[e("i",{class:"fas fa-angle-double-right"},null,-1)])],8,_a)])):f("",!0)]),Q.value&&de.value?(n(),r("div",Na,[Yt(cs,{"initial-seller-id":de.value,"initial-seller-name":ue.value,onClose:ce},null,8,["initial-seller-id","initial-seller-name"])])):f("",!0),xe.value?(n(),r("div",{key:1,class:"modal-overlay",onClick:t[12]||(t[12]=o=>xe.value=!1)},[e("div",{class:"modal-content modal-lg",onClick:t[11]||(t[11]=be(()=>{},["stop"]))},[e("div",$a,[t[53]||(t[53]=e("h3",null,"退貨詳情",-1)),e("button",{class:"close-btn",onClick:t[10]||(t[10]=o=>xe.value=!1)},[...t[52]||(t[52]=[e("i",{class:"fas fa-times"},null,-1)])])]),$.value?(n(),r("div",Ca,[e("div",Ta,[e("div",xa,[t[54]||(t[54]=e("span",{class:"detail-label"},"退貨編號:",-1)),e("span",Aa,a($.value.returnNumber),1)]),e("div",Sa,[t[55]||(t[55]=e("span",{class:"detail-label"},"原訂單:",-1)),e("span",Da,a($.value.orderNumber),1)]),e("div",Ia,[t[56]||(t[56]=e("span",{class:"detail-label"},"申請時間:",-1)),e("span",Oa,a(oe($.value.createdAt)),1)]),e("div",Ra,[t[57]||(t[57]=e("span",{class:"detail-label"},"狀態:",-1)),e("span",{class:D(["order-status-badge",He($.value.status)])},a(Fe($.value.status)),3)]),e("div",Ba,[t[58]||(t[58]=e("span",{class:"detail-label"},"申請類型:",-1)),e("span",Pa,a($.value.type==="refund_only"?"僅退款(不退貨)":"退貨退款"),1)])]),e("div",Ea,[t[62]||(t[62]=e("h4",null,[e("i",{class:"fas fa-question-circle"}),w(" 退貨原因")],-1)),e("div",Ma,[t[59]||(t[59]=e("span",{class:"detail-label"},"原因分類:",-1)),e("span",La,a($.value.reasonName||"未指定"),1)]),$.value.reason?(n(),r("div",Ua,[t[60]||(t[60]=e("span",{class:"detail-label"},"詳細說明:",-1)),e("span",ja,a($.value.reason),1)])):f("",!0),$.value.description&&$.value.description!==$.value.reason?(n(),r("div",qa,[t[61]||(t[61]=e("span",{class:"detail-label"},"補充說明:",-1)),e("span",Va,a($.value.description),1)])):f("",!0)]),$.value.items&&$.value.items.length?(n(),r("div",za,[t[63]||(t[63]=e("h4",null,[e("i",{class:"fas fa-box"}),w(" 退貨商品")],-1)),(n(!0),r(V,null,se($.value.items,(o,H)=>(n(),r("div",{key:`return-item-${H}-${o.productId||""}`,class:"return-item"},[e("img",{src:o.productImage||o.image||"/placeholder.png",alt:o.productName,class:"return-item-image"},null,8,Fa),e("div",Ha,[e("div",Qa,a(o.productName),1),o.specs?(n(),r("div",Ka,a(ze(o.specs)),1)):f("",!0),e("div",Wa,"x"+a(o.quantity),1)]),e("div",Ga,"NT$ "+a((o.price||0).toLocaleStr
77ing()),1)]))),128))])):f("",!0),$.value.orderInfo?(n(),r("div",Ja,[t[71]||(t[71]=e("h4",null,[e("i",{class:"fas fa-calculator"}),w(" 原訂單金額明細")],-1)),e("div",Xa,[e("div",Ya,[t[64]||(t[64]=e("span",null,"商品小計",-1)),e("span",null,"NT$ "+a(($.value.orderInfo.productAmount||0).toLocaleString()),1)]),e("div",Za,[t[65]||(t[65]=e("span",null,"運費",-1)),e("span",null,"NT$ "+a(($.value.orderInfo.shippingFee||0).toLocaleString()),1)]),$.value.orderInfo.couponDiscount>0?(n(),r("div",eo,[e("span",null,[t[66]||(t[66]=e("i",{class:"fas fa-ticket-alt"},null,-1)),t[67]||(t[67]=w(" 優惠券折扣 ",-1)),(u=$.value.orderInfo.couponInfo)!=null&&u.couponCode?(n(),r("span",to,"("+a($.value.orderInfo.couponInfo.couponCode)+")",1)):f("",!0)]),e("span",null,"-NT$ "+a($.value.orderInfo.couponDiscount.toLocaleString()),1)])):f("",!0),$.value.orderInfo.pointsDiscount>0?(n(),r("div",so,[e("span",null,[t[68]||(t[68]=e("i",{class:"fas fa-coins"},null,-1)),t[69]||(t[69]=w(" 天晴幣折抵 ",-1)),e("span",no,"("+a($.value.orderInfo.pointsUsed)+" 點)",1)]),e("span",null,"-NT$ "+a($.value.orderInfo.pointsDiscount.toLocaleString()),1)])):f("",!0),e("div",ao,[t[70]||(t[70]=e("span",null,"訂單總額",-1)),e("span",null,"NT$ "+a(($.value.orderInfo.totalAmount||0).toLocaleString()),1)])])])):f("",!0),e("div",oo,[e("div",ro,[t[72]||(t[72]=e("span",{class:"detail-label"},"預計退款金額:",-1)),e("span",io,"NT$ "+a(($.value.refundAmount||0).toLocaleString()),1)]),$.value.actualRefundAmount!==void 0&&$.value.actualRefundAmount!==null?(n(),r("div",lo,[t[73]||(t[73]=e("span",{class:"detail-label"},"實際退款金額:",-1)),e("span",uo,"NT$ "+a($.value.actualRefundAmount.toLocaleString()),1)])):f("",!0)]),$.value.returnTrackingNumber?(n(),r("div",co,[t[76]||(t[76]=e("h4",null,[e("i",{class:"fas fa-shipping-fast"}),w(" 寄回物流")],-1)),$.value.returnProvider?(n(),r("div",po,[t[74]||(t[74]=e("span",{class:"detail-label"},"物流商:",-1)),e("span",vo,a($.value.returnProvider),1)])):f("",!0),e("div",mo,[t[75]||(t[75]=e("span",{class:"detail-label"},"物流單號:",-1)),e("span",fo,a($.value.returnTrackingNumber),1)])])):f("",!0)])):f("",!0)])])):f("",!0),ye.value?(n(),r("div",{key:2,class:"modal-overlay",onClick:t[18]||(t[18]=o=>ye.value=!1)},[e("div",{class:"modal-content",onClick:t[17]||(t[17]=be(()=>{},["stop"]))},[e("div",go,[t[78]||(t[78]=e("h3",null,"填寫退貨物流",-1)),e("button",{class:"close-btn",onClick:t[13]||(t[13]=o=>ye.value=!1)},[...t[77]||(t[77]=[e("i",{class:"fas fa-times"},null,-1)])])]),e("div",bo,[t[82]||(t[82]=e("p",{class:"return-ship-notice"},"請將商品寄回後,填寫物流資訊",-1)),e("div",yo,[t[80]||(t[80]=e("label",null,"物流商",-1)),ge(e("select",{"onUpdate:modelValue":t[14]||(t[14]=o=>ve.value.provider=o),class:"form-select"},[...t[79]||(t[79]=[Xe('<option value="" data-v-c6823dbb>請選擇物流商</option><option value="黑貓宅急便" data-v-c6823dbb>黑貓宅急便</option><option value="新竹貨運" data-v-c6823dbb>新竹貨運</option><option value="宅配通" data-v-c6823dbb>宅配通</option><option value="郵局" data-v-c6823dbb>郵局</option><option value="超商店到店" data-v-c6823dbb>超商店到店</option><option value="其他" data-v-c6823dbb>其他</option>',7)])],512),[[Je,ve.value.provider]])]),e("div",ho,[t[81]||(t[81]=e("label",null,[w("物流單號 "),e("span",{class:"required"},"*")],-1)),ge(e("input",{"onUpdate:modelValue":t[15]||(t[15]=o=>ve.value.trackingNumber=o),type:"text",class:"form-input",placeholder:"請輸入物流單號"},null,512),[[$e,ve.value.trackingNumber]])]),e("div",ko,[e("button",{class:"btn-unified btn-secondary",onClick:t[16]||(t[16]=o=>ye.value=!1)},"取消"),e("button",{class:"btn-unified btn-primary",disabled:Ae.value,onClick:Dt},a(Ae.value?"提交中...":"提交"),9,wo)])])])])):f("",!0),pe.value?(n(),r("div",{key:3,class:"modal-overlay",onClick:t[21]||(t[21]=o=>pe.value=!1)},[e("div",{class:"modal-content",onClick:t[20]||(t[20]=be(()=>{},["stop"]))},[e("div",_o,[t[84]||(t[84]=e("h3",null,"物流追蹤",-1)),e("button",{class:"close-btn",onClick:t[19]||(t[19]=o=>pe.value=!1)},[...t[83]||(t[83]=[e("i",{class:"fas fa-times"},null,-1)])])]),k.value?(n(),r("div",No,[e("div",$o,[e("div",Co,[e("div",To,[e("div",xo,a(k.value.providerName||"配送中"),1),e("div",Ao,a(k.value.trackingNumber||"等待物流單號"),1)]),e("span",{class:D(["status-badge",k.value.status])},a(pt(k.value.status)),3)])]),d.value?(n(),r("div",So,[e("div",{class:D(["progress-step",{active:K("pending"),current:k.value.status==="pending"}])},[...t[85]||(t[85]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-box"})],-1),e("div",{class:"step-label"},"待取件",-1)])],2),e("div",{class:D(["progress-line",{active:K("in_transit")}])},null,2),e("div",{class:D(["progress-step",{active:K("in_transit"),current:k.value.status==="in_transit"}])},[...t[86]||(t[86]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-shipping-fast"})],-1),e("div",{class:"step-label"},"運送中",-1)])],2),e("div",{class:D(["progress-line",{active:K("arrived_store")}])},null,2),e("div",{class:D(["progress-step",{active:K("arrived_store"),current:k.value.status==="arrived_store"}])},[...t[87]||(t[87]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-store"})],-1),e("div",{class:"step-label"},"已到店",-1)])],2),e("div",{class:D(["progress-line",{active:K("picked_up_by_customer")}])},null,2),e("div",{class:D(["progress-step",{active:K("picked_up_by_customer"),current:k.value.status==="picked_up_by_customer"||k.value.status==="delivered"}])},[...t[88]||(t[88]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-check-circle"})],-1),e("div",{class:"step-label"},"已取貨",-1)])],2)])):(n(),r("div",Do,[e("div",{class:D(["progress-step",{active:re("pending"),current:k.value.status==="pending"}])},[...t[89]||(t[89]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-box"})],-1),e("div",{class:"step-label"},"待取件",-1)])],2),e("div",{class:D(["progress-line",{active:re("picked_up")}])},null,2),e("div",{class:D(["progress-step",{active:re("picked_up"),current:k.value.status==="picked_up"}])},[...t[90]||(t[90]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-truck-pickup"})],-1),e("div",{class:"step-label"},"已取件",-1)])],2),e("div",{class:D(["progress-line",{active:re("in_transit")}])},null,2),e("div",{class:D(["progress-step",{active:re("in_transit"),current:k.value.status==="in_transit"}])},[...t[91]||(t[91]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-shipping-fast"})],-1),e("div",{class:"step-label"},"運送中",-1)])],2),e("div",{class:D(["progress-line",{active:re("out_for_delivery")}])},null,2),e("div",{class:D(["progress-step",{active:re("out_for_delivery"),current:k.value.status==="out_for_delivery"}])},[...t[92]||(t[92]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-truck"})],-1),e("div",{class:"step-label"},"配送中",-1)])],2),e("div",{class:D(["progress-line",{active:re("delivered")}])},null,2),e("div",{class:D(["progress-step",{active:re("delivered"),current:k.value.status==="delivered"}])},[...t[93]||(t[93]=[e("div",{class:"step-icon"},[e("i",{class:"fas fa-check-circle"})],-1),e("div",{class:"step-label"},"已送達",-1)])],2)])),k.value.status==="arrived_store"?(n(),r("div",{key:2,class:D(["pickup-alert",{urgent:(c=g.value)==null?void 0:c.isUrgent,expired:(i=g.value)==null?void 0:i.isExpired}])},[e("div",Io,[(m=g.value)!=null&&m.isExpired?(n(),r("i",Oo)):(T=g.value)!=null&&T.isUrgent?(n(),r("i",Ro)):(n(),r("i",Bo))]),e("div",Po,[e("div",Eo,a((j=g.value)!=null&&j.isExpired?"取貨已逾期":"商品已到店"),1),e("div",Mo,[(B=g.value)!=null&&B.isExpired?(n(),r(V,{key:0},[w(" 商品已超過取貨期限,可能已被退回 ")],64)):((M=g.value)==null?void 0:M.daysLeft)===0?(n(),r(V,{key:1},[w(" 今日為最後取貨日,請立即前往取貨 ")],64)):(n(),r(V,{key:2},[t[94]||(t[94]=w(" 還剩 ",-1)),e("strong",null,a((z=g.value)==null?void 0:z.daysLeft),1),t[95]||(t[95]=w(" 天取貨期限 ",-1))],64))])])],2)):f("",!0),k.value.storeName||k.value.storeId?(n(),r("div",Lo,[t[97]||(t[97]=e("h4",null,[e("i",{class:"fas fa-store-alt"}),w(" 取貨門市")],-1)),e("div",Uo,[e("div",jo,a(k.value.storeName||"超商門市"),1),k.value.storeAddr?(n(),r("div",qo,[t[96]||(t[96]=e("i",{class:"fas fa-map-marker-alt"},null,-1)),w(" "+a(k.value.storeAddr),1)])):f("",!0),k.value.storeId?(n(),r("div",Vo," 門市代碼:"+a(k.value.storeId),1)):f("",!0)])])):f("",!0),k.value.receiverName?(n(),r("div",zo,[t[101]||(t[101]=e("h4",null,[e("i",{class:"fas fa-user"}),w(" 取貨人資訊")],-1)),e("div",Fo,[e("div",Ho,[t[98]||(t[98]=e("span",{class:"label"},"取貨人",-1)),e("span",Qo,a(k.value.receiverName),1)]),e("div",Ko,[t[99]||(t[99]=e("span",{class:"label"},"電話",-1)),e("span",Wo,a(k.value.receiverPhone),1)]),k.value.receiverAddress&&!k.value.storeName?(n(),r("div",Go,[t[100]||(t[100]=e("span",{class:"label"},"地址",-1)),e("span",Jo,a(k.value.receiverAddress),1)])):f("",!0)])])):f("",!0),e("div",Xo,[t[105]||(t[105]=e("h4",null,[e("i",{class:"fas fa-history"}),w(" 物流軌跡")],-1)),ne.value.length>0?(n(),r("div",Yo,[(n(!0),r(V,null,se(ne.value,(o,H)=>(n(),r("div",{key:H,class:D(["timeline-item",{first:H===0}])},[t[103]||(t[103]=e("div",{class:"timeline-dot"},null,-1)),H<ne.value.length-1?(n(),r("div",Zo)):f("",!0),e("div",er,[e("div",tr,a(o.statusText),1),e("div",sr,a(o.description),1),o.location?(n(),r("div",nr,[t[102]||(t[102]=e("i",{class:"fas fa-map-marker-alt"},null,-1)),w(" "+a(o.location),1)])):f("",!0),e("div",ar,a(ut(o.time)),1)])],2))),128))])):(n(),r("div",or,[...t[104]||(t[104]=[e("p",null,"暫無物流軌跡,請稍後再查詢",-1)])]))])])):f("",!0)])])):f("",!0),we.value?(n(),r("div",{key:4,class:"modal-overlay",onClick:t[26]||(t[26]=o=>we.value=!1)},[e("div",{class:"modal-content modal-lg",onClick:t[25]||(t[25]=be(()=>{},["stop"]))},[e("div",rr,[t[107]||(t[107]=e("h3",null,"訂單詳情",-1)),e("button",{class:"close-btn",onClick:t[22]||(t[22]=o=>we.value=!1)},[...t[106]||(t[106]=[e("i",{class:"fas fa-times"},null,-1)])])]),h.value?(n(),r("div",ir,[e("div",lr,[t[113]||(t[113]=e("h4",null,[e("i",{class:"fas fa-receipt"}),w(" 訂單資訊")],-1)),e("div",dr,[e("div",ur,[t[109]||(t[109]=e("span",{class:"detail-label"},"訂單編號",-1)),e("span",{class:"detail-value order-number-copy",onClick:t[23]||(t[23]=o=>Ve(h.value.orderNumber))},[w(a(h.value.orderNumber)+" ",1),t[108]||(t[108]=e("i",{class:"fas fa-copy"},null,-1))])]),e("div",cr,[t[110]||(t[110]=e("span",{class:"detail-label"},"訂單狀態",-1)),e("span",{class:D(["order-status-badge",ht(h.value.status)])},a(bt(h.value.status)),3)]),e("div",pr,[t[111]||(t[111]=e("span",{class:"detail-label"},"賣家店鋪",-1)),e("span",vr,a(h.value.storeName),1)]),e("div",mr,[t[112]||(t[112]=e("span",{class:"detail-label"}
77,"下單時間",-1)),e("span",fr,a(oe(h.value.createdAt)),1)])])]),e("div",gr,[t[114]||(t[114]=e("h4",null,[e("i",{class:"fas fa-shopping-bag"}),w(" 商品明細")],-1)),e("div",br,[(n(!0),r(V,null,se(h.value.items,o=>(n(),r("div",{key:o.id,class:"order-item-row"},[e("img",{src:o.productImage||"/placeholder.png",alt:o.productName,class:"item-image"},null,8,yr),e("div",hr,[e("div",kr,a(o.productName),1),o.specifications&&Object.keys(o.specifications).length?(n(),r("div",wr,a(ze(o.specifications)),1)):f("",!0)]),e("div",_r,"x"+a(o.quantity),1),e("div",Nr,"NT$ "+a(o.price),1)]))),128))])]),e("div",$r,[t[122]||(t[122]=e("h4",null,[e("i",{class:"fas fa-calculator"}),w(" 金額明細")],-1)),e("div",Cr,[e("div",Tr,[t[115]||(t[115]=e("span",null,"商品小計",-1)),e("span",null,"NT$ "+a((h.value.productAmount||Ct(h.value)).toLocaleString()),1)]),e("div",xr,[t[116]||(t[116]=e("span",null,"運費",-1)),e("span",null,"NT$ "+a((h.value.shippingFee||0).toLocaleString()),1)]),h.value.couponDiscount>0?(n(),r("div",Ar,[e("span",null,[t[117]||(t[117]=e("i",{class:"fas fa-ticket-alt"},null,-1)),t[118]||(t[118]=w(" 優惠券折扣 ",-1)),(ee=h.value.couponInfo)!=null&&ee.couponCode?(n(),r("span",Sr,"("+a(h.value.couponInfo.couponCode)+")",1)):f("",!0)]),e("span",null,"-NT$ "+a(h.value.couponDiscount.toLocaleString()),1)])):f("",!0),h.value.pointsDiscount>0?(n(),r("div",Dr,[e("span",null,[t[119]||(t[119]=e("i",{class:"fas fa-coins"},null,-1)),t[120]||(t[120]=w(" 天晴幣折抵 ",-1)),e("span",Ir,"("+a(h.value.pointsUsed)+" 點)",1)]),e("span",null,"-NT$ "+a(h.value.pointsDiscount.toLocaleString()),1)])):f("",!0),e("div",Or,[t[121]||(t[121]=e("span",null,"訂單總額",-1)),e("span",Rr,"NT$ "+a((h.value.totalAmount||0).toLocaleString()),1)])])]),e("div",Br,[t[125]||(t[125]=e("h4",null,[e("i",{class:"fas fa-credit-card"}),w(" 付款資訊")],-1)),e("div",Pr,[e("div",Er,[t[123]||(t[123]=e("span",{class:"detail-label"},"付款方式",-1)),e("span",Mr,a(wt(h.value.paymentMethod)),1)]),h.value.paidAt?(n(),r("div",Lr,[t[124]||(t[124]=e("span",{class:"detail-label"},"付款時間",-1)),e("span",Ur,a(oe(h.value.paidAt)),1)])):f("",!0)])]),e("div",jr,[t[132]||(t[132]=e("h4",null,[e("i",{class:"fas fa-truck"}),w(" 配送資訊")],-1)),e("div",qr,[e("div",Vr,[t[126]||(t[126]=e("span",{class:"detail-label"},"配送方式",-1)),e("span",zr,a(Nt(h.value.shippingMethod)),1)]),e("div",Fr,[t[127]||(t[127]=e("span",{class:"detail-label"},"收件人",-1)),e("span",Hr,a(h.value.contactName),1)]),e("div",Qr,[t[128]||(t[128]=e("span",{class:"detail-label"},"聯絡電話",-1)),e("span",Kr,a(h.value.contactPhone),1)]),e("div",Wr,[t[129]||(t[129]=e("span",{class:"detail-label"},"收貨地址",-1)),e("span",Gr,a($t(h.value.shippingAddress)),1)])]),h.value.convenienceStore?(n(),r("div",Jr,[e("div",Xr,[e("div",Yr,[e("div",Zr,[t[130]||(t[130]=e("i",{class:"fas fa-store"},null,-1)),w(" "+a(h.value.convenienceStore.storeName||"超商門市"),1)]),h.value.convenienceStore.storeAddr?(n(),r("div",ei,a(h.value.convenienceStore.storeAddr),1)):f("",!0),h.value.convenienceStore.storeCode?(n(),r("div",ti," 門市代碼:"+a(h.value.convenienceStore.storeCode),1)):f("",!0)]),Y(h.value)?(n(),r("button",{key:0,class:"btn btn-outline btn-sm change-store-btn",onClick:t[24]||(t[24]=o=>ae(h.value))},[...t[131]||(t[131]=[e("i",{class:"fas fa-edit"},null,-1),w(" 修改門市 ",-1)])])):f("",!0)])])):f("",!0)]),e("div",si,[t[143]||(t[143]=e("h4",null,[e("i",{class:"fas fa-history"}),w(" 訂單進度")],-1)),e("div",ni,[e("div",{class:D(["timeline-item",{active:!0}])},[t[134]||(t[134]=e("div",{class:"timeline-dot"},null,-1)),e("div",ai,[t[133]||(t[133]=e("div",{class:"timeline-title"},"訂單建立",-1)),e("div",oi,a(oe(h.value.createdAt)),1)])]),h.value.paidAt?(n(),r("div",{key:0,class:D(["timeline-item",{active:!0}])},[t[136]||(t[136]=e("div",{class:"timeline-dot"},null,-1)),e("div",ri,[t[135]||(t[135]=e("div",{class:"timeline-title"},"付款完成",-1)),e("div",ii,a(oe(h.value.paidAt)),1)])])):f("",!0),h.value.shippedAt?(n(),r("div",{key:1,class:D(["timeline-item",{active:!0}])},[t[138]||(t[138]=e("div",{class:"timeline-dot"},null,-1)),e("div",li,[t[137]||(t[137]=e("div",{class:"timeline-title"},"賣家出貨",-1)),e("div",di,a(oe(h.value.shippedAt)),1)])])):f("",!0),h.value.completedAt?(n(),r("div",{key:2,class:D(["timeline-item",{active:!0}])},[t[140]||(t[140]=e("div",{class:"timeline-dot"},null,-1)),e("div",ui,[t[139]||(t[139]=e("div",{class:"timeline-title"},"訂單完成",-1)),e("div",ci,a(oe(h.value.completedAt)),1)])])):f("",!0),h.value.cancelledAt?(n(),r("div",pi,[t[142]||(t[142]=e("div",{class:"timeline-dot"},null,-1)),e("div",vi,[t[141]||(t[141]=e("div",{class:"timeline-title"},"訂單取消",-1)),h.value.cancelReason?(n(),r("div",mi,"原因:"+a(h.value.cancelReason),1)):f("",!0),e("div",fi,a(oe(h.value.cancelledAt)),1)])])):f("",!0)])]),h.value.remark?(n(),r("div",gi,[t[144]||(t[144]=e("h4",null,[e("i",{class:"fas fa-sticky-note"}),w(" 買家備註")],-1)),e("div",bi,a(h.value.remark),1)])):f("",!0)])):f("",!0)])])):f("",!0)])}}},Pi=et(hi,[["__scopeId","data-v-c6823dbb"]]);export{Pi as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.