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

import{d as a,r as s,a as t,a9 as l,o as e,E as n,G as u,b as i,e as c,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 C,m as b,p as w,A as j,B as x,_ as B}from"./index-xAYBzD2S.js";import{a as A,g as P}from"./content.DLzN1aRv.js";import{g as F,l as N}from"./peopleCounting.C3_3lhTC.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:"";return{id:a.id,name:a.name||"未命名场馆",district:e,cover_image:a.cover_image||null,liveCount:t.has(a.id)?t.get(a.id):null}}),e=l.filter(a=>null!==a.liveCount),n=l.filter(a=>null===a.liveCount);return e.sort((a,s)=>(s.liveCount??0)-(a.liveCount??0)),[...e,...n]}(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{u()}}),(a,s)=>{const t=d("SubPageBackBtn"),l=r,e=v,n=b;return f(),i(l,{class:"page"},{default:c(()=>[m(l,{class:"stats-header",style:_({paddingTop:E.value+"px"})},{default:c(()=>[m(l,{class:"stats-header-row"},{default:c(()=>[m(t,{embedded:""}),m(l,{class:"stats-title-line"},{default:c(()=>[m(l,{class:"title-left"},{default:c(()=>[m(l,{class:"bar","aria-hidden":"true"}),m(e,{class:"title"},{default:c(()=>[p("实时人数排行")]),_:1})]),_:1}),m(e,{class:"title-hint"},{default:c(()=>[p("纳入市科协人数统计系统场馆")]),_:1})]),_:1})]),_:1})]),_:1},8,["style"]),B.value&&!z.value.length?(f(),i(l,{key:0,class:"state"},{default:c(()=>[p("加载中…")]),_:1})):z.value.length?(f(),i(l,{key:2,class:"list"},{default:c(()=>[(f(!0),y(g,null,k(z.value,(a,s)=>(f(),i(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:c(()=>[m(l,{class:"rank-wrap"},{default:c(()=>[s<3?(f(),i(l,{key:0,class:h(["medal","m"+(s+1)])},{default:c(()=>[p(C(s+1),1)]),_:2},1032,["class"])):(f(),i(e,{key:1,class:"rank-num"},{default:c(()=>[p(C(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:c(()=>[m(e,{class:"name"},{default:c(()=>[p(C(a.name),1)]),_:2},1024),a.district?(f(),i(e,{key:0,class:"district"},{default:c(()=>[p(C(a.district),1)]),_:2},1024)):j("",!0)]),_:2},1024),m(l,{class:"count-block"},{default:c(()=>[m(e,{class:"count-label"},{default:c(()=>[p("实时人数")]),_:1}),m(l,{class:"count-row"},{default:c(()=>[m(e,{class:h(["count",{"count--na":null===a.liveCount}])},{default:c(()=>[p(C(null===a.liveCount?"—":a.liveCount.toLocaleString()),1)]),_:2},1032,["class"]),m(e,{class:"unit"},{default:c(()=>[p("人")]),_:1})]),_:2},1024)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})):(f(),i(l,{key:1,class:"state muted"},{default:c(()=>[p("暂无已上架场馆")]),_:1})),m(l,{class:"bottom-safe"})]),_:1})}}}),[["__scopeId","data-v-6a7f291a"]]);export{z as default};