index.117d9e1c.js 5.2 KB

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