index-bd4d1de6.js 17 KB

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