|
|
import{d as a,e,f as t,o as i,j as l,k as s,g as n,S as c,s as d,m as r,U as u,n as o,p as v,t as f,x as _,v as p,E as m,F as y,G as k,C as g,z as x,V as C,D as h,J as b,K as S,Y as j,_ as w}from"./index-CyITatHS.js";import{d as T,e as $}from"./content.xe1QG11W.js";import{f as B,a as z,i as D}from"./datetime.BfIJTcZ8.js";const E=w(a({__name:"orders",setup(a){const w=e([]),E=e(!1),F=e("all"),G=t(()=>"all"===F.value?w.value:w.value.filter(a=>a.status===F.value));function I(){return!!n(c.accessToken)}function J(a){return"pending"===a?"待核销":"verified"===a?"已核销":"cancelled"===a?"已取消":"expired"===a?"已过期":a||"-"}function K(a){return"pending"===(null==a?void 0:a.status)&&!D(function(a){var e,t;return"ticket_grab"===(null==a?void 0:a.reservation_kind)?(null==a?void 0:a.entry_date)||(null==(e=null==a?void 0:a.activity_day)?void 0:e.activity_date):null==(t=null==a?void 0:a.activity_day)?void 0:t.activity_date}(a))}function P(a){const e=null==a?void 0:a.activity_day;if(!e)return"-";const t=String(e.time_range_text||"").trim(),i=String(e.session_name||"").trim();return t?i?`${i} ${t}`:t:B(e.activity_date)}function U(a){const e=null==a?void 0:a.activity_day;if(!e)return"-";const t=String(e.time_range_text||"").trim();return t||B(e.activity_date)}async function V(){if(I()){E.value=!0;try{w.value=await T()}catch(a){d({title:(null==a?void 0:a.message)||"加载失败",icon:"none"})}finally{E.value=!1}}else d({title:"请先通过微信登录",icon:"none"})}return i(()=>{I()&&V()}),(a,e)=>{const t=u("SubPageBackBtn"),i=f,n=r,c=C;return o(),l(n,{class:"page"},{default:s(()=>[v(t),v(n,{class:"notice-top"},{default:s(()=>[v(i,{class:"notice-text"},{default:s(()=>[_("请按时到场参与活动,累计 3 次无故未履约,将限制 3 个月预约资格,感谢诚信守约。")]),_:1})]),_:1}),v(n,{class:"card"},{default:s(()=>[v(n,{class:"title"},{default:s(()=>[_("我的活动预约")]),_:1}),v(n,{class:"filters"},{default:s(()=>[v(n,{class:p(["chip",{active:"all"===F.value}]),onClick:e[0]||(e[0]=a=>F.value="all")},{default:s(()=>[_("全部")]),_:1},8,["class"]),v(n,{class:p(["chip",{active:"pending"===F.value}]),onClick:e[1]||(e[1]=a=>F.value="pending")},{default:s(()=>[_("待核销")]),_:1},8,["class"]),v(n,{class:p(["chip",{active:"verified"===F.value}]),onClick:e[2]||(e[2]=a=>F.value="verified")},{default:s(()=>[_("已核销")]),_:1},8,["class"]),v(n,{class:p(["chip",{active:"cancelled"===F.value}]),onClick:e[3]||(e[3]=a=>F.value="cancelled")},{default:s(()=>[_("已取消")]),_:1},8,["class"]),v(n,{class:p(["chip",{active:"expired"===F.value}]),onClick:e[4]||(e[4]=a=>F.value="expired")},{default:s(()=>[_("已过期")]),_:1},8,["class"])]),_:1})]),_:1}),(o(!0),m(y,null,k(G.value,a=>(o(),l(n,{key:a.id,class:"order-card"},{default:s(()=>[v(n,{class:"order-top"},{default:s(()=>{return[v(n,{class:"t"},{default:s(()=>{var e;return[_(g((null==(e=a.activity)?void 0:e.title)||"-"),1)]}),_:2},1024),v(n,{class:p(["status",(e=a.status,"pending"===e?"pending":"verified"===e?"verified":"expired"===e?"expired":"cancelled")])},{default:s(()=>[_(g(J(a.status)),1)]),_:2},1032,["class"])];var e}),_:2},1024),"ticket_grab"===a.reservation_kind?(o(),m(y,{key:0},[v(n,{class:"line"},{default:s(()=>[_("入馆日期:"+g(x(B)(a.entry_date)),1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("预约人:"+g(a.visitor_name||"-"),1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("联系方式:"+g(a.visitor_phone||"-"),1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("预约人数:"+g(a.ticket_count||1)+" 人",1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("下单时间:"+g(x(z)(a.created_at)),1)]),_:2},1024)],64)):(o(),m(y,{key:1},[v(n,{class:"line"},{default:s(()=>[_("预约场次:"+g(P(a)),1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("联系人:"+g(a.visitor_name||"-")+" | "+g(a.visitor_phone||"-")+" "+g(a.ticket_count||1)+"人",1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("场次时间:"+g(U(a)),1)]),_:2},1024),v(n,{class:"line"},{default:s(()=>[_("下单时间:"+g(x(z)(a.created_at)),1)]),_:2},1024)],64)),v(n,{class:"actions"},{default:s(()=>[K(a)?(o(),l(c,{key:0,class:"btn-light mini",onClick:h(e=>async function(a,e){if(!I())return;if(!K(e))return void d({title:"当前不可取消",icon:"none"});if((await j({title:"取消预约",content:"累计 3 次预约未履约将自动进入灰名单,3 个月内将限制预约功能,请合理安排行程。\n\n确认后将取消本次预约并释放名额。",confirmText:"确认取消",cancelText:"返回",confirmColor:"#ff7d00"})).confirm)try{await $(a),d({title:"取消成功",icon:"success"}),await V()}catch(t){d({title:(null==t?void 0:t.message)||"取消失败",icon:"none"})}}(a.id,a),["stop"])},{default:s(()=>[_("取消")]),_:2},1032,["onClick"])):b("",!0),v(c,{class:"btn-main mini",onClick:h(e=>{return t=a.id,void(I()?S({url:`/pages/mine/reservation-detail?id=${t}`}):d({title:"请先通过微信登录",icon:"none"}));var t},["stop"])},{default:s(()=>[_("查看详情")]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})}}}),[["__scopeId","data-v-e8b27b81"]]);export{E as default};
|