index.a437e76d.js 5.0 KB

1
  1. import{d as L,$ as U,am as A,h as B,V as d,an as S,ao as D,a as t,I as l,ap as E,G as F,H as w,j as u,E as k,x as R,C as g,v as T}from"./vendor.e11273e1.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{I as m}from"./icon_teacher.cb128c00.js";import{r as x,s as V}from"./index.94c5c4d3.js";const M="_headImg_uy839_1",q="_tabs_uy839_4",N="_tabContent_uy839_27",$="_hasUser_uy839_33",H="_itemContent_uy839_36",O="_item_uy839_36",G="_left_uy839_49",P="_center_uy839_55",z="_right_uy839_59",J="_fraction_uy839_63",K="_time_uy839_69",Q="_user_uy839_80",W="_userContent_uy839_83",X="_name_uy839_88",Y="_tag_uy839_93",Z="_times_uy839_101",tt="_activeUser_uy839_105",et="_avator_uy839_125",st="_btn_uy839_130",at="_num_uy839_136";var e={headImg:M,tabs:q,tabContent:N,hasUser:$,itemContent:H,item:O,left:G,center:P,right:z,fraction:J,time:K,user:Q,userContent:W,name:X,tag:Y,times:Z,activeUser:tt,avator:et,btn:st,num:at},it="./assets/icon-trophy.61957a4c.png",nt="./assets/icon-emtry.76ea3a6a.png";function rt(c){return typeof c=="function"||Object.prototype.toString.call(c)==="[object Object]"&&!R(c)}var ft=L({name:"leaderboard",setup(){const c=U();A();const i=B({tabIndex:0,musicList:[],isSignup:!1,isChallenge:!1}),j=async()=>{try{const{data:a}=await x.post(`/api-student/open/activity/info/${c.query.id}`);Array.isArray(a.activityMusicVoList)&&(i.musicList=a.activityMusicVoList.map(s=>(s.rankingList=[],s)),i.isChallenge=!!a.activityMusicVoList.filter(s=>s.join).length),y.value=a.subjectUrl,i.isSignup=!!a.join}catch{}},p=async()=>{try{const{data:a}=await x.get("/api-student/open/activityEvaluationRecord/queryRankingList",{params:{activityPlanId:c.query.id,activityEvaluationId:i.musicList[i.tabIndex].evaluationId,limit:10}});Array.isArray(a.rankingList)&&(i.musicList[i.tabIndex].rankingList=a.rankingList)}catch{}},y=d(),h=d(!1),b=d(100);S(async()=>{await j(),await p()});const n=D(()=>{var v,I;if(!i.musicList[i.tabIndex])return{};const a=V.user.data;if(!a.userId)return{};const s=i.musicList[i.tabIndex],r=(v=s==null?void 0:s.rankingList)==null?void 0:v.find(f=>f.userId==a.userId);let o=(I=s==null?void 0:s.rankingList)==null?void 0:I.findIndex(f=>f.userId==a.userId);return o=o>-1?o+1:0,{join:s.join,score:s.score,isTop:!!r,heardUrl:a.heardUrl,username:a.username,userId:a.userId,step:o}}),C=d(),_=d();return()=>{let a;return t("div",{class:e.leaderboard},[t("div",{class:e.container},[t("div",{class:e.headImg,ref:C},[t(l,{width:"100%",fit:"cover",src:y.value,onLoad:s=>{E(()=>{const{height:r}=T(C);h.value=!0,b.value=r||100})},onError:s=>{console.log(s)}},null)]),h.value&&t(F,{active:i.tabIndex,"onUpdate:active":s=>i.tabIndex=s,class:e.tabs,animated:!0,swipeable:!0,titleInactiveColor:"rgba(153,152,155,1)",titleActiveColor:"#fff",onChange:s=>p()},rt(a=i.musicList.map(s=>t(w,{title:s.musicSheetName},{default:()=>[t("div",{class:[e.tabContent,!i.isSignup||!i.isChallenge||n.value.join?e.hasUser:null],style:{height:`calc(100vh - ${b.value}px)`}},[t("div",{class:e.itemContent},[t("div",{class:e.item},[t("div",{class:e.left},[u("\u6392\u540D")]),t("div",{class:e.center},[u("\u6635\u79F0")]),t("div",{class:e.right},[u("\u8BC4\u5206")])]),s.rankingList.map((r,o)=>{const v=(o+1).toString().padStart(2,"0");return t("div",{class:e.item},[t("div",{class:e.left},[o==0?t(l,{src:it},null):v]),t("div",{class:e.center},[t(l,{width:"38px",height:"38px",fit:"cover",round:!0,src:r.userAvatar||m},null),t("div",{class:e.user},[t("div",{class:e.userContent},[t("span",{class:e.name},[r.username]),t("span",{class:e.tag},[r.userSubject])]),t("div",{class:e.times},[r.joinDate])])]),t("div",{class:e.right},[t("div",{class:e.fraction},[r.score,u("\u5206")]),t("div",{class:e.time},[u("\u7B2C "),r.times,u(" \u6B21\u8BC4\u6D4B")])])])}),!s.rankingList.length&&t(k,{image:nt,description:"\u8BE5\u66F2\u76EE\u6682\u65E0\u6392\u540D\u5594\uFF5E"},null)]),t("div",{class:"van-safe-area-bottom"},null)])]})))?a:{default:()=>[a]}),i.isSignup?i.isChallenge?n.value.join?t("div",{ref:_,class:[e.activeUser,"van-safe-area-bottom"]},[t(g,{center:!0,title:n.value.username},{icon:()=>t(l,{class:e.avator,fit:"cover",round:!0,src:n.value.heardUrl||m},null),label:()=>n.value.isTop?t("div",null,[u("\u60A8\u7684\u8BC4\u6D4B\u5DF2\u4E0A\u699C! \u5F53\u524D\u6392\u540D"),t("span",{style:{color:"#FA6400"}},[" ",n.value.step])]):t("div",null,[u("\u60A8\u7684\u8BC4\u6D4B\u6682\u672A\u4E0A\u699C\uFF0C\u5FEB\u53BB\u6311\u6218\u5427\uFF01")]),value:()=>t("span",{class:e.num},[n.value.score,u("\u5206")])})]):null:t("div",{ref:_,class:[e.activeUser,"van-safe-area-bottom"]},[t(g,{center:!0,title:n.value.username,label:"\u60A8\u5C1A\u672A\u8BC4\u6D4B\u54E6!"},{icon:()=>t(l,{class:e.avator,fit:"cover",round:!0,src:n.value.heardUrl||m},null)})]):t("div",{ref:_,class:[e.activeUser,"van-safe-area-bottom"]},[t(g,{center:!0,title:n.value.username,label:"\u60A8\u5C1A\u672A\u62A5\u540D\u53C2\u8D5B"},{icon:()=>t(l,{class:e.avator,fit:"cover",round:!0,src:n.value.heardUrl||m},null)})])])])}}});export{ft as default};