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
11 KiB
1 line
11 KiB
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[6127],{43387:function(n,e,r){r.d(e,{Z:function(){return J}});var t=r(87462),o=r(97685),i=r(4942),a=r(45987),c=r(67294),l=r(94184),u=r.n(l),s=r(16397),d=(0,c.createContext)({}),f=r(1413),p=r(71002),g={},m=[];function v(n,e){}function y(n,e){}function h(n,e,r){e||g[r]||(n(!1,r),g[r]=!0)}function x(n,e){h(v,n,e)}x.preMessage=function(n){m.push(n)},x.resetWarned=function(){g={}},x.noteOnce=function(n,e){h(y,n,e)};var C=x;function k(){return!("undefined"==typeof window||!window.document||!window.document.createElement)}var _="data-rc-order",Z="rc-util-key",b=new Map;function w(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=n.mark;return e?e.startsWith("data-")?e:"data-".concat(e):Z}function j(n){return n.attachTo?n.attachTo:document.querySelector("head")||document.body}function T(n){return"queue"===n?"prependQueue":n?"prepend":"append"}function I(n){return Array.from((b.get(n)||n).children).filter((function(n){return"STYLE"===n.tagName}))}function E(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!k())return null;var r=e.csp,t=e.prepend,o=document.createElement("style");o.setAttribute(_,T(t)),null!=r&&r.nonce&&(o.nonce=null==r?void 0:r.nonce),o.innerHTML=n;var i=j(e),a=i.firstChild;if(t){if("queue"===t){var c=I(i).filter((function(n){return["prepend","prependQueue"].includes(n.getAttribute(_))}));if(c.length)return i.insertBefore(o,c[c.length-1].nextSibling),o}i.insertBefore(o,a)}else i.appendChild(o);return o}function N(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=j(e);return I(r).find((function(r){return r.getAttribute(w(e))===n}))}function S(n,e){var r=b.get(n);if(!r||!function(n,e){if(!n)return!1;if(n.contains)return n.contains(e);for(var r=e;r;){if(r===n)return!0;r=r.parentNode}return!1}(document,r)){var t=E("",e),o=t.parentNode;b.set(n,o),n.removeChild(t)}}function A(n){var e;return null==n||null===(e=n.getRootNode)||void 0===e?void 0:e.call(n)}function R(n){return function(n){return A(n)!==(null==n?void 0:n.ownerDocument)}(n)?A(n):null}function P(n){return"object"===(0,p.Z)(n)&&"string"==typeof n.name&&"string"==typeof n.theme&&("object"===(0,p.Z)(n.icon)||"function"==typeof n.icon)}function L(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object.keys(n).reduce((function(e,r){var t=n[r];if("class"===r)e.className=t,delete e.class;else e[r]=t;return e}),{})}function M(n,e,r){return r?c.createElement(n.tag,(0,f.Z)((0,f.Z)({key:e},L(n.attrs)),r),(n.children||[]).map((function(r,t){return M(r,"".concat(e,"-").concat(n.tag,"-").concat(t))}))):c.createElement(n.tag,(0,f.Z)({key:e},L(n.attrs)),(n.children||[]).map((function(r,t){return M(r,"".concat(e,"-").concat(n.tag,"-").concat(t))})))}function z(n){return(0,s.generate)(n)[0]}function G(n){return n?Array.isArray(n)?n:[n]:[]}var B=function(n){var e=(0,c.useContext)(d),r=e.csp,t=e.prefixCls,o="\n.anticon {\n display: inline-block;\n color: inherit;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em;\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.anticon > * {\n line-height: 1;\n}\n\n.anticon svg {\n display: inline-block;\n}\n\n.anticon::before {\n display: none;\n}\n\n.anticon .anticon-icon {\n display: block;\n}\n\n.anticon[tabindex] {\n cursor: pointer;\n}\n\n.anticon-spin::before,\n.anticon-spin {\n display: inline-block;\n -webkit-animation: loadingCircle 1s infinite linear;\n animation: loadingCircle 1s infinite linear;\n}\n\n@-webkit-keyframes loadingCircle {\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes loadingCircle {\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n";t&&(o=o.replace(/anticon/g,t)),(0,c.useEffect)((function(){var e=R(n.current);!function(n,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};S(j(r),r);var t=N(e,r);if(t){var o,i,a;return null!==(o=r.csp)&&void 0!==o&&o.nonce&&t.nonce!==(null===(i=r.csp)||void 0===i?void 0:i.nonce)&&(t.nonce=null===(a=r.csp)||void 0===a?void 0:a.nonce),t.innerHTML!==n&&(t.innerHTML=n),t}var c=E(n,r);c.setAttribute(w(r),e)}(o,"@ant-design-icons",{prepend:!0,csp:r,attachTo:e})}),[])},q=["icon","className","onClick","style","primaryColor","secondaryColor"],D={primaryColor:"#333",secondaryColor:"#E6E6E6",calculated:!1};var H=function(n){var e,r,t=n.icon,o=n.className,i=n.onClick,l=n.style,u=n.primaryColor,s=n.secondaryColor,d=(0,a.Z)(n,q),p=c.useRef(),g=D;if(u&&(g={primaryColor:u,secondaryColor:s||z(u)}),B(p),e=P(t),r="icon should be icon definiton, but got ".concat(t),C(e,"[@ant-design/icons] ".concat(r)),!P(t))return null;var m=t;return m&&"function"==typeof m.icon&&(m=(0,f.Z)((0,f.Z)({},m),{},{icon:m.icon(g.primaryColor,g.secondaryColor)})),M(m.icon,"svg-".concat(m.name),(0,f.Z)((0,f.Z)({className:o,onClick:i,style:l,"data-icon":m.name,width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},d),{},{ref:p}))};H.displayName="IconReact",H.getTwoToneColors=function(){return(0,f.Z)({},D)},H.setTwoToneColors=function(n){var e=n.primaryColor,r=n.secondaryColor;D.primaryColor=e,D.secondaryColor=r||z(e),D.calculated=!!r};var O=H;function V(n){var e=G(n),r=(0,o.Z)(e,2),t=r[0],i=r[1];return O.setTwoToneColors({primaryColor:t,secondaryColor:i})}var W=["className","icon","spin","rotate","tabIndex","onClick","twoToneColor"];V(s.blue.primary);var F=c.forwardRef((function(n,e){var r,l=n.className,s=n.icon,f=n.spin,p=n.rotate,g=n.tabIndex,m=n.onClick,v=n.twoToneColor,y=(0,a.Z)(n,W),h=c.useContext(d),x=h.prefixCls,C=void 0===x?"anticon":x,k=h.rootClassName,_=u()(k,C,(r={},(0,i.Z)(r,"".concat(C,"-").concat(s.name),!!s.name),(0,i.Z)(r,"".concat(C,"-spin"),!!f||"loading"===s.name),r),l),Z=g;void 0===Z&&m&&(Z=-1);var b=p?{msTransform:"rotate(".concat(p,"deg)"),transform:"rotate(".concat(p,"deg)")}:void 0,w=G(v),j=(0,o.Z)(w,2),T=j[0],I=j[1];return c.createElement("span",(0,t.Z)({role:"img","aria-label":s.name},y,{ref:e,tabIndex:Z,onClick:m,className:_}),c.createElement(O,{icon:s,primaryColor:T,secondaryColor:I,style:b}))}));F.displayName="AntdIcon",F.getTwoToneColor=function(){var n=O.getTwoToneColors();return n.calculated?[n.primaryColor,n.secondaryColor]:n.primaryColor},F.setTwoToneColor=V;var J=F},807:function(n,e,r){r.r(e);var t=r(17061),o=r.n(t),i=r(861),a=r.n(i),c=r(17156),l=r.n(c),u=r(42122),s=r.n(u),d=r(27424),f=r.n(d),p=r(67294),g=r(88275),m=r(71577),v=r(2453),y=r(96074),h=r(84567),x=r(78045),C=r(76661),k=r(34435),_=r(7),Z=r(41642),b=r(84519),w=r(82826),j=r(59758),T=r(12034),I=r(71919),E=r(34739),N=r(61170),S=r(5428),A=r(85893),R=[E.Z,N.Z,S.Z];e.default=(0,g.connect)((function(n){return{user:n.user}}))((function(n){var e,r,t=n.user,i=(0,p.useState)(s()(s()({},(0,g.useParams)()),{},{page:1,per_page:10,rank_type:1,course_group:(0,_.dE)()?[t.userInfo.course.course_group_id]:[]})),c=f()(i,2),u=c[0],d=c[1],E=(0,p.useState)([]),N=f()(E,2),S=N[0],P=N[1],L=(0,p.useState)([]),M=f()(L,2),z=M[0],G=M[1],B=(0,p.useState)([]),q=f()(B,2),D=q[0],H=q[1];function O(n){return V.apply(this,arguments)}function V(){return(V=l()(o()().mark((function n(e){var r,t,i;return o()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,(0,b.ZP)("/api/courses/rank_list.json",{method:"get",params:s()(s()({},u),{},{id:u.coursesId})});case 2:r=n.sent,P(r),0===(null==r?void 0:r.status)&&((0,_.dE)()?(1===e&&G([null==r||null===(t=r.course_group)||void 0===t||null===(i=t[0])||void 0===i?void 0:i.id]),null!=r&&r.my_rank?H([null==r?void 0:r.my_rank].concat(a()(null==r?void 0:r.rank_list))):H(a()(null==r?void 0:r.rank_list))):H(a()(null==r?void 0:r.rank_list)));case 5:case"end":return n.stop()}}),n)})))).apply(this,arguments)}return(0,p.useEffect)((function(){var n;null!=t&&null!==(n=t.userInfo)&&void 0!==n&&n.course&&((0,_.dE)()&&(u.course_group=(0,_.dE)()?[t.userInfo.course.course_group_id]:[],d(s()({},u))),O(1))}),[null==t?void 0:t.userInfo]),(0,A.jsxs)("div",{style:{width:1200,margin:"0px auto"},children:[(0,A.jsxs)("aside",{className:[Z.Z.title,"mt20"].join(" "),children:[(0,A.jsx)(g.Link,{to:"/classrooms/".concat(u.coursesId,"/program_homework"),children:(0,A.jsx)(w.Z,{className:"font16 c-black"})}),(0,A.jsx)("strong",{className:"font20 ml5",children:"排行榜"}),(0,_.GJ)()&&(0,A.jsx)("span",{style:{color:"#0152d9",textAlign:"end",flex:1,cursor:"pointer"},children:(0,A.jsx)(m.ZP,{onClick:function(){-1!==(null==S?void 0:S.status)?(0,T.VY)(s()(s()({},u),{},{id:u.coursesId})):v.ZP.warning("当前暂无数据")},children:"导出"})})]}),(0,A.jsxs)("div",{style:{background:"#fff",marginTop:10,padding:40},children:[(0,A.jsx)("div",{children:(0,A.jsxs)("p",{style:{color:"#165DFF",fontSize:18,fontWeight:400},children:[(0,A.jsx)("img",{width:20,src:I.Z,style:{marginRight:5}})," 课堂排行榜 ",(0,A.jsx)("span",{style:{fontSize:14,color:"#B1BACD"},children:"本排行榜根据通过题数进行排名"})]})}),(0,A.jsx)(y.Z,{}),(0,A.jsxs)("div",{style:{display:"inline-flex"},children:[(0,A.jsx)("label",{children:"分班情况:"}),(0,_.GJ)()&&(0,A.jsx)("div",{style:{flex:1},children:(0,A.jsxs)(h.Z.Group,{className:Z.Z.checkboxgroup,value:z,onChange:function(n){if(1===u.type)G([]),u.course_group=[],u.page=1,d(s()({},u)),O();else if(2===u.type){var e;G(["全部"].concat()),u.course_group=null==S||null===(e=S.course_group)||void 0===e?void 0:e.map((function(n){return n.id})),u.page=1,d(s()({},u)),O()}else G(a()(n.filter((function(n){return"全部"!=n})))),u.course_group=n.filter((function(n){return"全部"!=n})),u.page=1,d(s()({},u)),O()},children:[(0,A.jsx)(h.Z,{value:"全部",onChange:function(n){n.target.checked?u.type=2:u.type=1},children:"全部分班"}),null==S||null===(e=S.course_group)||void 0===e?void 0:e.map((function(n,e){return(0,A.jsx)(h.Z,{onChange:function(n){u.type=3},value:n.id,children:null==n?void 0:n.name})}))]})}),(0,_.dE)()&&(0,A.jsxs)(x.ZP.Group,{style:{flex:"1"},onChange:function(n){"全部"===n.target.value?(u.course_group=[],u.page=1,d(s()({},u)),O()):(u.course_group=[n.target.value],u.page=1,d(s()({},u)),O())},defaultValue:t.userInfo.course.course_group_id,children:[(0,A.jsx)(x.ZP,{value:"全部",children:"全部分班"}),null==S||null===(r=S.course_group)||void 0===r?void 0:r.map((function(n,e){return(0,A.jsx)(x.ZP,{value:n.id,children:n.name})}))]})]}),(0,A.jsx)(C.Z,{style:{marginTop:10},pagination:!1,dataSource:D,rowClassName:function(n,e){return 0===e&&(0,_.dE)()&&Z.Z.tables},columns:[{title:"排行",dataIndex:"rank",render:function(n,e,r){return n<4?(0,A.jsx)("img",{src:R[n-1]}):n}},{title:"用户",dataIndex:"user_name",key:"user_name",render:function(n,e,r){return(0,A.jsxs)("div",{children:[(0,A.jsx)("img",{style:{width:30,height:30,borderRadius:"50%",marginRight:10},src:j.Z.IMG_SERVER+"/images/"+(null==e?void 0:e.image_url)}),n]})}},{title:"学号",dataIndex:"student_id",key:"student_id",render:function(n){return n||"- -"}},{title:"分班",dataIndex:"course_group",key:"course_group"},{title:"通过题数",dataIndex:"passed_count",key:"passed_count"},{title:"做题数",dataIndex:"do_count",key:"do_count"},{title:"通过率",dataIndex:"passed_rate",key:"passed_rate"}]}),(0,A.jsx)("div",{style:{width:"100%",textAlign:"center",marginTop:10},children:(0,A.jsx)(k.Z,{current:u.page,pageSize:u.per_page,total:null==S?void 0:S.count,hideOnSinglePage:!0,onChange:function(n,e){u.page=n,u.per_page=e,d(s()({},u)),O()}})})]})]})}))}}]); |