You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
23 KiB
2 lines
23 KiB
import{h as e,i as l,g as a,S as t,s as u,r as n,a as s,b as o,c as i,A as r,d as c,e as d,f as v,w as f,o as m,j as _,k as p,l as g,m as h,n as b,u as y,p as k,q as w,t as N,v as C,x as S,y as x,I as F,z as $,B as I,C as j,D as P,M as z,E as A,F as T,G as R,H as L,J as M,K as q,L as B,N as D,_ as U}from"./index-BLY0-PeP.js";import{g as V,t as E,b as G,v as Y,n as H,a as J}from"./peopleCounting.BjYNiCir.js";import{P as K}from"./poster.C6TYC1FC.js";import{s as Q}from"./search.BJnl3YRK.js";import{v as W,g as X,a as Z,m as O,d as ee,b as le}from"./suzhouDistrictPolygons.U6J8TgzC.js";import{f as ae,a as te,c as ue}from"./activity.DEGdoGAe.js";import{S as ne,t as se,g as oe}from"./ticketMap.b6piD_5W.js";import{v as ie}from"./venueTypes.DuAf5T5V.js";import{v as re,o as ce,a as de,c as ve}from"./venueThemeColors.DRxjaxXI.js";import{m as fe,a as me}from"./text.BxMbQPAt.js";const _e="szkp_force_loc_prompt",pe="szkp_wechat_oauth_denied",ge="szkp_h5_oauth_state_ss";let he=null;function be(){return he||(he=async function(){var c,d;if(!l())return!0;const v=new URL(window.location.href),f=v.searchParams.get("code"),m=v.searchParams.get("state");if(v.searchParams.get("err")){try{window.sessionStorage.setItem(pe,"1")}catch{}return v.searchParams.delete("code"),v.searchParams.delete("state"),v.searchParams.delete("err"),window.history.replaceState({},"",v.pathname+v.search+v.hash),!0}if(f){let l="";try{l=window.sessionStorage.getItem(ge)||""}catch{}l||(l=a(t.oauthState)||"");if(Boolean(m&&l&&String(m)!==String(l))){u({title:"授权状态异常,请关闭页面后重试",icon:"none"});try{window.sessionStorage.removeItem(ge)}catch{}n(t.oauthState)}else{s({title:"授权登录中…",mask:!0});try{const l=await e.post("/h5/wechat/oauth",{code:f},{withAuth:!1});if(null==l?void 0:l.token){o(t.accessToken,l.token);try{window.sessionStorage.setItem(_e,"1")}catch{}}}catch(g){const e=(null==g?void 0:g.message)||(null==(d=null==(c=null==g?void 0:g.errors)?void 0:c.code)?void 0:d[0])||"微信登录失败";u({title:e,icon:"none"})}finally{i()}}try{window.sessionStorage.removeItem(ge)}catch{}return n(t.oauthState),v.searchParams.delete("code"),v.searchParams.delete("state"),window.history.replaceState({},"",v.pathname+v.search+v.hash),!0}if(a(t.accessToken))return!0;try{if("1"===window.sessionStorage.getItem(pe))return!0}catch{}const _=encodeURIComponent(function(){if("undefined"==typeof window)return"";const e=new URL(window.location.href);return e.hash="",e.search="",e.toString()}()),p=`${Date.now()}-${Math.random().toString(36).slice(2,10)}`;try{window.sessionStorage.setItem(ge,p)}catch{}return o(t.oauthState,p),window.location.href=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${r.wechatAppId}&redirect_uri=${_}&response_type=code&scope=snsapi_userinfo&state=${p}#wechat_redirect`,!1}().finally(()=>{he=null})),he}const ye={lat:31.2989,lng:120.5853},ke={lat:.085,lng:.098};function we(e=ke){const l=ye,a=e.lat,t=e.lng;return[{latitude:l.lat-a,longitude:l.lng-t},{latitude:l.lat-a,longitude:l.lng+t},{latitude:l.lat+a,longitude:l.lng-t},{latitude:l.lat+a,longitude:l.lng+t}]}const Ne=.92,Ce=U(c({__name:"index",setup(l){const a={backgroundImage:"url(/h5/assets/head-BCNsV_in.png)",backgroundSize:"cover",backgroundPosition:"center top",backgroundRepeat:"no-repeat"},t=d(!1),n=d(null),s=d(null),o=d({latitude:ye.lat,longitude:ye.lng}),i=d(11),r=d("map"),c=d(""),U=d("区域"),_e=d(""),pe=d("主题"),ge=d(""),he=d("预约模式"),ke=d(""),Ce=d("开放模式"),Se=d(""),xe=d("收费类型"),Fe=d(""),$e=d(null),Ie=v(()=>{var e,l;const a={};for(const t of(null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_type)??[])a[t.value]=t.label;return a}),je=v(()=>{var e,l;const a={};for(const t of(null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.ticket_type)??[])a[t.value]=t.label;return a}),Pe=v(()=>{var e,l;const a={};for(const t of(null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_open_mode)??[])a[t.value]=t.label;return a});function ze(e){return e?Ie.value[e]||e:""}function Ae(e){return e?je.value[e]||e:""}function Te(e){return e?Pe.value[e]||e:""}v(()=>{var e,l;const a={};for(const t of(null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_booking_mode)??[])a[t.value]=t.label;return a});v(()=>{var e,l;const a=E(s.value);if(null!=a)return a.toLocaleString();return Number((null==(l=null==(e=n.value)?void 0:e.stats)?void 0:l.in_venue_total)??0).toLocaleString()}),v(()=>{var e;const l=s.value;if(l&&200===l.code&&Array.isArray(l.venues)){const e=G(l.groups),a=[...l.venues].map(l=>{var a,t,u;const s=Y(l.venueId),o=null!=s?null==(u=null==(t=null==(a=n.value)?void 0:a.all_venues)?void 0:t.find(e=>e.id===s))?void 0:u.name:void 0;return{id:s??0,name:J(l,e,o),people_count:H(l.enter,l.exit)}}).filter(e=>e.id>0).sort((e,l)=>l.people_count-e.people_count),t=[];for(let l=0;l<3;l++){const e=a[l];e&&e.people_count>0?t.push({id:e.id,name:e.name,people_count:e.people_count,empty:!1}):t.push({id:0,name:"",people_count:0,empty:!0})}return t}const a=[...(null==(e=n.value)?void 0:e.top_live_venues)??[]].sort((e,l)=>Number(l.people_count??0)-Number(e.people_count??0)),t=[];for(let u=0;u<3;u++){const e=a[u];e&&Number(e.people_count)>0?t.push({id:e.id,name:e.name,people_count:e.people_count,empty:!1}):t.push({id:0,name:"",people_count:0,empty:!0})}return t});const Re=v(()=>{var e,l;return[{label:"区域",value:""},...((null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.district)??[]).map(e=>({label:e.label,value:e.value}))]}),Le=v(()=>{var e,l;return[{label:"主题",value:""},...((null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_type)??[]).map(e=>({label:e.label,value:e.value}))]}),Me=v(()=>{var e,l;return[{label:"预约模式",value:""},...((null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_booking_mode)??[]).map(e=>({label:e.label,value:e.value}))]}),qe=v(()=>{var e,l;return[{label:"开放模式",value:""},...((null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_open_mode)??[]).map(e=>({label:e.label,value:e.value}))]}),Be=v(()=>{var e,l;return[{label:"收费类型",value:""},...((null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.ticket_type)??[]).map(e=>({label:e.label,value:e.value}))]});function De(e,l){const a=e.findIndex(e=>e.value===l);return a>=0?a:0}const Ue=v(()=>De(Re.value,_e.value)),Ve=v(()=>De(Le.value,ge.value)),Ee=v(()=>De(Me.value,ke.value)),Ge=v(()=>De(qe.value,Se.value)),Ye=v(()=>De(Be.value,Fe.value));function He(e){const l=Re.value[Number(e.detail.value)];l&&(U.value=l.label,_e.value=l.value)}function Je(e){const l=Le.value[Number(e.detail.value)];l&&(pe.value=l.label,ge.value=l.value)}function Ke(e){const l=Me.value[Number(e.detail.value)];l&&(he.value=l.label,ke.value=l.value)}function Qe(e){const l=qe.value[Number(e.detail.value)];l&&(Ce.value=l.label,Se.value=l.value)}function We(e){const l=Be.value[Number(e.detail.value)];l&&(xe.value=l.label,Fe.value=l.value)}function Xe(e){return ie(e)}function Ze(e){const l=Number(e.sort);return Number.isFinite(l)?l:0}function Oe(e,l){const a=Ze(e)-Ze(l);return 0!==a?a:e.id-l.id}function el(e){const l=[];for(const a of e){const e=Number(a.lat),t=Number(a.lng);Number.isFinite(e)&&Number.isFinite(t)&&l.push({lat:e,lng:t})}return l}const ll=v(()=>{var e;const l=c.value.trim(),a=(null==(e=n.value)?void 0:e.all_venues)??[],t=l&&a.some(e=>fe(e.name,l));return a.filter(e=>{if(!1===e.is_active)return!1;if(_e.value&&!W(String(e.district||""),_e.value))return!1;if(ge.value&&!Xe(e).includes(ge.value))return!1;if(ke.value&&(e.booking_mode||"")!==ke.value)return!1;if(Se.value&&(e.open_mode||"")!==Se.value)return!1;if("free"===Fe.value&&"free"!==(e.ticket_type||""))return!1;if("paid"===Fe.value&&"paid"!==(e.ticket_type||""))return!1;if(l)if(t){if(!fe(e.name,l))return!1}else{const a=`${e.name||""}${e.address||""}`;if(!me(a,l,String(e.name||"")))return!1}return!0})}),al=v(()=>[...ll.value].sort(Oe)),tl=v(()=>{if(!c.value.trim())return null;const e=al.value;if(1!==e.length)return null;const l=e[0],a=Number(l.lat),t=Number(l.lng);return Number.isFinite(a)&&Number.isFinite(t)?l:null}),ul=v(()=>{var e;if(!c.value.trim())return null;if(null==(e=_e.value)?void 0:e.trim())return null;const l=al.value;if(l.length<2)return null;for(const a of l){const e=Number(a.lat),l=Number(a.lng);if(Number.isFinite(e)&&Number.isFinite(l))return a}return null}),nl=v(()=>{var e,l;const a=null==(e=_e.value)?void 0:e.trim();return a?((null==(l=n.value)?void 0:l.map_venues)??[]).filter(e=>W(String(e.district||""),a)):[]}),sl=v(()=>{var e;if(!(null==(e=_e.value)?void 0:e.trim()))return null;const l=_e.value.trim(),a=X(l);if(null==a?void 0:a.length)return a;const t=Z(el(nl.value));return t&&t.length>=3?[t]:null}),ol=v(()=>{const e=sl.value;return(null==e?void 0:e.length)?e.map(e=>({points:e,strokeWidth:2,strokeColor:"#05C9ACE6",fillColor:"#05C9AC14",zIndex:5})):[]}),il=v(()=>{var e;if(!(null==(e=_e.value)?void 0:e.trim()))return[];const l=sl.value,a=[];if(null==l?void 0:l.length)for(const t of l)for(const e of t)a.push({latitude:e.latitude,longitude:e.longitude});if(!a.length){const e=Z(el(nl.value),.012);if(null==e?void 0:e.length)for(const l of e)a.push({latitude:l.latitude,longitude:l.longitude})}return a});function rl(e,l){if(!e.length)return[];let a=1/0,t=-1/0,u=1/0,n=-1/0;for(const c of e)c.latitude<a&&(a=c.latitude),c.latitude>t&&(t=c.latitude),c.longitude<u&&(u=c.longitude),c.longitude>n&&(n=c.longitude);if(!Number.isFinite(a)||t<=a||!Number.isFinite(u)||n<=u)return e.map(e=>({...e}));const s=(a+t)/2,o=(u+n)/2,i=(t-a)/2*l,r=(n-u)/2*l;return[{latitude:s-i,longitude:o-r},{latitude:s-i,longitude:o+r},{latitude:s+i,longitude:o-r},{latitude:s+i,longitude:o+r}]}const cl=v(()=>!!(ge.value||ke.value||Se.value||Fe.value||c.value.trim())),dl=v(()=>{var e,l;if(null==(e=_e.value)?void 0:e.trim()){const e=il.value;if(e.length)return rl(e,Ne)}if(!(null==(l=_e.value)?void 0:l.trim())&&cl.value&&al.value.length>0){const e=we().map(e=>({...e})),l=Z(el(al.value),.018);if(null==l?void 0:l.length)for(const a of l)e.push({latitude:a.latitude,longitude:a.longitude});return rl(e,Ne)}return rl(we(),Ne)}),vl=v(()=>O(_e.value)),fl=v(()=>{if(tl.value)return 15;const e=vl.value;return null!=e?e:cl.value?9:i.value}),ml=v(()=>{if(null!=vl.value)return;if(cl.value)return;const e=dl.value;return e.length?e:void 0}),_l=v(()=>{const e=tl.value;if(e)return`s-${e.id}-${c.value.trim()}`;const l=ul.value;if(l)return`m-${l.id}-${c.value.trim()}`;const a=vl.value;return null!=a?`d-${_e.value||""}-${a}`:cl.value?"z9":"fit"}),pl=v(()=>{var e;if((null==(e=_e.value)?void 0:e.trim())&&il.value.length)try{const e=y(48);return[e,e,e,e]}catch{return[16,16,16,16]}}),gl=v(()=>!!(_e.value||ge.value||ke.value||Se.value||Fe.value||c.value.trim())),hl=v(()=>null==$e.value?null:ll.value.find(e=>e.id===$e.value)??null);function bl(e){var l,a;return ve(e,null==(a=null==(l=n.value)?void 0:l.venue_dicts)?void 0:a.venue_type)}f([al,_e,sl,cl,c],()=>{var e,l;const a=tl.value;if(a)return void(o.value={latitude:Number(a.lat),longitude:Number(a.lng)});const t=ul.value;if(t)return void(o.value={latitude:Number(t.lat),longitude:Number(t.lng)});const u=sl.value;if((null==(e=_e.value)?void 0:e.trim())&&(null==u?void 0:u.length)){const e=le(u);return void(o.value={latitude:e.latitude,longitude:e.longitude})}(null==(l=_e.value)?void 0:l.trim())||cl.value,Ll()}),f(ll,e=>{null==$e.value||e.some(e=>e.id===$e.value)||($e.value=null)}),f(r,e=>{if("list"===e&&($e.value=null),"map"===e){const e=O(_e.value);null!=e?i.value=e:cl.value?i.value=9:i.value=11}}),f([_e,ge,ke,Se,Fe,c],()=>{"map"===r.value&&setTimeout(()=>{const e=O(_e.value);null!=e?i.value=e:cl.value?i.value=9:i.value=11},100)});let yl=null;f([al,gl],()=>{yl&&(clearTimeout(yl),yl=null),"map"===r.value&&(!gl.value||al.value.length>0||(yl=setTimeout(()=>{yl=null,u({title:"暂无符合条件的场馆",icon:"none",duration:2e3})},150)))});const kl=v(()=>Math.round(y(ne))),wl=v(()=>{const e=fl.value>=13;return al.value.map(l=>{const a=(l.name||"").trim(),t="苏州科技馆"===a,u=se(l,()=>function(e){var l,a;if(!e)return"#05c9ac";const t=ie(e)[0];if(t&&(null==(a=null==(l=n.value)?void 0:l.venue_dicts)?void 0:a.venue_type)){const e=n.value.venue_dicts.venue_type.find(e=>e.value===t);if(null==e?void 0:e.color)return e.color}return e.venue_type_color||"#05c9ac"}(l)),s=t?"/h5/assets/szkjg-BA5yQZYG.jpg":oe(u),o={id:l.id,latitude:l.lat,longitude:l.lng,width:t?kl.value:28,height:t?kl.value:32,iconPath:s,anchor:t?{x:.5,y:.5}:{x:.5,y:1}};return e&&a&&(o.label={content:a,color:"#1d2129",fontSize:11,bgColor:"rgba(255,255,255,0.92)",padding:3,borderRadius:4,anchorX:0,anchorY:-4}),o})});function Nl(e){var l;if(cl.value)return;if(null!=O(_e.value))return;const a=null==e?void 0:e.detail;if(!a||"begin"===a.type)return;const t="number"==typeof a.scale?a.scale:"number"==typeof(null==(l=a.detail)?void 0:l.scale)?a.detail.scale:null;null!=t&&Number.isFinite(t)&&(i.value=t)}let Cl=!1;function Sl(e){var l;const a=null==(l=null==e?void 0:e.detail)?void 0:l.markerId;null!=a&&($e.value=Number(a),Cl=!0,setTimeout(()=>{Cl=!1},400))}function xl(){Cl||($e.value=null)}function Fl(){$e.value=null}function $l(e){e&&B({url:`/pages/venue/detail?id=${e}`})}function Il(){D({url:"/pages/activity/index"})}function jl(){B({url:"/pages/discover/index"})}function Pl(e){const l=e.schedule_status;return"not_started"===l||"ongoing"===l||"ended"===l?l:ue(e.start_at,e.end_at)}function zl(e){return"ticket_grab"!==e.list_kind&&("ended"!==Pl(e)&&!0===e.is_bookable)}function Al(e){return te(Pl(e))}function Tl(e){return`st-${Pl(e)}`}function Rl(e){return"ticket_grab"!==e.list_kind&&("ended"===Pl(e)&&!0===e.has_behind_scenes)}function Ll(){o.value={latitude:ye.lat,longitude:ye.lng}}async function Ml(){t.value=!0;try{const l=await e.get("/h5/home",{},{withAuth:!1});n.value=l,Ll(),await h().catch(()=>{})}catch(l){u({title:(null==l?void 0:l.message)||"加载首页失败",icon:"none"})}finally{t.value=!1}}return m(()=>{!async function(){try{s.value=await V()}catch{s.value=null}}()}),_(async()=>{await be()&&await Ml()}),(e,l)=>{const u=b,s=C,i=F,d=$,v=j,f=z,m=N;return k(),p(u,{class:"page-root"},{default:g(()=>[w(m,{"scroll-y":"",class:"page"},{default:g(()=>{var e,_;return[w(u,{class:"hero"},{default:g(()=>[w(u,{class:"hero-brand",style:a}),w(u,{class:"hero-content"},{default:g(()=>[w(u,{class:"map-section"},{default:g(()=>[w(u,{class:"toolbar"},{default:g(()=>[w(u,{class:"tabs"},{default:g(()=>[w(s,{class:S(["tab",{on:"map"===r.value}]),onClick:l[0]||(l[0]=e=>r.value="map")},{default:g(()=>[x("地图")]),_:1},8,["class"]),w(s,{class:S(["tab",{on:"list"===r.value}]),onClick:l[1]||(l[1]=e=>r.value="list")},{default:g(()=>[x("列表")]),_:1},8,["class"])]),_:1}),w(u,{class:"search-wrap"},{default:g(()=>[w(i,{modelValue:c.value,"onUpdate:modelValue":l[2]||(l[2]=e=>c.value=e),class:"search-input",placeholder:"请输入您要搜索的内容","placeholder-class":"ph"},null,8,["modelValue"]),w(d,{class:"search-icon-img",src:I(Q),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1}),w(u,{class:"filters"},{default:g(()=>[w(v,{mode:"selector",range:Re.value,"range-key":"label",value:Ue.value,onChange:He},{default:g(()=>[w(u,{class:"f-item"},{default:g(()=>[w(s,{class:"f-item-text"},{default:g(()=>[x(P(U.value),1)]),_:1}),w(d,{class:"f-item-arrow",src:I(ee),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),w(v,{mode:"selector",range:Le.value,"range-key":"label",value:Ve.value,onChange:Je},{default:g(()=>[w(u,{class:"f-item"},{default:g(()=>[w(s,{class:"f-item-text"},{default:g(()=>[x(P(pe.value),1)]),_:1}),w(d,{class:"f-item-arrow",src:I(ee),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),w(v,{mode:"selector",range:Be.value,"range-key":"label",value:Ye.value,onChange:We},{default:g(()=>[w(u,{class:"f-item"},{default:g(()=>[w(s,{class:"f-item-text"},{default:g(()=>[x(P(xe.value),1)]),_:1}),w(d,{class:"f-item-arrow",src:I(ee),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),w(v,{mode:"selector",range:Me.value,"range-key":"label",value:Ee.value,onChange:Ke},{default:g(()=>[w(u,{class:"f-item"},{default:g(()=>[w(s,{class:"f-item-text"},{default:g(()=>[x(P(he.value),1)]),_:1}),w(d,{class:"f-item-arrow",src:I(ee),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),w(v,{mode:"selector",range:qe.value,"range-key":"label",value:Ge.value,onChange:Qe},{default:g(()=>[w(u,{class:"f-item"},{default:g(()=>[w(s,{class:"f-item-text"},{default:g(()=>[x(P(Ce.value),1)]),_:1}),w(d,{class:"f-item-arrow",src:I(ee),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"])]),_:1}),"map"===r.value?(k(),p(u,{key:0,class:"map-wrap"},{default:g(()=>[(k(),p(f,{key:_l.value,class:"main-map",latitude:o.value.latitude,longitude:o.value.longitude,markers:wl.value,scale:fl.value,polygons:ol.value,"include-points":ml.value,padding:pl.value,"enable-3D":!1,"enable-poi":!1,"enable-building":!1,"enable-traffic":!1,"show-compass":!1,onRegionchange:Nl,onMarkertap:Sl,onTap:xl},null,8,["latitude","longitude","markers","scale","polygons","include-points","padding"])),hl.value?(k(),p(u,{key:0,class:"venue-sheet",onClick:l[4]||(l[4]=A(()=>{},["stop"]))},{default:g(()=>[w(u,{class:"venue-sheet-inner"},{default:g(()=>[w(u,{class:"sheet-bar"}),w(u,{class:"sheet-row"},{default:g(()=>[w(d,{class:"sheet-cover",src:hl.value.image||I(K),mode:"aspectFill"},null,8,["src"]),w(u,{class:"sheet-main"},{default:g(()=>[w(s,{class:"sheet-name"},{default:g(()=>[x(P(hl.value.name),1)]),_:1}),w(u,{class:"sheet-tags-line"},{default:g(()=>[w(u,{class:"sheet-meta"},{default:g(()=>{var e,l;return[(k(!0),T(R,null,L(Xe(hl.value),(e,l)=>(k(),p(s,{key:"svm-"+l,class:"sheet-type",style:M(I(re)(bl(e)))},{default:g(()=>[x(P(ze(e)||e),1)]),_:2},1032,["style"]))),128)),hl.value.ticket_type?(k(),p(s,{key:0,class:S(["sheet-ticket","paid"===hl.value.ticket_type?"paid":"free"])},{default:g(()=>[x(P(Ae(hl.value.ticket_type)),1)]),_:1},8,["class"])):q("",!0),hl.value.open_mode?(k(),p(s,{key:1,class:"open-mode-tag",style:M(I(ce)(hl.value.open_mode,null==(l=null==(e=n.value)?void 0:e.venue_dicts)?void 0:l.venue_open_mode))},{default:g(()=>[x(P(Te(hl.value.open_mode)),1)]),_:1},8,["style"])):q("",!0)]}),_:1})]),_:1})]),_:1})]),_:1}),w(u,{class:"sheet-actions"},{default:g(()=>[w(u,{class:"sheet-btn ghost",onClick:Fl},{default:g(()=>[x("关闭")]),_:1}),w(u,{class:"sheet-btn primary",onClick:l[3]||(l[3]=e=>$l(hl.value.id))},{default:g(()=>[x("详情")]),_:1})]),_:1})]),_:1})]),_:1})):q("",!0)]),_:1})):(k(),p(m,{key:1,"scroll-y":"",class:"venue-list-scroll"},{default:g(()=>[(k(!0),T(R,null,L(al.value,e=>(k(),p(u,{key:e.id,class:"venue-row",onClick:l=>$l(e.id)},{default:g(()=>[w(d,{class:"venue-thumb",src:e.image||I(K),mode:"aspectFill"},null,8,["src"]),w(u,{class:"venue-info"},{default:g(()=>[w(s,{class:"venue-name"},{default:g(()=>[x(P(e.name),1)]),_:2},1024),w(u,{class:"venue-tags-line"},{default:g(()=>[w(u,{class:"venue-meta"},{default:g(()=>{var l,a;return[(k(!0),T(R,null,L(Xe(e),(l,a)=>(k(),p(s,{key:"vml-"+e.id+"-"+a,class:"venue-type-pill",style:M(I(re)(bl(l)))},{default:g(()=>[x(P(ze(l)||l),1)]),_:2},1032,["style"]))),128)),e.ticket_type?(k(),p(s,{key:0,class:S(["venue-ticket-pill","paid"===e.ticket_type?"paid":"free"])},{default:g(()=>[x(P(Ae(e.ticket_type)),1)]),_:2},1032,["class"])):q("",!0),e.open_mode?(k(),p(s,{key:1,class:"open-mode-tag",style:M(I(ce)(e.open_mode,null==(a=null==(l=n.value)?void 0:l.venue_dicts)?void 0:a.venue_open_mode))},{default:g(()=>[x(P(Te(e.open_mode)),1)]),_:2},1032,["style"])):q("",!0)]}),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1032,["onClick"]))),128)),al.value.length?q("",!0):(k(),p(u,{key:0,class:"empty-tip"},{default:g(()=>[x(P(gl.value?"暂无符合条件的场馆":"暂无场馆"),1)]),_:1}))]),_:1}))]),_:1})]),_:1})]),_:1}),q("",!0),w(u,{class:"section"},{default:g(()=>[w(u,{class:"sec-head"},{default:g(()=>[w(u,{class:"sec-bar"}),w(s,{class:"sec-title"},{default:g(()=>[x("热门活动")]),_:1}),w(s,{class:"sec-more",onClick:Il},{default:g(()=>[x("更多 >")]),_:1})]),_:1}),w(m,{"scroll-x":"",class:"act-scroll","show-scrollbar":!1,"enable-flex":!0},{default:g(()=>[w(u,{class:"act-scroll-row"},{default:g(()=>{var e;return[(k(!0),T(R,null,L((null==(e=n.value)?void 0:e.hot_activities)??[],e=>(k(),p(u,{key:(e.list_kind||"activity")+"-"+e.id,class:"act-card",onClick:l=>function(e){"ticket_grab"!==e.list_kind?B({url:`/pages/activity/detail?id=${e.id}`}):B({url:`/pages/ticket-grab/detail?id=${e.id}`})}(e)},{default:g(()=>[w(u,{class:"act-img-wrap"},{default:g(()=>[w(d,{class:"act-img",src:e.image||I(K),mode:"aspectFill"},null,8,["src"]),w(u,{class:S(["act-schedule-tag",Tl(e)])},{default:g(()=>[x(P(Al(e)),1)]),_:2},1032,["class"]),Rl(e)?(k(),p(u,{key:0,class:"act-bts-corner-tag"},{default:g(()=>[x("活动花絮")]),_:1})):(k(),T(R,{key:1},["ticket_grab"===e.list_kind&&e.can_grab_today?(k(),p(u,{key:0,class:"act-book-badge is-grab"},{default:g(()=>[w(s,{class:"act-book-text is-grab"},{default:g(()=>[x("抢票")]),_:1})]),_:1})):zl(e)?(k(),p(u,{key:1,class:"act-book-badge is-bookable"},{default:g(()=>[w(s,{class:"act-book-text is-bookable"},{default:g(()=>[x("可预约")]),_:1})]),_:1})):q("",!0)],64))]),_:2},1024),w(u,{class:"act-body"},{default:g(()=>[w(s,{class:"act-title"},{default:g(()=>[x(P(e.title),1)]),_:2},1024),w(u,{class:"act-tags"},{default:g(()=>[(k(!0),T(R,null,L(e.tags||[],(l,a)=>{var t,u;return k(),p(s,{key:"tag-"+e.id+"-"+a,class:"act-tag-chip",style:M(I(de)(a,null==(u=null==(t=n.value)?void 0:t.venue_dicts)?void 0:u.venue_type))},{default:g(()=>[x(P(l),1)]),_:2},1032,["style"])}),128))]),_:2},1024),w(s,{class:"act-meta"},{default:g(()=>[x(P(I(ae)(e.start_at,e.end_at)),1)]),_:2},1024),"ticket_grab"===e.list_kind?(k(),p(s,{key:0,class:"act-meta"},{default:g(()=>[x(P(Number(e.venue_count)||0)+"家场馆可抢票",1)]),_:2},1024)):(k(),p(s,{key:1,class:"act-meta"},{default:g(()=>[x(P(e.venue_name||e.address||"苏州"),1)]),_:2},1024))]),_:2},1024)]),_:2},1032,["onClick"]))),128))]}),_:1})]),_:1})]),_:1}),((null==(_=null==(e=n.value)?void 0:e.study_tours)?void 0:_.length)??0)>0?(k(),p(u,{key:1,class:"section"},{default:g(()=>{var e;return[w(u,{class:"sec-head"},{default:g(()=>[w(u,{class:"sec-bar"}),w(s,{class:"sec-title"},{default:g(()=>[x("科普四季研学线路推荐")]),_:1}),w(s,{class:"sec-more",onClick:jl},{default:g(()=>[x("更多 >")]),_:1})]),_:1}),(k(!0),T(R,null,L((null==(e=n.value)?void 0:e.study_tours)??[],e=>(k(),p(u,{key:e.id,class:"tour-card",onClick:l=>{return a=e.id,void B({url:`/pages/study-tour/detail?id=${a}`});var a}},{default:g(()=>[w(u,{class:"tour-img-wrap"},{default:g(()=>[w(d,{class:"tour-img",src:e.cover_image||I(K),mode:"aspectFill"},null,8,["src"])]),_:2},1024),w(u,{class:"tour-body"},{default:g(()=>{var l;return[w(s,{class:"tour-title"},{default:g(()=>[x(P(e.name),1)]),_:2},1024),w(u,{class:"tour-stops-timeline"},{default:g(()=>[(k(!0),T(R,null,L(e.venue_names,(l,a)=>(k(),p(u,{key:"v-"+e.id+"-"+a,class:"tour-stop-row"},{default:g(()=>[w(u,{class:"tour-timeline-axis"},{default:g(()=>[w(u,{class:"tour-dot-cell"},{default:g(()=>[w(u,{class:"tour-tl-dot"})]),_:1}),a<e.venue_names.length-1?(k(),p(u,{key:0,class:"tour-tl-line"})):q("",!0)]),_:2},1024),w(s,{class:"tour-stop-name"},{default:g(()=>[x(P(l),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),(null==(l=e.tags)?void 0:l.length)?(k(),p(u,{key:0,class:"tour-tags-row"},{default:g(()=>[(k(!0),T(R,null,L(e.tags,(l,a)=>{var t,u;return k(),p(s,{key:"t-"+e.id+"-"+a,class:"tour-tag",style:M(I(de)(a,null==(u=null==(t=n.value)?void 0:t.venue_dicts)?void 0:u.venue_type))},{default:g(()=>[x(P(l),1)]),_:2},1032,["style"])}),128))]),_:2},1024)):q("",!0)]}),_:2},1024)]),_:2},1032,["onClick"]))),128))]}),_:1})):q("",!0),w(u,{class:"bottom-safe"}),t.value?(k(),p(u,{key:2,class:"loading-mask"},{default:g(()=>[x("加载中...")]),_:1})):q("",!0)]}),_:1})]),_:1})}}}),[["__scopeId","data-v-6ca7cc3c"]]);export{Ce as default};
|