index-f8ceada9.js 14 KB

123456
  1. import{cn as q,d as x,r as D,u as P,a as F,e as R,M as w,q as Y,f as t,k as s,cf as E,F as g,j as k,U as M,m as _,n as B}from"./index-ec07520e.js";import{g as z,s as j}from"./use-async-f94f8903.js";import{N as b,C as O}from"./index-c99b42bd.js";import{s as a}from"./index.module-ce61c18f.js";import{u as U}from"./useECharts-3ca8e965.js";import{P as W}from"./index-2f28b088.js";import{b as C,c as f,d as N,g as V,a as $}from"./dateFormat-4085ea86.js";import{i as G,q as K,k as H}from"./api-1723cb91.js";import"./index-af7a1db3.js";const J="_listWrap_mgjem_1",Q="_customTabs_mgjem_7",X="_searchBtn_mgjem_28",Z="_resetBtn_mgjem_37",L={listWrap:J,customTabs:Q,searchBtn:X,resetBtn:Z},tt=p=>q.post("/edu-app/lessonTraining/trainingStat",{data:p}),at=p=>q.post("/edu-app/musicPracticeRecordStat/trainingStat",{data:p}),et=x({name:"home-trainData",props:{timer:{type:Array,defaut:()=>[]}},setup(p,{expose:A}){const T=D(null),{setOptions:r}=U(T),c=D(!0),l=D(!0),o=P(),y=F(),n=R({height:"360px",width:"100%",studentNum:0,paymentAmount:0,dateList:["2022-10-10","2022-10-11","2022-10-12","2022-10-13","2022-10-14","2022-10-15","2022-10-16"],studentList:[],payInfoList:[]}),m=D({qualifiedRate:0,qualifiedStudentCount:0,submitStudentCount:0,totalStudentCount:0,trainingCount:0,trainingRate:0}),e=R({loading:!1,pagination:{page:1,rows:10,pageTotal:4},tableList:[{teacherName:"孙忆枫",createTime:"2023-06-27",endTime:"2023-06-30",status:"ing",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60},{teacherName:"孙忆枫",createTime:"2023-06-27",endTime:"2023-06-30",status:"ing",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60},{teacherName:"孙忆枫",createTime:"2023-06-27",endTime:"2023-06-30",status:"ing",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60},{teacherName:"孙忆枫",createTime:"2023-06-25",endTime:"2023-06-26",status:"end",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60}],goCourseVisiable:!1}),u=w(()=>p.timer),d=()=>[{title:"布置老师",key:"teacherName"},{title:"布置时间",key:"createTime",render(i){return t(g,null,[i.createTime])}},{title:"截止时间",key:"expireDate",render(i){return t(g,null,[i.expireDate])}},{title:"训练状态",key:"status",render(i){return i.status==0?t("div",{class:a.indDot},[" ",t("span",null,null),s(" 进行中")]):t("div",{class:a.endDot},[t("span",null,null),s("已结束")])}},{title:"布置人数",key:"expectNum"},{title:"提交人数",key:"trainingNum"},{title:"合格人数",key:"standardNum"},{title:"提交率",key:"trainingRate",render(i){return t(g,null,[i.trainingRate,s("%")])}},{title:"合格率",key:"qualifiedRate",render(i){return t(g,null,[i.qualifiedRate,s("%")])}},{title:"操作",key:"id",render(i){return t(M,null,{default:()=>[t(k,{text:!0,type:"primary",onClick:()=>v(i)},{default:()=>[s("详情")]})]})}}],v=i=>{console.log(i),o.push({path:"/afterWorkDetail",query:{...y.query,teacherName:i.teacherName,trainingId:i.id,id:i.classGroupId,name:i.classGroupName}})},S=async()=>{try{const i=await tt({...C(u.value,["startTime","endTime"],"YYYY-MM-DD")});m.value={...i.data},n.dateList=i.data.trainingStatDetails.map(h=>h.date),n.payInfoList=i.data.trainingStatDetails.map(h=>h.qualifiedStudentCount),n.studentList=i.data.trainingStatDetails.map(h=>h.unqualifiedStudentCount),I()}catch(i){console.log(i)}try{const i=await G({...e.pagination,...C(u.value,["startTime","endTime"],"YYYY-MM-DD")});e.tableList=i.data.rows,e.pagination.pageTotal=i.data.total,e.loading=!1}catch(i){e.loading=!1,console.log(i)}};A({getList:S});const I=()=>{r({tooltip:{trigger:"axis",axisPointer:{lineStyle:{width:2,color:"#A9C7FF"}}},legend:{show:!1,selected:{合格人数:c.value,不合格人数:l.value}},xAxis:{type:"category",boundaryGap:!0,axisLabel:{show:!0,interval:0},data:n.dateList},yAxis:[{type:"value",axisLabel:{formatter:"{value}人"},axisTick:{show:!1},splitArea:{show:!1,areaStyle:{color:["rgba(255,255,255,0.2)"]}}}],grid:{left:"1%",right:"1%",top:"2 %",bottom:0,containLabel:!0},series:[{data:n.studentList,symbolSize:10,type:"line",name:"不合格人数",symbol:"circle",smooth:!0,itemStyle:{color:"#FF7AA7",borderColor:"#fff",borderWidth:3},lineStyle:{width:3},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(255, 243, 246, 1)"},{offset:1,color:"rgba(255, 246, 248, 0)"}]}},emphasis:{disabled:!0}},{data:n.payInfoList,type:"line",name:"合格人数",symbolSize:10,symbol:"circle",smooth:!0,itemStyle:{color:"#198CFE",borderColor:"#fff",borderWidth:3},lineStyle:{width:2},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(212, 231, 255, 1)"},{offset:1,color:"rgba(221, 235, 254, 0)"}]}},emphasis:{disabled:!0}}],formatter:i=>Array.isArray(i)?[i[0].axisValueLabel,...i.map(h=>`<br/>${h.marker}<span style="margin-top:10px;margin-left:5px;font-size: 13px;font-weight: 500;
  2. color: #333333;
  3. line-height: 18px;">${h.seriesName}: ${h.value}人 </span>`)].join(""):i})};return Y(()=>{S()}),()=>t(g,null,[t("div",{class:a.homeTrainData},[t("div",{class:a.TrainDataTop},[t("div",{class:a.TrainDataTopLeft},[t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[t(b,{from:0,to:m.value.trainingCount},null)]),s("次")]),t("p",{class:a.TrainDataItemsubTitle},[s("训练次数")])]),t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[t(b,{from:0,to:m.value.totalStudentCount},null)]),s("人次")]),t("p",{class:a.TrainDataItemsubTitle},[s("应交总人次")])]),t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[t(b,{from:0,to:m.value.submitStudentCount},null)]),s("人次")]),t("p",{class:a.TrainDataItemsubTitle},[s("提交总人次")])]),t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[" ",t(b,{from:0,to:m.value.qualifiedStudentCount},null)]),s("人次")]),t("p",{class:a.TrainDataItemsubTitle},[s("合格总人次")])]),t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[t(b,{from:0,to:m.value.trainingRate},null),s("%")])]),t("p",{class:a.TrainDataItemsubTitle},[s("训练提交率")])]),t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[t(b,{from:0,to:m.value.qualifiedRate},null),s("%")])]),t("p",{class:a.TrainDataItemsubTitle},[s("训练合格率")])])]),t("div",{class:a.TrainDataTopRight},[t("div",{onClick:()=>{c.value=!c.value,I()},class:[a.DataTopRightItem,c.value?"":a.DataTopRightItemDis]},[t("div",{class:a.DataTopRightDot},null),t("p",null,[s("合格人数")])]),t("div",{onClick:()=>{l.value=!l.value,I()},class:[a.DataTopRightItem,l.value?"":a.DataTopRightItemDis]},[t("div",{class:[a.DataTopRightDot,a.red]},null),t("p",null,[s("不合格人数")])])])]),t("div",{class:a.chatrs},[t("div",{ref:T,style:{height:n.height,width:n.width}},null)]),t("div",{class:a.tableWrap},[t(E,{class:a.classTable,loading:e.loading,columns:d(),data:e.tableList},null),t(W,{page:e.pagination.page,"onUpdate:page":i=>e.pagination.page=i,pageSize:e.pagination.rows,"onUpdate:pageSize":i=>e.pagination.rows=i,pageTotal:e.pagination.pageTotal,"onUpdate:pageTotal":i=>e.pagination.pageTotal=i,onList:S,sync:!0,saveKey:"orchestraRegistration-key"},null)])])])}}),it=x({name:"home-practiceData",props:{timer:{type:Array,defaut:()=>[]}},setup(p,{expose:A}){const T=D(null),{setOptions:r}=U(T),c=D(!0),l=R({height:"360px",width:"100%",practiceUserCount:0,paymentAmount:0,practiceDurationAvg:0,practiceDays:0,practiceDurationTotal:0,dateList:[],timeList:[]}),o=R({loading:!1,pagination:{page:1,rows:10,pageTotal:4},tableList:[{teacherName:"孙忆枫",createTime:"2023-06-27",endTime:"2023-06-30",status:"ing",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60},{teacherName:"孙忆枫",createTime:"2023-06-27",endTime:"2023-06-30",status:"ing",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60},{teacherName:"孙忆枫",createTime:"2023-06-27",endTime:"2023-06-30",status:"ing",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60},{teacherName:"孙忆枫",createTime:"2023-06-25",endTime:"2023-06-26",status:"end",studentNum:100,submitNum:100,quantityNum:60,submitRate:100,quantityRate:60}],goCourseVisiable:!1}),y=w(()=>p.timer),n=()=>[{title:"日期",key:"date"},{title:"平均练习时长(分钟)",key:"practiceDuration",render(u){return t(g,null,[" ",t(g,null,[u.practiceDuration?f(u.practiceDuration)>0?f(u.practiceDuration)+"分"+N(u.practiceDuration)+"秒":N(u.practiceDuration)+"秒":"0分钟"])])}}],m=async()=>{try{const u=await K({page:1,rows:999,...C(y.value,["startTime","endTime"],"YYYY-MM-DD")}),d=await at({page:1,rows:999,...C(y.value,["startTime","endTime"],"YYYY-MM-DD")});o.tableList=u.data.rows,l.practiceDurationAvg=d.data.practiceDurationAvg,l.practiceUserCount=d.data.practiceUserCount,l.dateList=d.data.trainingStatDetailList.map(v=>v.date),l.timeList=d.data.trainingStatDetailList.map(v=>v.practiceDuration),console.log("trainingStatDetailList",l.timeList),e()}catch(u){console.log(u)}};A({getList:m});const e=()=>{r({tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},legend:{show:!1,selected:{"平均练习时长(分钟)":c.value}},xAxis:{type:"category",boundaryGap:!0,axisLabel:{show:!0,interval:0},data:l.dateList},yAxis:[{type:"value",axisLabel:{formatter:"{value} min"},axisTick:{show:!1},splitArea:{show:!1,areaStyle:{color:["rgba(255,255,255,0.2)"]}}}],grid:{left:"1%",right:"1%",top:"2%",bottom:0,containLabel:!0},series:[{data:l.timeList,type:"bar",barWidth:"48px",itemStyle:{normal:{barBorderRadius:[8,8,0,0],color:"#D5E9FF"},emphasis:{color:"#3583FA"}}}],formatter:u=>Array.isArray(u)?[u[0].axisValueLabel,...u.map(d=>{let v;return f(d.value)>0?v=f(d.value)+"分"+N(d.value)+"秒":v=N(d.value)+"秒",`<br/>${d.marker}<span style="margin-top:10px;margin-left:5px;font-size: 13px;font-weight: 500;
  4. color: #131415;font-weight: 600;
  5. margin-top:12px
  6. line-height: 18px;">平均练习时长: ${v} </span>`})].join(""):u})};return Y(()=>{m()}),()=>t(g,null,[t("div",{class:a.homeTrainData},[t("div",{class:a.TrainDataTop},[t("div",{class:a.TrainDataTopLeft},[t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[t("span",null,[t(b,{from:0,to:l.practiceUserCount},null)]),s("人")]),t("p",{class:a.TrainDataItemsubTitle},[s("练习人数")])]),t("div",{class:a.TrainDataItem},[t("p",{class:a.TrainDataItemTitle},[f(l.practiceDurationAvg)>0?t("div",null,[t("span",null,[t(b,{from:0,to:f(l.practiceDurationAvg)},null)])," ",s("分")]):null,t("div",null,[t("span",null,[t(b,{from:0,to:N(l.practiceDurationAvg)},null)])," ",s("秒")])]),t("p",{class:a.TrainDataItemsubTitle},[s("平均练习时长")])])]),t("div",{class:a.TrainDataTopRight},[t("div",{class:[a.DataTopRightItem,c.value?"":a.DataTopRightItemDis]},[t("div",{class:[a.DataTopRightDot,a.DataTopRightDotBlue]},null),t("p",null,[s("练习时长(分钟)")])])])]),t("div",{class:a.chatrs},[t("div",{ref:T,style:{height:l.height,width:l.width}},null)]),t("div",{class:a.tableWrap},[t(E,{class:a.classTable,loading:o.loading,columns:n(),data:o.tableList},null)])])])}}),st=x({name:"student-studentList",props:{timer:{type:Array,defaut:()=>[]}},setup(p,{emit:A,expose:T}){const r=R({searchWord:"",orchestraType:null,courseTypeCode:null,subjectId:null,classId:null,studentType:null,loading:!1,pagination:{page:1,rows:10,pageTotal:4},tableList:[]}),c=async()=>{r.loading=!0;try{const e=await H({...r.pagination,...C(p.timer,["startTime","endTime"],"YYYY-MM-DD")});r.tableList=e.data.rows,r.pagination.pageTotal=e.data.total,r.loading=!1}catch(e){r.loading=!1,console.log(e)}};T({getList:c});const l=e=>{e||(o.sortOrder=!1,y.sortOrder=!1,n.sortOrder=!1),console.log(e,"sroter")},o=R({title:"练习天数",key:"practiceDays",sorter:!0,sortOrder:!1,render(e){return t(g,null,[e.practiceDays?e.practiceDays:0,s("天")])}}),y=R({title:"练习总时长",key:"practiceDuration",sorter:!0,sortOrder:!1,render(e){return t(g,null,[e.practiceDuration?f(e.practiceDuration)>0?f(e.practiceDuration)+"分"+N(e.practiceDuration)+"秒":N(e.practiceDuration)+"秒":0])}}),n=R({title:"平均练习时长",key:"practiceDurationAvg",sorter:!0,sortOrder:!1,render(e){return t(g,null,[e.practiceDurationAvg?f(e.practiceDurationAvg)>0?f(e.practiceDurationAvg)+"分"+N(e.practiceDurationAvg)+"秒":N(e.practiceDurationAvg)+"秒":0])}}),m=()=>[{title:"姓名",key:"studentName"},{title:"手机号",key:"studentPhone"},o,y,n];return()=>t("div",{class:a.listWrap},[t("div",{class:a.tableWrap},[t(E,{class:a.classTable,loading:r.loading,columns:m(),data:r.tableList,"onUpdate:sorter":l},null),t(W,{page:r.pagination.page,"onUpdate:page":e=>r.pagination.page=e,pageSize:r.pagination.rows,"onUpdate:pageSize":e=>r.pagination.rows=e,pageTotal:r.pagination.pageTotal,"onUpdate:pageTotal":e=>r.pagination.pageTotal=e,onList:c,sync:!0,saveKey:"orchestraRegistration-key"},null)])])}}),gt=x({name:"data-module",setup(){const p=D("attendclass"),A=F();z(n=>{n.form.tabName&&(p.value=n.form.tabName)});const T=D(),r=D(),c=D(),l=n=>{j(n,"tabName",A)},o=D([V(new Date().getTime()),$(new Date().getTime())]),y=()=>{console.log(o.value),T.value&&T.value.getList(),r.value&&r.value.getList(),c.value&&c.value.getList()};return()=>t("div",null,[t("div",{class:L.listWrap},[t(_,{"onUpdate:value":[n=>l(n),n=>p.value=n],class:L.customTabs,value:p.value,size:"large",animated:!0,"pane-wrapper-style":"margin: 0 -4px","pane-style":"padding-left: 4px; padding-right: 4px; box-sizing: border-box;"},{default:()=>[t(B,{name:"training ",tab:"训练统计"},{default:()=>[t(et,{ref:T,timer:o.value},null)]}),t(B,{name:"practice",tab:"练习数据"},{default:()=>[t(it,{ref:r,timer:o.value},null)]}),t(B,{name:"ranking",tab:"练习排行"},{default:()=>[t(st,{ref:c,timer:o.value},null)]})],suffix:()=>t(g,null,[t("div",{class:L.homeStudyInfoDate},[t(M,null,{default:()=>[t(O,{value:o.value,"onUpdate:value":n=>o.value=n,separator:"-",type:"daterange",timerValue:o.value},null),t(k,{type:"primary",class:L.searchBtn,onClick:()=>y()},{default:()=>[s("搜索")]}),t(k,{type:"primary",ghost:!0,class:L.resetBtn},{default:()=>[s("重置")]})]})])])})])])}});export{gt as default};