index-9355c33e.js 15 KB

123456
  1. import{V as O,d as x,r as f,u as _,a as M,e as N,M as E,q,f as t,k as s,cg as F,F as g,j as B,U,m as z,n as I,X as j,aZ as V}from"./index-bfbabd78.js";import{g as $,s as K}from"./use-async-28a2bb3f.js";import{N as b,C as G}from"./index-54e6b8dc.js";import{s as a}from"./index.module-e33062b6.js";import{u as W}from"./useECharts-3cfb9368.js";import{P}from"./index-5ad01ef5.js";import{b as C,c as y,d as R,g as w,a as Y}from"./dateFormat-d3b0d9ad.js";import{i as X,q as Z,k as H}from"./api-914c00c2.js";import"./searchs-1f038725.js";import"./index-10d11232.js";const J="_listWrap_mgjem_1",Q="_customTabs_mgjem_7",tt="_searchBtn_mgjem_28",at="_resetBtn_mgjem_37",L={listWrap:J,customTabs:Q,searchBtn:tt,resetBtn:at},et=d=>O.post("/edu-app/lessonTraining/trainingStat",{data:d}),it=d=>O.post("/edu-app/musicPracticeRecordStat/trainingStat",{data:d}),st=x({name:"home-trainData",props:{timer:{type:Array,defaut:()=>[]}},setup(d,{expose:A}){const T=f(null),{setOptions:r}=W(T),m=f(!0),l=f(!0),o=_(),v=M(),p=N({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:[]}),n=f({qualifiedRate:0,qualifiedStudentCount:0,submitStudentCount:0,totalStudentCount:0,trainingCount:0,trainingRate:0}),u=N({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}),c=E(()=>d.timer),e=()=>[{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(U,null,{default:()=>[t(B,{text:!0,type:"primary",onClick:()=>D(i)},{default:()=>[s("详情")]})]})}}],D=i=>{console.log(i),o.push({path:"/afterWorkDetail",query:{...v.query,teacherName:i.teacherName,trainingId:i.id,id:i.classGroupId,name:i.classGroupName}})},S=async()=>{try{const i=await et({...C(c.value,["startTime","endTime"],"YYYY-MM-DD")});n.value={...i.data},p.dateList=i.data.trainingStatDetails.map(h=>h.date),p.payInfoList=i.data.trainingStatDetails.map(h=>h.qualifiedStudentCount),p.studentList=i.data.trainingStatDetails.map(h=>h.unqualifiedStudentCount),k()}catch(i){console.log(i)}try{const i=await X({...u.pagination,...C(c.value,["startTime","endTime"],"YYYY-MM-DD")});u.tableList=i.data.rows,u.pagination.pageTotal=i.data.total,u.loading=!1}catch(i){u.loading=!1,console.log(i)}};A({getList:S});const k=()=>{r({tooltip:{trigger:"axis",axisPointer:{lineStyle:{width:2,color:"#A9C7FF"}}},legend:{show:!1,selected:{合格人数:m.value,不合格人数:l.value}},xAxis:{type:"category",boundaryGap:!0,axisLabel:{show:!0,interval:0},data:p.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:p.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:p.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 q(()=>{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:n.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:n.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:n.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:n.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:n.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:n.value.qualifiedRate},null),s("%")])]),t("p",{class:a.TrainDataItemsubTitle},[s("训练合格率")])])]),t("div",{class:a.TrainDataTopRight},[t("div",{onClick:()=>{m.value=!m.value,k()},class:[a.DataTopRightItem,m.value?"":a.DataTopRightItemDis]},[t("div",{class:a.DataTopRightDot},null),t("p",null,[s("合格人数")])]),t("div",{onClick:()=>{l.value=!l.value,k()},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:p.height,width:p.width}},null)]),t("div",{class:a.tableWrap},[t(F,{class:a.classTable,loading:u.loading,columns:e(),data:u.tableList},null),t(P,{page:u.pagination.page,"onUpdate:page":i=>u.pagination.page=i,pageSize:u.pagination.rows,"onUpdate:pageSize":i=>u.pagination.rows=i,pageTotal:u.pagination.pageTotal,"onUpdate:pageTotal":i=>u.pagination.pageTotal=i,onList:S,sync:!0,saveKey:"orchestraRegistration-key"},null)])])])}}),nt=x({name:"home-practiceData",props:{timer:{type:Array,defaut:()=>[]}},setup(d,{expose:A}){const T=f(null),{setOptions:r}=W(T),m=f(!0),l=N({height:"360px",width:"100%",practiceUserCount:0,paymentAmount:0,practiceDurationAvg:0,practiceDays:0,practiceDurationTotal:0,dateList:[],timeList:[]}),o=N({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}),v=E(()=>d.timer),p=()=>[{title:"日期",key:"date"},{title:"平均练习时长(分钟)",key:"practiceDuration",render(c){return t(g,null,[" ",t(g,null,[c.practiceDuration?y(c.practiceDuration)>0?y(c.practiceDuration)+"分"+R(c.practiceDuration)+"秒":R(c.practiceDuration)+"秒":"0分钟"])])}}],n=async()=>{try{const c=await Z({page:1,rows:999,...C(v.value,["startTime","endTime"],"YYYY-MM-DD")}),e=await it({page:1,rows:999,...C(v.value,["startTime","endTime"],"YYYY-MM-DD")});o.tableList=c.data.rows,l.practiceDurationAvg=e.data.practiceDurationAvg,l.practiceUserCount=e.data.practiceUserCount,l.dateList=e.data.trainingStatDetailList.map(D=>D.date),l.timeList=e.data.trainingStatDetailList.map(D=>D.practiceDuration),console.log("trainingStatDetailList",l.timeList),u()}catch(c){console.log(c)}};A({getList:n});const u=()=>{r({tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},legend:{show:!1,selected:{"平均练习时长(分钟)":m.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:c=>Array.isArray(c)?[c[0].axisValueLabel,...c.map(e=>{let D;return y(e.value)>0?D=y(e.value)+"分"+R(e.value)+"秒":D=R(e.value)+"秒",`<br/>${e.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;">平均练习时长: ${D} </span>`})].join(""):c})};return q(()=>{n()}),()=>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},[y(l.practiceDurationAvg)>0?t("div",null,[t("span",null,[t(b,{from:0,to:y(l.practiceDurationAvg)},null)])," ",s("分")]):null,t("div",null,[t("span",null,[t(b,{from:0,to:R(l.practiceDurationAvg)},null)])," ",s("秒")])]),t("p",{class:a.TrainDataItemsubTitle},[s("平均练习时长")])])]),t("div",{class:a.TrainDataTopRight},[t("div",{class:[a.DataTopRightItem,m.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(F,{class:a.classTable,loading:o.loading,columns:p(),data:o.tableList},null)])])])}}),rt=x({name:"student-studentList",props:{timer:{type:Array,defaut:()=>[]}},setup(d,{emit:A,expose:T}){const r=N({searchWord:"",orchestraType:null,courseTypeCode:null,subjectId:null,classId:null,studentType:null,loading:!1,pagination:{page:1,rows:10,pageTotal:4},tableList:[]}),m=N({ase:0,sortType:1}),l=E(()=>(console.log("ranking===>"),d.timer)),o=async()=>{r.loading=!0;try{const e=await H({...r.pagination,...m,...C(l.value,["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:o}),q(()=>{o()});const v=e=>{if(!e)m.ase=0,m.sortType=1,p.sortOrder=!1,n.sortOrder=!1,u.sortOrder=!1;else{const D={practiceDuration:1,practiceDays:2,practiceDurationAvg:3};m.sortType=D[e.columnKey],e.columnKey=="practiceDuration"&&(n.sortOrder=e.order,p.sortOrder=!1,u.sortOrder=!1),e.columnKey=="practiceDays"&&(p.sortOrder=e.order,n.sortOrder=!1,u.sortOrder=!1),e.columnKey=="practiceDurationAvg"&&(u.sortOrder=e.order,p.sortOrder=!1,n.sortOrder=!1),m.ase=e.order=="ascend"?1:0}o()},p=N({title:"练习天数",key:"practiceDays",sorter:!0,sortOrder:!1,render(e){return t(g,null,[e.practiceDays?e.practiceDays:0,s("天")])}}),n=N({title:"练习总时长",key:"practiceDuration",sorter:!0,sortOrder:!1,render(e){return t(g,null,[e.practiceDuration?y(e.practiceDuration)>0?y(e.practiceDuration)+"分"+R(e.practiceDuration)+"秒":R(e.practiceDuration)+"秒":0])}}),u=N({title:"平均练习时长",key:"practiceDurationAvg",sorter:!0,sortOrder:!1,render(e){return t(g,null,[e.practiceDurationAvg?y(e.practiceDurationAvg)>0?y(e.practiceDurationAvg)+"分"+R(e.practiceDurationAvg)+"秒":R(e.practiceDurationAvg)+"秒":0])}}),c=()=>[{title:"姓名",key:"studentName"},{title:"手机号",key:"studentPhone"},p,n,u];return()=>t("div",{class:a.listWrap},[t("div",{class:a.tableWrap},[t(F,{class:a.classTable,loading:r.loading,columns:c(),data:r.tableList,"onUpdate:sorter":v},null),t(P,{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:o,sync:!0,saveKey:"orchestraRegistration-key"},null)])])}}),ft=x({name:"data-module",setup(){const d=f("attendclass"),A=M();$(n=>{n.form.tabName&&(d.value=n.form.tabName)});const T=f(),r=f(),m=f(),l=n=>{K(n,"tabName",A)},o=f([w(new Date().getTime()),Y(new Date().getTime())]),v=()=>{console.log(o.value),T.value&&T.value.getList(),r.value&&r.value.getList(),m.value&&m.value.getList()},p=()=>{console.log("点击重置"),o.value=[w(new Date().getTime()),Y(new Date().getTime())],V(()=>{v()})};return()=>t("div",null,[t("div",{class:L.listWrap},[t(z,{"onUpdate:value":[n=>l(n),n=>d.value=n],class:L.customTabs,value:d.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(I,{name:"training ",tab:"训练统计"},{default:()=>[t(st,{ref:T,timer:o.value},null)]}),t(I,{name:"practice",tab:"练习数据"},{default:()=>[t(nt,{ref:r,timer:o.value},null)]}),t(I,{name:"ranking",tab:"练习排行"},{default:()=>[t(rt,{ref:m,timer:o.value},null)]})],suffix:()=>t(g,null,[t("div",{class:L.homeStudyInfoDate},[t(U,null,{default:()=>[t(G,j({clearable:!1},{value:o.value,"onUpdate:value":n=>o.value=n,separator:"-",type:"daterange",timerValue:o.value}),null),t(B,{type:"primary",class:L.searchBtn,onClick:()=>v()},{default:()=>[s("搜索")]}),t(B,{type:"primary",onClick:()=>p(),ghost:!0,class:L.resetBtn},{default:()=>[s("重置")]})]})])])})])])}});export{ft as default};