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.3 KiB

import{d as a,r as s,a as t,a8 as l,o as e,E as n,G as i,b as c,e as u,f as o,i as r,N as d,g as f,j as m,z as _,k as v,l as p,x as y,F as g,y as k,n as h,t as b,m as C,p as w,A as j,B as x,_ as B}from"./index-DWiJAFDf.js";import{a as A,g as P}from"./content.BhU-k6U6.js";import{g as F,l as N}from"./peopleCounting.BIMX9FBj.js";import{P as S}from"./poster.C6TYC1FC.js";const z=B(a({__name:"index",setup(a){const B=s(!0),z=s([]),E=s(6);async function G(){B.value=!0;try{const[a,s,t]=await Promise.all([A({only_included_in_stats:!0}),P().catch(()=>null),F().catch(()=>null)]),l=Array.isArray(a)?a:[],e=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),n=N(t);z.value=function(a,s,t){const l=a.map(a=>{const l=(a.district||"").trim(),e=l?s[l]??l:"",n=t.has(a.id)?t.get(a.id):null;return{id:a.id,name:a.name||"未命名场馆",district:e,cover_image:a.cover_image||null,liveCount:n}}).filter(a=>null!=a.liveCount&&a.liveCount>0);return l.sort((a,s)=>s.liveCount-a.liveCount),l}(l,e,n)}catch(a){o({title:(null==a?void 0:a.message)||"加载失败",icon:"none"}),z.value=[]}finally{B.value=!1}}return t(()=>{try{const a=l();E.value=Number(a.statusBarHeight||0)+6}catch{E.value=6}}),e(()=>{G()}),n(async()=>{try{await G()}finally{i()}}),(a,s)=>{const t=d("SubPageBackBtn"),l=r,e=v,n=C;return f(),c(l,{class:"page"},{default:u(()=>[m(l,{class:"stats-header",style:_({paddingTop:E.value+"px"})},{default:u(()=>[m(l,{class:"stats-header-row"},{default:u(()=>[m(t,{embedded:""}),m(l,{class:"stats-title-line"},{default:u(()=>[m(l,{class:"title-left"},{default:u(()=>[m(l,{class:"bar","aria-hidden":"true"}),m(e,{class:"title"},{default:u(()=>[p("实时人数排行")]),_:1})]),_:1}),m(e,{class:"title-hint"},{default:u(()=>[p("纳入市科协人数统计系统场馆")]),_:1})]),_:1})]),_:1})]),_:1},8,["style"]),B.value&&!z.value.length?(f(),c(l,{key:0,class:"state"},{default:u(()=>[p("加载中…")]),_:1})):z.value.length?(f(),c(l,{key:2,class:"list"},{default:u(()=>[(f(!0),y(g,null,k(z.value,(a,s)=>(f(),c(l,{key:a.id,class:h(["row",{"is-top1":0===s,"is-top2":1===s,"is-top3":2===s}]),onClick:s=>{var t;(t=a.id)&&x({url:`/pages/venue/detail?id=${t}`})}},{default:u(()=>[m(l,{class:"rank-wrap"},{default:u(()=>[s<3?(f(),c(l,{key:0,class:h(["medal","m"+(s+1)])},{default:u(()=>[p(b(s+1),1)]),_:2},1032,["class"])):(f(),c(e,{key:1,class:"rank-num"},{default:u(()=>[p(b(s+1),1)]),_:2},1024))]),_:2},1024),m(n,{class:"thumb",src:a.cover_image||w(S),mode:"aspectFill"},null,8,["src"]),m(l,{class:"mid"},{default:u(()=>[m(e,{class:"name"},{default:u(()=>[p(b(a.name),1)]),_:2},1024),a.district?(f(),c(e,{key:0,class:"district"},{default:u(()=>[p(b(a.district),1)]),_:2},1024)):j("",!0)]),_:2},1024),m(l,{class:"count-block"},{default:u(()=>[m(e,{class:"count-label"},{default:u(()=>[p("实时人数")]),_:1}),m(l,{class:"count-row"},{default:u(()=>[m(e,{class:"count"},{default:u(()=>[p(b(a.liveCount.toLocaleString()),1)]),_:2},1024),m(e,{class:"unit"},{default:u(()=>[p("人")]),_:1})]),_:2},1024)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})):(f(),c(l,{key:1,class:"state muted"},{default:u(()=>[p("暂无实时人数数据")]),_:1})),m(l,{class:"bottom-safe"})]),_:1})}}}),[["__scopeId","data-v-d4b050ee"]]);export{z as default};