|
|
import{d as e,e as a,f as t,o as i,j as l,k as s,g as n,S as c,s as r,m as d,n as u,p as o,t as v,v as f,C as _,y as p,F as m,z as y,x as k,E as g,R as x,B as h,J as C,K as b,V as j}from"./index-Cm29_xFk.js";import{d as w,e as S}from"./content.jwYrJPXR.js";import{f as T,a as $,i as q}from"./datetime.BfIJTcZ8.js";import{_ as z}from"./_plugin-vue_export-helper.BCo6x5W8.js";const B=z(e({__name:"orders",setup(e){const z=a([]),B=a(!1),E=a("all"),F=t(()=>"all"===E.value?z.value:z.value.filter(e=>e.status===E.value));function I(){return!!n(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)&&!q(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 R(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:T(a.activity_date)}function V(e){const a=null==e?void 0:e.activity_day;if(!a)return"-";const t=String(a.time_range_text||"").trim();return t||T(a.activity_date)}async function A(){if(I()){B.value=!0;try{z.value=await w()}catch(e){r({title:(null==e?void 0:e.message)||"加载失败",icon:"none"})}finally{B.value=!1}}else r({title:"请先通过微信登录",icon:"none"})}return i(()=>{I()&&A()}),(e,a)=>{const t=v,i=d,n=x;return u(),l(i,{class:"page"},{default:s(()=>[o(i,{class:"notice-top"},{default:s(()=>[o(t,{class:"notice-text"},{default:s(()=>[f("请按时到场参与活动,累计 3 次无故未履约,将限制 3 个月预约资格,感谢诚信守约。")]),_:1})]),_:1}),o(i,{class:"card"},{default:s(()=>[o(i,{class:"title"},{default:s(()=>[f("我的活动预约")]),_:1}),o(i,{class:"filters"},{default:s(()=>[o(i,{class:_(["chip",{active:"all"===E.value}]),onClick:a[0]||(a[0]=e=>E.value="all")},{default:s(()=>[f("全部")]),_:1},8,["class"]),o(i,{class:_(["chip",{active:"pending"===E.value}]),onClick:a[1]||(a[1]=e=>E.value="pending")},{default:s(()=>[f("待核销")]),_:1},8,["class"]),o(i,{class:_(["chip",{active:"verified"===E.value}]),onClick:a[2]||(a[2]=e=>E.value="verified")},{default:s(()=>[f("已核销")]),_:1},8,["class"]),o(i,{class:_(["chip",{active:"cancelled"===E.value}]),onClick:a[3]||(a[3]=e=>E.value="cancelled")},{default:s(()=>[f("已取消")]),_:1},8,["class"]),o(i,{class:_(["chip",{active:"expired"===E.value}]),onClick:a[4]||(a[4]=e=>E.value="expired")},{default:s(()=>[f("已过期")]),_:1},8,["class"])]),_:1})]),_:1}),(u(!0),p(m,null,y(F.value,e=>(u(),l(i,{key:e.id,class:"order-card"},{default:s(()=>[o(i,{class:"order-top"},{default:s(()=>{return[o(i,{class:"t"},{default:s(()=>{var a;return[f(k((null==(a=e.activity)?void 0:a.title)||"-"),1)]}),_:2},1024),o(i,{class:_(["status",(a=e.status,"pending"===a?"pending":"verified"===a?"verified":"expired"===a?"expired":"cancelled")])},{default:s(()=>[f(k(J(e.status)),1)]),_:2},1032,["class"])];var a}),_:2},1024),"ticket_grab"===e.reservation_kind?(u(),p(m,{key:0},[o(i,{class:"line"},{default:s(()=>[f("入馆日期:"+k(g(T)(e.entry_date)),1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("预约人:"+k(e.visitor_name||"-"),1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("联系方式:"+k(e.visitor_phone||"-"),1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("预约人数:"+k(e.ticket_count||1)+" 人",1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("下单时间:"+k(g($)(e.created_at)),1)]),_:2},1024)],64)):(u(),p(m,{key:1},[o(i,{class:"line"},{default:s(()=>[f("预约场次:"+k(R(e)),1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("联系人:"+k(e.visitor_name||"-")+" | "+k(e.visitor_phone||"-")+" "+k(e.ticket_count||1)+"人",1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("场次时间:"+k(V(e)),1)]),_:2},1024),o(i,{class:"line"},{default:s(()=>[f("下单时间:"+k(g($)(e.created_at)),1)]),_:2},1024)],64)),o(i,{class:"actions"},{default:s(()=>[K(e)?(u(),l(n,{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 S(e),r({title:"取消成功",icon:"success"}),await A()}catch(t){r({title:(null==t?void 0:t.message)||"取消失败",icon:"none"})}}(e.id,e),["stop"])},{default:s(()=>[f("取消")]),_:2},1032,["onClick"])):C("",!0),o(n,{class:"btn-main mini",onClick:h(a=>{return t=e.id,void(I()?b({url:`/pages/mine/reservation-detail?id=${t}`}):r({title:"请先通过微信登录",icon:"none"}));var t},["stop"])},{default:s(()=>[f("查看详情")]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})}}}),[["__scopeId","data-v-02f2d83b"]]);export{B as default};
|