index.626b69b2.js 3.5 KB

1
  1. import{d as y,$ as x,am as L,h as j,V as d,an as C,ao as w,a as t,I as m,ap as k,G as A,H as S,j as u,E,x as T}from"./vendor.d01bfccb.js";/* empty css *//* empty css *//* empty css *//* empty css */import{I as R}from"./icon_teacher.cb128c00.js";import{r as h,s as U}from"./index.c43ced84.js";const V="_headImg_9porv_1",q="_tabs_9porv_4",N="_tabContent_9porv_27",$="_itemContent_9porv_33",D="_item_9porv_33",H="_left_9porv_45",M="_center_9porv_50",O="_right_9porv_53",B="_fraction_9porv_57",F="_time_9porv_62",G="_user_9porv_73",P="_name_9porv_76",z="_tag_9porv_81";var a={headImg:V,tabs:q,tabContent:N,itemContent:$,item:D,left:H,center:M,right:O,fraction:B,time:F,user:G,name:P,tag:z},J="./assets/icon-trophy.61957a4c.png",K="./assets/icon-emtry.76ea3a6a.png";function Q(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!T(o)}var st=y({name:"leaderboard",setup(){const o=x();L();const i=j({tabIndex:0,musicList:[]}),I=async()=>{try{const{data:{activityMusicVoList:s,shareUrl:e,subjectUrl:r}}=await h.post(`/api-student/open/activity/info/${o.query.id}`);Array.isArray(s)&&(i.musicList=s.map(n=>(n.rankingList=[],n.loaded=!1,n))),p.value=r}catch{}},v=async()=>{if(!i.musicList[i.tabIndex].loaded)try{const{data:s}=await h.get("/api-student/open/activityEvaluationRecord/queryRankingList",{params:{activityPlanId:o.query.id,activityEvaluationId:i.musicList[i.tabIndex].evaluationId,limit:10}});Array.isArray(s.rankingList)&&(i.musicList[i.tabIndex].rankingList=s.rankingList,i.musicList[i.tabIndex].loaded=!0)}catch{}},p=d(),g=d(!1),_=d(100);C(async()=>{await I(),await v()}),w(()=>{var c,b;if(!i.musicList[i.tabIndex])return{};const s=U.user.data;if(!s.userId)return{};const e=i.musicList[i.tabIndex],r=(c=e==null?void 0:e.rankingList)==null?void 0:c.find(l=>l.userId==s.userId);let n=(b=e==null?void 0:e.rankingList)==null?void 0:b.findIndex(l=>l.userId==s.userId);return n=n>-1?n+1:0,{join:e.join,score:e.score,isTop:!!r,heardUrl:s.heardUrl,username:s.username,userId:s.userId,step:n}});const f=d();return()=>{let s;return t("div",{class:a.leaderboard},[t("div",{class:a.container},[t("div",{class:a.headImg,ref:f},[t(m,{width:"100%",fit:"cover",src:p.value,onLoad:e=>{k(()=>{var r;g.value=!0,_.value=((r=f.value)==null?void 0:r.offsetHeight)||100})},onError:e=>{console.log(e)}},null)]),g.value&&t(A,{active:i.tabIndex,"onUpdate:active":e=>i.tabIndex=e,class:a.tabs,animated:!0,swipeable:!0,titleInactiveColor:"#fff",titleActiveColor:"rgba(224,146,144,1)",onChange:e=>v()},Q(s=i.musicList.map(e=>t(S,{title:e.musicSheetName},{default:()=>[t("div",{class:a.tabContent,style:{height:`calc(100vh - ${_.value}px)`}},[t("div",{class:a.itemContent},[t("div",{class:a.item},[t("div",{class:a.left},[u("\u6392\u540D")]),t("div",{class:a.center},[u("\u6635\u79F0")]),t("div",{class:a.right},[u("\u8BC4\u5206")])]),e.rankingList.map((r,n)=>{const c=(n+1).toString().padStart(2,"0");return t("div",{class:a.item},[t("div",{class:a.left},[n==0?t(m,{src:J},null):c]),t("div",{class:a.center},[t(m,{width:"34px",height:"34px",fit:"cover",round:!0,src:r.userAvatar||R},null),t("div",{class:a.user},[t("div",{class:a.name},[r.username]),t("div",{class:a.tag},[t("span",null,[r.userSubject])])])]),t("div",{class:a.right},[t("div",{class:a.fraction},[r.score,u("\u5206")]),t("div",{class:a.time},[r.joinDate])])])}),!e.rankingList.length&&t(E,{image:K,description:"\u8BE5\u66F2\u76EE\u6682\u65E0\u6392\u540D\u5594\uFF5E"},null)])])]})))?s:{default:()=>[s]})])])}}});export{st as default};