1 |
- import{Y as $,d as I,r as D,u as G,a as M,e as v,R as q,q as k,f as t,k as r,ck as P,F as y,j as F,X as W,Z as Y,_ as j,$ as V,m as K,n as N,x as J,b3 as X}from"./index-9f21ab93.js";import{g as Z,s as H}from"./use-async-e237eec4.js";import{N as x,C as Q}from"./index-9059c495.js";import{s as e}from"./index.module-4fef3238.js";import{u as _}from"./useECharts-cd80278d.js";import{P as z}from"./index-387b6797.js";import{b as L,c as C,d as A,g as O,a as U}from"./dateFormat-3a84bd57.js";import{i as tt,q as et,k as at}from"./api-cdeaf1c3.js";import{g as w,s as b}from"./index-8612ed40.js";import"./searchs-1f038725.js";import"./index-498036ff.js";const it="_listWrap_mgjem_1",st="_customTabs_mgjem_7",nt="_searchBtn_mgjem_28",lt="_resetBtn_mgjem_37",B={listWrap:it,customTabs:st,searchBtn:nt,resetBtn:lt},rt=h=>$.post("/edu-app/lessonTraining/trainingStat",{data:h}),ot=h=>$.post("/edu-app/musicPracticeRecordStat/trainingStat",{data:h}),ut=I({name:"home-trainData",props:{timer:{type:Array,defaut:()=>[]}},setup(h,{expose:S}){const s=D(null),{setOptions:o}=_(s),d=D(!0),c=D(!0),m=G(),g=M(),n=v({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:[]}),p=D({qualifiedRate:0,qualifiedStudentCount:0,submitStudentCount:0,totalStudentCount:0,trainingCount:0,trainingRate:0}),l=v({loading:!1,pagination:{page:1,rows:10,pageTotal:4},tableList:[],goCourseVisiable:!1}),u=q(()=>h.timer),a=()=>[{title:"布置老师",key:"teacherName"},{title:"布置时间",key:"createTime",render(i){return t(y,null,[i.createTime])}},{title:"截止时间",key:"expireDate",render(i){return t(y,null,[i.expireDate])}},{title:"训练状态",key:"status",render(i){return i.status==0?t("div",{class:e.indDot},[" ",t("span",null,null),r(" 进行中")]):t("div",{class:e.endDot},[t("span",null,null),r("已结束")])}},{title:"布置人数",key:"expectNum"},{title:"提交人数",key:"trainingNum"},{title:"合格人数",key:"standardNum"},{title:"提交率",key:"trainingRate",render(i){return t(y,null,[i.trainingRate,r("%")])}},{title:"合格率",key:"qualifiedRate",render(i){return t(y,null,[i.qualifiedRate,r("%")])}},{title:"操作",key:"id",render(i){return t(W,null,{default:()=>[t(F,{text:!0,type:"primary",onClick:()=>f(i)},{default:()=>[r("详情")]})]})}}],f=i=>{console.log(i),m.push({path:"/afterWorkDetail",query:{...g.query,teacherName:i.teacherName,trainingId:i.id,id:i.classGroupId,name:i.classGroupName}})},R=async()=>{try{const i=await rt({...L(u.value,["startTime","endTime"],"YYYY-MM-DD")});p.value={...i.data},n.dateList=i.data.trainingStatDetails.map(T=>T.date),n.payInfoList=i.data.trainingStatDetails.map(T=>T.qualifiedStudentCount),n.studentList=i.data.trainingStatDetails.map(T=>T.unqualifiedStudentCount),E()}catch(i){console.log(i)}try{const i=await tt({...l.pagination,...L(u.value,["startTime","endTime"],"YYYY-MM-DD")});l.tableList=i.data.rows,l.pagination.pageTotal=i.data.total,l.loading=!1}catch(i){l.loading=!1,console.log(i)}};S({getList:R});const E=()=>{o({tooltip:{trigger:"axis",axisPointer:{lineStyle:{width:2,color:"#A9C7FF"}}},legend:{show:!1,selected:{合格人数:d.value,不合格人数:c.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)"]}},minInterval:1,splitNumber:5}],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(T=>"<br/>".concat(T.marker,'<span style="margin-top:10px;margin-left:5px;font-size: 13px;font-weight: 500;\n color: #333333;\n line-height: 18px;">').concat(T.seriesName,": ").concat(T.value,"人 </span>"))].join(""):i})};return k(()=>{R()}),()=>t(y,null,[t("div",{class:e.homeTrainData},[t("div",{class:e.TrainDataTop},[t("div",{class:e.TrainDataTopLeft},[t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[t(x,{from:0,to:p.value.trainingCount},null)]),r("次")]),t("p",{class:e.TrainDataItemsubTitle},[r("训练次数")])]),t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[t(x,{from:0,to:p.value.totalStudentCount},null)]),r("人次")]),t("p",{class:e.TrainDataItemsubTitle},[r("应交总人次")])]),t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[t(x,{from:0,to:p.value.submitStudentCount},null)]),r("人次")]),t("p",{class:e.TrainDataItemsubTitle},[r("提交总人次")])]),t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[" ",t(x,{from:0,to:p.value.qualifiedStudentCount},null)]),r("人次")]),t("p",{class:e.TrainDataItemsubTitle},[r("合格总人次")])]),t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[t(x,{from:0,to:p.value.trainingRate},null),r("%")])]),t("p",{class:e.TrainDataItemsubTitle},[r("训练提交率")])]),t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[t(x,{from:0,to:p.value.qualifiedRate},null),r("%")])]),t("p",{class:e.TrainDataItemsubTitle},[r("训练合格率")])])]),t("div",{class:e.TrainDataTopRight},[t("div",{onClick:()=>{d.value=!d.value,E()},class:[e.DataTopRightItem,d.value?"":e.DataTopRightItemDis]},[t("div",{class:e.DataTopRightDot},null),t("p",null,[r("合格人数")])]),t("div",{onClick:()=>{c.value=!c.value,E()},class:[e.DataTopRightItem,c.value?"":e.DataTopRightItemDis]},[t("div",{class:[e.DataTopRightDot,e.red]},null),t("p",null,[r("不合格人数")])])])]),t("div",{class:e.chatrs},[t("div",{ref:s,style:{height:n.height,width:n.width}},null)]),t("div",{class:e.tableWrap},[t(P,{class:e.classTable,loading:l.loading,columns:a(),data:l.tableList},null),t(z,{page:l.pagination.page,"onUpdate:page":i=>l.pagination.page=i,pageSize:l.pagination.rows,"onUpdate:pageSize":i=>l.pagination.rows=i,pageTotal:l.pagination.pageTotal,"onUpdate:pageTotal":i=>l.pagination.pageTotal=i,onList:R,sync:!0,saveKey:"orchestraRegistration-key"},null)])])])}}),ct=I({name:"home-practiceData",props:{timer:{type:Array,defaut:()=>[]}},setup(h,{expose:S}){const s=D(null),{setOptions:o}=_(s),d=D(!0),c=v({height:"360px",width:"100%",practiceUserCount:0,paymentAmount:0,practiceDurationAvg:0,practiceDays:0,practiceDurationTotal:0,dateList:[],timeList:[]}),m=v({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}),g=q(()=>h.timer),n=()=>[{title:"日期",key:"date"},{title:"练习人数",key:"practiceUserCount",render(u){return t(y,null,[u.practiceUserCount,r("人")])}},{title:"平均练习时长(分钟)",key:"practiceDuration",render(u){return t(y,null,[" ",t(y,null,[u.practiceDuration?C(u.practiceDuration)>0?C(u.practiceDuration)+"分"+A(u.practiceDuration)+"秒":A(u.practiceDuration)+"秒":"0分钟"])])}}],p=async()=>{try{const u=await et({page:1,rows:999,...L(g.value,["startTime","endTime"],"YYYY-MM-DD")}),a=await ot({page:1,rows:999,...L(g.value,["startTime","endTime"],"YYYY-MM-DD")});m.tableList=u.data.rows,c.practiceDurationAvg=a.data.practiceDurationAvg,c.practiceUserCount=a.data.practiceUserCount,c.dateList=a.data.trainingStatDetailList.map(f=>f.date),c.timeList=a.data.trainingStatDetailList.map(f=>f.practiceUserCount),console.log("trainingStatDetailList",c.timeList),l()}catch(u){console.log(u)}};S({getList:p});const l=()=>{o({tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},legend:{show:!1,selected:{练习人数:d.value}},xAxis:{type:"category",boundaryGap:!0,axisLabel:{show:!0,interval:0},data:c.dateList},yAxis:[{type:"value",axisLabel:{formatter:"{value}人"},axisTick:{show:!1},splitArea:{show:!1,areaStyle:{color:["rgba(255,255,255,0.2)"]}},minInterval:1,splitNumber:5}],grid:{left:"1%",right:"1%",top:"2%",bottom:0,containLabel:!0},series:[{data:c.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(a=>"<br/>".concat(a.marker,'<span style="margin-top:10px;margin-left:5px;font-size: 13px;font-weight: 500;\n color: #131415;font-weight: 600;\n margin-top:12px\n line-height: 18px;">练习人数: ').concat(a.value,"人 </span>"))].join(""):u})};return k(()=>{p()}),()=>t(y,null,[t("div",{class:e.homeTrainData},[t("div",{class:e.TrainDataTop},[t("div",{class:e.TrainDataTopLeft},[t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[t("span",null,[t(x,{from:0,to:c.practiceUserCount},null)]),r("人")]),t("p",{class:e.TrainDataItemsubTitle},[r("练习人数")])]),t("div",{class:e.TrainDataItem},[t("p",{class:e.TrainDataItemTitle},[C(c.practiceDurationAvg)>0?t("div",null,[t("span",null,[t(x,{from:0,to:C(c.practiceDurationAvg)},null)])," ",r("分")]):null,t("div",null,[t("span",null,[t(x,{from:0,to:A(c.practiceDurationAvg)},null)])," ",r("秒")])]),t("p",{class:e.TrainDataItemsubTitle},[r("平均练习时长")])])]),t("div",{class:e.TrainDataTopRight},[t("div",{class:[e.DataTopRightItem,d.value?"":e.DataTopRightItemDis]},[t("div",{class:[e.DataTopRightDot,e.DataTopRightDotBlue]},null),t("p",null,[r("练习人数")])])])]),t("div",{class:e.chatrs},[t("div",{ref:s,style:{height:c.height,width:c.width}},null)]),t("div",{class:e.tableWrap},[t(P,{class:e.classTable,loading:m.loading,columns:n(),data:m.tableList},null)])])])}}),pt=I({name:"student-studentList",props:{timer:{type:Array,defaut:()=>[]}},setup(h,{emit:S,expose:s}){const o=v({searchWord:"",orchestraType:null,courseTypeCode:null,subjectId:null,classId:null,studentType:null,loading:!1,pagination:{page:1,rows:10,pageTotal:4},tableList:[]}),d=v({ase:0,sortType:1}),c=q(()=>(console.log("ranking===>"),h.timer)),m=async()=>{o.loading=!0;try{const a=await at({...o.pagination,...d,...L(c.value,["startTime","endTime"],"YYYY-MM-DD")});o.tableList=a.data.rows,o.pagination.pageTotal=a.data.total,o.loading=!1}catch(a){o.loading=!1,console.log(a)}};s({getList:m}),k(()=>{m()});const g=a=>{if(!a)d.ase=0,d.sortType=1,n.sortOrder=!1,p.sortOrder=!1,l.sortOrder=!1;else{const f={practiceDuration:1,practiceDays:2,practiceDurationAvg:3};d.sortType=f[a.columnKey],a.columnKey=="practiceDuration"&&(p.sortOrder=a.order,n.sortOrder=!1,l.sortOrder=!1),a.columnKey=="practiceDays"&&(n.sortOrder=a.order,p.sortOrder=!1,l.sortOrder=!1),a.columnKey=="practiceDurationAvg"&&(l.sortOrder=a.order,n.sortOrder=!1,p.sortOrder=!1),d.ase=a.order=="ascend"?1:0}m()},n=v({title:"练习天数",key:"practiceDays",sorter:!0,sortOrder:!1,render(a){return t(y,null,[a.practiceDays?a.practiceDays:0,r("天")])}}),p=v({title:"练习总时长",key:"practiceDuration",sorter:!0,sortOrder:!1,render(a){return t(y,null,[a.practiceDuration?C(a.practiceDuration)>0?C(a.practiceDuration)+"分"+A(a.practiceDuration)+"秒":A(a.practiceDuration)+"秒":0])}}),l=v({title:"平均练习时长",key:"practiceDurationAvg",sorter:!0,sortOrder:!1,render(a){return t(y,null,[a.practiceDurationAvg?C(a.practiceDurationAvg)>0?C(a.practiceDurationAvg)+"分"+A(a.practiceDurationAvg)+"秒":A(a.practiceDurationAvg)+"秒":0])}}),u=()=>[{title:"姓名",key:"studentName"},{title:"手机号",key:"studentPhone"},n,p,l];return()=>t("div",{class:e.listWrap},[t("div",{class:e.tableWrap},[t(P,{class:e.classTable,loading:o.loading,columns:u(),data:o.tableList,"onUpdate:sorter":g},null),t(z,{page:o.pagination.page,"onUpdate:page":a=>o.pagination.page=a,pageSize:o.pagination.rows,"onUpdate:pageSize":a=>o.pagination.rows=a,pageTotal:o.pagination.pageTotal,"onUpdate:pageTotal":a=>o.pagination.pageTotal=a,onList:m,sync:!0,saveKey:"orchestraRegistration-key"},null)])])}}),dt=I({name:"data-guide",emits:["close"],setup(h,{emit:S}){const s=v({box:{height:"0px"},show:!1,steps:[{ele:"",eleRect:{},img:w("data1.png"),handStyle:{top:"0.91rem"},imgStyle:{left:"-105px",width:"472px",height:"256px"},btnsStyle:{bottom:"30px",left:"-90px"},boxStyle:{borderRadius:"25px"},eleRectPadding:{left:14,top:14,width:28,height:28}},{ele:"",img:w("data2.png"),imgStyle:{left:"-105px",width:"509px",height:"230px"},btnsStyle:{bottom:"30px",left:Y(-90)},boxStyle:{borderRadius:"25px"},eleRectPadding:{left:14,top:14,width:28,height:28}},{ele:"",img:w("data3.png"),imgStyle:{top:"100%",left:"-105px",width:"438px",height:"230px"},btnsStyle:{bottom:"30px",left:Y(-90)},boxStyle:{borderRadius:"25px"},eleRectPadding:{left:14,top:14,width:28,height:28}}],step:0}),o=D(!1),d=localStorage.getItem("teacher-guideInfo");d&&JSON.parse(d).dataGuide?o.value=!1:o.value=!0;const c=()=>{var p,l,u,a;const n=document.getElementById("data-".concat(s.step));if(n){const f=n.getBoundingClientRect(),R=((p=s.steps[s.step].eleRectPadding)==null?void 0:p.left)||0,E=((l=s.steps[s.step].eleRectPadding)==null?void 0:l.top)||0,i=((u=s.steps[s.step].eleRectPadding)==null?void 0:u.width)||0,T=((a=s.steps[s.step].eleRectPadding)==null?void 0:a.height)||0;s.box={left:f.x-R+"px",top:f.y-E+"px",width:f.width+i+"px",height:f.height+T+"px"},console.log("coai-".concat(s.step),s.box)}};k(()=>{c()});const m=()=>{if(s.step>=4){g();return}s.step=s.step+1,c()},g=()=>{let n=JSON.parse(localStorage.getItem("teacher-guideInfo")||"{}")||null;n?n.dataGuide=!0:n={dataGuide:!0},localStorage.setItem("teacher-guideInfo",JSON.stringify(n)),o.value=!1};return()=>t(y,null,[o.value?j(t("div",{"onUpdate:show":n=>o.value=n,class:["n-modal-mask","n-modal-mask-guide"]},[t("div",{class:b.content,onClick:()=>m()},[t("div",{class:b.backBtn,onClick:n=>{n.stopPropagation(),g()}},[r("跳过")]),t("div",{class:b.box,style:{...s.box,...s.steps[s.step].boxStyle},id:"modeType-".concat(s.step)},[s.steps.map((n,p)=>{var l,u,a,f;return t("div",{onClick:R=>R.stopPropagation(),class:b.item,style:n.type=="bottom"?{display:p===s.step?"":"none",left:"".concat((l=n.eleRect)==null?void 0:l.left,"px"),top:"-".concat((u=n.imgStyle)==null?void 0:u.height)}:{display:p===s.step?"":"none",left:"".concat((a=n.eleRect)==null?void 0:a.left,"px"),top:"".concat((f=s.box)==null?void 0:f.height)}},[t("img",{class:b.img,style:n.imgStyle,src:n.img},null),t("div",{class:b.btns,style:n.btnsStyle},[s.step+1==s.steps.length?t(y,null,[t("div",{class:[b.endBtn],onClick:()=>g()},[r("完成")]),t("div",{class:b.nextBtn,onClick:()=>{s.step=0,c()}},[r("再看一遍")])]):t("div",{class:b.btn,onClick:()=>m()},[r("下一步 ("),s.step+1,r("/"),s.steps.length,r(")")])])])})])])]),[[V,o.value,"show"]]):null])}}),St=I({name:"data-module",setup(){const h=D("training"),S=M();Z(l=>{l.form.tabName&&(h.value=l.form.tabName)});const s=D(),o=D(),d=D(),c=l=>{H(l,"tabName",S)},m=D(!1),g=D([O(new Date().getTime()),U(new Date().getTime())]),n=()=>{console.log(g.value),s.value&&s.value.getList(),o.value&&o.value.getList(),d.value&&d.value.getList()},p=()=>{console.log("点击重置"),g.value=[O(new Date().getTime()),U(new Date().getTime())],X(()=>{n()})};return k(()=>{setTimeout(()=>{m.value=!0},500)}),()=>t("div",null,[t("div",{class:B.listWrap},[t(K,{"onUpdate:value":[l=>c(l),l=>h.value=l],class:B.customTabs,value:h.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(N,{name:"training",tab:"训练统计"},{default:()=>[t(ut,{ref:s,timer:g.value},null)],tab:()=>t("span",{id:"data-0"},[r("训练统计")])}),t(N,{name:"practice",tab:"练习数据"},{default:()=>[t(ct,{ref:o,timer:g.value},null)],tab:()=>t("span",{id:"data-1"},[r("练习数据")])}),t(N,{name:"ranking",tab:"练习排行"},{default:()=>[t(pt,{ref:d,timer:g.value},null)],tab:()=>t("span",{id:"data-2"},[r("练习排行")])})],suffix:()=>t(y,null,[t("div",{class:B.homeStudyInfoDate},[t(W,null,{default:()=>[t(Q,J({clearable:!1},{value:g.value,"onUpdate:value":l=>g.value=l,separator:"-",type:"daterange",timerValue:g.value}),null),t(F,{type:"primary",class:B.searchBtn,onClick:()=>n()},{default:()=>[r("搜索")]}),t(F,{type:"primary",onClick:()=>p(),ghost:!0,class:B.resetBtn},{default:()=>[r("重置")]})]})])])}),m.value?t(dt,null,null):null])])}});export{St as default};
|