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