1 |
- import{d as I,u as L,k as C,h as j,l,m as k,a as t,I as u,q as x,v as T,w as A,j as c,E as O,x as S}from"./vendor.75613d65.js";/* empty css *//* empty css *//* empty css *//* empty css */import{I as E,c as M,d as R}from"./icon_level3.5b194074.js";import{I as w}from"./icon_teacher.cb128c00.js";import{r as p}from"./index.937d41ec.js";const q="_headImg_15rgb_1",B="_tabs_15rgb_4",N="_tabContent_15rgb_27",D="_itemContent_15rgb_33",V="_item_15rgb_33",U="_left_15rgb_46",$="_center_15rgb_52",H="_right_15rgb_56",F="_fraction_15rgb_60",P="_time_15rgb_66",z="_user_15rgb_77",G="_userContent_15rgb_80",J="_name_15rgb_85",K="_tag_15rgb_94",Q="_times_15rgb_102";var e={headImg:q,tabs:B,tabContent:N,itemContent:D,item:V,left:U,center:$,right:H,fraction:F,time:P,user:z,userContent:G,name:J,tag:K,times:Q},W="./assets/icon-emtry.76ea3a6a.png";function X(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!S(o)}var rt=I({name:"leaderboard",setup(){const o=L();C();const a=j({tabIndex:0,musicList:[],rankingMethod:""}),y=async()=>{try{const{data:{rankingMethod:i,subjectInfos:s,activityMusicVoList:n,shareUrl:r,subjectUrl:d}}=await p.post(`/api-student/open/activity/info/${o.query.id}`);a.rankingMethod=i;const f=i==="TOTAL_SCORE"?s:n;Array.isArray(f)&&(a.musicList=f.map(h=>(h.rankingList=[],h))),g.value=d}catch{}},m=async()=>{try{const{data:i}=await p.get("/api-student/open/activityEvaluationRecord/queryRankingList",{params:{activityPlanId:o.query.id,activityEvaluationId:a.rankingMethod==="TOTAL_SCORE"?a.musicList[a.tabIndex].subjectId:a.musicList[a.tabIndex].evaluationId,limit:10}});Array.isArray(i.rankingList)&&(a.musicList[a.tabIndex].rankingList=i.rankingList)}catch{}},g=l(),v=l(!1),_=l(100);k(async()=>{await y(),await m()});const b=l();return()=>{let i;return t("div",{class:e.leaderboard},[t("div",{class:e.container},[t("div",{class:e.headImg,ref:b},[t(u,{width:"100%",fit:"cover",src:g.value,onLoad:s=>{x(()=>{var n;v.value=!0,_.value=((n=b.value)==null?void 0:n.offsetHeight)||100})},onError:s=>{console.log(s)}},null)]),v.value&&t(T,{active:a.tabIndex,"onUpdate:active":s=>a.tabIndex=s,class:e.tabs,animated:!0,swipeable:!0,titleInactiveColor:"rgba(153,152,155,1)",titleActiveColor:"#fff",onChange:s=>m()},X(i=a.musicList.map(s=>t(A,{title:a.rankingMethod==="TOTAL_SCORE"?s.subjectName:s.musicSheetName},{default:()=>[t("div",{class:[e.tabContent,"van-safe-area-bottom"],style:{height:`calc(100vh - ${_.value}px)`}},[t("div",{class:e.itemContent},[t("div",{class:e.item},[t("div",{class:e.left},[c("\u6392\u540D")]),t("div",{class:e.center},[c("\u6635\u79F0")]),t("div",{class:e.right},[c("\u8BC4\u5206")])]),s.rankingList.map((n,r)=>{const d=(r+1).toString().padStart(2,"0");return t("div",{class:e.item},[t("div",{class:e.left},[r==0&&t(u,{src:E},null),r==1&&t(u,{src:M},null),r==2&&t(u,{src:R},null),r!=0&&r!=1&&r!=2&&d]),t("div",{class:e.center},[t(u,{width:"38px",height:"38px",fit:"cover",round:!0,src:n.userAvatar||w},null),t("div",{class:e.user},[t("div",{class:e.userContent},[t("span",{class:e.name},[n.username]),t("span",{class:e.tag},[n.userSubject])]),t("div",{class:e.times},[n.joinDate])])]),t("div",{class:e.right},[t("div",{class:e.fraction},[n.score,c("\u5206")]),a.rankingMethod!=="TOTAL_SCORE"&&t("div",{class:e.time},[c("\u7B2C "),n.times,c(" \u6B21\u8BC4\u6D4B")])])])}),!s.rankingList.length&&t(O,{image:W,description:`\u8BE5${a.rankingMethod==="TOTAL_SCORE"?"\u58F0\u90E8":"\u66F2\u76EE"}\u6682\u65E0\u6392\u540D\u5594\uFF5E`},null)])])]})))?i:{default:()=>[i]})])])}}});export{rt as default};
|