You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
10 KiB
1 line
10 KiB
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[98885],{59041:function(e,t,n){n.r(t),n.d(t,{default:function(){return N}});var r=n(7557),i=n.n(r),o=n(41498),a=n.n(o),s=n(82242),l=n.n(s),u=n(79800),c=n.n(u),d=n(59301),_=n(8785),f=n(24905),p=n(96865),h=n(20834),m=n(61998),x=n(92911),g={flex_box_center:"flex_box_center___t6ZRf",flex_space_between:"flex_space_between___iLqvT",flex_box_vertical_center:"flex_box_vertical_center___vhciq",flex_box_center_end:"flex_box_center_end___Ajnyq",flex_box_column:"flex_box_column___voQHo",containerTitle:"containerTitle___jrfsf",menu:"menu___hWawk",export:"export___p1CrQ",selecGroup:"selecGroup___npKNz",zhankai:"zhankai___HixZB"},v=n(42930),w=n(61186),b=n.n(w),y=n(37712),I=[{type:"shixun",sorter:{field:"",order:""},column:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.field,r=void 0===n?"":n,i=t.order,o=void 0===i?"":i;return[{title:"序号",dataIndex:"number",align:"center",width:70,render:function(t,n,r){return e.limit*(e.page-1)+r+1}},{title:"姓名",dataIndex:"user_name",ellipsis:!0},{title:"分班",dataIndex:"course_group_name",ellipsis:!0},{title:"挑战实训数",dataIndex:"shixuns_count",sortOrder:"shixuns_count"===r&&o,sorter:!0,width:104,render:function(e){return e||0}},{title:"通关实训数",dataIndex:"passed_count",sortOrder:"passed_count"===r&&o,sorter:!0,width:104,render:function(e){return e||0}},{title:"完成关卡数",dataIndex:"passed_game_count",sortOrder:"passed_game_count"===r&&o,sorter:!0,width:104,render:function(e){return e||0}},{title:"评测次数",dataIndex:"evaluate_count",sortOrder:"evaluate_count"===r&&o,sorter:!0,width:90,render:function(e){return e||0}},{title:"所用时间",dataIndex:"cost_time",sortOrder:"cost_time"===r&&o,sorter:!0,width:130,render:function(e){return e&&(0,v.li)(e)||0}},{title:"操作",width:60,dataIndex:"user_id",render:function(t,n){return null===(null==n?void 0:n.shixuns_count)?"":(0,y.jsx)("a",{href:"/classrooms/".concat(null==e?void 0:e.coursesId,"/student_statistics/").concat(null==e?void 0:e.categoryId,"/").concat(t,"/shixun"),target:"_blank",children:"详情"})}}]}},{type:"video",sorter:{field:"",order:""},column:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.field,r=void 0===n?"":n,i=t.order,o=void 0===i?"":i;return[{title:"序号",dataIndex:"number",align:"center",width:70,render:function(t,n,r){return e.limit*(e.page-1)+r+1}},{title:"姓名",width:120,dataIndex:"user_name",ellipsis:!0},{title:"分班",width:100,dataIndex:"course_group_name",ellipsis:!0},{title:"学习视频数",dataIndex:"num",sortOrder:"num"===r&&o,sorter:!0,width:104},{title:"累计学习时长",dataIndex:"total_duration",sortOrder:"total_duration"===r&&o,sorter:!0,width:130,render:function(e){return e&&(0,v.li)(e)||0}},{title:"平均学习完成度",dataIndex:"rate",sortOrder:"rate"===r&&o,sorter:!0,width:130,render:function(e){return e&&"".concat(e,"%")||0}},{title:"开始学习时间",dataIndex:"start_at",width:100,render:function(e){return e&&b()(e).format("YYYY-MM-DD")||"-"}},{title:"最后学习时间",dataIndex:"end_at",width:100,render:function(e){return e&&b()(e).format("YYYY-MM-DD")||"-"}},{title:"操作",width:60,dataIndex:"user_id",render:function(t,n){return""===(null==n?void 0:n.total_duration)?"":(0,y.jsx)("a",{href:"/classrooms/".concat(null==e?void 0:e.coursesId,"/student_statistics/").concat(null==e?void 0:e.categoryId,"/").concat(t,"/video"),target:"_blank",children:"详情"})}}]}},{type:"files",sorter:{field:"",order:""},column:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.field,r=void 0===n?"":n,i=t.order,o=void 0===i?"":i;return[{title:"序号",dataIndex:"number",align:"center",width:70,render:function(t,n,r){return e.limit*(e.page-1)+r+1}},{title:"姓名",dataIndex:"user_name",ellipsis:!0},{title:"下载资源次数",dataIndex:"num",sortOrder:"num"===r&&o,sorter:!0,render:function(e){return e||0}},{title:"最后下载时间",dataIndex:"end_at",render:function(e){return e&&b()(e).format("YYYY-MM-DD HH:mm:ss")||"-"}},{title:"操作",dataIndex:"user_id",width:60,render:function(t,n){return null===(null==n?void 0:n.num)?"":(0,y.jsx)("a",{href:"/classrooms/".concat(null==e?void 0:e.coursesId,"/student_statistics/").concat(null==e?void 0:e.categoryId,"/").concat(t,"/files"),target:"_blank",children:"详情"})}}]}}],k=n(89392),S=n(16644),j=n(25203),N=(0,_.connect)((function(e){return{classroomList:e.classroomList,globalSetting:e.globalSetting}}))((function(e){e.classroomList,e.globalSetting,e.dispatch;var t=(0,_.useSearchParams)(),n=c()(t,1)[0],r=(0,_.useParams)(),o=(0,d.useState)(l()(l()({},r),{},{page:1,limit:10})),s=c()(o,2),u=s[0],v=s[1],w=(0,d.useState)(!0),b=c()(w,2),N=b[0],Y=b[1],C=(0,d.useState)(!0),Z=c()(C,2),K=Z[0],O=Z[1],z=(0,d.useState)(n.get("type")||"shixun"),D=c()(z,2),M=D[0],A=D[1],L=(0,d.useState)([]),P=c()(L,2),q=P[0],G=P[1],H=function(e){return I.find((function(t){return t.type===e}))},T=(0,d.useState)(H(M).column(u)),E=c()(T,2),Q=E[0],B=E[1],F=(0,d.useState)(H(M).sorter),J=c()(F,2),R=J[0],W=J[1],U=(0,d.useState)(0),V=c()(U,2),X=V[0],$=V[1],ee=(0,d.useState)([]),te=c()(ee,2),ne=te[0],re=te[1],ie=(0,d.useState)([]),oe=c()(ie,2),ae=oe[0],se=oe[1],le=f.Z.Group,ue=(0,d.useState)(),ce=c()(ue,2),de=ce[0],_e=ce[1],fe=(0,d.useState)(!1),pe=c()(fe,2),he=pe[0],me=pe[1],xe=(0,d.useState)(!0),ge=c()(xe,2),ve=ge[0],we=ge[1],be=(0,d.useState)(0),ye=c()(be,2),Ie=ye[0],ke=ye[1],Se=function(){var e=a()(i()().mark((function e(t){return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_e(t.checkAll?ae.map((function(e){return e.value})):[]),me(!1),we(t.checkAll),je(l()(l()({},t),{},{course_group_id:t.checkAll?"":[]}));case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),je=function(){var e=a()(i()().mark((function e(t){var n,r;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Y(!0),e.next=3,(0,x.ZP)("/api/courses/".concat(null==t?void 0:t.coursesId,"/").concat(null==t?void 0:t.menuKey,"_statistic.json"),{params:{sort_by:null==t?void 0:t.field,sort_direction:null!=t&&t.order?null==t||null===(n=t.order)||void 0===n?void 0:n.slice(0,-3):"",page:null==t?void 0:t.page,limit:null==t?void 0:t.limit,course_group_id:null==t?void 0:t.course_group_id}});case 3:if(null==(r=e.sent)||!r.data){e.next=18;break}if(G((null==r?void 0:r.data)||[]),$(null==r?void 0:r.count),Y(!1),0!==ne.length){e.next=18;break}if(re([null==r?void 0:r.shixuns_count,null==r?void 0:r.videos_count,null==r?void 0:r.files_count]),O(!1),null!=r&&r.shixuns_count){e.next=18;break}if(null==r||!r.videos_count){e.next=15;break}return A("video"),e.abrupt("return");case 15:if(null==r||!r.files_count){e.next=18;break}return A("files"),e.abrupt("return");case 18:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();(0,d.useEffect)((function(){ve&&_e(ae.map((function(e){return e.value})))}),[ae]),(0,d.useEffect)((function(){(0,x.ZP)("/api/courses/".concat(null==u?void 0:u.coursesId,"/course_group_list_other.json"),{}).then((function(e){e.course_groups&&(e.course_groups.length>6&&ke(1),se(e.course_groups.map((function(e){return{label:e.name,value:e.id}}))))}));var e=l()(l()(l()({menuKey:M},u),{},{page:1,limit:10},H(M).sorter),{},{course_group_id:de||""});v(l()(l()({},u),{},{page:1,limit:10})),B(H(M).column(e)),je(e)}),[M]);return(0,y.jsxs)("section",{className:g.bg,children:[(0,y.jsx)("div",{className:g.containerTitle,children:(0,y.jsx)("div",{className:"font16",children:"学生分析"})}),(0,y.jsx)(p.Z,{loading:K,active:!0,paragraph:{rows:5},children:ne.every((function(e){return!e}))?(0,y.jsx)(S.Z,{}):(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)(h.Z,{style:{position:"relative"},className:g.menu,mode:"horizontal",onClick:function(e){A(e.key)},selectedKeys:M,children:[[{name:"实践项目",id:"shixun"},{name:"视频",id:"video"},{name:"教学课件",id:"files"}].map((function(e,t){return ne[t]?(0,y.jsx)(h.Z.Item,{className:"font16",style:{padding:"0 0 12px 0 ",margin:"0 30px"},children:e.name},e.id):null})),"files"!==M&&(0,y.jsx)("span",{className:g.export,onClick:function(){(0,j.D9)(l()(l()({},u),{},{checkedList:de,menuKey:M}))},children:"导出"})]}),"files"!==M&&(0,y.jsxs)("div",{style:{display:"flex",padding:"10px 0",position:"relative",overflow:"hidden",height:1===Ie?70:"auto"},className:"bg-white",children:[(0,y.jsx)("div",{className:g.selecGroup,style:{width:ae.length>5?"116px":"56px",whiteSpace:"nowrap"},children:"选择班级:"}),(0,y.jsx)(f.Z,{style:{width:"121px",fontSize:"13px",whiteSpace:"nowrap"},indeterminate:he,onChange:function(e){return Se(l()(l()(l()({menuKey:M},u),{},{page:1,limit:10},H(M).sorter),{},{checkAll:e.target.checked}))},checked:ve,children:"全部"}),(0,y.jsx)(le,{options:ae,value:de,onChange:function(e){_e(e),me(!!e.length&&e.length<ae.length),we(e.length===ae.length);var t=l()(l()(l()({menuKey:M},u),{},{page:1,limit:10},H(M).sorter),{},{course_group_id:e||[]});je(t)}}),!!Ie&&(0,y.jsxs)("div",{className:g.zhankai,children:[1===Ie&&(0,y.jsxs)("span",{onClick:function(){return ke(2)},style:{whiteSpace:"nowrap"},children:["展开",(0,y.jsx)("i",{className:"iconfont icon-xiala"})]}),2===Ie&&(0,y.jsxs)("span",{onClick:function(){return ke(1)},style:{whiteSpace:"nowrap"},children:["收起",(0,y.jsx)("i",{style:{transform:"scale(0.5) rotate(180deg) translateY(2px)"},className:"iconfont icon-xiala"})]})]})]}),(0,y.jsx)(m.Z,{className:"table-layout bg-white mb20",columns:Q,dataSource:q,rowKey:function(e){return e.id},loading:N,onChange:function(e,t,n){var r={field:n.field,order:n.order};if(!1===(null==n?void 0:n.order)&&(r={field:"",order:""}),!(0,k.isEqual)(r,R)){n.order||(r=H(M).sorter);var i=l()(l()(l()({menuKey:M},u),{},{page:1,limit:10},r),{},{course_group_id:de||""});return v(l()(l()({},u),{},{page:1,limit:10})),W(r),je(i),void B(H(M).column(i,r))}var o=l()(l()(l()({menuKey:M},u),{},{page:e.current,limit:e.pageSize},r),{},{course_group_id:de||""});v(l()(l()({},u),{},{page:e.current,limit:e.pageSize})),B(H(M).column(o,r)),je(o)},pagination:{pageSize:u.limit,total:X,current:u.page,showQuickJumper:!0,hideOnSinglePage:!0,position:["bottomCenter"]}})]})})]})}))}}]); |