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
2 lines
3.4 KiB
import{d as a,e as s,j as t,aa as l,o as e,P as n,Q as u,k as i,l as c,s as o,n as r,U as d,p as f,q as _,J as m,v,y as p,F as y,G as g,H as k,x as h,D as C,z as b,B as w,K as j,L as x,_ as B}from"./index-BFumin6Y.js";import{a as P,g as A}from"./content.VuLfEdIK.js";import{g as F,l as H}from"./peopleCounting.BYLee8ck.js";import{P as L}from"./poster.C6TYC1FC.js";const S=B(a({__name:"index",setup(a){const B=s(!0),S=s([]),q=s(6);async function z(){B.value=!0;try{const[a,s,t]=await Promise.all([P({only_included_in_stats:!0}),A().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=H(t);S.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"}),S.value=[]}finally{B.value=!1}}return t(()=>{try{const a=l();q.value=Number(a.statusBarHeight||0)+6}catch{q.value=6}}),e(()=>{z()}),n(async()=>{try{await z()}finally{u()}}),(a,s)=>{const t=d("SubPageBackBtn"),l=r,e=v,n=b;return f(),i(l,{class:"page"},{default:c(()=>[_(l,{class:"stats-header",style:m({paddingTop:q.value+"px"})},{default:c(()=>[_(l,{class:"stats-header-row"},{default:c(()=>[_(t,{embedded:""}),_(l,{class:"stats-title-line"},{default:c(()=>[_(l,{class:"title-left"},{default:c(()=>[_(l,{class:"bar","aria-hidden":"true"}),_(e,{class:"title"},{default:c(()=>[p("实时人数排行")]),_:1})]),_:1}),_(e,{class:"title-hint"},{default:c(()=>[p("纳入市科协人数统计系统场馆")]),_:1})]),_:1})]),_:1})]),_:1},8,["style"]),B.value&&!S.value.length?(f(),i(l,{key:0,class:"state"},{default:c(()=>[p("加载中…")]),_:1})):S.value.length?(f(),i(l,{key:2,class:"list"},{default:c(()=>[(f(!0),y(g,null,k(S.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(()=>[_(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),_(n,{class:"thumb",src:a.cover_image||w(L),mode:"aspectFill"},null,8,["src"]),_(l,{class:"mid"},{default:c(()=>[_(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),_(l,{class:"count-block"},{default:c(()=>[_(e,{class:"count-label"},{default:c(()=>[p("实时人数")]),_:1}),_(l,{class:"count-row"},{default:c(()=>[_(e,{class:h(["count",{"count--na":null===a.liveCount}])},{default:c(()=>[p(C(null===a.liveCount?"—":a.liveCount.toLocaleString()),1)]),_:2},1032,["class"]),_(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})),_(l,{class:"bottom-safe"})]),_:1})}}}),[["__scopeId","data-v-6a7f291a"]]);export{S as default};
|