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
22 KiB
2 lines
22 KiB
import{h as e,i as l,g as a,S as t,s as u,r as s,a as n,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,u as y,n as k,p as b,q as w,t as C,v as x,x as S,y as F,F as N,z as I,B as j,C as $,I as P,D as T,E as z,G as A,M,H as R,J as q,K as D,L}from"./index-BIuhrOm4.js";import{P as U}from"./poster.DLiVsUXX.js";import{s as V}from"./search.BJnl3YRK.js";import{d as B}from"./down.BCKq9i8s.js";import{f as E,a as G,c as H}from"./activity.BNBJ_f9a.js";import{v as J,g as K,a as W,m as X}from"./suzhouDistrictPolygons.srVEtVX-.js";import{t as Y,m as O}from"./ticketMap.DHd3PVSu.js";import{v as Q}from"./venueTypes.DuAf5T5V.js";import{v as Z,o as ee,a as le,c as ae}from"./venueThemeColors.DRxjaxXI.js";import{_ as te}from"./_plugin-vue_export-helper.BCo6x5W8.js";const ue="szkp_force_loc_prompt",se="szkp_wechat_oauth_denied",ne="szkp_h5_oauth_state_ss";let oe=null;function ie(){return oe||(oe=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(se,"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(ne)||""}catch{}l||(l=a(t.oauthState)||"");if(Boolean(m&&l&&String(m)!==String(l))){u({title:"授权状态异常,请关闭页面后重试",icon:"none"});try{window.sessionStorage.removeItem(ne)}catch{}s(t.oauthState)}else{n({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(ue,"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(ne)}catch{}return s(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(se))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(ne,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(()=>{oe=null})),oe}const re={lat:31.2989,lng:120.5853},ce={lat:.085,lng:.098};const de=te(c({__name:"index",setup(l){const a=d(!1),t=d(null),s=d({latitude:re.lat,longitude:re.lng}),n=d(12),o=d("map"),i=d(""),r=d("区域"),c=d(""),te=d("主题"),ue=d(""),se=d("参观形式"),ne=d(""),oe=d("开放模式"),de=d(""),ve=d("收费类型"),fe=d(""),me=d(null),_e=v(()=>{var e,l;const a={};for(const u of(null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.venue_type)??[])a[u.value]=u.label;return a}),pe=v(()=>{var e,l;const a={};for(const u of(null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.ticket_type)??[])a[u.value]=u.label;return a}),ge=v(()=>{var e,l;const a={};for(const u of(null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.venue_open_mode)??[])a[u.value]=u.label;return a});function he(e){return e?_e.value[e]||e:""}function ye(e){return e?pe.value[e]||e:""}function ke(e){return e?ge.value[e]||e:""}const be=v(()=>{var e,l;return Number((null==(l=null==(e=t.value)?void 0:e.stats)?void 0:l.in_venue_total)??0).toLocaleString()}),we=v(()=>{var e;const l=[...(null==(e=t.value)?void 0:e.top_live_venues)??[]].sort((e,l)=>Number(l.people_count??0)-Number(e.people_count??0)),a=[];for(let t=0;t<3;t++){const e=l[t];e?a.push({id:e.id,name:e.name,people_count:e.people_count,empty:!1}):a.push({id:0,name:"",people_count:0,empty:!0})}return a}),Ce=v(()=>{var e,l;return[{label:"区域",value:""},...((null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.district)??[]).map(e=>({label:e.label,value:e.value}))]}),xe=v(()=>{var e,l;return[{label:"主题",value:""},...((null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.venue_type)??[]).map(e=>({label:e.label,value:e.value}))]}),Se=v(()=>{var e,l;return[{label:"参观形式",value:""},...((null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.venue_appointment_type)??[]).map(e=>({label:e.label,value:e.value}))]}),Fe=v(()=>{var e,l;return[{label:"开放模式",value:""},...((null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.venue_open_mode)??[]).map(e=>({label:e.label,value:e.value}))]}),Ne=v(()=>{var e,l;return[{label:"收费类型",value:""},...((null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.ticket_type)??[]).map(e=>({label:e.label,value:e.value}))]});function Ie(e,l){const a=e.findIndex(e=>e.value===l);return a>=0?a:0}const je=v(()=>Ie(Ce.value,c.value)),$e=v(()=>Ie(xe.value,ue.value)),Pe=v(()=>Ie(Se.value,ne.value)),Te=v(()=>Ie(Fe.value,de.value)),ze=v(()=>Ie(Ne.value,fe.value));function Ae(e){const l=Ce.value[Number(e.detail.value)];l&&(r.value=l.label,c.value=l.value)}function Me(e){const l=xe.value[Number(e.detail.value)];l&&(te.value=l.label,ue.value=l.value)}function Re(e){const l=Se.value[Number(e.detail.value)];l&&(se.value=l.label,ne.value=l.value)}function qe(e){const l=Fe.value[Number(e.detail.value)];l&&(oe.value=l.label,de.value=l.value)}function De(e){const l=Ne.value[Number(e.detail.value)];l&&(ve.value=l.label,fe.value=l.value)}function Le(e){return Q(e)}function Ue(e){const l=Number(e.sort);return Number.isFinite(l)?l:0}function Ve(e,l){const a=Ue(e)-Ue(l);return 0!==a?a:e.id-l.id}const Be=v(()=>{var e;const l=i.value.trim();return((null==(e=t.value)?void 0:e.map_venues)??[]).filter(e=>{if(c.value&&!J(String(e.district||""),c.value))return!1;if(ue.value&&!Le(e).includes(ue.value))return!1;if(ne.value&&(e.appointment_type||"")!==ne.value)return!1;if(de.value&&(e.open_mode||"")!==de.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(!`${e.name||""}${e.address||""}`.includes(l))return!1}return!0})}),Ee=v(()=>[...Be.value].sort(Ve)),Ge=v(()=>{var e,l;const a=null==(e=c.value)?void 0:e.trim();return a?((null==(l=t.value)?void 0:l.map_venues)??[]).filter(e=>J(String(e.district||""),a)):[]}),He=v(()=>{var e;if(!(null==(e=c.value)?void 0:e.trim()))return null;const l=c.value.trim(),a=K(l);if(null==a?void 0:a.length)return a;const t=W(Ge.value.map(e=>({lat:e.lat,lng:e.lng})));return t&&t.length>=3?[t]:null}),Je=v(()=>{const e=He.value;return(null==e?void 0:e.length)?e.map(e=>({points:e,strokeWidth:2,strokeColor:"#05C9ACE6",fillColor:"#05C9AC14",zIndex:5})):[]}),Ke=v(()=>{var e;if(!(null==(e=c.value)?void 0:e.trim()))return[];const l=He.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});for(const t of Ee.value)a.push({latitude:t.lat,longitude:t.lng});return a});function We(e,l){if(!e.length)return[];let a=1/0,t=-1/0,u=1/0,s=-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>s&&(s=c.longitude);if(!Number.isFinite(a)||t<=a||!Number.isFinite(u)||s<=u)return e.map(e=>({...e}));const n=(a+t)/2,o=(u+s)/2,i=(t-a)/2*l,r=(s-u)/2*l;return[{latitude:n-i,longitude:o-r},{latitude:n-i,longitude:o+r},{latitude:n+i,longitude:o-r},{latitude:n+i,longitude:o+r}]}const Xe=v(()=>!!(ue.value||ne.value||de.value||fe.value||i.value.trim())),Ye=v(()=>{var e,l;if(null==(e=c.value)?void 0:e.trim()){const e=Ke.value;if(e.length)return We(e,.9)}if(!(null==(l=c.value)?void 0:l.trim())&&Xe.value&&Ee.value.length>0){const e=W(Ee.value.map(e=>({lat:e.lat,lng:e.lng})),.012);if(null==e?void 0:e.length){return We(e.map(e=>({latitude:e.latitude,longitude:e.longitude})),.9)}}return We(function(e=ce){const l=re,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}]}(),.9)}),Oe=v(()=>{var e;if((null==(e=c.value)?void 0:e.trim())&&Ke.value.length)try{const e=y(48);return[e,e,e,e]}catch{return[16,16,16,16]}}),Qe=v(()=>!!(c.value||ue.value||ne.value||de.value||fe.value||i.value.trim())),Ze=v(()=>null==me.value?null:Be.value.find(e=>e.id===me.value)??null);function el(e){var l,a;return ae(e,null==(a=null==(l=t.value)?void 0:l.venue_dicts)?void 0:a.venue_type)}f([Ee,c,He,Xe],()=>{var e,l;const a=He.value;if((null==(e=c.value)?void 0:e.trim())&&(null==a?void 0:a.length)){const e=X(a);return void(s.value={latitude:e.latitude,longitude:e.longitude})}if(!(null==(l=c.value)?void 0:l.trim())&&Xe.value&&Ee.value.length>0){const e=Ee.value[0];return void(s.value={latitude:e.lat,longitude:e.lng})}gl()}),f(Be,e=>{null==me.value||e.some(e=>e.id===me.value)||(me.value=null)}),f(o,e=>{"list"===e&&(me.value=null),"map"===e&&(n.value=12)});let ll=null;f([Ee,Qe],()=>{ll&&(clearTimeout(ll),ll=null),"map"===o.value&&(!Qe.value||Ee.value.length>0||(ll=setTimeout(()=>{ll=null,u({title:"暂无符合条件的场馆",icon:"none",duration:2e3})},150)))});const al=Math.round(8064/246),tl=v(()=>{const e=n.value>=14;return Ee.value.map(l=>{const a=Y(l,()=>function(e){var l,a;if(!e)return"#05c9ac";const u=Q(e)[0];if(u&&(null==(a=null==(l=t.value)?void 0:l.venue_dicts)?void 0:a.venue_type)){const e=t.value.venue_dicts.venue_type.find(e=>e.value===u);if(null==e?void 0:e.color)return e.color}return e.venue_type_color||"#05c9ac"}(l)),u=O(a,me.value===l.id),s={id:l.id,latitude:l.lat,longitude:l.lng,width:32,height:al,iconPath:u,anchor:{x:.5,y:1}},n=(l.name||"").trim();return e&&n&&(s.label={content:n,color:"#1d2129",fontSize:11,bgColor:"rgba(255,255,255,0.92)",padding:3,borderRadius:4,anchorX:0,anchorY:-4}),s})});function ul(e){var l;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)&&(n.value=t)}let sl=!1;function nl(e){var l;const a=null==(l=null==e?void 0:e.detail)?void 0:l.markerId;null!=a&&(me.value=Number(a),sl=!0,setTimeout(()=>{sl=!1},400))}function ol(){sl||(me.value=null)}function il(){me.value=null}function rl(e){e&&D({url:`/pages/venue/detail?id=${e}`})}function cl(){D({url:"/pages/stats/index"})}function dl(){L({url:"/pages/activity/index"})}function vl(){D({url:"/pages/discover/index"})}function fl(e){const l=e.schedule_status;return"not_started"===l||"ongoing"===l||"ended"===l?l:H(e.start_at,e.end_at)}function ml(e){return"ended"!==fl(e)&&!0===e.is_bookable}function _l(e){return G(fl(e))}function pl(e){return`st-${fl(e)}`}function gl(){s.value={latitude:re.lat,longitude:re.lng}}async function hl(){a.value=!0;try{const l=await e.get("/h5/home",{},{withAuth:!1});t.value=l,gl(),await g({title:"苏州市科普场馆地图",desc:"热门活动、研学线路与场馆导览"}).catch(()=>{})}catch(l){u({title:(null==l?void 0:l.message)||"加载首页失败",icon:"none"})}finally{a.value=!1}}return m(async()=>{await ie()&&await hl()}),(e,l)=>{const u=h,c=C,d=P,v=T,f=A,m=M,g=w;return k(),_(u,{class:"page-root"},{default:p(()=>[b(g,{"scroll-y":"",class:"page"},{default:p(()=>[b(u,{class:"hero"},{default:p(()=>[b(u,{class:"hero-brand"}),b(u,{class:"hero-content"},{default:p(()=>[b(u,{class:"stat-card"},{default:p(()=>[b(u,{class:"stat-main"},{default:p(()=>[b(u,{class:"stat-left"},{default:p(()=>[b(c,{class:"stat-label"},{default:p(()=>[x("在馆实时总人数")]),_:1}),b(u,{class:"stat-note"},{default:p(()=>[x("(纳入市科协人数统计系统场馆)")]),_:1}),b(c,{class:"stat-num"},{default:p(()=>[x(S(be.value)+" 人",1)]),_:1})]),_:1}),b(u,{class:"stat-right"},{default:p(()=>[b(u,{class:"live-list"},{default:p(()=>[(k(!0),F(N,null,I(we.value,(e,l)=>(k(),_(u,{key:"live-"+l,class:$(["live-venue-row",{"is-empty":e.empty}]),onClick:j(l=>{var a;(a=e).empty||rl(a.id)},["stop"])},{default:p(()=>[b(u,{class:"live-row-one"},{default:p(()=>[b(c,{class:"live-top"},{default:p(()=>[x("Top "+S(l+1),1)]),_:2},1024),b(c,{class:"live-name"},{default:p(()=>[x(S(e.empty?"—":e.name),1)]),_:2},1024),b(c,{class:"live-count"},{default:p(()=>[x(S(e.empty?"—":e.people_count+" 人"),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1}),b(u,{class:"stat-foot",onClick:j(cl,["stop"])},{default:p(()=>[b(c,{class:"stat-foot-link"},{default:p(()=>[x("客流量统计 >")]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),b(u,{class:"map-section"},{default:p(()=>[b(u,{class:"toolbar"},{default:p(()=>[b(u,{class:"tabs"},{default:p(()=>[b(c,{class:$(["tab",{on:"map"===o.value}]),onClick:l[0]||(l[0]=e=>o.value="map")},{default:p(()=>[x("地图")]),_:1},8,["class"]),b(c,{class:$(["tab",{on:"list"===o.value}]),onClick:l[1]||(l[1]=e=>o.value="list")},{default:p(()=>[x("列表")]),_:1},8,["class"])]),_:1}),b(u,{class:"search-wrap"},{default:p(()=>[b(d,{modelValue:i.value,"onUpdate:modelValue":l[2]||(l[2]=e=>i.value=e),class:"search-input",placeholder:"请输入你要搜索的内容","placeholder-class":"ph"},null,8,["modelValue"]),b(v,{class:"search-icon-img",src:z(V),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1}),b(u,{class:"filters"},{default:p(()=>[b(f,{mode:"selector",range:Ce.value,"range-key":"label",value:je.value,onChange:Ae},{default:p(()=>[b(u,{class:"f-item"},{default:p(()=>[b(c,{class:"f-item-text"},{default:p(()=>[x(S(r.value),1)]),_:1}),b(v,{class:"f-item-arrow",src:z(B),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),b(f,{mode:"selector",range:xe.value,"range-key":"label",value:$e.value,onChange:Me},{default:p(()=>[b(u,{class:"f-item"},{default:p(()=>[b(c,{class:"f-item-text"},{default:p(()=>[x(S(te.value),1)]),_:1}),b(v,{class:"f-item-arrow",src:z(B),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),b(f,{mode:"selector",range:Se.value,"range-key":"label",value:Pe.value,onChange:Re},{default:p(()=>[b(u,{class:"f-item"},{default:p(()=>[b(c,{class:"f-item-text"},{default:p(()=>[x(S(se.value),1)]),_:1}),b(v,{class:"f-item-arrow",src:z(B),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),b(f,{mode:"selector",range:Fe.value,"range-key":"label",value:Te.value,onChange:qe},{default:p(()=>[b(u,{class:"f-item"},{default:p(()=>[b(c,{class:"f-item-text"},{default:p(()=>[x(S(oe.value),1)]),_:1}),b(v,{class:"f-item-arrow",src:z(B),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"]),b(f,{mode:"selector",range:Ne.value,"range-key":"label",value:ze.value,onChange:De},{default:p(()=>[b(u,{class:"f-item"},{default:p(()=>[b(c,{class:"f-item-text"},{default:p(()=>[x(S(ve.value),1)]),_:1}),b(v,{class:"f-item-arrow",src:z(B),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["range","value"])]),_:1}),"map"===o.value?(k(),_(u,{key:0,class:"map-wrap"},{default:p(()=>[b(m,{class:"main-map",latitude:s.value.latitude,longitude:s.value.longitude,markers:tl.value,scale:n.value,polygons:Je.value,"include-points":Ye.value,padding:Oe.value,"enable-3D":!1,"enable-poi":!1,"enable-building":!1,"enable-traffic":!1,"show-compass":!1,onRegionchange:ul,onMarkertap:nl,onTap:ol},null,8,["latitude","longitude","markers","scale","polygons","include-points","padding"]),Ze.value?(k(),_(u,{key:0,class:"venue-sheet",onClick:l[4]||(l[4]=j(()=>{},["stop"]))},{default:p(()=>[b(u,{class:"venue-sheet-inner"},{default:p(()=>[b(u,{class:"sheet-bar"}),b(u,{class:"sheet-row"},{default:p(()=>[b(v,{class:"sheet-cover",src:Ze.value.image||z(U),mode:"aspectFill"},null,8,["src"]),b(u,{class:"sheet-main"},{default:p(()=>[b(c,{class:"sheet-name"},{default:p(()=>[x(S(Ze.value.name),1)]),_:1}),Le(Ze.value).length||Ze.value.ticket_type||Ze.value.open_mode?(k(),_(u,{key:0,class:"sheet-meta"},{default:p(()=>{var e,l;return[(k(!0),F(N,null,I(Le(Ze.value),(e,l)=>(k(),_(c,{key:"svm-"+l,class:"sheet-type",style:R(z(Z)(el(e)))},{default:p(()=>[x(S(he(e)||e),1)]),_:2},1032,["style"]))),128)),Ze.value.ticket_type?(k(),_(c,{key:0,class:$(["sheet-ticket","paid"===Ze.value.ticket_type?"paid":"free"])},{default:p(()=>[x(S(ye(Ze.value.ticket_type)),1)]),_:1},8,["class"])):q("",!0),Ze.value.open_mode?(k(),_(c,{key:1,class:"open-mode-tag",style:R(z(ee)(Ze.value.open_mode,null==(l=null==(e=t.value)?void 0:e.venue_dicts)?void 0:l.venue_open_mode))},{default:p(()=>[x(S(ke(Ze.value.open_mode)),1)]),_:1},8,["style"])):q("",!0)]}),_:1})):q("",!0)]),_:1})]),_:1}),b(u,{class:"sheet-actions"},{default:p(()=>[b(u,{class:"sheet-btn ghost",onClick:il},{default:p(()=>[x("关闭")]),_:1}),b(u,{class:"sheet-btn primary",onClick:l[3]||(l[3]=e=>rl(Ze.value.id))},{default:p(()=>[x("详情")]),_:1})]),_:1})]),_:1})]),_:1})):q("",!0)]),_:1})):(k(),_(g,{key:1,"scroll-y":"",class:"venue-list-scroll"},{default:p(()=>[(k(!0),F(N,null,I(Ee.value,e=>(k(),_(u,{key:e.id,class:"venue-row",onClick:l=>rl(e.id)},{default:p(()=>[b(v,{class:"venue-thumb",src:e.image||z(U),mode:"aspectFill"},null,8,["src"]),b(u,{class:"venue-info"},{default:p(()=>[b(c,{class:"venue-name"},{default:p(()=>[x(S(e.name),1)]),_:2},1024),Le(e).length||e.ticket_type||e.open_mode?(k(),_(u,{key:0,class:"venue-meta"},{default:p(()=>{var l,a;return[(k(!0),F(N,null,I(Le(e),(l,a)=>(k(),_(c,{key:"vml-"+e.id+"-"+a,class:"venue-type-pill",style:R(z(Z)(el(l)))},{default:p(()=>[x(S(he(l)||l),1)]),_:2},1032,["style"]))),128)),e.ticket_type?(k(),_(c,{key:0,class:$(["venue-ticket-pill","paid"===e.ticket_type?"paid":"free"])},{default:p(()=>[x(S(ye(e.ticket_type)),1)]),_:2},1032,["class"])):q("",!0),e.open_mode?(k(),_(c,{key:1,class:"open-mode-tag",style:R(z(ee)(e.open_mode,null==(a=null==(l=t.value)?void 0:l.venue_dicts)?void 0:a.venue_open_mode))},{default:p(()=>[x(S(ke(e.open_mode)),1)]),_:2},1032,["style"])):q("",!0)]}),_:2},1024)):q("",!0)]),_:2},1024)]),_:2},1032,["onClick"]))),128)),Ee.value.length?q("",!0):(k(),_(u,{key:0,class:"empty-tip"},{default:p(()=>[x(S(Qe.value?"暂无符合条件的场馆":"暂无场馆"),1)]),_:1}))]),_:1}))]),_:1}),b(u,{class:"section"},{default:p(()=>[b(u,{class:"sec-head"},{default:p(()=>[b(u,{class:"sec-bar"}),b(c,{class:"sec-title"},{default:p(()=>[x("热门活动")]),_:1}),b(c,{class:"sec-more",onClick:dl},{default:p(()=>[x("更多 >")]),_:1})]),_:1}),b(g,{"scroll-x":"",class:"act-scroll","show-scrollbar":!1,"enable-flex":!0},{default:p(()=>[b(u,{class:"act-scroll-row"},{default:p(()=>{var e;return[(k(!0),F(N,null,I((null==(e=t.value)?void 0:e.hot_activities)??[],e=>(k(),_(u,{key:(e.list_kind||"activity")+"-"+e.id,class:"act-card",onClick:l=>function(e){"ticket_grab"!==e.list_kind?D({url:`/pages/activity/detail?id=${e.id}`}):D({url:`/pages/ticket-grab/detail?id=${e.id}`})}(e)},{default:p(()=>[b(u,{class:"act-img-wrap"},{default:p(()=>[b(v,{class:"act-img",src:e.image||z(U),mode:"aspectFill"},null,8,["src"]),b(u,{class:$(["act-schedule-tag",pl(e)])},{default:p(()=>[x(S(_l(e)),1)]),_:2},1032,["class"]),"ticket_grab"===e.list_kind&&e.can_grab_today?(k(),_(u,{key:0,class:"act-book-badge is-grab"},{default:p(()=>[b(c,{class:"act-book-text is-grab"},{default:p(()=>[x("抢票")]),_:1})]),_:1})):"ticket_grab"!==e.list_kind&&ml(e)?(k(),_(u,{key:1,class:"act-book-badge is-bookable"},{default:p(()=>[b(c,{class:"act-book-text is-bookable"},{default:p(()=>[x("可预约")]),_:1})]),_:1})):q("",!0)]),_:2},1024),b(u,{class:"act-body"},{default:p(()=>[b(c,{class:"act-title"},{default:p(()=>[x(S(e.title),1)]),_:2},1024),b(u,{class:"act-tags"},{default:p(()=>[(k(!0),F(N,null,I((e.tags||[]).slice(0,4),(l,a)=>{var u,s;return k(),_(c,{key:"tag-"+e.id+"-"+a,class:"act-tag-chip",style:R(z(le)(a,null==(s=null==(u=t.value)?void 0:u.venue_dicts)?void 0:s.venue_type))},{default:p(()=>[x(S(l),1)]),_:2},1032,["style"])}),128))]),_:2},1024),b(c,{class:"act-meta"},{default:p(()=>[x(S(z(E)(e.start_at,e.end_at)),1)]),_:2},1024),"ticket_grab"===e.list_kind?(k(),_(c,{key:0,class:"act-meta"},{default:p(()=>[x(S(Number(e.venue_count)||0)+"家场馆可预约",1)]),_:2},1024)):(k(),_(c,{key:1,class:"act-meta"},{default:p(()=>[x(S(e.venue_name||e.address||"苏州"),1)]),_:2},1024))]),_:2},1024)]),_:2},1032,["onClick"]))),128))]}),_:1})]),_:1})]),_:1}),b(u,{class:"section"},{default:p(()=>{var e;return[b(u,{class:"sec-head"},{default:p(()=>[b(u,{class:"sec-bar"}),b(c,{class:"sec-title"},{default:p(()=>[x("科普四季研学线路推荐")]),_:1}),b(c,{class:"sec-more",onClick:vl},{default:p(()=>[x("更多 >")]),_:1})]),_:1}),(k(!0),F(N,null,I((null==(e=t.value)?void 0:e.study_tours)??[],e=>(k(),_(u,{key:e.id,class:"tour-card",onClick:l=>{return a=e.id,void D({url:`/pages/study-tour/detail?id=${a}`});var a}},{default:p(()=>[b(u,{class:"tour-img-wrap"},{default:p(()=>[b(v,{class:"tour-img",src:e.cover_image||z(U),mode:"aspectFill"},null,8,["src"])]),_:2},1024),b(u,{class:"tour-body"},{default:p(()=>{var l;return[b(c,{class:"tour-title"},{default:p(()=>[x(S(e.name),1)]),_:2},1024),b(u,{class:"tour-stops-timeline"},{default:p(()=>[(k(!0),F(N,null,I(e.venue_names,(l,a)=>(k(),_(u,{key:"v-"+e.id+"-"+a,class:"tour-stop-row"},{default:p(()=>[b(u,{class:"tour-timeline-axis"},{default:p(()=>[b(u,{class:"tour-dot-cell"},{default:p(()=>[b(u,{class:"tour-tl-dot"})]),_:1}),a<e.venue_names.length-1?(k(),_(u,{key:0,class:"tour-tl-line"})):q("",!0)]),_:2},1024),b(c,{class:"tour-stop-name"},{default:p(()=>[x(S(l),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),(null==(l=e.tags)?void 0:l.length)?(k(),_(u,{key:0,class:"tour-tags-row"},{default:p(()=>[(k(!0),F(N,null,I(e.tags,(l,a)=>{var u,s;return k(),_(c,{key:"t-"+e.id+"-"+a,class:"tour-tag",style:R(z(le)(a,null==(s=null==(u=t.value)?void 0:u.venue_dicts)?void 0:s.venue_type))},{default:p(()=>[x(S(l),1)]),_:2},1032,["style"])}),128))]),_:2},1024)):q("",!0)]}),_:2},1024)]),_:2},1032,["onClick"]))),128))]}),_:1}),b(u,{class:"bottom-safe"}),a.value?(k(),_(u,{key:0,class:"loading-mask"},{default:p(()=>[x("加载中...")]),_:1})):q("",!0)]),_:1})]),_:1})}}}),[["__scopeId","data-v-97af3ed6"]]);export{de as default};
|