index.f8bf77d0.js 5.5 KB

1
  1. import{d as z,u as A,k,h as x,l as d,m as U,p as S,a as e,I as u,q as T,t as E,v as R,w as B,j as o,E as O,x as M,C as f}from"./vendor.75613d65.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{I as w,a as D,b as F}from"./icon_level3.36b523d3.js";import{I as m}from"./icon_teacher.cb128c00.js";import{s as V,r as y}from"./index.937d41ec.js";const q="_headImg_1lc9z_1",N="_tabs_1lc9z_4",$="_tabContent_1lc9z_27",H="_hasUser_1lc9z_35",P="_itemContent_1lc9z_38",G="_item_1lc9z_38",J="_left_1lc9z_51",K="_center_1lc9z_57",Q="_right_1lc9z_61",W="_fraction_1lc9z_65",X="_time_1lc9z_71",Y="_user_1lc9z_82",Z="_userContent_1lc9z_85",ee="_name_1lc9z_90",te="_tag_1lc9z_99",se="_times_1lc9z_107",ae="_activeUser_1lc9z_111",ne="_avator_1lc9z_131",re="_btn_1lc9z_136",ie="_num_1lc9z_142";var t={headImg:q,tabs:N,tabContent:$,hasUser:H,itemContent:P,item:G,left:J,center:K,right:Q,fraction:W,time:X,user:Y,userContent:Z,name:ee,tag:te,times:se,activeUser:ae,avator:ne,btn:re,num:ie},ce="./assets/icon-emtry.76ea3a6a.png";function oe(l){return typeof l=="function"||Object.prototype.toString.call(l)==="[object Object]"&&!M(l)}var pe=z({name:"leaderboard",setup(){const l=A();k();const s=x({tabIndex:0,musicList:[],isSignup:!1,isChallenge:!1,rankingMethod:"",score:0}),j=async()=>{try{const{data:a}=await y.post(`/api-student/open/activity/info/${l.query.id}`);s.rankingMethod=a.rankingMethod;const n=a.rankingMethod==="TOTAL_SCORE"?a.subjectInfos:a.activityMusicVoList;Array.isArray(n)&&(s.musicList=n.map(r=>(r.rankingList=[],r)),s.isChallenge=!!n.filter(r=>r.join).length),p.value=a.subjectUrl,s.isSignup=!!a.join}catch{}},h=async()=>{try{const{data:a}=await y.get("/api-student/open/activityEvaluationRecord/queryRankingList",{params:{activityPlanId:l.query.id,activityEvaluationId:s.rankingMethod==="TOTAL_SCORE"?s.musicList[s.tabIndex].subjectId:s.musicList[s.tabIndex].evaluationId,limit:10}});Array.isArray(a.rankingList)&&(s.musicList[s.tabIndex].rankingList=a.rankingList),a.userActivityRankingVo&&(s.score=a.userActivityRankingVo.score)}catch{}},p=d(),b=d(!1),I=d(100);U(async()=>{await j(),await h()});const i=S(()=>{var v,L;if(!s.musicList[s.tabIndex])return{};const a=V.user.data;if(!a.userId)return{};const n=s.musicList[s.tabIndex],r=(v=n==null?void 0:n.rankingList)==null?void 0:v.find(g=>g.userId==a.userId);let c=(L=n==null?void 0:n.rankingList)==null?void 0:L.findIndex(g=>g.userId==a.userId);return c=c>-1?c+1:0,{join:n.join,score:(r==null?void 0:r.score)||0,isTop:!!r,heardUrl:a.heardUrl,username:a.username,userId:a.userId,step:c}}),C=d(),_=d();return()=>{let a;return e("div",{class:t.leaderboard},[e("div",{class:t.container},[e("div",{class:t.headImg,ref:C},[e(u,{width:"100%",fit:"cover",src:p.value,onLoad:n=>{T(()=>{const{height:r}=E(C);b.value=!0,I.value=r||100})},onError:n=>{console.log(n)}},null)]),b.value&&e(R,{active:s.tabIndex,"onUpdate:active":n=>s.tabIndex=n,class:t.tabs,animated:!0,swipeable:!0,titleInactiveColor:"rgba(153,152,155,1)",titleActiveColor:"#fff",onChange:n=>h()},oe(a=s.musicList.map(n=>e(B,{title:s.rankingMethod==="TOTAL_SCORE"?n.subjectName:n.musicSheetName},{default:()=>[e("div",{class:[t.tabContent,i.value.userId&&(!s.isSignup||!s.isChallenge||i.value.join)?t.hasUser:null],style:{height:`calc(100vh - ${I.value}px)`}},[e("div",{class:t.itemContent},[e("div",{class:t.item},[e("div",{class:t.left},[o("\u6392\u540D")]),e("div",{class:t.center},[o("\u6635\u79F0")]),e("div",{class:t.right},[o("\u8BC4\u5206")])]),n.rankingList.map((r,c)=>{const v=(c+1).toString().padStart(2,"0");return e("div",{class:t.item},[e("div",{class:t.left},[c==0&&e(u,{src:w},null),c==1&&e(u,{src:D},null),c==2&&e(u,{src:F},null),c!=0&&c!=1&&c!=2&&v]),e("div",{class:t.center},[e(u,{width:"38px",height:"38px",fit:"cover",round:!0,src:r.userAvatar||m},null),e("div",{class:t.user},[e("div",{class:t.userContent},[e("span",{class:t.name},[r.username]),e("span",{class:t.tag},[r.userSubject])]),e("div",{class:t.times},[r.joinDate])])]),e("div",{class:t.right},[e("div",{class:t.fraction},[r.score,o("\u5206")]),s.rankingMethod!=="TOTAL_SCORE"&&e("div",{class:t.time},[o("\u7B2C "),r.times,o(" \u6B21\u8BC4\u6D4B")])])])}),!n.rankingList.length&&e(O,{image:ce,description:`\u8BE5${s.rankingMethod==="TOTAL_SCORE"?"\u58F0\u90E8":"\u66F2\u76EE"}\u6682\u65E0\u6392\u540D\u5594\uFF5E`},null)]),e("div",{class:"van-safe-area-bottom"},null)])]})))?a:{default:()=>[a]}),i.value.userId&&(s.isSignup?s.isChallenge?i.value.join?e("div",{ref:_,class:[t.activeUser,"van-safe-area-bottom"]},[e(f,{center:!0,title:i.value.username},{icon:()=>e(u,{class:t.avator,fit:"cover",round:!0,src:i.value.heardUrl||m},null),label:()=>i.value.isTop?e("div",null,[o("\u60A8\u7684\u8BC4\u6D4B\u5DF2\u4E0A\u699C! \u5F53\u524D\u6392\u540D"),e("span",{style:{color:"#FA6400"}},[" ",i.value.step])]):e("div",null,[o("\u60A8\u7684\u8BC4\u6D4B\u6682\u672A\u4E0A\u699C\uFF0C\u5FEB\u53BB\u6311\u6218\u5427\uFF01")]),value:()=>{if(!(!i.value.score&&!s.score))return e("span",{class:t.num},[i.value.score||s.score,o("\u5206")])}})]):null:e("div",{ref:_,class:[t.activeUser,"van-safe-area-bottom"]},[e(f,{center:!0,title:i.value.username,label:"\u60A8\u5C1A\u672A\u8BC4\u6D4B\u54E6!"},{icon:()=>e(u,{class:t.avator,fit:"cover",round:!0,src:i.value.heardUrl||m},null)})]):e("div",{ref:_,class:[t.activeUser,"van-safe-area-bottom"]},[e(f,{center:!0,title:i.value.username,label:"\u60A8\u5C1A\u672A\u62A5\u540D\u53C2\u8D5B"},{icon:()=>e(u,{class:t.avator,fit:"cover",round:!0,src:i.value.heardUrl||m},null)})]))])])}}});export{pe as default};