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
3.0 KiB

import{d as a,e as s,o as t,T as l,U as e,j as c,k as u,s as n,n as i,t as o,u as r,x as d,y as f,B as m,F as _,C as v,E as p,z as y,H as k,G as h,K as g}from"./index-AX7ZPvYY.js";import{a as b,g as C}from"./content.-L1_ukL9.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const w=x(a({__name:"index",setup(a){const x=s(!0),w=s([]);async function j(){x.value=!0;try{const[a,s]=await Promise.all([b(),C().catch(()=>null)]),t=Array.isArray(a)?a:[],l=function(a){const s={};for(const t of(null==a?void 0:a.district)??[]){const a=(t.value||"").trim();a&&(s[a]=(t.label||"").trim()||a)}return s}(s);w.value=function(a,s){return a.map(a=>{const t=(a.district||"").trim(),l=t?s[t]??t:"";return{id:a.id,name:a.name||"未命名场馆",district:l,cover_image:a.cover_image||null,liveCount:100+Math.floor(9900*Math.random())}}).sort((a,s)=>s.liveCount-a.liveCount)}(t,l)}catch(a){n({title:(null==a?void 0:a.message)||"加载失败",icon:"none"}),w.value=[]}finally{x.value=!1}}return t(()=>{j()}),l(async()=>{try{await j()}finally{e()}}),(a,s)=>{const t=i,l=d,e=k;return o(),c(t,{class:"page"},{default:u(()=>[r(t,{class:"section-title"},{default:u(()=>[r(t,{class:"bar"}),r(l,{class:"title"},{default:u(()=>[f("今日客流量统计")]),_:1})]),_:1}),r(l,{class:"tip"},{default:u(()=>[f("场馆信息来自平台数据;右侧人数为演示用随机值,每次进入或下拉刷新会重新计算,并按人数从高到低排序。")]),_:1}),x.value&&!w.value.length?(o(),c(t,{key:0,class:"state"},{default:u(()=>[f("加载中…")]),_:1})):w.value.length?(o(),c(t,{key:2,class:"list"},{default:u(()=>[(o(!0),m(_,null,v(w.value,(a,s)=>(o(),c(t,{key:a.id,class:p(["row",{"is-top1":0===s,"is-top2":1===s,"is-top3":2===s}]),onClick:s=>{var t;(t=a.id)&&g({url:`/pages/venue/detail?id=${t}`})}},{default:u(()=>[r(t,{class:"rank-wrap"},{default:u(()=>[s<3?(o(),c(t,{key:0,class:p(["medal","m"+(s+1)])},{default:u(()=>[f(y(s+1),1)]),_:2},1032,["class"])):(o(),c(l,{key:1,class:"rank-num"},{default:u(()=>[f(y(s+1),1)]),_:2},1024))]),_:2},1024),a.cover_image?(o(),c(e,{key:0,class:"thumb",src:a.cover_image,mode:"aspectFill"},null,8,["src"])):(o(),c(t,{key:1,class:"thumb thumb-ph"},{default:u(()=>[r(l,{class:"thumb-ph-text"},{default:u(()=>[f("科普")]),_:1})]),_:1})),r(t,{class:"mid"},{default:u(()=>[r(l,{class:"name"},{default:u(()=>[f(y(a.name),1)]),_:2},1024),a.district?(o(),c(l,{key:0,class:"district"},{default:u(()=>[f(y(a.district),1)]),_:2},1024)):h("",!0)]),_:2},1024),r(t,{class:"count-block"},{default:u(()=>[r(l,{class:"count-label"},{default:u(()=>[f("实时人数")]),_:1}),r(t,{class:"count-row"},{default:u(()=>[r(l,{class:"count"},{default:u(()=>[f(y(a.liveCount.toLocaleString()),1)]),_:2},1024),r(l,{class:"unit"},{default:u(()=>[f("人")]),_:1})]),_:2},1024)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})):(o(),c(t,{key:1,class:"state muted"},{default:u(()=>[f("暂无已上架场馆")]),_:1})),r(t,{class:"bottom-safe"})]),_:1})}}}),[["__scopeId","data-v-460499d2"]]);export{w as default};