diff --git a/p__Classrooms__Lists__Exercise__Detail__index.fefae518.async.js b/p__Classrooms__Lists__Exercise__Detail__index.fefae518.async.js index 3e4d6b6673..bbc4419eb3 100644 --- a/p__Classrooms__Lists__Exercise__Detail__index.fefae518.async.js +++ b/p__Classrooms__Lists__Exercise__Detail__index.fefae518.async.js @@ -737,7 +737,7 @@ PERFORMANCE OF THIS SOFTWARE. /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/react-infinite-scroller/index.js (<- Module is not an ECMAScript module) */ /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/react-router-dom/esm/react-router-dom.js */ /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/react-router/esm/react-router.js */ -/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/react/index.js (<- Module is not an ECMAScript module) */function(e,t,n){"use strict";n.r(t);n("Znn+");var r=n("ZTPi"),i=(n("qVdP"),n("jsC+")),a=(n("+L6B"),n("2/Rp")),o=(n("sPJy"),n("bE4q")),s=(n("miYZ"),n("tsqr")),l=(n("lUTK"),n("BvKs")),c=n("9og8"),u=(n("2qtc"),n("kLXV")),d=n("oBTY"),h=n("k1fw"),f=n("tJVT"),p=n("PpiC"),m=n("WmNS"),g=n.n(m),v=n("q1tI"),b=n.n(v),y=n("ErOA"),E=n("Ty5D"),x=n("55Ip"),_=n("9kvl"),k=n("jhfD"),w=n("Llu2"),C=n("0NbB"),S=n("V0Rq"),O=n("1vsH"),A=n("mgmH"),T=(n("7Kak"),n("9yH6")),I=(n("DjyN"),n("NUBc")),D=(n("giR+"),n("fyUT")),L=(n("5NDa"),n("5rEg")),R=(n("sRBo"),n("kaz8")),N=(n("g9YV"),n("wCAj")),j=(n("BoS7"),n("Sdc0")),M=(n("14J3"),n("BMrR")),P=(n("jCWc"),n("kPKH")),B=(n("5Dmo"),n("3S7+")),F=n("jrin"),U=(n("y8nQ"),n("Vl3Y")),H=n("wd/R"),G=n.n(H),z=Object(_.a)((function(e){return{shixunHomeworks:e.shixunHomeworks}}))((function(e){var t=e.shixunHomeworks,n=e.dispatch,r=Object(E.i)();return b.a.createElement(u.a,{centered:!0,title:"提示",visible:"打回重做"===t.actionTabs.key,okText:"确定",cancelText:"取消",onOk:Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/myshixuns/".concat(t.actionTabs.selectArrs.myshixun_identifier,"/reset_my_game.json"),{method:"post",body:{course_id:r.coursesId}});case 2:0===e.sent.status&&(s.b.success("删除成功"),n({type:"shixunHomeworks/setActionTabs",payload:{}}),n({type:"shixunHomeworks/getWorkList",payload:Object(h.a)({},t.actionTabs.params)}));case 4:case"end":return e.stop()}}),e)}))),onCancel:function(){n({type:"shixunHomeworks/setActionTabs",payload:{}})}},b.a.createElement("p",null,"该作业将被打回重做,学生实训记录将被清空!"),b.a.createElement("p",null,"确定打回?"))})),V=Object(_.a)((function(e){return{exercise:e.exercise}}))((function(e){var t,n,r,i,a,o,l,d,p=e.exercise,m=e.dispatch,y=Object(E.i)(),x=Object(v.useState)(!0),_=Object(f.a)(x,2),k=(_[0],_[1],U.a.useForm()),w=Object(f.a)(k,1)[0],C=p.actionTabs;return Object(v.useEffect)((function(){var e,t,n,r;"更改评阅"===p.actionTabs.key&&(w.resetFields(),w.setFieldsValue({subjective_score:null==C||null===(e=C.selectArrs)||void 0===e||null===(t=e.record)||void 0===t?void 0:t.subjective_score,objective_score:null==C||null===(n=C.selectArrs)||void 0===n||null===(r=n.record)||void 0===r?void 0:r.objective_score}))}),[p.actionTabs.key]),b.a.createElement(b.a.Fragment,null,b.a.createElement(u.a,{centered:!0,title:"评阅",visible:"更改评阅"===p.actionTabs.key,okText:"确定",cancelText:"取消",onOk:Object(c.a)(g.a.mark((function e(){var t,n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,w.validateFields();case 2:return r=w.getFieldValue(),e.next=5,Object(S.O)(Object(h.a)(Object(h.a)({},r),{},{id:y.categoryId,user_id:null==C||null===(t=C.selectArrs)||void 0===t||null===(n=t.record)||void 0===n?void 0:n.user_id}));case 5:0===e.sent.status&&(s.b.success("评阅成功"),w.resetFields(),m({type:"exercise/setActionTabs",payload:{}}),m({type:"exercise/getExerciseList",payload:Object(h.a)({},p.actionTabs.params)}));case 7:case"end":return e.stop()}}),e)}))),onCancel:function(){m({type:"exercise/setActionTabs",payload:{}})}},b.a.createElement("div",{className:"pl30"},b.a.createElement(U.a,{form:w},b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement(U.a.Item,{name:"subjective_score",label:"问答题成绩",rules:[{required:!0,message:"请输入!"}]},b.a.createElement(D.a,{min:0,max:1*(null==C||null===(t=C.selectArrs)||void 0===t||null===(n=t.exercise_types)||void 0===n?void 0:n.subjective_score),style:{width:150},placeholder:"请填写问答题成绩"}))),b.a.createElement(P.a,{flex:1},b.a.createElement("div",null,b.a.createElement("span",{className:"ml10"},"分,总共:",null==C||null===(r=C.selectArrs)||void 0===r||null===(i=r.exercise_types)||void 0===i?void 0:i.subjective_score,"分")))),b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement(U.a.Item,{name:"objective_score",label:"客观题成绩",rules:[{required:!0,message:"请输入!"}]},b.a.createElement(D.a,{min:0,max:1*(null==C||null===(a=C.selectArrs)||void 0===a||null===(o=a.exercise_types)||void 0===o?void 0:o.objective_score),style:{width:150},width:150,placeholder:"请填写客观题成绩"}))),b.a.createElement(P.a,{flex:1},b.a.createElement("div",null,b.a.createElement("span",{className:"ml10"},"分,总共:",null==C||null===(l=C.selectArrs)||void 0===l||null===(d=l.exercise_types)||void 0===d?void 0:d.objective_score,"分"))))))))})),W=[{name:"未评阅",id:0,type:"unreview_counts"},{name:"评阅中",id:2,type:"reviewing_counts"},{name:"已评阅",id:1,type:"review_counts"}],K=[{name:"未开始",id:0,type:"unanswer_users"},{name:"进行中",id:1,type:"answering_users"},{name:"已完成",id:2,type:"answer_users"},{name:"已提交/未答",id:3,type:"commit_with_no_answers_users"}],q=[{name:"无需补考",id:0,type:"unmake_up_users_count"},{name:"参加补考",id:1,type:"make_up_users_count"}],Y=n("BdwD"),Q=(n("iQDF"),n("+eQT")),J=Object(_.a)((function(e){return{exercise:e.exercise}}))((function(e){var t,n,r=e.exercise,i=e.dispatch,a=Object(E.i)(),o=Object(v.useState)(!0),l=Object(f.a)(o,2),d=(l[0],l[1],U.a.useForm()),p=Object(f.a)(d,1)[0],m=Object(v.useState)(!1),y=Object(f.a)(m,2),x=y[0],_=y[1],k=Object(v.useState)({}),w=Object(f.a)(k,2),C=w[0],O=w[1],A=r.actionTabs;Object(v.useEffect)((function(){var e,t,n,i;"延时"===r.actionTabs.key&&(_(!1),p.resetFields(),p.setFieldsValue({subjective_score:null==A||null===(e=A.selectArrs)||void 0===e||null===(t=e.record)||void 0===t?void 0:t.subjective_score,objective_score:null==A||null===(n=A.selectArrs)||void 0===n||null===(i=n.record)||void 0===i?void 0:i.objective_score}))}),[r.actionTabs.key]);function T(e,t){for(var n=[],r=e;rG()(null==A||null===(n=A.selectArrs)||void 0===n?void 0:n.exercise_end_at).endOf("minute")||e<=G()().startOf("day"))},disabledTime:function(e){var t,n=null==A||null===(t=A.selectArrs)||void 0===t?void 0:t.exercise_end_at,r=G()(e).format("HH");if(G()(e).isSame(G()(n),"day")){var i=G()(n).format("HH"),a=G()(n).format("mm");return{disabledHours:function(){return T(0,24).splice(1*i+1,24-i)},disabledMinutes:function(){return G()(e).isSame(G()(n),"hour")&&r<=i?T(a,60):T(60,60)}}}if(G()(e).isSame(G()(),"day")){var o=G()().format("HH"),s=G()().format("mm");return{disabledHours:function(){return T(0,24).splice(0,o)},disabledMinutes:function(){return r<=o?T(0,s):T(60,60)}}}return!1},getPopupContainer:function(e){return e.parentNode},allowClear:!1,onChange:function(e,t){var n,r;G()(t)>G()(null==A||null===(n=A.selectArrs)||void 0===n?void 0:n.exercise_end_at)&&p.setFieldsValue({time:G()(null==A||null===(r=A.selectArrs)||void 0===r?void 0:r.exercise_end_at).format("YYYY-MM-DD HH:mm")})}})))),b.a.createElement(M.a,{style:{marginLeft:78,marginTop:4}},b.a.createElement(U.a.Item,{name:"is_clear",className:"ml10",initialValue:!1,valuePropName:"checked"},b.a.createElement(R.a,null,"确认清除该学生的已切屏次数")))))))})),X=n("kaH+"),Z=n("dhSg"),$=n("xKgJ"),ee=n("hjlX"),te=n.n(ee),ne=function(e){var t=e.item,n=e.renderText,r=Object(E.i)(),i=Object(v.useState)(),a=Object(f.a)(i,2),o=a[0],s=a[1],l=function(){var e=Object(c.a)(g.a.mark((function e(){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!o){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,Object(S.B)({id:r.categoryId,user_id:null==t?void 0:t.user_id});case 4:(n=e.sent)&&s(n);case 6:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return b.a.createElement(B.a,{onVisibleChange:l,title:b.a.createElement("div",null,"单选题 ",null==o?void 0:o.single_question_score,"分 ",b.a.createElement("br",null),"多选题 ",null==o?void 0:o.multiple_question_score,"分 ",b.a.createElement("br",null),"判断题 ",null==o?void 0:o.judgement_question_score,"分 ",b.a.createElement("br",null),"填空题 ",null==o?void 0:o.completion_question_score,"分 ",b.a.createElement("br",null),"实训题 ",null==o?void 0:o.shixun_question_score,"分")},n)},re=Object(_.a)((function(e){var t=e.exercise,n=e.loading,r=e.globalSetting;return{exercise:t,loading:n.effects,globalSetting:r}}))((function(e){var t,n,r,i,o,l,m,k,w,C,A,H,Q,ee,re,ie,ae,oe,se,le,ce,ue,de,he,fe,pe,me,ge,ve,be,ye,Ee,xe,_e,ke,we,Ce,Se=e.exercise,Oe=e.loading,Ae=e.dispatch,Te=e.globalSetting,Ie=e.checkDomainAuthority,De=e.getparams,Le=(Object(p.a)(e,["exercise","loading","dispatch","globalSetting","checkDomainAuthority","getparams"]),Object(E.h)()),Re=Object(E.i)(),Ne=Object(v.useState)(Object(h.a)({},Re)),je=Object(f.a)(Ne,2),Me=je[0],Pe=je[1],Be=Se.exerciseList,Fe=Se.commonHeader,Ue=Object(v.useState)({}),He=Object(f.a)(Ue,2),Ge=He[0],ze=(He[1],Object(v.useState)("")),Ve=Object(f.a)(ze,2),We=(Ve[0],Ve[1],Object(v.useState)(0)),Ke=Object(f.a)(We,2),qe=Ke[0],Ye=Ke[1],Qe=Object(v.useState)({}),Je=Object(f.a)(Qe,2),Xe=(Je[0],Je[1],Object(v.useState)(!1)),Ze=Object(f.a)(Xe,2),$e=Ze[0],et=Ze[1],tt=Object(v.useState)("alert"),nt=Object(f.a)(tt,2),rt=nt[0],it=nt[1],at=Object(v.useState)(0),ot=Object(f.a)(at,2),st=ot[0],lt=ot[1],ct=Object(v.useState)(!1),ut=Object(f.a)(ct,2),dt=(ut[0],ut[1]),ht=Object(v.useState)(!1),ft=Object(f.a)(ht,2),pt=ft[0],mt=ft[1],gt=U.a.useForm(),vt=Object(f.a)(gt,1)[0],bt=Object(v.useState)([]),yt=Object(f.a)(bt,2),Et=yt[0],xt=yt[1],_t=Object(v.useState)(!0),kt=Object(f.a)(_t,2),wt=(kt[0],kt[1],Object(v.useRef)(),Object(v.useState)(1)),Ct=Object(f.a)(wt,2),St=Ct[0],Ot=Ct[1],At=Object(v.useState)(""),Tt=Object(f.a)(At,2),It=Tt[0],Dt=Tt[1],Lt=Object(v.useState)(),Rt=Object(f.a)(Lt,2),Nt=Rt[0],jt=Rt[1],Mt=Object(v.useState)(!1),Pt=Object(f.a)(Mt,2),Bt=Pt[0],Ft=Pt[1];function Ut(){return(Ut=Object(c.a)(g.a.mark((function e(t){var n,r,i,a,o;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return jt(null==t?void 0:t.exercise_user_id),Ft(2===t.commit_status||3===t.commit_status),dt(!0),e.next=5,Object(y.a)("/api/exercises/".concat(Me.categoryId,"/student_info.json"),{method:"get",params:{exercise_user_id:null==t?void 0:t.exercise_user_id}});case 5:(null==(o=e.sent)||null===(n=o.data)||void 0===n||null===(r=n.exercise_user_photos)||void 0===r?void 0:r.length)>0?et(!0):s.b.info("当前暂无照片"),xt(null==o||null===(i=o.data)||void 0===i?void 0:i.exercise_user_photos),lt(null==o||null===(a=o.data)||void 0===a?void 0:a.alert_count),dt(!1);case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}Object(v.useEffect)((function(){var e,t;if(Object($.c)())Ye(null===(t=Be.exercise_types)||void 0===t?void 0:t.total_users);else if(null!=Be&&null!==(e=Be.exercise_types)&&void 0!==e&&e.score_open){var n;Ye(null===(n=Be.exercise_types)||void 0===n?void 0:n.unanswer_users)}}),[Be]),Object(v.useEffect)((function(){var e,t={};if(null!=Le&&null!==(e=Le.query)&&void 0!==e&&e.exercise_group_id){var n,r;if(t={review:[0,2],commit_status:[2,3]},"0"!==(null==Le||null===(n=Le.query)||void 0===n?void 0:n.exercise_group_id))t.exercise_group_id=[Number(null==Le||null===(r=Le.query)||void 0===r?void 0:r.exercise_group_id)];vt.setFieldsValue(Object(h.a)({},t))}Me=Object(h.a)(Object(h.a)({},Me),t),Pe(Object(h.a)({},Me)),Ae({type:"exercise/getExerciseList",payload:Me}),Ae({type:"exercise/clearData",payload:{key:"reviewExercise"}})}),[]);var Ht=[{title:"序号",dataIndex:"name",fixed:"left",width:80,align:"center",render:function(e,t,n){return b.a.createElement(B.a,{title:20*((Me.page||1)-1)+n+1},b.a.createElement("span",null,20*((Me.page||1)-1)+n+1))}},{title:"姓名",dataIndex:"user_name",fixed:"left",width:120,ellipsis:!0,align:"left",render:function(e,t){return b.a.createElement("div",null,e||"--",!(null==t||!t.delayed_at)&&b.a.createElement(B.a,{title:b.a.createElement("div",null,"交卷截止时间调整至",b.a.createElement("span",{className:"ml5"},G()(t.delayed_at).format("YYYY-MM-DD HH:mm")))},b.a.createElement("span",{className:"iconfont icon-shizhong c-blue"})))}},!(null!=Be&&null!==(t=Be.exercise_types)&&void 0!==t&&t.is_excellent)&&{title:"学号",ellipsis:!0,dataIndex:"student_id",width:140,align:"left",sorter:!0,render:function(e){return e||"--"}},!(null!=Be&&null!==(n=Be.exercise_types)&&void 0!==n&&n.is_excellent)&&0!==(null==Be||null===(r=Be.exercise_types)||void 0===r?void 0:r.groups_count)&&{title:"分班",width:220,ellipsis:!0,dataIndex:"user_group_name",align:"left",render:function(e){return e||"--"}},{title:"异常行为",dataIndex:"exception_count",width:145,ellipsis:!0,align:"left",render:function(e,t){return 0===e?"0次":b.a.createElement("a",{target:"_blank",href:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/abnormal?userid=").concat(null==t?void 0:t.exercise_user_id)},e+"次"||!1)}},{title:"最终成绩",width:100,dataIndex:"score",align:"center",sorter:!0,render:function(e,t){return!t.open_total_score&&Object($.s)()?"老师审核中":100===(e="number"==typeof e?Number(e):e)?b.a.createElement("span",{className:"c-green"},e||"--"):e>60?b.a.createElement("span",{className:"c-orange"},e||"--"):b.a.createElement("span",null,e||"--")}},!(1!==(null==Be||null===(i=Be.exercise_types)||void 0===i?void 0:i.objective)||1===(null==Be||null===(o=Be.exercise_types)||void 0===o?void 0:o.objective)&&1!==(null==Be||null===(l=Be.exercise_types)||void 0===l?void 0:l.subjective))&&{title:"客观题得分",dataIndex:"objective_score",align:"center",width:100,render:function(e,t){return!t.open_total_score&&Object($.s)()?"老师审核中":(n=(e="number"==typeof e?Number(e):e)>=0&&e<=60?b.a.createElement("span",null,e):100===e?b.a.createElement("span",{className:"c-green"},e):e>60?b.a.createElement("span",{className:"c-orange"},e):"--",b.a.createElement(ne,{renderText:n,item:t}));var n}},!(1!==(null==Be||null===(m=Be.exercise_types)||void 0===m?void 0:m.subjective)||1===(null==Be||null===(k=Be.exercise_types)||void 0===k?void 0:k.subjective)&&1!==(null==Be||null===(w=Be.exercise_types)||void 0===w?void 0:w.objective))&&{title:"问答题得分",width:100,dataIndex:"subjective_score",align:"center",render:function(e,t){return!t.open_total_score&&Object($.s)()?"老师审核中":0===(e="number"==typeof e?Number(e):e)?b.a.createElement("span",null,e," ",b.a.createElement("span",{className:"c-red"}," (待评审)")):e>0&&e<=60?b.a.createElement("span",null,e):100===e?b.a.createElement("span",{className:"c-green"},e):e>60?b.a.createElement("span",{className:"c-orange"},e):"--"}},{title:"提交状态",dataIndex:"commit_status",width:130,align:"left",render:function(e,t){return 0===e?b.a.createElement("span",{style:{color:"#666666"}},"未开始"):1===e?b.a.createElement("span",{style:{color:"#DF3042"}},!t.is_make_up&&"进行中",t.is_make_up&&"进行中 (补考)"):2===e?b.a.createElement("span",{style:{color:"#5AB891"}},!t.is_make_up&&"已完成",t.is_make_up&&"已完成 (补考)"):b.a.createElement("span",{style:{color:"#5AB891"}},!t.is_make_up&&"已提交(未答)",t.is_make_up&&"已提交/未答(补考)")}},{title:"开始答题时间",dataIndex:"start_at",width:145,ellipsis:!0,align:"left",sorter:!0,render:function(e){return e?G()(e).format("YYYY-MM-DD HH:mm"):"--"}},{title:"提交时间",dataIndex:"end_at",width:145,ellipsis:!0,align:"left",sorter:!0,render:function(e){return e?G()(e).format("YYYY-MM-DD HH:mm"):"--"}},(null==Fe?void 0:Fe.screen_open)&&{title:b.a.createElement("span",null,"切屏次数 ",b.a.createElement(B.a,{title:"红色代表学生切屏超过规定次数被强制交卷"},b.a.createElement("span",{className:"icon-xiaowenhao"}))),dataIndex:"screen_used_num",width:145,ellipsis:!0,align:"center",render:function(e,t){return b.a.createElement("span",{className:e>(null==t?void 0:t.screen_total_num)&&"c-red"},e,"/",null==t?void 0:t.screen_total_num)}},(null==Fe?void 0:Fe.exercise_status)>1&&(null==Fe?void 0:Fe.open_camera)&&Object($.c)()&&!(null!==(C=Te.setting)&&void 0!==C&&C.is_local)&&{title:"作业与测验照片",dataIndex:"photo_count",align:"center",width:100,render:function(e,t){return t.commit_status>0?b.a.createElement("a",{onClick:function(){!function(e){Ut.apply(this,arguments)}(t)}},"".concat(e||0,"/").concat(null==Fe?void 0:Fe.photo_count)):"--"}},(null==Fe?void 0:Fe.ip_bind)&&Object($.e)()&&{title:"作业与测验IP",dataIndex:"last_ip",align:"center",width:100,render:function(e,t){return b.a.createElement(b.a.Fragment,null,e||"--",1===t.commit_status&&Fe.ip_bind&&t.last_ip&&b.a.createElement(a.a,{type:"link",onClick:Object(c.a)(g.a.mark((function e(){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=u.a.confirm({title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"解除绑定"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-yiguanbi1 current c-grey-c",onClick:function(){return n.destroy()}}))),width:500,icon:null,okText:"确定",cancelText:"取消",className:"custom-modal-divider",content:b.a.createElement("div",null,"为学生解除作业与测验IP绑定后,学生可以使用新的IP地址进入作业与测验。",b.a.createElement("span",{className:"c-red"},"如果该学生正在进行中,将无法作答,需要重新进入作业与测验。"),"您确定要解除该学生的作业与测验IP绑定?"),onOk:function(){var e=Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(S.ab)({id:Me.categoryId,exercise_user_id:t.exercise_user_id});case 2:0===e.sent.status&&(s.b.success("解绑成功"),Ae({type:"exercise/getExerciseList",payload:Me}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 1:case"end":return e.stop()}}),e)})))},"解绑"))}},(null==Fe?void 0:Fe.open_camera)&&Object($.e)()&&Fe.exercise_status<3&&!(null!==(A=Te.setting)&&void 0!==A&&A.is_local)&&{title:"允许不拍摄",dataIndex:"close_camera",align:"center",width:100,render:function(e,t){return b.a.createElement(j.a,{checked:e,onClick:Object(c.a)(g.a.mark((function n(){return g.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:e?u.a.info({title:"提示",content:b.a.createElement("div",null,"不允许修改"),okText:"确认"}):u.a.confirm({title:"允许不摄像警告",content:b.a.createElement("div",null,"为保证作业与测验公平,本次作业与测验已开启防作弊设置,这需要调用学生的摄像头。如学生硬件设施确有问题,为保证学生作业与测验权利,教师可临时取消限制,允许学生参考。 本操作不可撤回,不可修改。 您确认同意该学生不开启摄像头参加作业与测验吗?"),onOk:function(){var e=Object(c.a)(g.a.mark((function e(){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(S.c)(Object(h.a)(Object(h.a)({},Me),{},{exercise_user_id:t.exercise_user_id}));case 2:0===(null==(n=e.sent)?void 0:n.status)&&(s.b.success("操作成功"),Ae({type:"exercise/getExerciseList",payload:Object(h.a)({},Me)}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 1:case"end":return n.stop()}}),n)})))})}},Object($.c)()&&{title:"评阅状态",width:130,dataIndex:"has_comment",align:"center",render:function(e,t){return!e&&t.review_status?"评阅中":e?"已评阅":"未评阅"}},((null==Fe?void 0:Fe.assistant_auth)||Object($.c)()||Object($.s)())&&Ie&&{title:"操作",fixed:"right",dataInex:"action",align:"center",width:236,render:function(e,t){return b.a.createElement("div",null,Object($.c)()&&b.a.createElement(a.a,{ghost:!0,type:"primary",size:"small",disabled:t.commit_status<2},b.a.createElement("a",{className:t.commit_status>1?"c-blue":"c-black",href:t.commit_status>1&&"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/review/").concat(t.login),onClick:function(e){t.commit_status<2&&e.preventDefault(),3===t.commit_status&&(e.preventDefault(),Ae({type:"exercise/setActionTabs",payload:{key:"更改评阅",selectArrs:{record:Object(h.a)({},t),exercise_types:Object(h.a)({},null==Be?void 0:Be.exercise_types)},params:Object(h.a)({},Me)}}))}},t.has_comment&&"更改评阅",!t.has_comment&&"评阅")),!Object($.s)()&&["考试中"].includes(O.c[Fe.exercise_status])&&b.a.createElement(a.a,{ghost:!0,type:"primary",disabled:(null==t?void 0:t.commit_status)>1,className:"ml10",size:"small",onClick:function(){u.a.confirm({centered:!0,okText:"确定",cancelText:"取消",title:"提示",icon:null,className:"custom-modal-divider",content:"确认将该学生的作业与测验状态调整为已交卷吗?",onOk:function(){var e;u.a.confirm({centered:!0,okText:"确定",cancelText:"取消",title:"提示",icon:null,className:"custom-modal-divider",content:"确认将".concat(null==t?void 0:t.user_name,"的作业与测验状态调整为已交卷吗?"),onOk:(e=Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/exercises/".concat(Me.categoryId,"/commit_exercise_force.json"),{method:"post",body:{user_id:null==t?void 0:t.user_id}});case 2:0===e.sent.status&&Ae({type:"exercise/getExerciseList",payload:Me});case 4:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)})})}})}},"强制提交"),Object($.s)()&&t.commit_status>1&&b.a.createElement("span",{style:{color:"#0152d9",marginRight:"5px",cursor:"pointer"},onClick:function(){var e;null!=Be&&null!==(e=Be.exercise_types)&&void 0!==e&&e.answered_open?_.d.push("/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/users/").concat(null==t?void 0:t.login,"?check=true")):s.b.info("老师已设置本作业与测验在交卷后不可查看")}},"查看"),(null==Fe?void 0:Fe.exercise_time)>0&&Object($.e)()&&b.a.createElement(B.a,{title:Object($.k)()?"您的权限不足,请联系本课堂管理员":3===Fe.exercise_status&&"本作业与测验已截止,请先修改截止时间使本作业与测验处于“进行中”"},b.a.createElement(a.a,{danger:!0,className:"c-red ml10",size:"small",disabled:!!Object($.k)()||3===Fe.exercise_status,onClick:function(){Object($.i)()&&Ae({type:"exercise/setActionTabs",payload:{key:"延时",selectArrs:t,exercise_time:Fe.exercise_time,params:Object(h.a)({},Me)}})}},"延时")))}}].filter((function(e){return!!e})),Gt=Object(d.a)(Ht);return Gt[0]=Object(h.a)({},Gt[0]),Gt[(null==Gt?void 0:Gt.length)-1]=Object(h.a)({},Gt[(null==Gt?void 0:Gt.length)-1]),Gt[0].render=function(){return"我"},Gt[(null==Gt?void 0:Gt.length)-1].render=function(){var e;return null!=Be&&null!==(e=Be.current_answer_user)&&void 0!==e&&e.login?b.a.createElement("span",{style:{color:"#0152d9",marginRight:"5px",cursor:"pointer"},onClick:function(){var e,t;null!=Be&&null!==(e=Be.exercise_types)&&void 0!==e&&e.answered_open?_.d.push("/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/users/").concat(null==Be||null===(t=Be.current_answer_user)||void 0===t?void 0:t.login)):s.b.info("老师已设置本作业与测验在交卷后不可查看")}},"查看"):"--"},b.a.createElement("section",{className:"minH500 bg-white mb50 inline-block w100"},(null==Be||null===(H=Be.exercise_types)||void 0===H?void 0:H.score_open)&&Object($.s)()&&b.a.createElement(N.a,{hideOnSinglePage:!0,pagination:!1,showHeader:!1,dataSource:[Object(h.a)({},null==Be?void 0:Be.current_answer_user)],columns:Gt,scroll:{x:120*(null==Ht?void 0:Ht.length)}}),!Object($.c)()&&b.a.createElement("div",{className:"bg-white pt10 pl25 mt15"},!(null==Be||null===(Q=Be.exercise_types)||void 0===Q||!Q.answer_users)&&b.a.createElement("span",{className:"mr10"},b.a.createElement("span",{style:{color:"#FF954C"}},null==Be||null===(ee=Be.exercise_types)||void 0===ee?void 0:ee.answer_users," "),"已交"),!(null==Be||null===(re=Be.exercise_types)||void 0===re||!re.unanswer_users)&&b.a.createElement("span",{className:"mr10"},null==Be||null===(ie=Be.exercise_types)||void 0===ie?void 0:ie.unanswer_users,"未交"),"--"!==(null==Be||null===(ae=Be.exercise_types)||void 0===ae?void 0:ae.exercise_end_time)&&b.a.createElement("span",null,"剩余提交时间:",b.a.createElement("span",{style:{color:"#FF954C"}},null==Be||null===(oe=Be.exercise_types)||void 0===oe?void 0:oe.exercise_end_time))),!(null!==(se=Be.exercise_types)&&void 0!==se&&se.exercise_all_users)&&!Object($.s)()&&b.a.createElement(Y.a,null),(!(null===(le=Be.exercise_types)||void 0===le||!le.exercise_all_users)||Object($.s)())&&b.a.createElement("aside",null,Object($.c)()&&b.a.createElement("aside",{className:"pt20"},b.a.createElement(U.a,{form:vt,onValuesChange:function(e){Me.page=1;var t=Object.assign({},vt.getFieldValue());if(Object.keys(t).map((function(e){"objective_score_gte"!==e&&"objective_score_lte"!==e&&(t[e].includes("all")?(delete Me[e],vt.setFieldsValue(Object(F.a)({},e,"all"))):(Me[e]=t[e],""!=t[e]&&t[e]?vt.setFieldsValue(Object(F.a)({},e,Me[e])):vt.setFieldsValue(Object(F.a)({},e,"all"))))})),e.objective_score_gte||e.objective_score_lte){if(t.objective_score_gte>t.objective_score_lte)return vt.setFieldsValue({objective_score_lte:t.objective_score_gte}),!1;if(""==t.objective_score_gte||""==t.objective_score_lte||!t.objective_score_gte||!t.objective_score_lte)return delete Me.objective_score_lte,delete Me.objective_score_gte,!1;Me.objective_score_lte=t.objective_score_lte,Me.objective_score_gte=t.objective_score_gte}Pe(Object(h.a)({},Me)),De(Object(h.a)({},Me)),Ae({type:"exercise/getExerciseList",payload:Me})},initialValues:(ce={},Object(F.a)(ce,"commit_status","all"),Object(F.a)(ce,"exercise_group_id","all"),Object(F.a)(ce,"review","all"),Object(F.a)(ce,"is_make_up","all"),ce)},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"选择班级:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(ue=Ge.course_group)&&void 0!==ue&&ue.length)},"全部")),b.a.createElement(P.a,{flex:"1"},Be.course_groups&&Be.course_groups.map((function(e,t){return b.a.createElement(R.a,{value:e.exercise_group_id,className:"ml0 mr8"},e.exercise_group_name,"(",e.exercise_group_students,")")})))))),b.a.createElement(U.a.Item,{name:"commit_status"},b.a.createElement(R.a.Group,{value:[],style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"提交状态:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(de=Ge.commit_status)&&void 0!==de&&de.length)},"全部")),b.a.createElement(P.a,{flex:"1"},K.map((function(e,t){var n;return b.a.createElement(R.a,{name:"commit_status",value:e.id},e.name,"(",null==Be||null===(n=Be.exercise_types)||void 0===n?void 0:n[e.type],")")})))))),b.a.createElement(U.a.Item,{name:"review"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"评阅状态:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(he=Ge.review)&&void 0!==he&&he.length)},"全部")),b.a.createElement(P.a,{flex:"1"},null==W?void 0:W.map((function(e,t){var n;return b.a.createElement(R.a,{value:e.id,key:t},e.name,"(",null==Be||null===(n=Be.exercise_types)||void 0===n?void 0:n[e.type],")")})))))),(null==Be||null===(fe=Be.exercise_types)||void 0===fe?void 0:fe.open_make_up)&&b.a.createElement(U.a.Item,{name:"is_make_up"},b.a.createElement(R.a.Group,{value:[],style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"补考状态:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(pe=Ge.is_make_up)&&void 0!==pe&&pe.length)},"全部")),b.a.createElement(P.a,{flex:"1"},q.map((function(e,t){var n;return b.a.createElement(R.a,{name:"is_make_up",value:e.id},e.name,"(",null==Be||null===(n=Be.exercise_types)||void 0===n?void 0:n[e.type],")")})))))),b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{flex:"1"},b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,null,b.a.createElement(L.a.Search,{allowClear:!0,placeholder:"请输入姓名或者学号搜索",onSearch:function(e){Me.search=e,Ae({type:"exercise/getExerciseList",payload:Object(h.a)(Object(h.a)({},Me),{},{page:1})})},style:{width:240}})))),!(null!=Fe&&Fe.is_random)&&b.a.createElement(P.a,{className:["tr",te.a.rightFilter].join(" ")},1===(null===(me=Be.exercise_types)||void 0===me?void 0:me.objective)&&1===(null===(ge=Be.exercise_types)||void 0===ge?void 0:ge.subjective)&&b.a.createElement(b.a.Fragment,null,"按客观题得分分组",b.a.createElement("span",null,b.a.createElement(U.a.Item,{name:"objective_score_gte"},b.a.createElement(D.a,{min:0,max:null==Be||null===(ve=Be.exercise_types)||void 0===ve?void 0:ve.objective_score,placeholder:"最低"}))),b.a.createElement("span",null,b.a.createElement(U.a.Item,{name:"objective_score_lte"},b.a.createElement(D.a,{min:(null===(be=Me)||void 0===be?void 0:be.objective_score_gte)||0,max:null==Be||null===(ye=Be.exercise_types)||void 0===ye?void 0:ye.objective_score,placeholder:"最高"})))),1===(null===(Ee=Be.exercise_types)||void 0===Ee?void 0:Ee.subjective)&&Ie&&b.a.createElement(b.a.Fragment,null,b.a.createElement(a.a,{type:"default",disabled:(null==Be||null===(xe=Be.total_exercise_users)||void 0===xe?void 0:xe.length)<1},b.a.createElement(x.a,{target:"_blank",to:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/abnormal")},b.a.createElement("span",{className:"iconfont icon-filesync3x"}),b.a.createElement("span",null,"学生异常行为"))),b.a.createElement(a.a,{type:"default",disabled:(null==Be||null===(_e=Be.total_exercise_users)||void 0===_e?void 0:_e.length)<1},b.a.createElement(x.a,{to:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/reviews/group")},b.a.createElement("span",{className:"iconfont icon-tijiaozongjie"}),b.a.createElement("span",null,"集中批量批阅"))),b.a.createElement(a.a,{type:"default",disabled:(null==Be||null===(ke=Be.total_exercise_users)||void 0===ke?void 0:ke.length)<1},b.a.createElement(x.a,{to:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/review/").concat(null==Be||null===(we=Be.total_exercise_users)||void 0===we||null===(Ce=we[0])||void 0===Ce?void 0:Ce.user_login)},b.a.createElement("span",{className:"iconfont icon-filesync3x"}),b.a.createElement("span",null,"组内顺序批阅")))))))),b.a.createElement(N.a,{className:"mt30",loading:Oe["exercise/getExerciseList"],hideOnSinglePage:!0,pagination:!1,dataSource:(null==Be?void 0:Be.exercise_users)||[],columns:Ht,scroll:{x:120*(null==Ht?void 0:Ht.length)},size:"large",onChange:function(e,t,n){Me.page=1,console.log(n,444),void 0===n.order?(Me.order_type=null,Me.order=null):(Me.order_type="descend"===n.order?"desc":"asc",Me.order=n.field),Ae({type:"exercise/getExerciseList",payload:Object(h.a)({},Me)})}}),qe>20&&b.a.createElement("aside",{className:"tc mb50 pb30 mt30"},b.a.createElement(I.a,{onChange:function(e,t){Me.page=e,Me.limit=20,Ae({type:"exercise/getExerciseList",payload:Object(h.a)({},Me)})},current:Me.page||1,defaultPageSize:20,total:qe,showSizeChanger:!1,showQuickJumper:!0,hideOnSinglePage:!0,showTotal:function(e){return b.a.createElement("span",{className:"mr10"},"共",b.a.createElement("span",{className:"c-orange"},e),"条数据")}}))),b.a.createElement(V,null),b.a.createElement(z,null),b.a.createElement(J,null),$e&&b.a.createElement(u.a,{title:"防作弊头像",visible:$e,centered:!0,onCancel:function(){Ot(1),et(!1),xt([]),it("alert"),Dt("")},footer:b.a.createElement("div",{style:{display:"flex"}},b.a.createElement("div",{style:{flex:1,textAlign:"left"}}," ",b.a.createElement(a.a,{onClick:Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(It){e.next=3;break}return s.b.info("输入框内容不能为空"),e.abrupt("return");case 3:return mt(!0),e.next=6,Object(y.a)("/api/exercises/".concat(Me.categoryId,"/send_alert.json"),{method:"post",body:{content:It,clazz:rt,exercise_user_id:Nt}});case 6:0===(null==(t=e.sent)?void 0:t.status)&&(s.b.info("发送成功"),Ot(1),et(!1),xt([]),it("alert"),Dt("")),mt(!1);case 9:case"end":return e.stop()}}),e)}))),disabled:Bt,loading:pt},"发送")),b.a.createElement(a.a,{disabled:0===(null==Et?void 0:Et.length),style:{marginRight:"10px"},onClick:Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ot(St-1==0?null==Et?void 0:Et.length:St-1);case 2:case"end":return e.stop()}}),e)})))},"上一张"),b.a.createElement(a.a,{disabled:0===(null==Et?void 0:Et.length),type:"primary",onClick:Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ot(St===(null==Et?void 0:Et.length)?1:St+1);case 2:case"end":return e.stop()}}),e)})))},"下一张"))},b.a.createElement("img",{style:{width:"234px !important",height:"132px",borderRadius:"5px"},src:Et[St-1]}),b.a.createElement("span",{onClick:function(){Z.a.publish("preview-image",Et[St-1]),console.log("src:",Et[St-1],Et,St-1)},style:{background:"#0152d9",color:"#fff",display:"inline-flex",width:"54px",height:"20px",borderRadius:"10px",justifyContent:"center",lineHeight:"20px",alignItems:"center",position:"absolute",top:"70px",left:"190px",zIndex:5,cursor:"pointer"}},"预览"),b.a.createElement("span",{style:{color:"#0152d9",marginTop:"16px",width:"234px",justifyContent:"center",display:"flex"}},St+"/"+(null==Et?void 0:Et.length)),b.a.createElement(T.a,{className:"mt20",checked:"alert"===rt,onChange:function(){return it("alert")}},"发送警告",b.a.createElement("span",{className:"font14 c-grey-999"},"(如发现学生在进行中的照片存在异常时,可发送消息给学生)")),b.a.createElement(T.a,{className:"mt10",checked:"notice"===rt,onChange:function(){return it("notice")}},"发送通知",b.a.createElement("span",{className:"font14 c-grey-999"},"(进行中如有消息通知,可发送消息给学生)")),b.a.createElement(L.a.TextArea,{className:"mt20",value:It,onChange:function(e){return Dt(e.target.value)},placeholder:"请输入".concat("alert"===rt?"警告":"通知","内容").concat("alert"===rt?",如:扭头低头大幅度动作检测":"")}),b.a.createElement("div",{style:{color:"#E30000",fontSize:12,margin:"10px 0"}},"已发送",st,"次警告")),b.a.createElement(X.a,null))})),ie=(n("OaEy"),n("2fM7")),ae=n("8Skl"),oe=n("y3Kf"),se=n("mxOx"),le=n.n(se),ce=n("LvDl"),ue=n.n(ce),de=n("GUcZ"),he=(n("ulZh"),/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i),fe=Object(v.forwardRef)((function(e,t){var n,r,i,a=e.src,o=(e.videoId,e.logWatchHistory,e.courseId,e.startTime,e.handlePause,e.handlePlay,e.handlePlayEnded,e.videoSpeed,"flv"===(null===(r=a=null===(n=a)||void 0===n?void 0:n.replace("http://","https://"))||void 0===r||null===(i=r.split("."))||void 0===i?void 0:i.pop())),s=Object(v.useRef)(),l=Object(v.useRef)(),c=Object(v.useRef)(0),u=Object(v.useRef)(0),d=Object(v.useState)(0),h=Object(f.a)(d,2),p=h[0],m=h[1],g=navigator.userAgent.toLowerCase().match(he);g&&g[0];Object(v.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return s.current.currentTime},getDuration:function(){return s.current.duration}}})),Object(v.useEffect)((function(){u.current=void 0;try{var e;de.a.isSupported&&o&&a&&(null===(e=a)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(u.current=de.a.createPlayer({type:"flv",volume:.8,cors:!0,url:a+"?t="+Date.now(),muted:!1,isLive:!0}),u.current.on("play",(function(){console.log(21111)})),s.current&&(u.current.detachMediaElement(s.current),u.current.attachMediaElement(s.current),u.current.load(),u.current.play())):s.current.setAttribute("src",a+"?t="+Date.now())}catch(e){setTimeout((function(){m(p+1)}),1e3)}return console.log("src:",a),function(){var e,t,n,r,i,a,o,l;u.current&&(null===(e=u.current)||void 0===e||null===(t=e.unload)||void 0===t||t.call(e),null===(n=u.current)||void 0===n||null===(r=n.pause)||void 0===r||r.call(n),null===(i=u.current)||void 0===i||null===(a=i.destroy)||void 0===a||a.call(i),null===(o=u.current)||void 0===o||null===(l=o.detachMediaElement)||void 0===l||l.call(o,s.current),u.current=void 0,s.current.src="")}}),[s,o,a,p]),Object(v.useEffect)((function(){return l.current=setInterval((function(){c.current>0&&c.current===s.current.currentTime&&(console.log("播放一次"),m(p+1)),c.current=s.current.currentTime}),3e3),function(){clearInterval(l.current)}}),[]);return b.a.createElement("video",{ref:s,onerr:!0,onErrorCapture:function(){m(p+1)},autoPlay:!0,muted:!0})})),pe=Object(_.a)((function(e){return{exercise:e.exercise,user:e.user}}))((function(e){var t,n=e.exercise,r=e.dispatch,i=(e.user,Object(E.i)()),a=Object(v.useState)({page:1,limit:20,sort_by:null,sort_direction:null,state:null,audit:null,name:"",save_name:"",exercise_id:null==i?void 0:i.categoryId}),o=Object(f.a)(a,2),l=o[0],d=o[1],p=U.a.useForm(),m=Object(f.a)(p,1)[0],x=Object(v.useState)(),_=Object(f.a)(x,2),k=_[0],w=_[1],C=Object(v.useState)(!1),S=Object(f.a)(C,2),A=S[0],T=S[1],I=n.exerciseList,D=n.commonHeader,j=Object(v.useState)([]),H=Object(f.a)(j,2),G=H[0],z=H[1],V=Object(v.useState)([]),W=Object(f.a)(V,2),K=W[0],q=W[1],Y=Object(v.useState)(0),Q=Object(f.a)(Y,2),J=Q[0],$=Q[1],ee=Object(v.useState)(!0),te=Object(f.a)(ee,2),ne=te[0],re=te[1],se=Object(v.useState)(!1),ce=Object(f.a)(se,2),de=ce[0],he=ce[1],pe=Object(v.useRef)(null);Object(v.useEffect)((function(){ge(),ve(l)}),[]),Object(v.useEffect)((function(){return clearInterval(pe.current),2===(null==D?void 0:D.exercise_status)&&(pe.current=setInterval((function(){ve(l)}),3e4)),function(){clearInterval(pe.current)}}),[null==D?void 0:D.exercise_status,l]);var ge=function(){r({type:"exercise/getExerciseList",payload:i})},ve=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=ue.a.cloneDeep(t),console.log(n,"sendData"),re(!0),z([]),e.next=6,Object(y.a)("/api/exercises/".concat(null==t?void 0:t.exercise_id,"/exercise_identity_photos.json"),{method:"get",params:n});case 6:r=e.sent,q([]),re(!1),$(null==r?void 0:r.count),z((null==r?void 0:r.exercise_users)||[]);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),be=function(e,t){l.page=1,l[t]=e,d(Object(h.a)({},l)),ve(l)};Object(v.useEffect)((function(){document.getElementById("divhe")&&(document.getElementById("divhe").scrollHeight>47&&(w(47),T(!0)))}),[document.getElementById("divhe"),I]);var ye=[{title:"序号",dataIndex:"number",width:80,render:function(e,t,n){return l.limit*(l.page-1)+n+1}},{title:"姓名",dataIndex:"user_name",width:110,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement(B.a,{placement:"bottomLeft",title:e},b.a.createElement("span",null,e))}},{title:"学号",dataIndex:"student_id",sorter:!0,width:140,showSorterTooltip:!1,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement(B.a,{placement:"bottomLeft",title:e||"--"},b.a.createElement("span",null,e||"--"))}},{title:"分班",dataIndex:"user_group_name",ellipsis:{showTitle:!1},render:function(e,t){return e?b.a.createElement(B.a,{placement:"bottom",title:e},b.a.createElement("span",{className:le.a.es},e)):"--"}},{title:"人脸照片",dataIndex:"photo_url",width:90,ellipsis:{showTitle:!1},render:function(e,t){return b.a.createElement("img",{width:40,style:{maxHeight:30},src:e,className:"current",onClick:function(){_e(t)}})}},{title:"审核状态",width:100,dataIndex:"exercise_identity_photo_state",ellipsis:{showTitle:!1},render:function(e,t){return b.a.createElement(b.a.Fragment,null,"passed"===e&&b.a.createElement("span",{style:{color:"#44D7B6"}},"审核通过"),"rejected"===e&&b.a.createElement("span",{style:{color:"#E53333"}},"审核不通过"),"submitted"===e&&b.a.createElement("span",{style:{color:"#666666"}},"待审核"))}},{title:"审核时间",dataIndex:"audit_time",width:180,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement("span",null,e||"--")}},{title:"审核类型",dataIndex:"audit_clazz",width:90,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement("span",null,e||"--")}},{title:"操作",dataIndex:"action",width:180,ellipsis:{showTitle:!1},render:function(e,t){var n;return b.a.createElement(b.a.Fragment,null,"submitted"===(null==t?void 0:t.exercise_identity_photo_state)?b.a.createElement("span",{className:"c-light-primary current",onClick:function(){return he(t)}},"审核"):b.a.createElement("span",{className:"c-grey-999 cursorNotAllowed"},"审核"),"submitted"!==(null==t?void 0:t.exercise_identity_photo_state)?b.a.createElement("span",{className:"c-light-primary current ml10 mr10",onClick:function(){return Ee(t)}},"审核记录"):b.a.createElement("span",{className:"c-grey-999 ml10 mr10 cursorNotAllowed"},"审核记录"),"passed"===(null==t?void 0:t.exercise_identity_photo_state)&&null!=t&&null!==(n=t.play_url)&&void 0!==n&&n.length?b.a.createElement("span",{className:"c-light-primary current",onClick:function(){return xe(t)}},"摄像监控"):b.a.createElement("span",{className:"c-grey-999 cursorNotAllowed"},"摄像监控"))}}],Ee=function(e){var t=[{title:"审核时间",dataIndex:"audit_time",width:170,render:function(e,t){return b.a.createElement("span",null,e||"--")}},{title:"审核状态",dataIndex:"exercise_identity_photo_state",width:110,render:function(e,t){return b.a.createElement(b.a.Fragment,null,"passed"===e&&b.a.createElement("span",{style:{color:"#44D7B6"}},"审核通过"),"rejected"===e&&b.a.createElement("span",{style:{color:"#E53333"}},"审核不通过"),"submitted"===e&&b.a.createElement("span",{style:{color:"#666666"}},"待审核"))}},{title:"审核意见",dataIndex:"comment",render:function(e,t){return e?b.a.createElement(B.a,{placement:"bottom",title:e},b.a.createElement("span",null,e)):"--"}},{title:"采集照片",dataIndex:"photo_url",width:90,render:function(e,t){return b.a.createElement("span",{className:"current c-light-primary",onClick:function(){Z.a.publish("preview-image",e)}},"查看")}}],n=u.a.confirm({icon:null,width:700,className:"".concat(le.a.cusModal," custom-modal-divider"),centered:!0,title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"审核记录"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-guanbi7 font12 current c-grey-c",onClick:function(){return n.destroy()}}))),content:b.a.createElement("div",null,b.a.createElement(N.a,{className:le.a.customTable,dataSource:[Object(h.a)({},e)],bordered:!1,columns:t,rowKey:"exercise_identity_photo_id",rowClassName:le.a.row,pagination:!1}))})},xe=function(e){var t,n,r=u.a.confirm({icon:null,className:"".concat(le.a.cusModal," custom-modal-divider"),centered:!0,width:(null==e||null===(t=e.play_url)||void 0===t?void 0:t.length)<6?724:744,title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"视频"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-guanbi7 font12 current c-grey-c",onClick:function(){return r.destroy()}}))),content:b.a.createElement("ul",{className:le.a.sys},null==e||null===(n=e.play_url)||void 0===n?void 0:n.map((function(e,t){return b.a.createElement("li",{className:le.a.li,key:t},b.a.createElement("div",{className:le.a.d1},b.a.createElement("div",{className:le.a.img},b.a.createElement(fe,{src:null==e?void 0:e.replace(".m3u8",".flv"),autoPlay:!0})),b.a.createElement("div",{className:le.a.btn},b.a.createElement("div",{className:le.a.b1},"回放视频",t+1))))})))})},_e=function(e){var t=u.a.confirm({icon:null,className:"".concat(le.a.cusModal," custom-modal-divider"),centered:!0,width:710,title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"人脸照片"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-guanbi7 font12 current c-grey-c",onClick:function(){return t.destroy()}}))),content:b.a.createElement(M.a,null,b.a.createElement("aside",{className:le.a.imgWrap,style:{marginBottom:40}},b.a.createElement("div",{className:le.a.img},b.a.createElement("img",{width:326,src:Object(O.g)(null==e?void 0:e.photo_url)}),b.a.createElement("div",{className:le.a.textP},"采集照片")),b.a.createElement("div",{className:le.a.img,style:{marginLeft:20}},null!=e&&e.identity_url?b.a.createElement("img",{width:326,src:Object(O.g)(null==e?void 0:e.identity_url)}):b.a.createElement("div",{className:le.a.no,style:{width:326}},b.a.createElement("span",null,"暂无证件照片")),b.a.createElement("div",{className:le.a.textP},"证件照片"))))})},ke={selectedRowKeys:K,columnWidth:40,onChange:function(e){q(e)},getCheckboxProps:function(e){return{disabled:!("passed"!==(null==e?void 0:e.exercise_identity_photo_state))}}};return b.a.createElement("section",{className:le.a.wrap},b.a.createElement(U.a,{form:m,onChange:function(){l.page=1;var e=Object.assign({},m.getFieldsValue());Object.keys(e).map((function(t){switch(t){case"exercise_group_id":e[t].includes("all")||!e[t].length?(delete l.course_group,m.setFieldsValue(Object(F.a)({},"exercise_group_id","all"))):(l.course_group=e[t],m.setFieldsValue(Object(F.a)({},"exercise_group_id",l.course_group)))}})),d(Object(h.a)({},l)),ve(l)},initialValues:Object(F.a)({},"exercise_group_id","all")},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{className:"font14",flex:"80px"},"选择分班:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all"},"全部")),b.a.createElement(P.a,{flex:"1",id:"divhe",style:{height:k+"px",overflow:"hidden"}},null===(t=I.course_groups)||void 0===t?void 0:t.map((function(e,t){return b.a.createElement(R.a,{key:t,value:e.exercise_group_id,className:"ml0 mr8"},e.exercise_group_name,"(",e.exercise_group_students,")")}))),A&&b.a.createElement("span",{onClick:function(){var e=document.getElementById("divhe").scrollHeight;w(k>47?47:e)},style:{color:"rgb(76, 172, 255)",cursor:"pointer",alignItems:"flex-end",display:"flex"}},47===k?"展开":"收起",47===k?b.a.createElement(ae.a,{style:{marginBottom:"3px",marginLeft:"2px"}}):b.a.createElement(oe.a,{style:{marginBottom:"3px",marginLeft:"2px"}})))))),b.a.createElement("div",{className:le.a.control},b.a.createElement(L.a.Search,{placeholder:"请输入姓名或者学号搜索",value:null==l?void 0:l.save_name,onChange:function(e){return t=e.target.value,l.page=1,l.save_name=t,void d(Object(h.a)({},l));var t},onSearch:function(){l.page=1,l.name=l.save_name,d(Object(h.a)({},l)),ve(l)}}),b.a.createElement(ie.a,{placeholder:"请选择审核状态",value:null==l?void 0:l.state,onChange:function(e){return be(e,"state")}},b.a.createElement(ie.a.Option,{value:null},"全部"),b.a.createElement(ie.a.Option,{value:"submitted"},"待审核"),b.a.createElement(ie.a.Option,{value:"passed"},"审核通过"),b.a.createElement(ie.a.Option,{value:"rejected"},"审核不通过")),b.a.createElement(ie.a,{placeholder:"请选择审核类型",value:null==l?void 0:l.audit,onChange:function(e){return be(e,"audit")}},b.a.createElement(ie.a.Option,{value:null},"全部"),b.a.createElement(ie.a.Option,{value:1},"自动审核"),b.a.createElement(ie.a.Option,{value:2},"人工审核")),b.a.createElement("span",{className:le.a.btn,style:{cursor:"pointer"},onClick:function(){K.length?he(!0):s.b.warn("请选择学生")}},b.a.createElement("i",{className:"iconfont icon-piliangcaozuo font14 mr5"}),"批量审核")),b.a.createElement("div",{className:le.a.bgH}),b.a.createElement(N.a,{rowSelection:ke,className:le.a.customTable,dataSource:G,bordered:!1,columns:ye,rowKey:"exercise_identity_photo_id",rowClassName:le.a.row,loading:ne,onChange:function(e,t,n){l.page=null==e?void 0:e.current,l.limit=null==e?void 0:e.pageSize,null!=n&&n.order?(l.sort_by=null==n?void 0:n.field,l.sort_direction="ascend"===(null==n?void 0:n.order)?"asc":"desc"):(l.sort_by=null,l.sort_direction=null),d(Object(h.a)({},l)),ve(l)},pagination:{pageSize:l.limit,total:J,current:l.page,showQuickJumper:!0,hideOnSinglePage:!0,showSizeChanger:!1,position:["bottomCenter"],showTotal:function(e){return b.a.createElement("span",{className:"mr10"},"共",b.a.createElement("span",{className:"c-orange"},e),"条数据")}}}),b.a.createElement(me,{selectIds:K,visible:de,onCancel:function(){return he(!1)},onOk:function(){he(!1),ve(l)},params:l}),b.a.createElement(X.a,null))})),me=function(e){var t=e.visible,n=e.onOk,r=e.onCancel,i=e.selectIds,a=e.params,o=Object(v.useState)(!1),s=Object(f.a)(o,2),l=s[0],d=s[1],p=Object(v.useState)({}),m=Object(f.a)(p,2),E=m[0],x=m[1],_=U.a.useForm(),k=Object(f.a)(_,1)[0],w=function(){var e=Object(c.a)(g.a.mark((function e(r){var o,s;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(d(!0),!0!==t){e.next=7;break}return e.next=4,Object(y.a)("/api/exercises/".concat(null==a?void 0:a.exercise_id,"/batch_audit_identity_photo.json"),{method:"post",body:Object(h.a)({identity_photo_ids:i},r)});case 4:s=e.sent,e.next=10;break;case 7:return e.next=9,Object(y.a)("/api/exercises/".concat(null==a?void 0:a.exercise_id,"/audit_identity_photo.json"),{method:"post",body:Object(h.a)({identity_photo_id:null==t?void 0:t.exercise_identity_photo_id},r)});case 9:s=e.sent;case 10:0===(null===(o=s)||void 0===o?void 0:o.status)&&n(),d(!1);case 12:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return b.a.createElement(u.a,{title:!0!==t?"人脸身份审核":"批量审核",visible:!!t,centered:!0,width:650,destroyOnClose:!0,onCancel:function(){r()},afterClose:function(){k.resetFields(),x({})},confirmLoading:l,onOk:function(){return k.submit()}},b.a.createElement(U.a,{className:le.a.formWrap,form:k,labelCol:{span:4},wrapperCol:{span:18},onFinish:w,onValuesChange:function(){x(Object(h.a)({},k.getFieldsValue()))}},!0!==t&&b.a.createElement(M.a,{style:{marginLeft:28,marginBottom:38}},b.a.createElement(P.a,null,"采集照片:"),b.a.createElement(P.a,null,b.a.createElement("aside",{className:le.a.imgWrap},b.a.createElement("div",{className:le.a.img},b.a.createElement("img",{width:234,src:Object(O.g)(null==t?void 0:t.photo_url)}),b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",null==t?void 0:t.photo_url)},className:le.a.iBtn},"预览"),b.a.createElement("div",{className:le.a.text},"采集照片")),b.a.createElement("div",{className:le.a.img,style:{marginLeft:20}},null!=t&&t.identity_url?b.a.createElement("img",{width:234,src:Object(O.g)(null==t?void 0:t.identity_url)}):b.a.createElement("div",{className:le.a.no,style:{width:326}},b.a.createElement("span",null,"暂无证件照片")),!(null==t||!t.identity_url)&&b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",Object(O.g)(null==t?void 0:t.identity_url))},className:le.a.iBtn},"预览"),b.a.createElement("div",{className:le.a.text},"证件照片"))))),b.a.createElement(U.a.Item,{label:"审核状态",name:"state",rules:[{required:!0,message:"请输入审核状态"}]},b.a.createElement(T.a.Group,null,b.a.createElement(T.a,{value:"passed"},"审核通过"),b.a.createElement(T.a,{value:"rejected"},"审核不通过"))),"rejected"===(null==E?void 0:E.state)&&b.a.createElement(U.a.Item,{label:"审核意见",name:"comment",rules:[{required:!0,message:"请输入审核意见"}]},b.a.createElement(L.a,{placeholder:"如:你的个人信息与照片不一致。",maxLength:30})),b.a.createElement("div",{style:{color:"#FA6400",paddingLeft:32}},"注意:审核通过后,该学生在本场作业与测验的认证状态将更新为“审核通过”,且能够进入作业与测验。")))},ge=(n("cWXX"),n("/ezw")),ve=(n("R9oj"),n("ECub")),be=n("hZbv"),ye=n.n(be),Ee=Object(_.a)((function(e){return{exercise:e.exercise,user:e.user}}))((function(e){var t,n,i,o,l,d,p,m,x,_=e.exercise,k=e.dispatch,w=(e.user,Object(E.i)()),C=Object(v.useState)({page:1,limit:10,name:"",save_name:"",exercise_id:null==w?void 0:w.categoryId}),S=Object(f.a)(C,2),A=S[0],D=S[1],j=U.a.useForm(),H=Object(f.a)(j,1)[0],z=Object(v.useState)(),V=Object(f.a)(z,2),W=V[0],K=V[1],q=Object(v.useState)(!1),Y=Object(f.a)(q,2),Q=Y[0],J=Y[1],$=_.exerciseList,ee=Object(v.useState)([]),te=Object(f.a)(ee,2),ne=te[0],re=te[1],se=Object(v.useState)(0),le=Object(f.a)(se,2),ce=le[0],de=le[1],he=Object(v.useState)(!0),fe=Object(f.a)(he,2),pe=fe[0],me=fe[1],be=Object(v.useState)(!1),Ee=Object(f.a)(be,2),xe=Ee[0],_e=Ee[1],ke=Object(v.useState)("1"),we=Object(f.a)(ke,2),Ce=we[0],Se=we[1],Oe=Object(v.useState)(1),Ae=Object(f.a)(Oe,2),Te=Ae[0],Ie=Ae[1],De=Object(v.useState)("alert"),Le=Object(f.a)(De,2),Re=Le[0],Ne=Le[1],je=Object(v.useState)(1),Me=Object(f.a)(je,2),Pe=Me[0],Be=Me[1],Fe=Object(v.useState)(""),Ue=Object(f.a)(Fe,2),He=Ue[0],Ge=Ue[1],ze=Object(v.useState)(!1),Ve=Object(f.a)(ze,2),We=Ve[0],Ke=Ve[1],qe=Object(v.useState)(!1),Ye=Object(f.a)(qe,2),Qe=Ye[0],Je=Ye[1],Xe=Object(v.useState)([]),Ze=Object(f.a)(Xe,2),$e=Ze[0],et=Ze[1];Object(v.useEffect)((function(){tt(),nt(A)}),[]);var tt=function(){k({type:"exercise/getExerciseList",payload:w})},nt=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=ue.a.cloneDeep(t),me(!0),re([]),e.next=5,Object(y.a)("/api/exercises/".concat(null==t?void 0:t.exercise_id,"/exercise_videos.json"),{method:"get",params:n});case 5:r=e.sent,me(!1),de(null==r?void 0:r.count),re((null==r?void 0:r.exercise_users)||[]);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();Object(v.useEffect)((function(){document.getElementById("divhe")&&(document.getElementById("divhe").scrollHeight>47&&(K(47),J(!0)))}),[document.getElementById("divhe"),$]);var rt=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Ke(!0),_e({}),e.next=4,Object(y.a)("/api/exercises/".concat(null==A?void 0:A.exercise_id,"/student_info.json"),{method:"get",params:{exercise_user_id:null==t?void 0:t.exercise_user_id}});case 4:return n=e.sent,e.next=7,Object(y.a)("/api/exercises/".concat(null==A?void 0:A.exercise_id,"/video_push_logs.json"),{method:"get",params:{exercise_user_id:null==t?void 0:t.exercise_user_id}});case 7:null!=(r=e.sent)&&r.data&&et((null==r?void 0:r.data)||[]),null!=n&&n.data&&_e(Object(h.a)(Object(h.a)({},null==n?void 0:n.data),{},{exercise_user_id:null==t?void 0:t.exercise_user_id,datas:t})),Ke(!1);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),it=function(e){var t,n;"prev"===e?Ie(Te-1==0?null==xe||null===(t=xe.exercise_user_photos)||void 0===t?void 0:t.length:Te-1):Ie(Te===(null==xe||null===(n=xe.exercise_user_photos)||void 0===n?void 0:n.length)?1:Te+1)},at=function(e){Ne(e),Be(1),Ge("")},ot=[{key:1,value:"手机录像异常,请重新扫描左侧二维码开启手机摄像录制。"},{key:2,value:"请勿离开监控范围!"},{key:3,value:"请不要与其他人交谈!"},{key:4,value:"请不要做与作业与测验无关的行为!"},{key:5,value:"请勿切屏,超过3次将被强制交卷!"},{key:6,value:"请勿遮挡或关闭电脑摄像监控!"},{key:0,value:"其他"}],st=[{key:1,value:"请将手机放置于侧后方45°,离桌面1米左右,保证能拍摄到上半身、电脑屏幕和桌面。"},{key:2,value:"手机录像异常,请重新扫描左侧二维码开启手机摄像录制。"},{key:0,value:"其他"}],lt="alert"===Re?ot:st;return b.a.createElement("section",{className:ye.a.wrap},b.a.createElement(U.a,{form:H,onChange:function(){A.page=1;var e=Object.assign({},H.getFieldsValue());Object.keys(e).map((function(t){switch(t){case"exercise_group_id":e[t].includes("all")||!e[t].length?(delete A.course_group,H.setFieldsValue(Object(F.a)({},"exercise_group_id","all"))):(A.course_group=e[t],H.setFieldsValue(Object(F.a)({},"exercise_group_id",A.course_group)))}})),nt(A)},initialValues:Object(F.a)({},"exercise_group_id","all")},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{className:"font14",flex:"80px"},"选择分班:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all"},"全部")),b.a.createElement(P.a,{flex:"1",id:"divhe",style:{height:W+"px",overflow:"hidden"}},null===(t=$.course_groups)||void 0===t?void 0:t.map((function(e,t){return b.a.createElement(R.a,{key:t,value:e.exercise_group_id,className:"ml0 mr8"},e.exercise_group_name,"(",e.exercise_group_students,")")}))),Q&&b.a.createElement("span",{onClick:function(){var e=document.getElementById("divhe").scrollHeight;K(W>47?47:e)},style:{color:"rgb(76, 172, 255)",cursor:"pointer",alignItems:"flex-end",display:"flex"}},47===W?"展开":"收起",47===W?b.a.createElement(ae.a,{style:{marginBottom:"3px",marginLeft:"2px"}}):b.a.createElement(oe.a,{style:{marginBottom:"3px",marginLeft:"2px"}})))))),b.a.createElement("div",{className:ye.a.control},b.a.createElement(L.a.Search,{placeholder:"请输入姓名或者学号搜索",value:null==A?void 0:A.save_name,onChange:function(e){return t=e.target.value,A.page=1,A.save_name=t,void D(Object(h.a)({},A));var t},onSearch:function(){A.page=1,A.name=A.save_name,D(Object(h.a)({},A)),nt(A)}})),b.a.createElement("div",{className:ye.a.bgH}),b.a.createElement("div",{className:ye.a.warpList},b.a.createElement(ge.a,{loading:pe,active:!0,paragraph:{rows:5}},b.a.createElement("div",{className:"c-grey-666 mb20 mt20"},"共",b.a.createElement("span",{className:"c-orange"},ce),"名学生已开启手机摄影"),ne.length?b.a.createElement("ul",{className:ye.a.sys},ne.map((function(e,t){var n=e.user_name,r=e.user_group_name,i=e.video_url,a=e.login,o=e.student_id;return b.a.createElement("li",{className:ye.a.li,key:t},b.a.createElement("div",{className:ye.a.d1},b.a.createElement("div",{className:ye.a.img},b.a.createElement("iframe",{style:{height:340,width:"100%",border:"none"},src:"/live-play.html?key=".concat(t,"&video_url=").concat(null==i?void 0:i.replace(".m3u8",".flv"))})),b.a.createElement(B.a,{title:"姓名+学号"},b.a.createElement("div",{className:ye.a.btn,onClick:function(){return Object(O.s)("".concat(A.exercise_id,"-").concat(a),!0)}},b.a.createElement("div",{title:n,className:ye.a.b1},n),b.a.createElement("div",{title:r,className:ye.a.b2},"(",o,")"))),b.a.createElement("div",{onClick:function(){return rt(e)},className:ye.a.big},"查看")))}))):b.a.createElement(ve.a,null)),b.a.createElement(I.a,{showTotal:function(e){return b.a.createElement("span",{className:"mr10"},"共",b.a.createElement("span",{className:"c-orange"},e),"条数据")},className:"tc",showSizeChanger:!1,showQuickJumper:!0,hideOnSinglePage:!0,onChange:function(e,t){A.page=e,A.limit=t,D(Object(h.a)({},A)),nt(A)},pageSize:null==A?void 0:A.limit,current:A.page,total:ce})),b.a.createElement(u.a,{title:"查看详细信息",visible:xe,centered:!0,width:850,destroyOnClose:!0,onCancel:function(){_e(!1)},afterClose:function(){Ie(1),Ne("alert"),Ge(""),Se("1"),Be(1)},footer:null},b.a.createElement(ge.a,{loading:We,active:!0,paragraph:{rows:5}},b.a.createElement("div",null,b.a.createElement("span",null,"姓名:",null==xe||null===(n=xe.datas)||void 0===n?void 0:n.user_name),b.a.createElement("span",{className:"ml20"},"学号:",null==xe||null===(i=xe.datas)||void 0===i?void 0:i.student_id),b.a.createElement("span",{className:"ml20"},"班级:",null==xe||null===(o=xe.datas)||void 0===o?void 0:o.user_group_name)),b.a.createElement(r.a,{className:"mt10",defaultActiveKey:Ce,onChange:function(e){Se(e)}},b.a.createElement(r.a.TabPane,{tab:"防作弊头像",key:"1"},b.a.createElement("aside",{className:ye.a.imgWrap},b.a.createElement("div",{className:ye.a.img,style:{width:234,marginLeft:30,textAlign:"center"}},null!=xe&&null!==(l=xe.exercise_user_photos)&&void 0!==l&&l.length?b.a.createElement(v.Fragment,null,b.a.createElement("img",{height:131,src:null==xe||null===(d=xe.exercise_user_photos)||void 0===d?void 0:d[Te-1]}),b.a.createElement("div",{onClick:function(){var e;Z.a.publish("preview-image",null==xe||null===(e=xe.exercise_user_photos)||void 0===e?void 0:e[Te-1])},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"进行中照片",b.a.createElement("span",{className:"c-light-primary"},Te,"/",null==xe||null===(p=xe.exercise_user_photos)||void 0===p?void 0:p.length)),1===Te?b.a.createElement("div",{style:{color:"#ccc",cursor:"not-allowed"},className:ye.a.l}," ",b.a.createElement("i",{className:"iconfont icon-fanhui2"})):b.a.createElement("div",{onClick:function(){return it("prev")},className:ye.a.l}," ",b.a.createElement("i",{className:"iconfont icon-fanhui2"})),b.a.createElement("div",{onClick:function(){return it("next")},className:ye.a.r},b.a.createElement("i",{className:"iconfont icon-lujing"}))):b.a.createElement("div",{className:ye.a.no},b.a.createElement("span",null,"暂无进行中照片"))),b.a.createElement("div",{className:ye.a.img,style:{marginLeft:60,width:234,textAlign:"center"}},null!=xe&&xe.identity_url?b.a.createElement("img",{height:131,src:Object(O.g)(null==xe?void 0:xe.identity_url)}):b.a.createElement("div",{className:ye.a.no},b.a.createElement("span",null,"暂无证件照片")),!(null==xe||!xe.identity_url)&&b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",Object(O.g)(null==xe?void 0:xe.identity_url))},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"证件照片")))),b.a.createElement(r.a.TabPane,{tab:"人脸照片",key:"2"},b.a.createElement("aside",{className:ye.a.imgWrap,style:{marginLeft:70}},b.a.createElement("div",{className:ye.a.img},b.a.createElement("img",{width:234,src:null==xe?void 0:xe.exercise_identity_photo}),b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",null==xe?void 0:xe.exercise_identity_photo)},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"采集照片")),b.a.createElement("div",{className:ye.a.img,style:{marginLeft:20,width:234,textAlign:"center"}},null!=xe&&xe.identity_url?b.a.createElement("img",{height:131,src:Object(O.g)(null==xe?void 0:xe.identity_url)}):b.a.createElement("div",{className:ye.a.no},b.a.createElement("span",null,"暂无证件照片")),!(null==xe||!xe.identity_url)&&b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",Object(O.g)(null==xe?void 0:xe.identity_url))},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"证件照片")))),b.a.createElement(r.a.TabPane,{tab:"警告和通知",key:"3"},b.a.createElement("div",{className:ye.a.fo},b.a.createElement(T.a,{className:"mt20",checked:"alert"===Re,onChange:function(){return at("alert")}},"发送警告",b.a.createElement("span",{className:"font14 c-grey-999"},"(如发现学生在进行中的照片存在异常时,可发送消息给学生)")),b.a.createElement(T.a,{className:"mt10",checked:"notice"===Re,onChange:function(){return at("notice")}},"发送通知",b.a.createElement("span",{className:"font14 c-grey-999"},"(进行中如有消息通知,可发送消息给学生)")),b.a.createElement("div",{className:"mt20"},b.a.createElement("span",{className:"mr10"},"原因:"),b.a.createElement(ie.a,{getPopupContainer:function(e){return e.parentNode.parentNode},style:{width:570},value:Pe,onChange:function(e){Be(e)}},null==lt?void 0:lt.map((function(e){return b.a.createElement(ie.a.Option,{key:e.key,value:e.key},e.value)})))),0===Pe&&b.a.createElement(L.a.TextArea,{className:"mt20",value:He,onChange:function(e){return Ge(e.target.value)},placeholder:"请填写其他原因"}),b.a.createElement(M.a,{className:"mt10",align:"middle"},b.a.createElement("div",{className:"mr10"},"发送记录"),b.a.createElement("div",{style:{color:"#E30000",fontSize:12,margin:"10px 0"}},"已发送",null==xe?void 0:xe.alert_count,"次警告和",(null==xe||null===(m=xe.alerts)||void 0===m?void 0:m.length)-(null==xe?void 0:xe.alert_count),"次通知")),b.a.createElement(N.a,{dataSource:(null==xe?void 0:xe.alerts)||[],bordered:!1,scroll:(null==xe||null===(x=xe.alerts)||void 0===x?void 0:x.length)>4?{y:200}:{},columns:[{title:"开始时间",dataIndex:"created_at",width:164},{title:"发送人",dataIndex:"sender",width:100,ellipsis:{showTitle:!1},render:function(e){return e?b.a.createElement("span",{title:e},e):"--"}},{title:"发送类型",dataIndex:"clazz",width:80,render:function(e){return"alert"===e?"警告":"通知"}},{title:"发送内容",dataIndex:"content",ellipsis:!0}],pagination:!1}),b.a.createElement(a.a,{className:ye.a.b,onClick:Object(c.a)(g.a.mark((function e(){var t,n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(He||0!==Pe){e.next=3;break}return s.b.info("请输入其他原因"),e.abrupt("return");case 3:return t=He,Pe&&(t=("alert"===Re?ot:st).find((function(e){return e.key===Pe})).value),Je(!0),e.next=8,Object(y.a)("/api/exercises/".concat(A.exercise_id,"/send_alert.json"),{method:"post",body:{content:t,clazz:Re,exercise_user_id:null==xe?void 0:xe.exercise_user_id}});case 8:0===(null==(n=e.sent)?void 0:n.status)&&(s.b.info("发送成功"),_e(!1)),Je(!1);case 11:case"end":return e.stop()}}),e)}))),loading:Qe,type:"primary"},b.a.createElement("i",{className:"iconfont icon-fasongtongzhi mr5"}),"发送"))),b.a.createElement(r.a.TabPane,{tab:"断流记录",key:"4"},b.a.createElement(N.a,{dataSource:$e,bordered:!1,scroll:$e.length>7?{y:300}:{},columns:[{title:"开始时间",dataIndex:"start_time",width:164},{title:"结束时间",dataIndex:"end_time",width:164,render:function(e){return G()(e).format("YYYY-MM-DD HH:mm:ss")||"--"}},{title:"推流时长",dataIndex:"push_duration",ellipsis:!0,width:120,render:function(e){return e&&Object(O.Z)(Number(e)/1e3)||0}},{title:"断流原因",dataIndex:"msg",ellipsis:!0}]}))))),b.a.createElement(X.a,null))})),xe=n("wNxg"),_e=n.n(xe),ke=n("b6Jr"),we=n.n(ke),Ce=function(e){var t=e.index,n=e.bottomLine,r=e.gather,i=e.search,a=Object(v.useState)([]),o=Object(f.a)(a,2),s=o[0],l=o[1],u=Object(v.useState)(!1),d=Object(f.a)(u,2),p=d[0],m=d[1],_=Object(v.useState)(!1),k=Object(f.a)(_,2),w=k[0],C=k[1],S=Object(E.i)(),O=Object(E.h)(),A=Object(v.useState)({page:1,limit:6,total:0}),T=Object(f.a)(A,2),I=T[0],D=T[1];Object(v.useEffect)((function(){console.log(r,"gather"),0===t&&C(!0)}),[]),Object(v.useEffect)((function(){w&&R()}),[w]);var L=[{title:"序号",dataIndex:"index",key:"index",align:"left",ellipsis:!0,render:function(e,t,n){return I.limit*(I.page-1)+n+1}},{title:"姓名",dataIndex:"username",key:"username",align:"left",ellipsis:!0},{title:"班级",dataIndex:"user_group_name",key:"user_group_name",align:"left",render:function(e){return e||"--"}},{title:"学号",dataIndex:"student_id",key:"student_id",align:"left"},{title:"相似度",dataIndex:"code_rate",key:"code_rate",align:"left",render:function(e){return e+"%"}},{title:"操作",dataIndex:"id",key:"id",align:"left",render:function(e){var t,n,r="/classrooms/".concat(null==S?void 0:S.coursesId,"/exercise/").concat(null==S?void 0:S.categoryId,"/detail/").concat(e,"/review_detail");null!=O&&null!==(t=O.query)&&void 0!==t&&t.random&&(r+="?random=".concat(null==O||null===(n=O.query)||void 0===n?void 0:n.random));return b.a.createElement(x.a,{to:r,target:"_blank"},"查看")}}],R=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,a,o;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return m(!0),n=t||{page:1,limit:10,total:0},a=Object(h.a)({id:null==S?void 0:S.categoryId,question_id:null==r?void 0:r.question_id,search:i},n),e.next=5,Object(y.a)("/api/courses/".concat(null==S?void 0:S.coursesId,"/exercises/code_review_users.json"),{method:"get",params:a});case 5:(o=e.sent)&&(l(null==o?void 0:o.users),m(!1),D(Object(h.a)(Object(h.a)({},n),{},{total:(null==o?void 0:o.count)||0})));case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return b.a.createElement("div",{className:we.a.subjectTable},b.a.createElement("aside",{className:we.a.title},b.a.createElement("span",{className:"c-light-primary"},t+1,"、",5===(null==r?void 0:r.question_type)?"实训题":"编程题"),b.a.createElement("span",{className:"c-grey-333"},"(",null==r?void 0:r.score,"分):",null==r?void 0:r.question_title),b.a.createElement("span",{className:"ml40 c-grey-999"},b.a.createElement("b",{className:"c-red-ee4"},null==r?void 0:r.checked_count)," 个疑似抄袭作品(共",null==r?void 0:r.total_count,"个作品)"),b.a.createElement("span",{onClick:function(){C(!w)},style:{marginLeft:"auto",cursor:"pointer",color:"#0152d9"}},w?"收起":"展开",w?b.a.createElement(oe.a,null):b.a.createElement(ae.a,null)),5===(null==r?void 0:r.question_type)&&b.a.createElement("a",{style:{marginLeft:20},target:"_blank",href:"/shixuns/".concat(null==r?void 0:r.shixun_identifier,"/challenges")},"实训详情")),b.a.createElement(N.a,{className:we.a.customTable,style:{display:w?"block":"none"},dataSource:s,bordered:!1,rowKey:function(e){return e.id},rowClassName:we.a.row,columns:L,loading:p,pagination:{pageSize:I.limit,total:I.total,current:I.page,onChange:function(e){var t=Object(h.a)(Object(h.a)({},I),{},{page:e});D(t),R(t)},showQuickJumper:!0,showSizeChanger:!1,hideOnSinglePage:!0,position:["bottomCenter"]}}),b.a.createElement("div",{className:we.a.line,style:{visibility:n?"hidden":"visible"}}))},Se=n("lzim"),Oe=Object(_.a)((function(e){return{exercise:e.exercise,globalSetting:e.globalSetting}}))((function(e){e.exercise,e.globalSetting,e.dispatch;var t=Object(v.useState)(""),n=Object(f.a)(t,2),r=n[0],i=n[1],a=Object(v.useState)([]),o=Object(f.a)(a,2),s=o[0],l=o[1],u=Object(v.useState)(""),d=Object(f.a)(u,2),h=d[0],p=d[1],m=Object(v.useState)(!1),x=Object(f.a)(m,2),_=x[0],k=x[1],w=Object(E.i)();Object(v.useEffect)((function(){C()}),[]);var C=function(){var e=Object(c.a)(g.a.mark((function e(t){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return k(!0),e.next=3,Object(y.a)("/api/courses/".concat(null==w?void 0:w.coursesId,"/exercises/code_review_results.json"),{method:"get",params:{id:null==w?void 0:w.categoryId,search:r}});case 3:if(-2!==(null==(n=e.sent)?void 0:n.status)){e.next=7;break}return C(),e.abrupt("return");case 7:n&&(k(!1),l((null==n?void 0:n.exercise_questions)||[]),p(null==n?void 0:n.last_review_time));case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),S=function(){C()};return b.a.createElement("section",{className:_e.a.warp},b.a.createElement("aside",{className:_e.a.header},b.a.createElement("div",null,"查重时间:",h||"--"),!!h&&b.a.createElement(L.a,{value:r,onChange:function(e){return i(e.target.value)},suffix:b.a.createElement("i",{onClick:S,className:"iconfont icon-sousuo2 c-grey-c"}),bordered:!1,placeholder:"请输入姓名或学号搜索",onPressEnter:S})),b.a.createElement(ge.a,{loading:_,active:!0,paragraph:{rows:5}},s.length>0?b.a.createElement("aside",{className:_e.a.subject},s.map((function(e,t){return b.a.createElement(Ce,{key:t,index:t,bottomLine:t===s.length-1,gather:e,search:r})}))):b.a.createElement("div",{className:_e.a.empty},b.a.createElement("img",{src:Se.l,width:"258"}),b.a.createElement("span",{className:"c-grey-c"},"暂无数据"))))})),Ae=(n("/zsF"),n("PArb")),Te=n("LYsE"),Ie=n("k5F3"),De=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading.effects}}))((function(e){var t=e.exercise,n=(e.loading,e.dispatch),r=e.activeTabs,i=Object(E.i)(),a=Object(v.useState)(Object(h.a)(Object(h.a)({},i),{page:1,per_page:10})),o=Object(f.a)(a,1)[0],s=t.editData;Object(v.useEffect)((function(){"2"===r&&l()}),[i.categoryId,r]);var l=function(){n({type:"exercise/editExercise",payload:Object(h.a)({},o)})};return Object(v.useEffect)((function(){return n({type:"globalSetting/onlyShowBackTopToggle",payload:!1}),n({type:"globalSetting/onlyShowBackTopIconToggle",payload:!1}),function(){n({type:"globalSetting/onlyShowBackTopToggle",payload:!0}),n({type:"globalSetting/onlyShowBackTopIconToggle",payload:!0})}}),[]),b.a.createElement("section",{className:"minH1050 mb20 pt30 pb30 pl60 bg-white relative"},b.a.createElement(Ie.a,{isPreview:!0,activeTabs:r}),b.a.createElement(Ae.a,null),b.a.createElement(Te.a,{data:null==s?void 0:s.exercise_question_types,isDragDisabled:!0}))})),Le=(n("T2oS"),n("W9HT")),Re=(n("Q9mQ"),n("diRs")),Ne=n("CCdo"),je=n.n(Ne),Me=n("RotF"),Pe=n.n(Me),Be=n("6K3P"),Fe=n.n(Be),Ue=n("0owl"),He=n("ek7X"),Ge=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading}}))((function(e){var t,n,r,i=e.exercise,a=(e.loading,e.dispatch),o=e.cb,l=Object(h.a)(Object(h.a)({},Object(E.i)()),{},{page:0,limit:50,one:null,two:null,save_one:null,save_two:null,sort:null,course_group:"",student_id:"",realname:"",save_course_group:"",save_student_id:"",save_realname:""}),p=Object(v.useState)(Object(h.a)({},l)),m=Object(f.a)(p,2),y=m[0],x=m[1],_=Object(v.useState)([]),k=Object(f.a)(_,2),w=k[0],O=k[1],A=Object(v.useState)(!0),T=Object(f.a)(A,2),I=T[0],N=T[1],j=Object(v.useState)(!0),M=Object(f.a)(j,2),P=M[0],B=M[1],F=Object(v.useState)(0),U=Object(f.a)(F,2),H=U[0],G=U[1],z=Object(v.useState)(!1),V=Object(f.a)(z,2),W=V[0],K=(V[1],Object(v.useState)([])),q=Object(f.a)(K,2),Y=q[0],Q=q[1];Object(v.useEffect)((function(){"打回重做"===i.actionTabs.key&&(w=[],J(1))}),[i.actionTabs.key]);var J=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return 1==t&&(w=[]),N(!0),y.page=t,B(!0),e.next=6,a({type:"exercise/getRedoModal",payload:Object(h.a)(Object(h.a)({},y),{},{score:((null==y?void 0:y.one)||0)+"".concat(null!=y&&y.two?","+(null==y?void 0:y.two):"")})});case 6:(null==(r=e.sent)||null===(n=r.exercise_users)||void 0===n?void 0:n.length)0?b.a.createElement("p",null,"选择班级:"):b.a.createElement("p",null,"暂无分班"),b.a.createElement(R.a.Group,{value:m,onChange:function(e){x(e),A(e.length===l.length)}},l.map((function(e){return b.a.createElement(R.a,{key:e.id,value:e.id},e.name)})))),b.a.createElement("p",{style:{marginBottom:40},className:"c-grey-999 mt40"},"说明:平台目前仅支持java、python、c、c++语言的实训题和编程题的代码查重。")),b.a.createElement("div",{className:Ke.a.footer},b.a.createElement(R.a,{checked:O,onChange:function(e){var t=e.target.checked?l.map((function(e){return e.id})):[];x(t),A(e.target.checked)}},"全选"),b.a.createElement(a.a,{onClick:I},"取消"),b.a.createElement(a.a,{onClick:function(){r(m)},type:"primary"},"确认"))))})),Ye=n("Fzz4"),Qe=(n("DZo9"),n("8z0m")),Je=n("/MfK"),Xe=n("w5pM"),Ze=n("jN4g"),$e=n("xvlK"),et=n("dfu6"),tt=r.a.TabPane,nt=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading}}))((function(e){var t,n=e.exercise,i=(e.loading,e.dispatch),a=(Object(E.i)(),Object(E.h)(),U.a.useForm()),o=Object(f.a)(a,1)[0],l=Object(v.useState)({}),p=Object(f.a)(l,2),m=p[0],y=p[1],x=Object(v.useState)("1"),_=Object(f.a)(x,2),k=_[0],w=_[1];return Object(v.useEffect)((function(){"addIp"===n.actionTabs.key&&(o.resetFields(),w("1"))}),[n.actionTabs]),b.a.createElement(u.a,{centered:!0,title:"添加IP范围",visible:"addIp"===n.actionTabs.key,okText:"确认",cancelText:"取消",width:600,bodyStyle:{minHeight:200},onOk:Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.validateFields();case 2:if(m.zz){e.next=8;break}if(m.ip){e.next=8;break}if(t=m.startIP.split(".")[3],!(parseInt(t)>parseInt(m.endIP))){e.next=8;break}return s.b.warn("IP区间段不合法"),e.abrupt("return");case 8:i({type:"exercise/setActionTabs",payload:{key:"insterIp",data:Object(h.a)({},o.getFieldValue()),type:n.actionTabs.type}});case 9:case"end":return e.stop()}}),e)}))),onCancel:function(){i({type:"exercise/setActionTabs",payload:{}})}},b.a.createElement("section",{className:"pl10 pr10"},b.a.createElement(r.a,{activeKey:k,onChange:function(e){w(e),o.resetFields()}},b.a.createElement(tt,{tab:"新增IP地址",key:"1"}),b.a.createElement(tt,{tab:"新增IP范围",key:"2"}),b.a.createElement(tt,{tab:"新增IP规则",key:"3"})),b.a.createElement(U.a,{form:o,className:"pt30",name:"form",layout:"vertical",onValuesChange:function(e,t){y(Object(h.a)({},t))}},"1"===k&&b.a.createElement(U.a.Item,{name:"ip",rules:[{required:!0,message:"请输入IP地址"}],label:"IP地址"},b.a.createElement(ie.a,{open:!1,tokenSeparators:[";",",",";"],size:"large",mode:"tags",style:{width:"100%"},placeholder:"请输入IP地址,可同时添加多个IP地址,中间用英文的分号间隔。",onChange:function(e){o.setFieldsValue({ip:Object(d.a)(e.filter((function(e){return!!Object(et.a)(e)||(s.b.warn("IP不合法,请重新输入"),!1)})))})}})),"2"===k&&b.a.createElement(M.a,{gutter:[20,20]},b.a.createElement(P.a,{flex:"1"},b.a.createElement(U.a.Item,{name:"startIP",rules:[{required:!0,message:"请输入起始IP地址"}],label:"起始IP地址"},b.a.createElement(L.a,{maxLength:15,placeholder:"请输入起始IP地址",onBlur:function(e){var t="";Object(et.a)(e.target.value)?t=e.target.value:(t="",s.b.warn("IP不合法,请重新输入")),o.setFieldsValue({startIP:t})}}))),b.a.createElement(P.a,{flex:"1"},b.a.createElement(U.a.Item,{name:"endIP",rules:[{required:!0,message:"请输入结束IP地址"},{pattern:/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/,message:"请输入0-255的网段"}],label:"结束IP地址"},b.a.createElement(L.a,{onBlur:function(e){},prefix:b.a.createElement("span",{className:"font14"},null===(t=m.startIP)||void 0===t?void 0:t.substring(0,m.startIP.lastIndexOf("."))),maxLength:3,placeholder:"请输入结束IP地址的后三位"})))),"3"===k&&b.a.createElement(M.a,{gutter:[20,20]},b.a.createElement(P.a,{flex:"1"},b.a.createElement(U.a.Item,{name:"zz",rules:[{required:!0,message:"请输入IP规则正则表达式"}],label:"IP规则正则表达式"},b.a.createElement(L.a,{placeholder:"请输入IP规则正则表达式",onBlur:function(e){try{new RegExp(e.target.value,"g")}catch(e){console.log("-----",11111),s.b.info("请输入正确的正则表达式")}}})))))))})),rt=n("2JKx"),it=n.n(rt),at=n("Ot1p"),ot=(n("+BJd"),n("mr32")),st=(r.a.TabPane,ie.a.Option),lt=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading}}))((function(e){var t,n,r,i=e.exercise,a=(e.loading,e.data),o=e.disabled,l=e.updata,p=(e.dispatch,Object(E.i)()),m=(Object(E.h)(),U.a.useForm()),y=(Object(f.a)(m,1)[0],Object(v.useState)({})),x=Object(f.a)(y,2),_=(x[0],x[1],Object(v.useState)("1")),k=Object(f.a)(_,2),w=(k[0],k[1],i.workSetting),C=i.commonHeader,O=Object(v.useState)(!1),A=Object(f.a)(O,2),I=A[0],L=A[1],j=Object(v.useState)([]),B=Object(f.a)(j,2),F=B[0],H=B[1],G=Object(v.useState)([]),z=Object(f.a)(G,2),V=z[0],W=z[1],K=Object(v.useState)(!1),q=Object(f.a)(K,2),Y=q[0],Q=q[1],J=Object(v.useState)([]),X=Object(f.a)(J,2),Z=X[0],$=X[1],ee=Object(v.useState)([]),te=Object(f.a)(ee,2),ne=te[0],re=te[1],ae=Object(v.useState)({id:p.categoryId,exercise_group_id:[]}),oe=Object(f.a)(ae,2),se=oe[0],le=(oe[1],Object(v.useState)(0)),ce=Object(f.a)(le,2),ue=ce[0],de=ce[1];Object(v.useMemo)((function(){var e,t,n,r;if(null!=w&&null!==(e=w.published_course_groups)&&void 0!==e&&e.length){var i,a=Object(d.a)(null==w||null===(i=w.published_course_groups)||void 0===i?void 0:i.map((function(e){return Object(d.a)(e.course_group_id)})).flat());H(Object(d.a)(a))}else if(null!=w&&w.published_course_groups){var o;H(Object(d.a)(null==w||null===(o=w.course_groups)||void 0===o?void 0:o.map((function(e){return e.course_group_id}))))}if((null!=w&&null!==(t=w.exercise)&&void 0!==t&&t.group_make_ups||null!=w&&null!==(n=w.exercise)&&void 0!==n&&n.unified_make_up)&&(Q(!0),null!=w&&null!==(r=w.exercise)&&void 0!==r&&r.group_make_ups)){var s,l,c=V;null==w||null===(s=w.exercise)||void 0===s||null===(l=s.group_make_ups)||void 0===l||l.map((function(e,t){c[t]=e.course_group_id||[]})),W(Object(d.a)(c))}}),[w]),Object(v.useEffect)((function(){console.log("groupIds:",F)}),[F]),Object(v.useEffect)((function(){console.log("selectGroupIds:",V)}),[V]);var he=function(){var e=Object(c.a)(g.a.mark((function e(t){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(S.K)(Object(h.a)({},se));case 2:n=e.sent,re(Object(d.a)(n.users.map((function(e){return e.key=String(e.id),e})).filter((function(e){var t;return console.log("openKeys",a.group_make_ups[ue].students,ue),null===(t=a.group_make_ups[ue].students)||void 0===t||!t.some((function(t){return t.id===e.id}))}))));case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),fe={onChange:function(e,t){$(Object(d.a)(t)),console.log("selectedRowKeys: ".concat(e),"selectedRows: ",t)},getCheckboxProps:function(e){return{disabled:"Disabled User"===e.name,name:e.name}}},pe=function(e){var t,n,r;return!!o||!!(2!==C.exercise_status||null!=w&&null!==(t=w.exercise)&&void 0!==t&&null!==(n=t.group_make_ups)&&void 0!==n&&null!==(r=n[e])&&void 0!==r&&r.course_groups)&&3!==C.exercise_status},me=function(e){return!!o||(2===C.exercise_status?null==w||null===(t=w.exercise)||void 0===t||null===(n=t.group_make_ups)||void 0===n||null===(r=n[e])||void 0===r?void 0:r.is_all:3!==C.exercise_status);var t,n,r};return b.a.createElement(b.a.Fragment,null,b.a.createElement(M.a,null,b.a.createElement(P.a,{span:24},b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{flex:"1"},b.a.createElement("h1",{className:"mt15"},"补考设置 ",b.a.createElement("span",{className:"c-red font14"},"(正式开始补考前,切记修改作业与测验截止时间大于当前时间)"))))),b.a.createElement(P.a,{span:24,className:"mt10"},b.a.createElement(R.a,{checked:a.unified_make_up||(null===(t=a.group_make_ups)||void 0===t?void 0:t.length),disabled:o,onChange:function(e){e.target.checked?a.unified_make_up=!0:(a.unified_make_up=!1,delete a.group_make_ups),Q(e.target.checked)}},b.a.createElement("strong",null,"开启补考")),b.a.createElement("span",{className:"c-grey-c font12"},"(开启后可针对未答卷的学生设置补考,补考与延长截止时间不可共存)"))),Y&&b.a.createElement("section",{className:"ml40"},b.a.createElement(M.a,{align:"middle",className:"mt10"},b.a.createElement(P.a,null,b.a.createElement(T.a,{checked:a.unified_make_up,disabled:o,onClick:function(){a.unified_make_up=!0,delete a.group_make_ups,l(Object(h.a)({},a))}},"所有分班统一补考")),b.a.createElement(P.a,null,b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{className:"ml50"},"补考扣分"),b.a.createElement(P.a,{className:"ml10 mr10"},b.a.createElement(D.a,{min:0,max:100,placeholder:"为空代表不扣分",disabled:o||3!==C.exercise_status,onChange:function(e){a.make_up_score=e,l(Object(h.a)({},a))},value:a.make_up_score,style:{width:150}})),b.a.createElement(P.a,null,"(分)")))),(null===(n=w.course_groups)||void 0===n?void 0:n.length)>0&&b.a.createElement(M.a,{align:"middle",className:"mt10"},b.a.createElement(P.a,null,b.a.createElement(T.a,{disabled:o||3!==C.exercise_status,checked:a.group_make_ups,onClick:function(){var e;delete a.unified_make_up,a.group_make_ups=(null==w||null===(e=w.exercise)||void 0===e?void 0:e.group_make_ups)||[{students:[],course_group_id:[],score:0}],l(Object(h.a)({},a))}},"各班分别补考"))),null===(r=a.group_make_ups)||void 0===r?void 0:r.map((function(e,t){var n,r;return b.a.createElement("div",{key:t},b.a.createElement(M.a,{align:"middle",className:"mt10"},b.a.createElement(P.a,{flex:"100px"},"补考规则",t+1),b.a.createElement(P.a,{className:"ml10"},b.a.createElement(ie.a,{style:{width:307},value:e.course_group_id,mode:"multiple",placeholder:"请选择分班",disabled:pe(t),onChange:function(e,n,r){V[t]=e,a.group_make_ups[t].course_group_id=e,l(Object(h.a)({},a)),W(Object(d.a)(V))}},null==w||null===(n=w.course_groups)||void 0===n?void 0:n.map((function(e,n){var r=[];if(F.includes(e.course_group_id)&&(V.length&&(r=V.filter((function(n,r){return t!==r&&!!n.includes(e.course_group_id)}))),!r.length))return b.a.createElement(st,{value:e.course_group_id,key:n},e.course_group_name)})))),b.a.createElement(P.a,null,b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{className:"ml50"},"补考扣分"),b.a.createElement(P.a,{className:"ml10 mr10"},b.a.createElement(D.a,{value:e.score,min:0,max:100,style:{width:150},placeholder:"为空代表不扣分",disabled:pe(t),onChange:function(e){a.group_make_ups[t].score=e,l(Object(h.a)({},a))}})),b.a.createElement(P.a,null,"(分)")))),b.a.createElement(M.a,{className:"mt20"},b.a.createElement(P.a,{flex:"220px"},b.a.createElement(T.a.Group,{name:"student",value:e.is_all,disabled:me(t),onChange:function(e){var n,r,i;e.target.value?delete a.group_make_ups[t].students:a.group_make_ups[t].students=(null==w||null===(n=w.exercise)||void 0===n||null===(r=n.group_make_ups)||void 0===r||null===(i=r[t])||void 0===i?void 0:i.students)||[];a.group_make_ups[t].is_all=e.target.value,l(Object(h.a)({},a))}},b.a.createElement(T.a,{value:!0},"全部未答学生"),b.a.createElement(T.a,{value:!1},"指定学生"))),b.a.createElement(P.a,{flex:"1"},!a.group_make_ups[t].is_all&&b.a.createElement("div",{onClick:function(){var e;null!==(e=V[t])&&void 0!==e&&e.length?o||(se.exercise_group_id=V[t],L(!0),$([]),de(t),re([]),he({page:1})):s.b.warn("请先选择补考班级")},className:"".concat(o&&"disabledStyle"),style:{minHeight:28,border:"1px solid #ccc",padding:4}},null===(r=e.students)||void 0===r?void 0:r.map((function(t,n){return b.a.createElement(ot.a,{key:n,closable:t.add||C.exercise_status>2,onClose:function(){e.students.splice(n,1),l(Object(h.a)({},a))}},t.name)})))),b.a.createElement(P.a,{flex:"100px",className:"tr"},t>0&&3===C.exercise_status&&b.a.createElement(Je.a,{onClick:function(){a.group_make_ups.splice(t,1),l(Object(h.a)({},a))}}),b.a.createElement(Xe.a,{className:"c-green ml20",onClick:function(){a.group_make_ups.push({students:[],course_group_id:[],score:0,is_all:!0}),l(Object(h.a)({},a))}}))))})),b.a.createElement(u.a,{title:"指定补考学生",visible:I,onCancel:function(){return L(!1)},destroyOnClose:!0,onOk:function(){a.group_make_ups[ue].students=a.group_make_ups[ue].students.concat(Z.map((function(e){return e.add=!0,e}))),L(!1),console.log("data:",a),l(Object(h.a)({},a))}},b.a.createElement(N.a,{columns:[].concat([,{title:"学生姓名",dataIndex:"name"},{title:"分班",dataIndex:"course_group_name"}]),dataSource:Object(d.a)(ne),rowSelection:Object(h.a)({type:"checkbox"},fe),pagination:{pageSize:10,defaultCurrent:1}}))))})),ct=n("m3rI"),ut=L.a.TextArea,dt=Q.a.RangePicker,ht=ie.a.Option,ft=Object(_.a)((function(e){var t=e.exercise,n=e.loading,r=e.globalSetting;return{exercise:t,loading:n.effects,globalSetting:r}}))((function(e){var t,n,r,i,o,l,p,m,x,_,k=e.exercise,w=(e.globalSetting,e.loading,e.dispatch),C=Object(E.i)(),A=(Object(E.h)(),k.workSetting),I=k.commonHeader,L=Object(v.useState)(!0),N=Object(f.a)(L,2),j=N[0],H=N[1],z=Object(v.useState)([]),V=Object(f.a)(z,2),W=(V[0],V[1]),K=Object(v.useState)({}),q=Object(f.a)(K,2),Y=(q[0],q[1],Object(v.useState)([])),J=Object(f.a)(Y,2),ee=(J[0],J[1],Object(v.useState)()),te=Object(f.a)(ee,2),ne=te[0],re=te[1],ae=U.a.useForm(),oe=(Object(f.a)(ae,1)[0],Object(v.useState)([])),se=Object(f.a)(oe,2),le=se[0],ce=se[1],ue=Object(v.useState)({ip_bind:!1,export_page_num:40,ip_limit:null,public_ip:[],inner_ip:[],screen_open:!1,screen_num:3,screen_sec:5,open_camera:!1,identity_verify:!1,open_phone_video_recording:!1,photo_count:5,open_make_up:!1,unified_setting:!1,publish_time:"",end_time:"",group_make_ups:[],unified_make_up:!1,make_up_score:0,send_role:"random",open_time:"",time:"",choice_random:!1,question_random:!1,show_statistic:!1,assistant_auth:!1,answer_open:!1,score_open:!1,answered_open:!0,open_score:!0,open_total_score:!0,file_list:[],show_title:!1,show_body:!1,show_info:!1,show_table:!0,show_user:!1,show_no:!1,show_group:!0,show_desc:!1,description:"",attachment_id:""}),de=Object(f.a)(ue,2),he=de[0],fe=de[1];function pe(){return(pe=Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/courses/".concat(null==C?void 0:C.coursesId,"/exercises/overload_alert.json"),{method:"get",params:{course_id:null==C?void 0:C.coursesId}});case 2:t=e.sent,re(null==t?void 0:t.alert);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}C.category=C.categoryId,Object(v.useEffect)((function(){ge()}),[A]),Object(v.useEffect)((function(){w({type:"exercise/getWorkSetting",payload:Object(h.a)({},C)}),Object($.s)()||function(){pe.apply(this,arguments)}()}),[]),Object(v.useEffect)((function(){"insterIp"===k.actionTabs.key&&(k.actionTabs.data.ip?he[k.actionTabs.type]=[].concat(Object(d.a)(he[k.actionTabs.type]||[]),Object(d.a)(k.actionTabs.data.ip)):k.actionTabs.data.zz?he[k.actionTabs.type]=[].concat(Object(d.a)(he[k.actionTabs.type]||[]),[k.actionTabs.data.zz]):he[k.actionTabs.type]=[].concat(Object(d.a)(he[k.actionTabs.type]||[]),["".concat(k.actionTabs.data.startIP,",").concat(k.actionTabs.data.startIP.substring(0,k.actionTabs.data.startIP.lastIndexOf("."))+"."+k.actionTabs.data.endIP)]),fe(Object(h.a)({},he)))}),[k.actionTabs]);var me,ge=function(){var e,t,n,r,i,a,o,s=JSON.parse(JSON.stringify(A));Object.keys(he).map((function(e){var t,n,r,i,a;(he[e]=(null==s||null===(t=s.exercise)||void 0===t?void 0:t[e])||(null==s||null===(n=s.exercise_header)||void 0===n?void 0:n[e]),null!=s&&null!==(r=s.exercise_header)&&void 0!==r&&r[e])?he[e]=null==s||null===(i=s.exercise_header)||void 0===i?void 0:i[e]:he[e]=null==s||null===(a=s.exercise)||void 0===a?void 0:a[e]})),he.file_list=null!=s&&null!==(e=s.exercise_header)&&void 0!==e&&e.attachment_id?[{uid:null==s||null===(t=s.exercise_header)||void 0===t?void 0:t.attachment_id,id:null==s||null===(n=s.exercise_header)||void 0===n?void 0:n.attachment_id,url:null==s||null===(r=s.exercise_header)||void 0===r?void 0:r.photo_url}]:[],le=(null==s||null===(i=s.published_course_groups)||void 0===i?void 0:i.map((function(e){return{course_group_id:e.course_group_id,end_time:e.course_end_time,publish_time:e.course_publish_time}})))||[{}],null==A||null===(a=A.course_groups)||void 0===a||a.map((function(e,t){e.cilckkey="",e.isselect=!1})),null==A||null===(o=A.course_groups)||void 0===o||o.map((function(e,t){var n;null==A||null===(n=A.published_course_groups)||void 0===n||n.map((function(t,n){var r;null!=t&&null!==(r=t.course_group_id)&&void 0!==r&&r.includes(null==e?void 0:e.course_group_id)&&(e.cilckkey=n,e.isselect=!0)}))})),console.log("data:",he,A),fe(he),ce(le)},ve=function(e){Object(S.cb)(Object(h.a)({},e)).then((function(e){0===e.status&&(s.b.success("更新成功"),w({type:"exercise/getCommonHeader",payload:Object(h.a)({},C)}),w({type:"exercise/getWorkSetting",payload:Object(h.a)({},C)}),H(!0))}))},be=function(e){return e&&e1&&(null==e||!e.new)||!(null==A||null===(n=A.published_course_groups)||void 0===n||!n.some((function(t){return t.course_group_id===e.course_group_id})))&&j},Ee={disabled:j,multiple:!1,listType:"picture-card",onPreview:function(e){Z.a.publish("preview-image",e.thumbUrl)},withCredentials:!0,fileList:he.file_list,beforeUpload:function(e){return!(e.size/1024>200)||(s.b.error("该文件无法上传。超过文件大小限制(200KB),建议上传到百度云等其它共享工具里,然后再txt文档里给出链接以及共享密码并上传"),!1)},action:"".concat(ct.a.API_SERVER,"/api/attachments.json"),onChange:function(e){var t=e.fileList.filter((function(e){return!!e.status}));he.file_list=t,fe(Object.assign({},he))},onRemove:(me=Object(c.a)(g.a.mark((function e(t){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return he.file_list=[],fe(Object.assign({},he)),e.abrupt("return",!0);case 3:case"end":return e.stop()}}),e)}))),function(e){return me.apply(this,arguments)})};return b.a.createElement("section",{className:[it.a.form,"mb50 bg-white"].join(" ")},b.a.createElement(M.a,null,b.a.createElement(P.a,{span:24},b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{flex:"1"},b.a.createElement("h1",{className:"mt15"},"发布设置")),b.a.createElement(P.a,null,Object($.c)()&&j&&b.a.createElement(a.a,{type:"primary",size:"middle",ghost:!0,onClick:function(){return H(!1)}},"编辑设置")))),(null===(t=A.course_groups)||void 0===t?void 0:t.length)>0&&b.a.createElement(P.a,{span:24,className:"mt10"},b.a.createElement(R.a,{checked:he.unified_setting,disabled:j||(null==A||null===(n=A.exercise)||void 0===n?void 0:n.exercise_status)>1,onChange:function(){var e;(null==A||null===(e=A.exercise)||void 0===e?void 0:e.exercise_status)>1?s.b.error("已发布,不能再修改分班统一发布"):(he.unified_setting=!he.unified_setting,!1===he.unified_setting&&""==le&&ce(le.concat({})),fe(Object.assign({},he)))}},b.a.createElement("strong",null,"分班统一发布")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则所有分班使用相同的发布设置,仅课堂管理员可修改;否则各个分班允许单独设置)")),b.a.createElement("span",{style:{color:"red"}},(null==A||null===(r=A.exercise)||void 0===r?void 0:r.exercise_status)>1&&ne&&"当前课堂中学生人数较多,为提供更好的服务,我们将进行服务器扩容,建议您在30分钟后发起作业与测验。您也可以立即发布。")),he.unified_setting&&b.a.createElement("div",null,b.a.createElement(M.a,{align:"middle",className:"mt25 pl30"},b.a.createElement(P.a,null,"发布时间:"),b.a.createElement(P.a,{className:"ml5"},b.a.createElement(B.a,{placement:"bottom",title:(null==A||null===(i=A.exercise)||void 0===i?void 0:i.exercise_status)>1&&"发布时间已过,不能修改"},b.a.createElement(Q.a,{style:{width:170},placeholder:"请选择发布时间",showTime:{format:"HH:mm",defaultValue:G()(Object(O.d)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabledDate:be,disabled:j||(null==A||null===(o=A.exercise)||void 0===o?void 0:o.exercise_status)>1,value:he.publish_time?G()(he.publish_time):"",allowClear:!1,onChange:function(e,t){he.publish_time=t,he.end_time||(he.end_time=G()(e).add(1,"month").format("YYYY-MM-DD HH:mm:ss")),fe(Object.assign({},he))}}))),b.a.createElement(P.a,null,b.a.createElement("span",{className:"c-grey-c ml10"},"(学生开始答题时间)"))),b.a.createElement(M.a,{align:"middle",className:"mt25 pl30"},b.a.createElement(P.a,null,"截止时间:"),b.a.createElement(P.a,{className:"ml5"},b.a.createElement(Q.a,{style:{width:170},placeholder:"请选择截止时间",showTime:{format:"HH:mm",defaultValue:G()(Object(O.d)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:j,allowClear:!1,value:he.end_time?G()(he.end_time):"",disabledDate:function(e){return he.end_time?e&&(e1?null!=n&&n.new?[!1,!1]:[!0,!1]:null!=A&&null!==(i=A.published_course_groups)&&void 0!==i&&i.some((function(e){return e.course_group_id===n.course_group_id}))&&(j||(null==A||null===(a=A.exercise)||void 0===a?void 0:a.exercise_status)>1)?[!0,!1]:[!1,!1]),disabledDate:be,style:{width:400},placeholder:["请选择发布时间","请选择截止时间"],showTime:{format:"HH:mm",defaultValue:[G()(Object(O.d)(),"HH:mm"),G()(Object(O.d)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",size:"large",value:e.publish_time&&[G()(e.publish_time),e.end_time&&G()(e.end_time)],onChange:function(n,r){ye(e)||(le[t].publish_time=r[0]),le[t].end_time=r[1],ce(Object(d.a)(le))}})),!j&&b.a.createElement(P.a,{span:4},t>0&&(null==e?void 0:e.new)&&b.a.createElement(Je.a,{onClick:function(){le=le.filter((function(e,n){return t!==n})),ce(Object(d.a)(le))}}),b.a.createElement(Xe.a,{className:"c-green ml20",onClick:function(){ce(le.concat({new:!0}))}}))));var n,r,i,a}))),b.a.createElement(Ae.a,null),(3===(null==I?void 0:I.exercise_status)||he.open_make_up)&&b.a.createElement(b.a.Fragment,null,b.a.createElement(lt,{data:he,disabled:j,updata:fe}),b.a.createElement(Ae.a,null)),b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"答题设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"答题时长:"),b.a.createElement(D.a,{size:"large",disabled:j,min:1,value:-1===he.time?null:he.time,onChange:function(e){he.time=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"ml10"},"分钟"),b.a.createElement("span",{className:"c-grey-c font12 ml10"},"(空值,代表不限时长;非空值,代表限制时长,从学生首次答题开始持续计时)")),(null==I?void 0:I.is_random)&&b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"分发规则:"),b.a.createElement(T.a.Group,{disabled:j,value:he.send_role,onChange:function(e){he.send_role=e.target.value,fe(Object(h.a)({},he))}},b.a.createElement(T.a,{value:"random"},"默认随机分发"),b.a.createElement(T.a,{value:"ip"},"根据IP地址分发"),b.a.createElement(T.a,{value:"student_id"},"根据学号分发"))),!(null!=I&&I.is_random)&&b.a.createElement(b.a.Fragment,null,b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.question_random,disabled:j,onChange:function(e){he.question_random=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"题目顺序随机打乱")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生答题时,题目顺序按照题型随机显示)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.choice_random,disabled:j,onChange:function(e){he.choice_random=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"选项顺序随机打乱")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生答题时,选项顺序随机显示)")))),b.a.createElement(Ae.a,null),b.a.createElement(b.a.Fragment,null,b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"防作弊设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.identity_verify,disabled:!Object($.o)()||j,onChange:function(e){he.identity_verify=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"作业与测验前人脸身份核验")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生参加作业与测验前将会要求调用摄像头并完成拍照采集,教师/助教审核通过后学生并开启手机录制视频则可以开始作业与测验)"),b.a.createElement("br",null),b.a.createElement("span",{className:"c-grey-c font12"},"如开启,教师/助教可以在该进行中的详情页中对学生人脸身份进行审核。")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.open_camera,disabled:j,onChange:function(e){he.time?(he.open_camera=e.target.checked,he.photo_count=he.photo_count||5,fe(Object.assign({},he))):s.b.error("不限时长的作业与测验不可开启摄像头,请填写作业与测验时长")}},b.a.createElement("strong",null,"进行中启用拍照监考")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生参加作业与测验时将会要求调用摄像头)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"本场作业与测验最多拍摄:"),b.a.createElement(D.a,{size:"large",disabled:j||!he.open_camera,min:1,defaultValue:5,max:Object($.v)()?1e3:10,value:he.photo_count,onChange:function(e){he.photo_count=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"ml10"},"(次)"),b.a.createElement("span",{className:"c-grey-c font12 ml10"},"(请填写不大于10的正整数)")),b.a.createElement(P.a,{className:"c-grey-c font12 pl30 mt10"},"如开启防作弊设置,学生必须同意才可以参加作业与测验。"),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.screen_open,disabled:j,onChange:function(e){he.screen_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"切屏后强制交卷"))),he.screen_open&&b.a.createElement(P.a,{span:24,className:"mt15 pl30 font14"},b.a.createElement("span",{className:"c-grey-333 mr10"},"作业与测验过程中切换页面超过"),b.a.createElement(D.a,{size:"large",disabled:j,min:0,defaultValue:3,max:10,value:he.screen_num,onChange:function(e){he.screen_num=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"c-grey-333 mr10"},"(次)后将被强制交卷,切换到其他页面"),b.a.createElement(D.a,{size:"large",disabled:j,min:0,defaultValue:5,max:60,value:he.screen_sec,onChange:function(e){he.screen_sec=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"c-grey-333"},"(秒)后即判定为切屏。")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:"no"!==he.ip_limit,disabled:j,onChange:function(e){"no"===he.ip_limit?he.ip_limit="pub":he.ip_limit="no",fe(Object.assign({},he))}},b.a.createElement("strong",null,"限制作业与测验访问IP"),b.a.createElement("span",{className:"font12 c-grey-c"},"(不在IP范围中的将无法参加此作业与测验)"))),"no"!==he.ip_limit&&b.a.createElement(P.a,{className:"mt15 ml50"},b.a.createElement("span",{className:"c-red"},"(只允许在Chrome谷歌浏览器作答,并且要求学生安装WebRTC Leak Prevent插件)"),b.a.createElement("a",{className:"c-blue",target:"_blank",href:"https://www.educoder.net/forums/4478"},"如何安装WebRTC Leak Prevent插件?"))),"no"!==he.ip_limit&&b.a.createElement(b.a.Fragment,null,b.a.createElement(M.a,{className:"mt15 ml50 ".concat(it.a.ipWrp)},b.a.createElement(P.a,null,b.a.createElement("span",null,"公网IP地址范围:")),b.a.createElement(P.a,null,!(null!==(l=he.public_ip)&&void 0!==l&&l.length)&&b.a.createElement("span",null,"当前还未设置IP范围"),null===(p=he.public_ip)||void 0===p?void 0:p.map((function(e,t){return b.a.createElement("span",{className:it.a.ipItem},b.a.createElement("i",null,e," "),!j&&b.a.createElement(Ze.a,{onClick:function(){u.a.confirm({okText:"确定",cancelText:"取消",title:"确定删除该IP吗?",onOk:function(){he.public_ip.splice(t,1),fe(Object(h.a)({},he))}})},className:" c-grey-c",size:20}))})),Object($.c)()&&!j&&b.a.createElement("span",{onClick:function(){w({type:"exercise/setActionTabs",payload:{key:"addIp",type:"public_ip"}})},className:"font14 c-blue ml10"}," ",b.a.createElement("i",{className:"iconfont icon-xuanyong font14"})," 添加"))),b.a.createElement(M.a,{className:"mt15 ml50 ".concat(it.a.ipWrp)},b.a.createElement(P.a,null,b.a.createElement("span",null,"内网IP地址范围:")),b.a.createElement(P.a,null,!(null!==(m=he.inner_ip)&&void 0!==m&&m.length)&&b.a.createElement("span",null,"当前还未设置IP范围"),null===(x=he.inner_ip)||void 0===x?void 0:x.map((function(e,t){return b.a.createElement("span",{className:it.a.ipItem},b.a.createElement("i",null,e," "),!j&&b.a.createElement(Ze.a,{onClick:function(){j||u.a.confirm({title:"确定删除该IP吗?",onOk:function(){he.inner_ip.splice(t,1),fe(Object(h.a)({},he))}})},className:" c-grey-c",size:20}))})),Object($.c)()&&!j&&b.a.createElement("span",{className:"font14 c-blue ml10",onClick:function(){w({type:"exercise/setActionTabs",payload:{key:"addIp",type:"inner_ip"}})}}," ",b.a.createElement("i",{className:"iconfont icon-xuanyong font14"})," 添加")))),b.a.createElement(M.a,null,b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.ip_bind,disabled:j,onChange:function(e){he.ip_bind=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"IP绑定"),b.a.createElement("span",{className:"font12 c-grey-c"},"(作业与测验开始后,学生的账号将自动与机器IP绑定。如遇特殊情况,教师/助教可以解除学生的IP绑定)")))),b.a.createElement(Ae.a,null)),b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"属性设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.score_open,disabled:j,onChange:function(e){he.score_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"公开成绩")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则在作业与测验截止时间之后,已提交答题的学生可以查看其它学生的成绩,否则只能查看自己的成绩;但未选中“查看总成绩”时自己和其他同学成绩均不可见)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.answer_open,disabled:j,onChange:function(e){he.answer_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"公开答案")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则在作业与测验截止时间之后,已提交答题的学生可以查看作业与测验题目的答案,否则不能查看)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30 "},b.a.createElement(R.a,{checked:he.show_statistic,disabled:j,onChange:function(e){he.show_statistic=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"公开统计")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则在作业与测验截止时间之后,已提交答题的学生可以查看答题统计,否则不能查看)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.open_total_score,disabled:j,onChange:function(e){he.open_total_score=e.target.checked,!1===e.target.checked&&(he.open_score=e.target.checked),fe(Object.assign({},he))}},b.a.createElement("strong",null,"查看总成绩")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生交卷后能看到自己的总成绩及每个小题的得分,否则总成绩和小题得分均不能查看)")),he.open_total_score&&b.a.createElement(P.a,{style:{marginLeft:20},span:24,className:"mt15 pl30"},b.a.createElement("strong",null,"公开时间"),b.a.createElement(Q.a,{format:"YYYY-MM-DD HH:mm:ss",style:{margin:"0px 15px"},disabled:j,onChange:function(e,t){he.open_time=t,fe(Object.assign({},he))},value:he.open_time?G()(he.open_time):"",disabledDate:be,showTime:{defaultValue:G()("00:00:00","HH:mm:ss")}}),b.a.createElement("span",{className:"c-grey-c font12"},"(可设置成绩公布的时间;未设置时,学生交卷后可立即查看个人成绩)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.open_score,disabled:!he.open_total_score||j,onChange:function(e){he.open_score=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"查看小题得分")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生交卷后能看到自己每个小题的得分详情,否则不能查看。选中本项前必须先选中“查看总成绩”)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.answered_open,disabled:j,onChange:function(e){he.answered_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"查看已答作业与测验")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生交卷后能查看作业与测验和成绩;否则只能查看成绩,不能查看作业与测验)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30 pb40"},b.a.createElement(R.a,{checked:he.assistant_auth,disabled:j,onChange:function(e){he.assistant_auth=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"助教查看答案")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则允许助教查看答案)"))),b.a.createElement(Ae.a,null),Object($.c)()&&b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"600px"},b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"作业与测验导出格式设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("strong",null,"卷头左角标"),b.a.createElement("span",{className:"c-grey-c font12"},"(位于首页左上角,请以图片上传;大小请勿超过200k,尺寸为700x500)")),b.a.createElement("div",{className:"mt15 pl30"},b.a.createElement(Qe.a,Ee,!(null!==(_=he.file_list)&&void 0!==_&&_.length)&&b.a.createElement("div",null,b.a.createElement($e.a,null),b.a.createElement("div",{style:{marginTop:8}},"上传")))),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_title,disabled:j,onChange:function(e){he.show_title=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示作业与测验标题")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则在卷头展示作业与测验标题)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30 "},b.a.createElement(R.a,{checked:he.show_body,disabled:j,onChange:function(e){he.show_body=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示作业与测验内容")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则在卷头展示作业与测验内容,即本作业与测验所属课程名称)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_info,disabled:j,onChange:function(e){he.show_info=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示题量、分值、作业与测验时长")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则在卷头展示题量、分值、作业与测验时长信息)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_table,disabled:j,onChange:function(e){he.show_table=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示得分、评分表格")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则给出学生的得分、评分表格)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("strong",null,"密封线区域设置"),b.a.createElement(R.a,{className:"pl8",checked:he.show_user,disabled:j,onChange:function(e){he.show_user=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"姓名")),b.a.createElement(R.a,{checked:he.show_no,disabled:j,onChange:function(e){he.show_no=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"学号")),b.a.createElement(R.a,{checked:he.show_group,disabled:j,onChange:function(e){he.show_group=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"专业班级"))),Object($.o)()&&b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"每页导出最大试题数:"),b.a.createElement(D.a,{size:"large",min:1,value:he.export_page_num?he.export_page_num:40,onChange:function(e){he.export_page_num=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"ml10"},"题")),b.a.createElement("span",{className:"c-grey-c font12 pl30 pt10"},"(勾选项将会出现在首页左侧密封线内,不选则代表不设置密封区)"),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_desc,disabled:j,onChange:function(e){he.show_desc=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"作业与测验说明")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中开启文本编辑器,可输入500字以内的作业与测验说明)")),he.show_desc&&b.a.createElement("div",{className:"mt15 pl30 pb40"},j?b.a.createElement(ut,{style:{height:150,width:550},disabled:!0,value:he.description}):b.a.createElement(at.a,{width:550,height:150,defaultValue:he.description,id:"exercise-detail-config-exam-description-id",onChange:function(e){he.description=e,fe(Object.assign({},he))}})))),b.a.createElement(P.a,{flex:1,className:"pt40 mb20"},b.a.createElement("div",{className:"pb10"},"示例图片预览:"),b.a.createElement("img",{src:Se.o}))),!j&&b.a.createElement(P.a,{className:"mb50 pb10 btn-w120"},b.a.createElement(a.a,{type:"primary",size:"large",onClick:function(){return function(){var e,t,n,r,i,a=JSON.parse(JSON.stringify(he));if(a.categoryId=C.categoryId,a.publish_time_groups=le,a.attachment_id=(null===(e=a.file_list)||void 0===e||null===(t=e[0])||void 0===t||null===(n=t.response)||void 0===n?void 0:n.id)||null,delete a.file_list,he.unified_setting){if(!he.publish_time||!he.end_time)throw s.b.error("发布截止时间不能为空"),new String("发布截止时间不能为空")}else{if(!le.length)return void s.b.warn("提交失败:分班发布设置不能为空");delete a.publish_time,delete a.end_time,le.map((function(e){var t;if(!e.course_group_id||null===(t=e.course_group_id)||void 0===t||!t.length)throw s.b.error("分班不能为空"),new String("分班不能为空");if(!e.publish_time||!e.end_time)throw s.b.error("发布截止时间不能为空"),new String("发布截止时间不能为空")}))}if(he.open_camera&&he.photo_count<1)throw s.b.error("请填写本场作业与测验最大拍摄次数"),new String("请填写本场作业与测验最大拍摄次数");if(!("no"===he.ip_limit||null!==(r=he.public_ip)&&void 0!==r&&r.length||null!==(i=he.inner_ip)&&void 0!==i&&i.length))throw s.b.error("请填写公网IP或内网IP地址"),new String("请填写内网IP地址");if(he.open_camera||he.screen_open)var o=u.a.confirm({title:"作业与测验说明",className:"custom-modal-divider",icon:null,width:750,content:b.a.createElement("div",{className:"font16 p20"},he.open_camera&&b.a.createElement(M.a,{align:"",justify:"start",className:"mt20"},b.a.createElement(P.a,{flex:"24px"},b.a.createElement("span",{className:"iconfont icon-kaiqishexiangtou c-blue mr20 font24"})),b.a.createElement(P.a,{flex:"1"},"您已开启进行中摄像防作弊功能,",b.a.createElement("span",{className:"c-red"},"这需要调用学生用户的摄像设备"),"。Educoder平台将会严格保护所有学生的照片和视频,并承诺不在本平台以外使用。",b.a.createElement("br",null),"请确认:为严格监督作业与测验以获得公平,您同意并和要求Educoder平台在本次进行中调用学生用户的摄像设备并获取学生的影像信息。")),he.screen_open&&b.a.createElement(M.a,{justify:"start",className:"mt20"},b.a.createElement(P.a,{flex:"24px",className:"mr20"},b.a.createElement("span",{className:"iconfont icon-kaiqifangqieping c-blue font24"})),b.a.createElement(P.a,{flex:"1"},"您已开启进行中防切屏功能,这项功能暂时仅支持谷歌、火狐浏览器。 请确保:在正式开始作业与测验前通知全体学生,使用 ",b.a.createElement("img",{width:"26",src:Se.g})," ",b.a.createElement("span",{className:"c-red"},"谷歌浏览器"),"或",b.a.createElement("img",{width:"26",src:Se.p})," ",b.a.createElement("span",{className:"c-red"},"火狐浏览器"),"进行作业与测验。")),b.a.createElement("p",{className:"ml40 mt40"},b.a.createElement(R.a,{onChange:function(e){return o.update({okButtonProps:{disabled:!e.target.checked}})}},"我已阅读"))),onOk:function(){ve(a)},okButtonProps:{disabled:!0}});else ve(a)}()}},"提交"),b.a.createElement(a.a,{onClick:function(){H(!0),ge()},type:"primary",size:"large",ghost:!0,className:"ml20"},"取消")),b.a.createElement(X.a,null),b.a.createElement(nt,null))})),pt=(n("MXD1"),n("CFYs")),mt=n("9Bee"),gt=n("51gm"),vt=n.n(gt),bt={0:"单选题",1:"多选题",2:"判断题",3:"填空题",4:"问答题",5:"实训题",6:"编程题",7:"接龙题"},yt={1:"满分作答",2:"部分得分作答",3:"零分作答",4:"未批"},Et=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading.effects}}))((function(e){var t,n,r=e.exercise,i=e.loading,a=e.dispatch,o=Object(E.i)(),s=Object(v.useState)(Object(h.a)(Object(h.a)({},o),{sort:"asc",page:1,limit:10})),l=Object(f.a)(s,2),u=l[0],d=l[1],p=(Object(E.h)(),r.statisticsList),m=Object(v.useState)({}),y=Object(f.a)(m,2),x=y[0],_=(y[1],Object(v.useState)([])),k=Object(f.a)(_,2),w=k[0],C=k[1],S=Object(v.useState)(""),A=Object(f.a)(S,2),T=(A[0],A[1],Object(v.useState)("")),D=Object(f.a)(T,2),L=(D[0],D[1],U.a.useForm()),j=Object(f.a)(L,1)[0],B=[{title:"提交率",dataIndex:"commit_percent",align:"center",render:function(e){return b.a.createElement("span",null,0===e?0:(100*e).toFixed(2),"%")}},{title:"最低分",dataIndex:"min_score",align:"center",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"最高分",dataIndex:"max_score",align:"center",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"分")}},{title:"平均分",dataIndex:"average_score",align:"center",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"不及格(得分 低于60%)",dataIndex:"fail_counts",align:"center",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"及格(得分60%~70%)",dataIndex:"pass_counts",align:"center",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"良好(得分70%~90%)",dataIndex:"good_counts",align:"center",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"优秀(得分90%~100%)",dataIndex:"best_counts",align:"center",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"人")}}],H=function(){var e=Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a({type:"exercise/getExerciseStatistics",payload:Object(h.a)({},u)});case 2:null!=(t=e.sent)&&t.exercise_counts&&C([t.exercise_counts]);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return Object(v.useEffect)((function(){H()}),[u.coursesId]),b.a.createElement(b.a.Fragment,null,b.a.createElement("section",{className:"minH500 bg-white"},b.a.createElement("aside",{className:"pt20"},b.a.createElement(U.a,{form:j,onChange:function(){var e=Object.assign({},j.getFieldValue());Object.keys(e).map((function(t){e[t].includes("all")?(delete u[t],j.setFieldsValue(Object(F.a)({},t,"all"))):(u[t]=e[t],j.setFieldsValue(Object(F.a)({},t,u[t])))})),u.page=1,u.limit=10,H()},initialValues:(t={},Object(F.a)(t,"commit_status","all"),Object(F.a)(t,"exercise_group_id","all"),Object(F.a)(t,"review","all"),t)},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px",className:"font14"},"分班情况:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!x.course_group},"全部")),b.a.createElement(P.a,{flex:"1",className:vt.a.wrap},p.course_groups&&p.course_groups.map((function(e,t){return b.a.createElement(R.a,{value:e.exercise_group_id,key:t},e.exercise_group_name,"(",e.exercise_group_students,")")})))))))),b.a.createElement(N.a,{className:"mt30",loading:i["exercise/getExerciseStatistics"],pagination:!1,dataSource:w,columns:B}),b.a.createElement("div",{className:vt.a.title},b.a.createElement(M.a,{align:"middle",style:{height:"100%"},className:"ml5 mr5"},b.a.createElement(P.a,{flex:1,className:"font16"},"统计详情"),b.a.createElement(P.a,{className:"font16"},b.a.createElement("span",{className:"current",onClick:function(){u.sort="desc"===u.sort?"asc":"desc",u.sort_by="cost_time",console.log("xx params.sort: ",u.sort),d(Object(h.a)({},u)),H()}},b.a.createElement("span",null,"平均完成时间"),b.a.createElement("p",{className:"edu-sorter current ".concat("cost_time"===u.sort_by?u.sort:"")},b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-up"}),b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-down"})))),b.a.createElement(P.a,{className:"font16 ml20 mr20"},b.a.createElement("span",{className:"current",onClick:function(){u.sort="desc"===u.sort?"asc":"desc",u.sort_by="right_code_count",console.log("xx params.sort: ",u.sort),d(Object(h.a)({},u)),H()}},b.a.createElement("span",null,"平均正确代码行数"),b.a.createElement("p",{className:"edu-sorter current ".concat("right_code_count"===u.sort_by?u.sort:"")},b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-up"}),b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-down"})))),b.a.createElement(P.a,{className:"font16"},b.a.createElement("span",{className:"current",onClick:function(){u.sort="desc"===u.sort?"asc":"desc",u.sort_by="",console.log("xx params.sort: ",u.sort),d(Object(h.a)({},u)),H()}},b.a.createElement("span",null,"正确率"),b.a.createElement("p",{className:"edu-sorter current ".concat(""===u.sort_by?u.sort:"")},b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-up"}),b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-down"})))))),b.a.createElement(Le.a,{spinning:i["exercise/getExerciseStatistics"]},b.a.createElement("div",{className:"minH200"},null==p||null===(n=p.commit_results)||void 0===n?void 0:n.map((function(e,t){var n;return b.a.createElement("aside",{key:t,className:"font14 c-black mt30"},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:1},e.ques_position,".",bt[e.ques_type]),6===e.ques_type&&b.a.createElement(b.a.Fragment,null,b.a.createElement(P.a,null,"平均正确代码行数:",b.a.createElement("span",{className:"c-orange"},e.right_code_count)),b.a.createElement(P.a,{className:"ml20 mr20"},"平均完成时间:",b.a.createElement("span",{className:"c-orange"},e.cost_time))),b.a.createElement(P.a,null,"正确率 ",b.a.createElement("span",{className:"c-orange"},e.right_percent,"%"))),b.a.createElement("div",null,b.a.createElement(mt.a,{value:e.ques_title})),b.a.createElement("div",{className:"mt20",style:{display:5===e.ques_type?"none":""}},b.a.createElement(M.a,{className:"c-light-black ",gutter:[24,20]},b.a.createElement(P.a,{flex:1},"选项"),b.a.createElement(P.a,{flex:"60px",className:"tc"},"小计"),b.a.createElement(P.a,{flex:"200px"},"百分比"))),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20,display:5===e.ques_type?"none":""}}),7===(null==e?void 0:e.ques_type)&&(null==e?void 0:e.sub_exercise_questions.map((function(t,n){var r;return b.a.createElement("div",null,b.a.createElement("div",{style:{marginBottom:10,display:"flex",justifyContent:"space-between"}},b.a.createElement(P.a,null,b.a.createElement("span",null,t.ques_title)),b.a.createElement(P.a,null,"正确率 ",b.a.createElement("span",{className:"c-orange"},t.right_percent,"%"))),null==t||null===(r=t.ques_details)||void 0===r?void 0:r.map((function(t,n){return b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},b.a.createElement(M.a,{style:{alignItems:"center"}},2===e.ques_type||3===e.ques_type||4===e.ques_type?"":b.a.createElement(P.a,null,O.m[n],". "),4===e.ques_type?b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:yt[t.choice_text]})):b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:"wrong"===t.choice_text?"填写了错误答案":t.choice_text})))),b.a.createElement(P.a,{flex:"60px",className:"tc"},b.a.createElement("span",{className:t.choice_right_boolean&&"c-green"},t.choice_users_count||0)),b.a.createElement(P.a,{flex:"200px"},b.a.createElement(pt.a,{status:"active",strokeColor:"#2abd8b",percent:(100*t.choice_percent).toFixed(),width:200})))})),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20}}))}))),(null==e?void 0:e.ques_type)<7&&(null==e||null===(n=e.ques_details)||void 0===n?void 0:n.map((function(t,n){return 5===e.ques_type?b.a.createElement("div",{className:"mt20"},b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},t.challenge_position,".",t.challenge_name),b.a.createElement(P.a,null,"正确率 ",b.a.createElement("span",{className:"c-orange"},t.challenge_percent,"%"))),b.a.createElement("div",null,b.a.createElement(M.a,{className:"c-light-black ",gutter:[24,20]},b.a.createElement(P.a,{flex:1},"选项"),b.a.createElement(P.a,{flex:"60px",className:"tc"},"小计"),b.a.createElement(P.a,{flex:"200px"},"百分比"))),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20}}),null==t?void 0:t.challenge_details.map((function(e){return b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:yt[e.choice_text]})))),b.a.createElement(P.a,{flex:"60px",className:"tc"},b.a.createElement("span",{className:e.choice_right_boolean&&"c-green"},e.choice_users_count||0)),b.a.createElement(P.a,{flex:"200px"},b.a.createElement(pt.a,{status:"active",strokeColor:"#2abd8b",percent:(100*e.choice_percent).toFixed(),width:200})))})),b.a.createElement(M.a,{className:"",gutter:[24,20]},b.a.createElement(P.a,{className:"ml10",flex:1},"有效填写量"),b.a.createElement(P.a,{flex:"60px",className:"tc"},e.effictive_counts),b.a.createElement(P.a,{flex:"200px"})),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20}})):b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},b.a.createElement(M.a,null,2===e.ques_type||3===e.ques_type||4===e.ques_type?"":b.a.createElement(P.a,null,O.m[n],". "),4===e.ques_type?b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:yt[t.choice_text]})):b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:"wrong"===t.choice_text?"填写了错误答案":t.choice_text})))),b.a.createElement(P.a,{flex:"60px",className:"tc"},b.a.createElement("span",{className:t.choice_right_boolean&&"c-green"},t.choice_users_count||0)),b.a.createElement(P.a,{flex:"200px"},b.a.createElement(pt.a,{status:"active",strokeColor:"#2abd8b",percent:(100*t.choice_percent).toFixed(),width:200})))}))),b.a.createElement(M.a,{style:{display:5===e.ques_type?"none":""},className:"",gutter:[24,20]},b.a.createElement(P.a,{className:2===e.ques_type||3===e.ques_type||4===e.ques_type?"ml10":"",flex:1},"有效填写量"),b.a.createElement(P.a,{flex:"60px",className:"tc"},e.effictive_counts),b.a.createElement(P.a,{flex:"200px"})))}))))),b.a.createElement("div",{className:"tc mt30 mb50"},b.a.createElement(I.a,{hideOnSinglePage:!1,total:null==p?void 0:p.questions_count,current:u.page||1,pageSize:u.limit,onChange:function(e,t){u.page=e,u.limit=t,H()}})))})),xt=n("cVA7"),_t=n.n(xt),kt=n("5e8a"),wt=n.n(kt),Ct=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{title:{left:"center"},tooltip:{trigger:"item",formatter:"{a}
{b} ({d}%)"},color:["#0152d9","#13C2C2","#2FC25B","#FACC14"],series:[{name:"",type:"pie",radius:"55%",center:["40%","50%"],data:e,emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]}},St=function(e){var t=e.names,n=void 0===t?[]:t,r=e.values,i=void 0===r?[]:r,a=e.values1,o=void 0===a?[]:a;return{tooltip:{trigger:"axis",axisPointer:{type:"cross",crossStyle:{color:"#999"}}},legend:{data:["Evaporation","Precipitation","Temperature"]},color:["#0152d9","#13C2C2","#2FC25B","#FACC14"],xAxis:[{type:"category",data:n,axisPointer:{type:"shadow"}}],yAxis:[{type:"value",name:"学员人数",min:0,max:e.num,interval:50,axisLabel:{formatter:"{value}"}},{type:"value",name:"人数占比",min:0,max:100,interval:10,axisLabel:{formatter:"{value}%"}}],series:[{name:"学员人数",type:"bar",tooltip:{valueFormatter:function(e){return e+" 人"}},data:i},{name:"人数占比",type:"line",yAxisIndex:1,tooltip:{valueFormatter:function(e){return e+"%"}},data:o}]}},Ot=function(e){var t=e.names,n=void 0===t?[]:t,r=e.values;return{xAxis:{type:"category",data:n},color:["#0152d9","#13C2C2","#2FC25B","#FACC14"],yAxis:{type:"value"},series:[{data:void 0===r?[]:r,type:"bar"}]}},At=["#0152d9","#13C2C2","#2FC25B","#FACC14"],Tt=["不及格","及格","良好","优秀"],It=Object(_.a)((function(e){var t=e.classroomList,n=e.loading,r=e.user,i=e.problemset,a=e.exercise;return{classroomList:t,globalSetting:e.globalSetting,problemset:i,exercise:a,user:r,loading:n.effects}}))((function(e){e.classroomList,e.globalSetting,e.problemset,e.loading;var t=e.exercise,n=e.user,r=e.dispatch,i=(Object(p.a)(e,["classroomList","globalSetting","problemset","loading","exercise","user","dispatch"]),Object(E.h)(),n.userInfo,t.exerciseList,t.commonHeader,t.checkDomain,Object(v.useState)([])),a=Object(f.a)(i,2),o=a[0],s=a[1],l=Object(v.useState)({}),u=Object(f.a)(l,2),d=u[0],m=u[1],x=Object(v.useState)({}),_=Object(f.a)(x,2),k=_[0],w=_[1],C=Object(v.useState)(Object(h.a)(Object(h.a)({},Object(E.i)()),{},{page:1,per_page:20})),S=Object(f.a)(C,2),O=S[0];S[1];function A(){return(A=Object(c.a)(g.a.mark((function e(){var t,n,r,i,a,o,l,c,u,d,f,p,v,b,E,x,_,k,C,S,A,T,I,D,L,R;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/exercises/".concat(null==O?void 0:O.categoryId,"/exercise_analysis_charts.json"),{method:"get"});case 2:null!=(i=e.sent)&&i.grade_chart&&(u=[{name:"不及格",value:null==i||null===(a=i.grade_chart)||void 0===a?void 0:a.fail_percent},{name:"及格",value:null==i||null===(o=i.grade_chart)||void 0===o?void 0:o.pass_percent},{name:"良好",value:null==i||null===(l=i.grade_chart)||void 0===l?void 0:l.good_percent},{name:"优秀",value:null==i||null===(c=i.grade_chart)||void 0===c?void 0:c.best_percent}],s([].concat(u))),(null==i||null===(t=i.score_area_chart)||void 0===t||null===(n=t.data)||void 0===n?void 0:n.length)>0&&(_=null==i||null===(d=i.score_area_chart)||void 0===d||null===(f=d.data)||void 0===f?void 0:f.map((function(e){return e.area})),k=null==i||null===(p=i.score_area_chart)||void 0===p||null===(v=p.data)||void 0===v?void 0:v.map((function(e){return e.stu_num})),C=null==i||null===(b=i.score_area_chart)||void 0===b||null===(E=b.data)||void 0===E?void 0:E.map((function(e){return e.percent})),S=(null==i||null===(x=i.score_area_chart)||void 0===x?void 0:x.max_stu_num)||0,A={names:_,values:k,values1:C,num:S},m(Object(h.a)({},A))),(null==i||null===(r=i.exercise_time_chart)||void 0===r?void 0:r.length)>0&&(D=null==i||null===(T=i.exercise_time_chart)||void 0===T?void 0:T.map((function(e){return e.area})),L=null==i||null===(I=i.exercise_time_chart)||void 0===I?void 0:I.map((function(e){return e.student_num})),R={names:D,values:L},w(Object(h.a)({},R)));case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return Object(v.useEffect)((function(){r({type:"exercise/getCommonHeader",payload:Object(h.a)({},O)})}),[O.coursesId]),Object(v.useEffect)((function(){!function(){A.apply(this,arguments)}()}),[]),b.a.createElement("section",{className:"edu-container"},b.a.createElement("div",{style:{display:"flex",marginTop:10}},b.a.createElement("div",{style:{flex:5,background:"#fff",marginRight:10}},b.a.createElement("p",{style:{fontSize:16,fontWeight:400,height:40,alignItems:"center",display:"flex",paddingLeft:20,borderBottom:"1px solid #fff9f9"}},"成绩等级占比"),b.a.createElement("div",{className:wt.a.countcenter},b.a.createElement(_t.a,{option:Ct(o),style:{height:400,width:430},opts:{renderer:"svg"}}),b.a.createElement("div",null,b.a.createElement("p",null,"单位:人"),null==At?void 0:At.map((function(e,t){return b.a.createElement("p",{key:t,style:{display:"flex",alignItems:"center"}},b.a.createElement("div",{key:t,className:wt.a.radiusdiv,style:{background:e}})," ",Tt[t])}))))),console.log("---",d),b.a.createElement("div",{style:{flex:5,background:"#fff",marginLeft:10}},b.a.createElement("p",{style:{fontSize:16,fontWeight:400,height:40,display:"flex",paddingLeft:20,borderBottom:"1px solid #fff9f9"}},"分数段分析"),b.a.createElement("div",{className:wt.a.countcenter},b.a.createElement(_t.a,{option:St(Object(h.a)({},d)),style:{height:400,width:550},opts:{renderer:"svg"}})))),b.a.createElement("div",null,b.a.createElement("p",{style:{fontSize:16,fontWeight:400,height:40,alignItems:"center",display:"flex",paddingLeft:20,borderBottom:"1px solid #fff9f9"}},"作业与测验用时分析"),b.a.createElement("div",{className:wt.a.countcenter},b.a.createElement(_t.a,{option:Ot(Object(h.a)({},k)),style:{height:400,width:1100},opts:{renderer:"svg"}}))))})),Dt=function(){var e=Object(c.a)(g.a.mark((function e(t,n){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Object(y.a)("/api/exercises/".concat(t,"/exercise_analysis.json"),{method:"GET",params:n}));case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),Lt=n("CY+3"),Rt=n.n(Lt),Nt=(n("h6EL"),Object(v.memo)((function(e){var t=e.data,n=["#307DFE","#13C2C2","#8543E0"],r=Object(v.useMemo)((function(){return{legend:{show:!0,orient:"vertical",top:"middle",right:80,itemWidth:8,itemHeight:8,itemGap:20,icon:"circle",selectedMode:!1},series:[{type:"pie",clockwise:!0,right:134,data:null==t?void 0:t.map((function(e){return{name:e.type,value:parseFloat(e.num)}})),label:{show:!0,position:"inside",formatter:"{d}%",fontSize:14,fontWeight:400},itemStyle:{color:function(e){var t=(e||{}).dataIndex;return n[t]}}}]}}),[t]);return b.a.createElement(_t.a,{option:r})}))),jt=Object(v.memo)((function(e){var t=e.data,n=["#307DFE","#13C2C2","#2FC25B","#FACC14","#F04864","#8543E0","#3436C7","#223273"],r=Object(v.useMemo)((function(){return{legend:{show:!0,orient:"vertical",top:"middle",right:80,itemWidth:8,itemHeight:8,itemGap:20,icon:"circle",selectedMode:!1},series:[{type:"pie",right:134,clockwise:!0,data:null==t?void 0:t.map((function(e){return{name:e.type,value:parseFloat(e.num)}})),label:{show:!0,position:"inside",formatter:"{d}%",fontSize:14,fontWeight:400},itemStyle:{color:function(e){var t=e.dataIndex;return n[t]}}}]}}),[t]);return b.a.createElement(_t.a,{option:r})})),Mt=Object(v.memo)((function(e){var t=e.data,n=Object(v.useMemo)((function(){var e=Object.keys(t),n=e.map((function(e){return t[e]}));return{xAxis:{type:"category",data:e},yAxis:{type:"value",name:"题数",nameLocation:"middle",nameGap:20,minInterval:1},tooltip:{show:!0,position:"top",formatter:"{b}
题数:{c}"},series:[{data:n,type:"bar",itemStyle:{color:"#a3c5fe",borderColor:"#196EFD"}}]}}),[t]);return b.a.createElement(_t.a,{option:n})})),Pt=Object(v.memo)((function(e){var t=e.data,n=new Image;n.src=Se.q;var r=Object(v.useMemo)((function(){return{backgroundColor:"#fff",series:[{type:"wordCloud",sizeRange:[10,30],rotationRange:[-90,90],rotationStep:45,maskImage:n,gridSize:2,shape:"pentagon",textStyle:{normal:{color:function(){return"rgb("+Math.round(255*Math.random())+", "+Math.round(255*Math.random())+", "+Math.round(255*Math.random())+")"}}},left:"center",top:"center",right:null,bottom:null,width:"100%",height:"100%",data:t.map((function(e,t){return{name:e,value:t}}))}]}}),[]);return b.a.createElement(_t.a,{option:r})})),Bt=function(){var e=Object(E.i)(),t=e.coursesId,n=e.categoryId,r=Object(v.useState)(),i=Object(f.a)(r,2),a=i[0],o=i[1];return Object(v.useEffect)((function(){Dt(n,{categoryId:n,coursesId:t}).then((function(e){"status"in e||o(e)}))}),[]),a?b.a.createElement("div",null,b.a.createElement(M.a,{gutter:20,style:{marginBottom:20,marginTop:30}},b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"难度分布"),b.a.createElement(Nt,{data:null==a?void 0:a.difficulty_list}))),b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"题型分布"),b.a.createElement(jt,{data:null==a?void 0:a.ques_type_list})))),b.a.createElement(M.a,{gutter:20,style:{marginBottom:30}},b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"分值分布"),b.a.createElement(Mt,{data:null==a?void 0:a.score_list}))),b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"知识点"),b.a.createElement(Pt,{data:null==a?void 0:a.tag_discipline_list}))))):b.a.createElement(Y.a,null)},Ft=Object(_.a)((function(e){var t=e.classroomList,n=e.loading,r=e.user,i=e.problemset,a=e.exercise;return{classroomList:t,globalSetting:e.globalSetting,problemset:i,exercise:a,user:r,loading:n.effects}}))((function(e){e.classroomList,e.globalSetting,e.problemset,e.loading;var t=e.exercise,n=e.user,i=e.dispatch,a=(Object(p.a)(e,["classroomList","globalSetting","problemset","loading","exercise","user","dispatch"]),Object(E.h)(),n.userInfo,t.exerciseList,t.commonHeader,t.checkDomain,Object(v.useState)(Object(h.a)(Object(h.a)({},Object(E.i)()),{},{page:1,per_page:20}))),o=Object(f.a)(a,2),s=o[0];o[1];return Object(v.useEffect)((function(){i({type:"exercise/getCommonHeader",payload:Object(h.a)({},s)})}),[s.coursesId]),b.a.createElement(r.a,{defaultActiveKey:"1"},b.a.createElement(r.a.TabPane,{key:1,tab:"答题统计"},b.a.createElement(Et,null)),b.a.createElement(r.a.TabPane,{key:2,tab:"作业与测验分析"},b.a.createElement(Bt,null),b.a.createElement(It,null)))})),Ut={0:"单选题",1:"多选题",2:"判断题",3:"填空题",4:"简答题",5:"实训题",6:"编程题",7:"接龙题"},Ht=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading.effects}}))((function(e){var t,n=e.exercise,r=e.loading,i=e.dispatch,a=Object(E.i)(),o=(Object(E.h)(),n.statisticsList),s=Object(v.useState)({}),l=Object(f.a)(s,2),u=(l[0],l[1],Object(v.useState)([])),d=Object(f.a)(u,2),p=d[0],m=d[1],y=Object(v.useState)(""),x=Object(f.a)(y,2),_=(x[0],x[1],Object(v.useState)("")),k=Object(f.a)(_,2),w=(k[0],k[1],Object(v.useState)({})),C=Object(f.a)(w,2),S=(C[0],C[1],U.a.useForm());Object(f.a)(S,1)[0];a.sort="asc";var O=function(e){return{title:{text:"『 学生正确率分布图 』",left:"center"},tooltip:{trigger:"item",formatter:"{b} : {c} 人"},legend:{bottom:0,icon:"circle",left:"center",itemWidth:6,itemHeight:6,data:["100%","90%-100%","70%-90%","60%-70%","60%以下"].reverse()},series:[{type:"pie",radius:"55%",minAngle:15,center:["50%","50%"],selectedMode:"single",label:{show:!0,position:"outer",normal:{formatter:"{b} \n {c}人",color:"#5c5c5c",lineHeight:20}},labelLine:{normal:{length:20,length2:20,lineStyle:{color:"rgba(0,0,0,.45)"}}},data:[{value:e.details[0].full_count,name:"100%"},{value:e.details[0].best_count,name:"90%-100%"},{value:e.details[0].good_count,name:"70%-90%"},{value:e.details[0].pass_count,name:"60%-70%"},{value:e.details[0].fails_count,name:"60%以下"}],itemStyle:{emphasis:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"},normal:{color:function(e){return["#99B8FB","#80E0B9","#8190AA","#F7C739","#EB7E65"][e.dataIndex]}}},emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]}},A=[{title:"提交率",dataIndex:"commit_percent",render:function(e){return b.a.createElement("span",null,100*e,"%")}},{title:"最低分",dataIndex:"min_score",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"最高分",dataIndex:"max_score",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"分")}},{title:"平均分",dataIndex:"average_score",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"不及格(得分 低于60%)",dataIndex:"fail_counts",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"及格(得分60%~70%)",dataIndex:"pass_counts",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"良好(得分70%~90%)",dataIndex:"good_counts",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"优秀(得分90%~100%)",dataIndex:"best_counts",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"人")}}],T=function(){var e=Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i({type:"exercise/getExerciseStatistics",payload:Object(h.a)({},a)});case 2:null!=(t=e.sent)&&t.exercise_counts&&m([t.exercise_counts]);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return Object(v.useEffect)((function(){T()}),[a.coursesId]),b.a.createElement("section",{className:"minH500 ",style:{padding:0}},b.a.createElement("aside",{className:"bg-white inline-block w100 th-bg-white"},b.a.createElement(N.a,{className:"mt10 bg-white",loading:r["exercise/getExerciseStatistics"],pagination:!1,dataSource:p,columns:A})),b.a.createElement("aside",{className:"mt20"},b.a.createElement("span",{className:"bold c-black font16 ml20"},"已交卷学生答题详情")),b.a.createElement("aside",null,null==o||null===(t=o.commit_results)||void 0===t?void 0:t.map((function(e,t){return b.a.createElement("div",{key:t,className:"bg-white pl20 pt20 pr20 pb20 mt20"},b.a.createElement("div",{style:{fontSize:14,color:"#0152d9",fontWeight:500}},t+1,"、",Ut[e.question_type],b.a.createElement("span",{style:{color:"#999",paddingLeft:10}},"(共",e.question_count,"小题,",e.question_score,"分)"),b.a.createElement("span",{style:{color:"#000",float:"right"}},"全班正确率:",100*e.right_percent,"%")),b.a.createElement(_t.a,{option:O(e),style:{height:370},opts:{renderer:"svg"}}))}))))})),Gt=n("tf39"),zt=n.n(Gt);t.default=Object(_.a)((function(e){var t=e.exercise,n=e.loading,r=e.user;return{exercise:t,globalSetting:e.globalSetting,user:r,loading:n.effects}}))((function(e){var t,n,m,T,I,D,L,R,N,j,M,P,B=e.exercise,F=(e.globalSetting,e.loading,e.dispatch),U=e.user,H=(e.match,Object(p.a)(e,["exercise","globalSetting","loading","dispatch","user","match"])),z=Object(E.i)(),V=Object(E.h)(),W=Object(v.useState)([]),K=Object(f.a)(W,2),q=(K[0],K[1],B.exerciseList),Y=B.commonHeader,Q=B.checkDomain,J=Object(v.useState)(V.query.tabs||0),X=Object(f.a)(J,2),Z=X[0],ee=X[1],te=Object(v.useState)(G()(new Date).valueOf()),ne=Object(f.a)(te,2),ie=ne[0],ae=ne[1],oe=Object(v.useState)(),se=Object(f.a)(oe,2),le=se[0],ce=se[1],ue=U.userInfo;Object(E.g)();z.category=V.query.category_id;var de=!Q||Q&&(null==ue||null===(t=ue.course)||void 0===t?void 0:t.course_identity)<3;Object(v.useEffect)((function(){F({type:"exercise/getCommonHeader",payload:Object(h.a)({},z)})}),[z.coursesId]);var he=function(){var e;Object(O.Y)({inner_ip:Y.inner_ip,public_ip:Y.public_ip,ip_limit:Y.ip_limit,ip_bind:Y.ip_bind,open_camera:Y.open_camera,exercise_tips:[Y.open_camera?"已开启防作弊":""],exerciseId:Y.id,screen_open:Y.screen_open,screen_num:Y.screen_num,coursesId:z.coursesId,login:ue.login,history:H.history,identity_verify:Y.identity_verify,current_status:null==Y||null===(e=Y.user_permission)||void 0===e?void 0:e.current_status,open_phone_video_recording:null==Y?void 0:Y.open_phone_video_recording})},fe=function(){F({type:"exercise/getCommonHeader",payload:Object(h.a)({},z)});var e={0:function(){F({type:"exercise/getExerciseList",payload:Object(h.a)({},z)})},3:function(){F({type:"exercise/getWorkSetting",payload:Object(h.a)({},z)})}};e[Z]&&e[Z]()};var me=[{name:"答题列表",id:0,compontent:b.a.createElement(re,{getparams:function(e){ce(Object(h.a)({},e))},checkDomainAuthority:de})},{name:"预览",id:2,compontent:b.a.createElement(De,{activeTabs:Z})},{name:"统计结果",id:1,compontent:b.a.createElement(Ft,null)},{name:"代码查重",id:4,compontent:b.a.createElement(Oe,{key:ie})},{name:"规则设置",id:3,compontent:b.a.createElement(ft,null)},{name:"人脸审核",id:5,compontent:b.a.createElement(pe,null)},{name:"摄像监控",id:6,compontent:b.a.createElement(Ee,null)}].filter((function(e){return null!=Y&&Y.is_random&&("统计结果"===e.name&&(e.compontent=b.a.createElement(Ht,null)),"预览"===e.name&&(e.compontent=b.a.createElement(Ve.default,null))),!0})).filter((function(e){return!!(Object($.k)()&&null!=Y&&Y.assistant_auth||Object($.c)())||(null!=Y&&Y.show_statistic&&3===(null==Y?void 0:Y.exercise_status)?"预览"!==e.name:"答题列表"===e.name||"规则设置"===e.name)})).filter((function(e){return!(Object($.s)()||1===Y.exercise_status||!Y.exist_program)||"代码查重"!==e.name})).filter((function(e){return!!Y.identity_verify||"人脸审核"!==e.name})).filter((function(e){return!!Y.open_phone_video_recording||"摄像监控"!==e.name})).filter((function(e){return!(Object(O.K)()&&!Object($.o)())||"预览"!==e.name&&"统计结果"!==e.name})).filter((function(e){return!!de||"统计结果"!==e.name&&"预览"!==e.name&&"规则设置"!==e.name})).filter((function(e){return!!e}));console.log(me,"tabsArr"),(null==Y?void 0:Y.exercise_status)&&1===(null==Y?void 0:Y.exercise_status)&&me.splice.apply(me,[0,1].concat(Object(d.a)(me.splice(1,1,me[0])))),Object(v.useEffect)((function(){(null==Y?void 0:Y.exercise_status)&&1===(null==Y?void 0:Y.exercise_status)&&ee("2")}),[null==Y?void 0:Y.exercise_status]);var ge="YYYY-MM-DD",ve=G()("2020-11-15",ge),be=function(){return u.a.info({title:"题库改版告知",content:b.a.createElement(b.a.Fragment,null,"EduCoder已升级题库功能,所有试题均需匹配知识点。 当前作业与测验所涉及试题均未匹配知识点,无法随机抽取,已不能有效使用。请在作业与测验库重新组卷后使用。 由此带来的不便,敬请谅解!")})},ye=function(){var e=Object(c.a)(g.a.mark((function e(t){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/courses/".concat(null==z?void 0:z.coursesId,"/exercises/exercise_code_repeat.json"),{method:"post",body:{group_ids:t,id:null==z?void 0:z.categoryId}});case 2:if(0!==(n=e.sent).status){e.next=8;break}return ee(4),ae(G()(new Date).valueOf()),F({type:"exercise/setActionTabs",payload:{}}),e.abrupt("return");case 8:n.status<-2&&s.b.error(null==n?void 0:n.message);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return Object($.h)()?b.a.createElement("section",{className:zt.a.bg},b.a.createElement("div",{className:"edu-container"},ue.username&&b.a.createElement("section",{className:"animated fadeIn"},b.a.createElement("aside",{className:"mt10"},b.a.createElement(o.a,{separator:">"},b.a.createElement(o.a.Item,null,b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exercise")},null==U||null===(n=U.userInfo)||void 0===n||null===(m=n.course)||void 0===m?void 0:m.course_name)),b.a.createElement(o.a.Item,null,b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exercise")},"作业与测验")),b.a.createElement(o.a.Item,null,"详情"))),b.a.createElement("aside",{className:[zt.a.title,"mt20"].join(" ")},b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exercise")},b.a.createElement(k.a,{className:"font16 c-black"})),Object(O.z)(null==Y?void 0:Y.exercise_status),b.a.createElement("strong",{className:"font20 ml5"},null==Y?void 0:Y.exercise_name))),b.a.createElement("aside",{className:"mt30 relative"},b.a.createElement("div",{className:zt.a.export},!Object($.s)()&&de&&Y.exercise_status>1&&Y.exist_program&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault(),F({type:"exercise/setActionTabs",payload:{key:"代码查重",params:z}})}},b.a.createElement("span",{className:"iconfont icon-daimachazhong font14 mr5"}),"代码查重"),Object($.c)()&&de&&(null==Y||null===(T=Y.user_permission)||void 0===T?void 0:T.user_commit_counts)>0&&2===(null==Y?void 0:Y.exercise_status)&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault(),F({type:"exercise/setActionTabs",payload:{key:"打回重做",params:z}})}},b.a.createElement("span",{className:"iconfont icon-dahuizhongzuo3x font14 mr5"}),"打回重做"),Object($.c)()&&de&&(null==Y||null===(I=Y.user_permission)||void 0===I?void 0:I.exercise_unpublish_count)>0&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault();var t=G()(null==Y?void 0:Y.created_at,ge);G()(ve).diff(G()(t),"days")>0&&null!=Y&&Y.is_random?be():F({type:"exercise/setActionTabs",payload:{key:"批量发布",selectArrs:[z.categoryId],params:z,disabled:1!==(null==Y?void 0:Y.exercise_status),type:2,cb:fe}})}},b.a.createElement("span",{className:"iconfont icon-fabuzhiwei font14 mr5"}),"发布作业与测验"),Object($.c)()&&de&&(null==Y||null===(D=Y.user_permission)||void 0===D?void 0:D.exercise_publish_count)>0&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault(),F({type:"exercise/setActionTabs",payload:{key:"批量结束",selectArrs:[z.categoryId],params:z,cb:fe}})}},b.a.createElement("span",{className:"iconfont icon-lijijiezhi mr5 font14"}),"结束"),Object($.s)()&&2===(null==Y||null===(L=Y.user_permission)||void 0===L?void 0:L.current_status)&&Y.exercise_status>1&&b.a.createElement(a.a,{style:{color:(null==q||null===(R=q.exercise_types)||void 0===R?void 0:R.is_redo)&&"red"},onClick:he},b.a.createElement("span",{className:"iconfont icon-bianjizuoye mr5 font14"}),null!=q&&null!==(N=q.exercise_types)&&void 0!==N&&N.is_redo?"重新作业与测验":"开始作业与测验"),Object($.s)()&&0===(null==Y||null===(j=Y.user_permission)||void 0===j?void 0:j.current_status)&&Y.exercise_status>1&&b.a.createElement(a.a,{onClick:he},b.a.createElement("span",{className:"iconfont icon-bianjizuoye mr5 font14"}),"继续作业与测验"),Object($.c)()&&de&&(Object($.k)()&&(null==Y?void 0:Y.assistant_auth)||!Object($.k)())&&b.a.createElement(a.a,{onClick:function(){var e=G()(null==Y?void 0:Y.created_at,ge);G()(ve).diff(G()(e),"days")>0&&null!=Y&&Y.is_random?be():_.d.push(null!=Y&&Y.is_random?"/classrooms/".concat(z.coursesId,"/exercise/").concat(z.categoryId,"/random/edit?random=true"):"/classrooms/".concat(z.coursesId,"/exercise/").concat(z.categoryId,"/edit?random=false"))}},b.a.createElement("span",{className:"iconfont icon-bianjizuoye mr5 font14"}),"编辑"),Object($.c)()&&de&&b.a.createElement(i.a,{overlay:function(){return b.a.createElement(l.a,{onClick:function(){var e=Object(c.a)(g.a.mark((function e(t){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=t.key,e.next="1"===e.t0?3:8;break;case 3:return e.next=5,Object(S.n)(Object(h.a)(Object(h.a)({},z),le));case 5:return 0===e.sent.status&&Object(A.i)(Object(h.a)(Object(h.a)({},z),le)),e.abrupt("break",8);case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()},b.a.createElement(l.a.Item,{key:"1"},"学生成绩"),b.a.createElement(l.a.Item,{key:"2"},b.a.createElement("a",{target:"_blank",href:"/classrooms/".concat(z.coursesId,"/exercise/").concat(z.categoryId,"/export_blank")},"导出作业与测验")),b.a.createElement(l.a.Item,{key:"3"},b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exportlist/exercise_score")},"历史导出")))}},b.a.createElement(a.a,null,b.a.createElement(w.a,null),"导出",b.a.createElement(C.a,null)))),b.a.createElement(r.a,{activeKey:String(Z),className:zt.a.tabs,onChange:function(e){var t=G()(null==Y?void 0:Y.created_at,ge);G()(ve).diff(G()(t),"days")>0&&3===parseInt(e)&&null!=Y&&Y.is_random?be():ee(e)}},me.map((function(e,t){return b.a.createElement(r.a.TabPane,{tab:e.name,key:e.id})}))),b.a.createElement("section",{className:null!=Y&&Y.is_random&&"2"===Z?"":"pl25 pr25 bg-white"},null===(M=me.filter((function(e){return e.id==Z})))||void 0===M||null===(P=M[0])||void 0===P?void 0:P.compontent))),b.a.createElement(ze.a,null),b.a.createElement(qe,{onOk:ye}),b.a.createElement(Ye.a,null),b.a.createElement(Ge,{cb:function(){F({type:"exercise/getExerciseList",payload:Object(h.a)({},z)})}})):""}))},JWDV: +/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/react/index.js (<- Module is not an ECMAScript module) */function(e,t,n){"use strict";n.r(t);n("Znn+");var r=n("ZTPi"),i=(n("qVdP"),n("jsC+")),a=(n("+L6B"),n("2/Rp")),o=(n("sPJy"),n("bE4q")),s=(n("miYZ"),n("tsqr")),l=(n("lUTK"),n("BvKs")),c=n("9og8"),u=(n("2qtc"),n("kLXV")),d=n("oBTY"),h=n("k1fw"),f=n("tJVT"),p=n("PpiC"),m=n("WmNS"),g=n.n(m),v=n("q1tI"),b=n.n(v),y=n("ErOA"),E=n("Ty5D"),x=n("55Ip"),_=n("9kvl"),k=n("jhfD"),w=n("Llu2"),C=n("0NbB"),S=n("V0Rq"),O=n("1vsH"),A=n("mgmH"),T=(n("7Kak"),n("9yH6")),I=(n("DjyN"),n("NUBc")),D=(n("giR+"),n("fyUT")),L=(n("5NDa"),n("5rEg")),R=(n("sRBo"),n("kaz8")),N=(n("g9YV"),n("wCAj")),j=(n("BoS7"),n("Sdc0")),M=(n("14J3"),n("BMrR")),P=(n("jCWc"),n("kPKH")),B=(n("5Dmo"),n("3S7+")),F=n("jrin"),U=(n("y8nQ"),n("Vl3Y")),H=n("wd/R"),G=n.n(H),z=Object(_.a)((function(e){return{shixunHomeworks:e.shixunHomeworks}}))((function(e){var t=e.shixunHomeworks,n=e.dispatch,r=Object(E.i)();return b.a.createElement(u.a,{centered:!0,title:"提示",visible:"打回重做"===t.actionTabs.key,okText:"确定",cancelText:"取消",onOk:Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/myshixuns/".concat(t.actionTabs.selectArrs.myshixun_identifier,"/reset_my_game.json"),{method:"post",body:{course_id:r.coursesId}});case 2:0===e.sent.status&&(s.b.success("删除成功"),n({type:"shixunHomeworks/setActionTabs",payload:{}}),n({type:"shixunHomeworks/getWorkList",payload:Object(h.a)({},t.actionTabs.params)}));case 4:case"end":return e.stop()}}),e)}))),onCancel:function(){n({type:"shixunHomeworks/setActionTabs",payload:{}})}},b.a.createElement("p",null,"该作业将被打回重做,学生实训记录将被清空!"),b.a.createElement("p",null,"确定打回?"))})),V=Object(_.a)((function(e){return{exercise:e.exercise}}))((function(e){var t,n,r,i,a,o,l,d,p=e.exercise,m=e.dispatch,y=Object(E.i)(),x=Object(v.useState)(!0),_=Object(f.a)(x,2),k=(_[0],_[1],U.a.useForm()),w=Object(f.a)(k,1)[0],C=p.actionTabs;return Object(v.useEffect)((function(){var e,t,n,r;"更改评阅"===p.actionTabs.key&&(w.resetFields(),w.setFieldsValue({subjective_score:null==C||null===(e=C.selectArrs)||void 0===e||null===(t=e.record)||void 0===t?void 0:t.subjective_score,objective_score:null==C||null===(n=C.selectArrs)||void 0===n||null===(r=n.record)||void 0===r?void 0:r.objective_score}))}),[p.actionTabs.key]),b.a.createElement(b.a.Fragment,null,b.a.createElement(u.a,{centered:!0,title:"评阅",visible:"更改评阅"===p.actionTabs.key,okText:"确定",cancelText:"取消",onOk:Object(c.a)(g.a.mark((function e(){var t,n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,w.validateFields();case 2:return r=w.getFieldValue(),e.next=5,Object(S.O)(Object(h.a)(Object(h.a)({},r),{},{id:y.categoryId,user_id:null==C||null===(t=C.selectArrs)||void 0===t||null===(n=t.record)||void 0===n?void 0:n.user_id}));case 5:0===e.sent.status&&(s.b.success("评阅成功"),w.resetFields(),m({type:"exercise/setActionTabs",payload:{}}),m({type:"exercise/getExerciseList",payload:Object(h.a)({},p.actionTabs.params)}));case 7:case"end":return e.stop()}}),e)}))),onCancel:function(){m({type:"exercise/setActionTabs",payload:{}})}},b.a.createElement("div",{className:"pl30"},b.a.createElement(U.a,{form:w},b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement(U.a.Item,{name:"subjective_score",label:"问答题成绩",rules:[{required:!0,message:"请输入!"}]},b.a.createElement(D.a,{min:0,max:1*(null==C||null===(t=C.selectArrs)||void 0===t||null===(n=t.exercise_types)||void 0===n?void 0:n.subjective_score),style:{width:150},placeholder:"请填写问答题成绩"}))),b.a.createElement(P.a,{flex:1},b.a.createElement("div",null,b.a.createElement("span",{className:"ml10"},"分,总共:",null==C||null===(r=C.selectArrs)||void 0===r||null===(i=r.exercise_types)||void 0===i?void 0:i.subjective_score,"分")))),b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement(U.a.Item,{name:"objective_score",label:"客观题成绩",rules:[{required:!0,message:"请输入!"}]},b.a.createElement(D.a,{min:0,max:1*(null==C||null===(a=C.selectArrs)||void 0===a||null===(o=a.exercise_types)||void 0===o?void 0:o.objective_score),style:{width:150},width:150,placeholder:"请填写客观题成绩"}))),b.a.createElement(P.a,{flex:1},b.a.createElement("div",null,b.a.createElement("span",{className:"ml10"},"分,总共:",null==C||null===(l=C.selectArrs)||void 0===l||null===(d=l.exercise_types)||void 0===d?void 0:d.objective_score,"分"))))))))})),W=[{name:"未评阅",id:0,type:"unreview_counts"},{name:"评阅中",id:2,type:"reviewing_counts"},{name:"已评阅",id:1,type:"review_counts"}],K=[{name:"未开始",id:0,type:"unanswer_users"},{name:"进行中",id:1,type:"answering_users"},{name:"已完成",id:2,type:"answer_users"},{name:"已提交/未答",id:3,type:"commit_with_no_answers_users"}],q=[{name:"无需补考",id:0,type:"unmake_up_users_count"},{name:"参加补考",id:1,type:"make_up_users_count"}],Y=n("BdwD"),Q=(n("iQDF"),n("+eQT")),J=Object(_.a)((function(e){return{exercise:e.exercise}}))((function(e){var t,n,r=e.exercise,i=e.dispatch,a=Object(E.i)(),o=Object(v.useState)(!0),l=Object(f.a)(o,2),d=(l[0],l[1],U.a.useForm()),p=Object(f.a)(d,1)[0],m=Object(v.useState)(!1),y=Object(f.a)(m,2),x=y[0],_=y[1],k=Object(v.useState)({}),w=Object(f.a)(k,2),C=w[0],O=w[1],A=r.actionTabs;Object(v.useEffect)((function(){var e,t,n,i;"延时"===r.actionTabs.key&&(_(!1),p.resetFields(),p.setFieldsValue({subjective_score:null==A||null===(e=A.selectArrs)||void 0===e||null===(t=e.record)||void 0===t?void 0:t.subjective_score,objective_score:null==A||null===(n=A.selectArrs)||void 0===n||null===(i=n.record)||void 0===i?void 0:i.objective_score}))}),[r.actionTabs.key]);function T(e,t){for(var n=[],r=e;rG()(null==A||null===(n=A.selectArrs)||void 0===n?void 0:n.exercise_end_at).endOf("minute")||e<=G()().startOf("day"))},disabledTime:function(e){var t,n=null==A||null===(t=A.selectArrs)||void 0===t?void 0:t.exercise_end_at,r=G()(e).format("HH");if(G()(e).isSame(G()(n),"day")){var i=G()(n).format("HH"),a=G()(n).format("mm");return{disabledHours:function(){return T(0,24).splice(1*i+1,24-i)},disabledMinutes:function(){return G()(e).isSame(G()(n),"hour")&&r<=i?T(a,60):T(60,60)}}}if(G()(e).isSame(G()(),"day")){var o=G()().format("HH"),s=G()().format("mm");return{disabledHours:function(){return T(0,24).splice(0,o)},disabledMinutes:function(){return r<=o?T(0,s):T(60,60)}}}return!1},getPopupContainer:function(e){return e.parentNode},allowClear:!1,onChange:function(e,t){var n,r;G()(t)>G()(null==A||null===(n=A.selectArrs)||void 0===n?void 0:n.exercise_end_at)&&p.setFieldsValue({time:G()(null==A||null===(r=A.selectArrs)||void 0===r?void 0:r.exercise_end_at).format("YYYY-MM-DD HH:mm")})}})))),b.a.createElement(M.a,{style:{marginLeft:78,marginTop:4}},b.a.createElement(U.a.Item,{name:"is_clear",className:"ml10",initialValue:!1,valuePropName:"checked"},b.a.createElement(R.a,null,"确认清除该学生的已切屏次数")))))))})),X=n("kaH+"),Z=n("dhSg"),$=n("xKgJ"),ee=n("hjlX"),te=n.n(ee),ne=function(e){var t=e.item,n=e.renderText,r=Object(E.i)(),i=Object(v.useState)(),a=Object(f.a)(i,2),o=a[0],s=a[1],l=function(){var e=Object(c.a)(g.a.mark((function e(){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!o){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,Object(S.B)({id:r.categoryId,user_id:null==t?void 0:t.user_id});case 4:(n=e.sent)&&s(n);case 6:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return b.a.createElement(B.a,{onVisibleChange:l,title:b.a.createElement("div",null,"单选题 ",null==o?void 0:o.single_question_score,"分 ",b.a.createElement("br",null),"多选题 ",null==o?void 0:o.multiple_question_score,"分 ",b.a.createElement("br",null),"判断题 ",null==o?void 0:o.judgement_question_score,"分 ",b.a.createElement("br",null),"填空题 ",null==o?void 0:o.completion_question_score,"分 ",b.a.createElement("br",null),"实训题 ",null==o?void 0:o.shixun_question_score,"分")},n)},re=Object(_.a)((function(e){var t=e.exercise,n=e.loading,r=e.globalSetting;return{exercise:t,loading:n.effects,globalSetting:r}}))((function(e){var t,n,r,i,o,l,m,k,w,C,A,H,Q,ee,re,ie,ae,oe,se,le,ce,ue,de,he,fe,pe,me,ge,ve,be,ye,Ee,xe,_e,ke,we,Ce,Se=e.exercise,Oe=e.loading,Ae=e.dispatch,Te=e.globalSetting,Ie=e.checkDomainAuthority,De=e.getparams,Le=(Object(p.a)(e,["exercise","loading","dispatch","globalSetting","checkDomainAuthority","getparams"]),Object(E.h)()),Re=Object(E.i)(),Ne=Object(v.useState)(Object(h.a)({},Re)),je=Object(f.a)(Ne,2),Me=je[0],Pe=je[1],Be=Se.exerciseList,Fe=Se.commonHeader,Ue=Object(v.useState)({}),He=Object(f.a)(Ue,2),Ge=He[0],ze=(He[1],Object(v.useState)("")),Ve=Object(f.a)(ze,2),We=(Ve[0],Ve[1],Object(v.useState)(0)),Ke=Object(f.a)(We,2),qe=Ke[0],Ye=Ke[1],Qe=Object(v.useState)({}),Je=Object(f.a)(Qe,2),Xe=(Je[0],Je[1],Object(v.useState)(!1)),Ze=Object(f.a)(Xe,2),$e=Ze[0],et=Ze[1],tt=Object(v.useState)("alert"),nt=Object(f.a)(tt,2),rt=nt[0],it=nt[1],at=Object(v.useState)(0),ot=Object(f.a)(at,2),st=ot[0],lt=ot[1],ct=Object(v.useState)(!1),ut=Object(f.a)(ct,2),dt=(ut[0],ut[1]),ht=Object(v.useState)(!1),ft=Object(f.a)(ht,2),pt=ft[0],mt=ft[1],gt=U.a.useForm(),vt=Object(f.a)(gt,1)[0],bt=Object(v.useState)([]),yt=Object(f.a)(bt,2),Et=yt[0],xt=yt[1],_t=Object(v.useState)(!0),kt=Object(f.a)(_t,2),wt=(kt[0],kt[1],Object(v.useRef)(),Object(v.useState)(1)),Ct=Object(f.a)(wt,2),St=Ct[0],Ot=Ct[1],At=Object(v.useState)(""),Tt=Object(f.a)(At,2),It=Tt[0],Dt=Tt[1],Lt=Object(v.useState)(),Rt=Object(f.a)(Lt,2),Nt=Rt[0],jt=Rt[1],Mt=Object(v.useState)(!1),Pt=Object(f.a)(Mt,2),Bt=Pt[0],Ft=Pt[1];function Ut(){return(Ut=Object(c.a)(g.a.mark((function e(t){var n,r,i,a,o;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return jt(null==t?void 0:t.exercise_user_id),Ft(2===t.commit_status||3===t.commit_status),dt(!0),e.next=5,Object(y.a)("/api/exercises/".concat(Me.categoryId,"/student_info.json"),{method:"get",params:{exercise_user_id:null==t?void 0:t.exercise_user_id}});case 5:(null==(o=e.sent)||null===(n=o.data)||void 0===n||null===(r=n.exercise_user_photos)||void 0===r?void 0:r.length)>0?et(!0):s.b.info("当前暂无照片"),xt(null==o||null===(i=o.data)||void 0===i?void 0:i.exercise_user_photos),lt(null==o||null===(a=o.data)||void 0===a?void 0:a.alert_count),dt(!1);case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}Object(v.useEffect)((function(){var e,t;if(Object($.c)())Ye(null===(t=Be.exercise_types)||void 0===t?void 0:t.total_users);else if(null!=Be&&null!==(e=Be.exercise_types)&&void 0!==e&&e.score_open){var n;Ye(null===(n=Be.exercise_types)||void 0===n?void 0:n.unanswer_users)}}),[Be]),Object(v.useEffect)((function(){var e,t={};if(null!=Le&&null!==(e=Le.query)&&void 0!==e&&e.exercise_group_id){var n,r;if(t={review:[0,2],commit_status:[2,3]},"0"!==(null==Le||null===(n=Le.query)||void 0===n?void 0:n.exercise_group_id))t.exercise_group_id=[Number(null==Le||null===(r=Le.query)||void 0===r?void 0:r.exercise_group_id)];vt.setFieldsValue(Object(h.a)({},t))}Me=Object(h.a)(Object(h.a)({},Me),t),Pe(Object(h.a)({},Me)),Ae({type:"exercise/getExerciseList",payload:Me}),Ae({type:"exercise/clearData",payload:{key:"reviewExercise"}})}),[]);var Ht=[{title:"序号",dataIndex:"name",fixed:"left",width:80,align:"center",render:function(e,t,n){return b.a.createElement(B.a,{title:20*((Me.page||1)-1)+n+1},b.a.createElement("span",null,20*((Me.page||1)-1)+n+1))}},{title:"姓名",dataIndex:"user_name",fixed:"left",width:120,ellipsis:!0,align:"left",render:function(e,t){return b.a.createElement("div",null,e||"--",!(null==t||!t.delayed_at)&&b.a.createElement(B.a,{title:b.a.createElement("div",null,"交卷截止时间调整至",b.a.createElement("span",{className:"ml5"},G()(t.delayed_at).format("YYYY-MM-DD HH:mm")))},b.a.createElement("span",{className:"iconfont icon-shizhong c-blue"})))}},!(null!=Be&&null!==(t=Be.exercise_types)&&void 0!==t&&t.is_excellent)&&{title:"学号",ellipsis:!0,dataIndex:"student_id",width:140,align:"left",sorter:!0,render:function(e){return e||"--"}},!(null!=Be&&null!==(n=Be.exercise_types)&&void 0!==n&&n.is_excellent)&&0!==(null==Be||null===(r=Be.exercise_types)||void 0===r?void 0:r.groups_count)&&{title:"分班",width:220,ellipsis:!0,dataIndex:"user_group_name",align:"left",render:function(e){return e||"--"}},{title:"异常行为",dataIndex:"exception_count",width:145,ellipsis:!0,align:"left",render:function(e,t){return 0===e?"0次":b.a.createElement("a",{target:"_blank",href:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/abnormal?userid=").concat(null==t?void 0:t.exercise_user_id)},e+"次"||!1)}},{title:"最终成绩",width:100,dataIndex:"score",align:"center",sorter:!0,render:function(e,t){return!t.open_total_score&&Object($.s)()?"老师审核中":100===(e="number"==typeof e?Number(e):e)?b.a.createElement("span",{className:"c-green"},e||"--"):e>60?b.a.createElement("span",{className:"c-orange"},e||"--"):b.a.createElement("span",null,e||"--")}},!(1!==(null==Be||null===(i=Be.exercise_types)||void 0===i?void 0:i.objective)||1===(null==Be||null===(o=Be.exercise_types)||void 0===o?void 0:o.objective)&&1!==(null==Be||null===(l=Be.exercise_types)||void 0===l?void 0:l.subjective))&&{title:"客观题得分",dataIndex:"objective_score",align:"center",width:100,render:function(e,t){return!t.open_total_score&&Object($.s)()?"老师审核中":(n=(e="number"==typeof e?Number(e):e)>=0&&e<=60?b.a.createElement("span",null,e):100===e?b.a.createElement("span",{className:"c-green"},e):e>60?b.a.createElement("span",{className:"c-orange"},e):"--",b.a.createElement(ne,{renderText:n,item:t}));var n}},!(1!==(null==Be||null===(m=Be.exercise_types)||void 0===m?void 0:m.subjective)||1===(null==Be||null===(k=Be.exercise_types)||void 0===k?void 0:k.subjective)&&1!==(null==Be||null===(w=Be.exercise_types)||void 0===w?void 0:w.objective))&&{title:"问答题得分",width:100,dataIndex:"subjective_score",align:"center",render:function(e,t){return!t.open_total_score&&Object($.s)()?"老师审核中":0===(e="number"==typeof e?Number(e):e)?b.a.createElement("span",null,e," ",b.a.createElement("span",{className:"c-red"}," (待评审)")):e>0&&e<=60?b.a.createElement("span",null,e):100===e?b.a.createElement("span",{className:"c-green"},e):e>60?b.a.createElement("span",{className:"c-orange"},e):"--"}},{title:"提交状态",dataIndex:"commit_status",width:130,align:"left",render:function(e,t){return 0===e?b.a.createElement("span",{style:{color:"#666666"}},"未开始"):1===e?b.a.createElement("span",{style:{color:"#DF3042"}},!t.is_make_up&&"进行中",t.is_make_up&&"进行中 (补考)"):2===e?b.a.createElement("span",{style:{color:"#5AB891"}},!t.is_make_up&&"已完成",t.is_make_up&&"已完成 (补考)"):b.a.createElement("span",{style:{color:"#5AB891"}},!t.is_make_up&&"已提交(未答)",t.is_make_up&&"已提交/未答(补考)")}},{title:"开始答题时间",dataIndex:"start_at",width:145,ellipsis:!0,align:"left",sorter:!0,render:function(e){return e?G()(e).format("YYYY-MM-DD HH:mm"):"--"}},{title:"提交时间",dataIndex:"end_at",width:145,ellipsis:!0,align:"left",sorter:!0,render:function(e){return e?G()(e).format("YYYY-MM-DD HH:mm"):"--"}},(null==Fe?void 0:Fe.screen_open)&&{title:b.a.createElement("span",null,"切屏次数 ",b.a.createElement(B.a,{title:"红色代表学生切屏超过规定次数被强制交卷"},b.a.createElement("span",{className:"icon-xiaowenhao"}))),dataIndex:"screen_used_num",width:145,ellipsis:!0,align:"center",render:function(e,t){return b.a.createElement("span",{className:e>(null==t?void 0:t.screen_total_num)&&"c-red"},e,"/",null==t?void 0:t.screen_total_num)}},(null==Fe?void 0:Fe.exercise_status)>1&&(null==Fe?void 0:Fe.open_camera)&&Object($.c)()&&!(null!==(C=Te.setting)&&void 0!==C&&C.is_local)&&{title:"作业与测验照片",dataIndex:"photo_count",align:"center",width:100,render:function(e,t){return t.commit_status>0?b.a.createElement("a",{onClick:function(){!function(e){Ut.apply(this,arguments)}(t)}},"".concat(e||0,"/").concat(null==Fe?void 0:Fe.photo_count)):"--"}},(null==Fe?void 0:Fe.ip_bind)&&Object($.e)()&&{title:"作业与测验IP",dataIndex:"last_ip",align:"center",width:100,render:function(e,t){return b.a.createElement(b.a.Fragment,null,e||"--",1===t.commit_status&&Fe.ip_bind&&t.last_ip&&b.a.createElement(a.a,{type:"link",onClick:Object(c.a)(g.a.mark((function e(){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=u.a.confirm({title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"解除绑定"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-yiguanbi1 current c-grey-c",onClick:function(){return n.destroy()}}))),width:500,icon:null,okText:"确定",cancelText:"取消",className:"custom-modal-divider",content:b.a.createElement("div",null,"为学生解除作业与测验IP绑定后,学生可以使用新的IP地址进入作业与测验。",b.a.createElement("span",{className:"c-red"},"如果该学生正在进行中,将无法作答,需要重新进入作业与测验。"),"您确定要解除该学生的作业与测验IP绑定?"),onOk:function(){var e=Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(S.ab)({id:Me.categoryId,exercise_user_id:t.exercise_user_id});case 2:0===e.sent.status&&(s.b.success("解绑成功"),Ae({type:"exercise/getExerciseList",payload:Me}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 1:case"end":return e.stop()}}),e)})))},"解绑"))}},(null==Fe?void 0:Fe.open_camera)&&Object($.e)()&&Fe.exercise_status<3&&!(null!==(A=Te.setting)&&void 0!==A&&A.is_local)&&{title:"允许不拍摄",dataIndex:"close_camera",align:"center",width:100,render:function(e,t){return b.a.createElement(j.a,{checked:e,onClick:Object(c.a)(g.a.mark((function n(){return g.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:e?u.a.info({title:"提示",content:b.a.createElement("div",null,"不允许修改"),okText:"确认"}):u.a.confirm({title:"允许不摄像警告",content:b.a.createElement("div",null,"为保证作业与测验公平,本次作业与测验已开启防作弊设置,这需要调用学生的摄像头。如学生硬件设施确有问题,为保证学生作业与测验权利,教师可临时取消限制,允许学生参考。 本操作不可撤回,不可修改。 您确认同意该学生不开启摄像头参加作业与测验吗?"),onOk:function(){var e=Object(c.a)(g.a.mark((function e(){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(S.c)(Object(h.a)(Object(h.a)({},Me),{},{exercise_user_id:t.exercise_user_id}));case 2:0===(null==(n=e.sent)?void 0:n.status)&&(s.b.success("操作成功"),Ae({type:"exercise/getExerciseList",payload:Object(h.a)({},Me)}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 1:case"end":return n.stop()}}),n)})))})}},Object($.c)()&&{title:"评阅状态",width:130,dataIndex:"has_comment",align:"center",render:function(e,t){return!e&&t.review_status?"评阅中":e?"已评阅":"未评阅"}},((null==Fe?void 0:Fe.assistant_auth)||Object($.c)()||Object($.s)())&&Ie&&{title:"操作",fixed:"right",dataInex:"action",align:"center",width:236,render:function(e,t){return b.a.createElement("div",null,Object($.c)()&&b.a.createElement(a.a,{ghost:!0,type:"primary",size:"small",disabled:t.commit_status<2},b.a.createElement("a",{className:t.commit_status>1?"c-blue":"c-black",href:t.commit_status>1&&"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/review/").concat(t.login),onClick:function(e){t.commit_status<2&&e.preventDefault(),3===t.commit_status&&(e.preventDefault(),Ae({type:"exercise/setActionTabs",payload:{key:"更改评阅",selectArrs:{record:Object(h.a)({},t),exercise_types:Object(h.a)({},null==Be?void 0:Be.exercise_types)},params:Object(h.a)({},Me)}}))}},t.has_comment&&"更改评阅",!t.has_comment&&"评阅")),!Object($.s)()&&["考试中"].includes(O.c[Fe.exercise_status])&&b.a.createElement(a.a,{ghost:!0,type:"primary",disabled:(null==t?void 0:t.commit_status)>1,className:"ml10",size:"small",onClick:function(){u.a.confirm({centered:!0,okText:"确定",cancelText:"取消",title:"提示",icon:null,className:"custom-modal-divider",content:"确认将该学生的作业与测验状态调整为已交卷吗?",onOk:function(){var e;u.a.confirm({centered:!0,okText:"确定",cancelText:"取消",title:"提示",icon:null,className:"custom-modal-divider",content:"确认将".concat(null==t?void 0:t.user_name,"的作业与测验状态调整为已交卷吗?"),onOk:(e=Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/exercises/".concat(Me.categoryId,"/commit_exercise_force.json"),{method:"post",body:{user_id:null==t?void 0:t.user_id}});case 2:0===e.sent.status&&Ae({type:"exercise/getExerciseList",payload:Me});case 4:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)})})}})}},"强制提交"),Object($.s)()&&t.commit_status>1&&b.a.createElement("span",{style:{color:"#0152d9",marginRight:"5px",cursor:"pointer"},onClick:function(){var e;null!=Be&&null!==(e=Be.exercise_types)&&void 0!==e&&e.answered_open?_.d.push("/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/users/").concat(null==t?void 0:t.login,"?check=true")):s.b.info("老师已设置本作业与测验在交卷后不可查看")}},"查看"),(null==Fe?void 0:Fe.exercise_time)>0&&Object($.e)()&&b.a.createElement(B.a,{title:Object($.k)()?"您的权限不足,请联系本课堂管理员":3===Fe.exercise_status&&"本作业与测验已截止,请先修改截止时间使本作业与测验处于“进行中”"},b.a.createElement(a.a,{danger:!0,className:"c-red ml10",size:"small",disabled:!!Object($.k)()||3===Fe.exercise_status,onClick:function(){Object($.i)()&&Ae({type:"exercise/setActionTabs",payload:{key:"延时",selectArrs:t,exercise_time:Fe.exercise_time,params:Object(h.a)({},Me)}})}},"延时")))}}].filter((function(e){return!!e})),Gt=Object(d.a)(Ht);return Gt[0]=Object(h.a)({},Gt[0]),Gt[(null==Gt?void 0:Gt.length)-1]=Object(h.a)({},Gt[(null==Gt?void 0:Gt.length)-1]),Gt[0].render=function(){return"我"},Gt[(null==Gt?void 0:Gt.length)-1].render=function(){var e;return null!=Be&&null!==(e=Be.current_answer_user)&&void 0!==e&&e.login?b.a.createElement("span",{style:{color:"#0152d9",marginRight:"5px",cursor:"pointer"},onClick:function(){var e,t;null!=Be&&null!==(e=Be.exercise_types)&&void 0!==e&&e.answered_open?_.d.push("/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/users/").concat(null==Be||null===(t=Be.current_answer_user)||void 0===t?void 0:t.login)):s.b.info("老师已设置本作业与测验在交卷后不可查看")}},"查看"):"--"},b.a.createElement("section",{className:"minH500 bg-white mb50 inline-block w100"},(null==Be||null===(H=Be.exercise_types)||void 0===H?void 0:H.score_open)&&Object($.s)()&&b.a.createElement(N.a,{hideOnSinglePage:!0,pagination:!1,showHeader:!1,dataSource:[Object(h.a)({},null==Be?void 0:Be.current_answer_user)],columns:Gt,scroll:{x:120*(null==Ht?void 0:Ht.length)}}),!Object($.c)()&&b.a.createElement("div",{className:"bg-white pt10 pl25 mt15"},!(null==Be||null===(Q=Be.exercise_types)||void 0===Q||!Q.answer_users)&&b.a.createElement("span",{className:"mr10"},b.a.createElement("span",{style:{color:"#FF954C"}},null==Be||null===(ee=Be.exercise_types)||void 0===ee?void 0:ee.answer_users," "),"已交"),!(null==Be||null===(re=Be.exercise_types)||void 0===re||!re.unanswer_users)&&b.a.createElement("span",{className:"mr10"},null==Be||null===(ie=Be.exercise_types)||void 0===ie?void 0:ie.unanswer_users,"未交"),"--"!==(null==Be||null===(ae=Be.exercise_types)||void 0===ae?void 0:ae.exercise_end_time)&&b.a.createElement("span",null,"剩余提交时间:",b.a.createElement("span",{style:{color:"#FF954C"}},null==Be||null===(oe=Be.exercise_types)||void 0===oe?void 0:oe.exercise_end_time))),!(null!==(se=Be.exercise_types)&&void 0!==se&&se.exercise_all_users)&&!Object($.s)()&&b.a.createElement(Y.a,null),(!(null===(le=Be.exercise_types)||void 0===le||!le.exercise_all_users)||Object($.s)())&&b.a.createElement("aside",null,Object($.c)()&&b.a.createElement("aside",{className:"pt20"},b.a.createElement(U.a,{form:vt,onValuesChange:function(e){Me.page=1;var t=Object.assign({},vt.getFieldValue());if(Object.keys(t).map((function(e){"objective_score_gte"!==e&&"objective_score_lte"!==e&&(t[e].includes("all")?(delete Me[e],vt.setFieldsValue(Object(F.a)({},e,"all"))):(Me[e]=t[e],""!=t[e]&&t[e]?vt.setFieldsValue(Object(F.a)({},e,Me[e])):vt.setFieldsValue(Object(F.a)({},e,"all"))))})),e.objective_score_gte||e.objective_score_lte){if(t.objective_score_gte>t.objective_score_lte)return vt.setFieldsValue({objective_score_lte:t.objective_score_gte}),!1;if(""==t.objective_score_gte||""==t.objective_score_lte||!t.objective_score_gte||!t.objective_score_lte)return delete Me.objective_score_lte,delete Me.objective_score_gte,!1;Me.objective_score_lte=t.objective_score_lte,Me.objective_score_gte=t.objective_score_gte}Pe(Object(h.a)({},Me)),De(Object(h.a)({},Me)),Ae({type:"exercise/getExerciseList",payload:Me})},initialValues:(ce={},Object(F.a)(ce,"commit_status","all"),Object(F.a)(ce,"exercise_group_id","all"),Object(F.a)(ce,"review","all"),Object(F.a)(ce,"is_make_up","all"),ce)},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"选择班级:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(ue=Ge.course_group)&&void 0!==ue&&ue.length)},"全部")),b.a.createElement(P.a,{flex:"1"},Be.course_groups&&Be.course_groups.map((function(e,t){return b.a.createElement(R.a,{value:e.exercise_group_id,className:"ml0 mr8"},e.exercise_group_name,"(",e.exercise_group_students,")")})))))),b.a.createElement(U.a.Item,{name:"commit_status"},b.a.createElement(R.a.Group,{value:[],style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"提交状态:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(de=Ge.commit_status)&&void 0!==de&&de.length)},"全部")),b.a.createElement(P.a,{flex:"1"},K.map((function(e,t){var n;return b.a.createElement(R.a,{name:"commit_status",value:e.id},e.name,"(",null==Be||null===(n=Be.exercise_types)||void 0===n?void 0:n[e.type],")")})))))),b.a.createElement(U.a.Item,{name:"review"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"评阅状态:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(he=Ge.review)&&void 0!==he&&he.length)},"全部")),b.a.createElement(P.a,{flex:"1"},null==W?void 0:W.map((function(e,t){var n;return b.a.createElement(R.a,{value:e.id,key:t},e.name,"(",null==Be||null===(n=Be.exercise_types)||void 0===n?void 0:n[e.type],")")})))))),(null==Be||null===(fe=Be.exercise_types)||void 0===fe?void 0:fe.open_make_up)&&b.a.createElement(U.a.Item,{name:"is_make_up"},b.a.createElement(R.a.Group,{value:[],style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px"},"补考状态:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!(null!==(pe=Ge.is_make_up)&&void 0!==pe&&pe.length)},"全部")),b.a.createElement(P.a,{flex:"1"},q.map((function(e,t){var n;return b.a.createElement(R.a,{name:"is_make_up",value:e.id},e.name,"(",null==Be||null===(n=Be.exercise_types)||void 0===n?void 0:n[e.type],")")})))))),b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{flex:"1"},b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,null,b.a.createElement(L.a.Search,{allowClear:!0,placeholder:"请输入姓名或者学号搜索",onSearch:function(e){Me.search=e,Ae({type:"exercise/getExerciseList",payload:Object(h.a)(Object(h.a)({},Me),{},{page:1})})},style:{width:240}})))),!(null!=Fe&&Fe.is_random)&&b.a.createElement(P.a,{className:["tr",te.a.rightFilter].join(" ")},1===(null===(me=Be.exercise_types)||void 0===me?void 0:me.objective)&&1===(null===(ge=Be.exercise_types)||void 0===ge?void 0:ge.subjective)&&b.a.createElement(b.a.Fragment,null,"按客观题得分分组",b.a.createElement("span",null,b.a.createElement(U.a.Item,{name:"objective_score_gte"},b.a.createElement(D.a,{min:0,max:null==Be||null===(ve=Be.exercise_types)||void 0===ve?void 0:ve.objective_score,placeholder:"最低"}))),b.a.createElement("span",null,b.a.createElement(U.a.Item,{name:"objective_score_lte"},b.a.createElement(D.a,{min:(null===(be=Me)||void 0===be?void 0:be.objective_score_gte)||0,max:null==Be||null===(ye=Be.exercise_types)||void 0===ye?void 0:ye.objective_score,placeholder:"最高"})))),1===(null===(Ee=Be.exercise_types)||void 0===Ee?void 0:Ee.subjective)&&Ie&&b.a.createElement(b.a.Fragment,null,b.a.createElement(a.a,{type:"default",disabled:(null==Be||null===(xe=Be.total_exercise_users)||void 0===xe?void 0:xe.length)<1},b.a.createElement(x.a,{target:"_blank",to:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/abnormal")},b.a.createElement("span",{className:"iconfont icon-filesync3x"}),b.a.createElement("span",null,"学生异常行为"))),b.a.createElement(a.a,{type:"default",disabled:(null==Be||null===(_e=Be.total_exercise_users)||void 0===_e?void 0:_e.length)<1},b.a.createElement(x.a,{to:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/reviews/group")},b.a.createElement("span",{className:"iconfont icon-tijiaozongjie"}),b.a.createElement("span",null,"集中批量批阅"))),b.a.createElement(a.a,{type:"default",disabled:(null==Be||null===(ke=Be.total_exercise_users)||void 0===ke?void 0:ke.length)<1},b.a.createElement(x.a,{to:"/classrooms/".concat(Me.coursesId,"/exercise/").concat(Me.categoryId,"/review/").concat(null==Be||null===(we=Be.total_exercise_users)||void 0===we||null===(Ce=we[0])||void 0===Ce?void 0:Ce.user_login)},b.a.createElement("span",{className:"iconfont icon-filesync3x"}),b.a.createElement("span",null,"组内顺序批阅")))))))),b.a.createElement(N.a,{className:"mt30",loading:Oe["exercise/getExerciseList"],hideOnSinglePage:!0,pagination:!1,dataSource:(null==Be?void 0:Be.exercise_users)||[],columns:Ht,scroll:{x:120*(null==Ht?void 0:Ht.length)},size:"large",onChange:function(e,t,n){Me.page=1,console.log(n,444),void 0===n.order?(Me.order_type=null,Me.order=null):(Me.order_type="descend"===n.order?"desc":"asc",Me.order=n.field),Ae({type:"exercise/getExerciseList",payload:Object(h.a)({},Me)})}}),qe>20&&b.a.createElement("aside",{className:"tc mb50 pb30 mt30"},b.a.createElement(I.a,{onChange:function(e,t){Me.page=e,Me.limit=20,Ae({type:"exercise/getExerciseList",payload:Object(h.a)({},Me)})},current:Me.page||1,defaultPageSize:20,total:qe,showSizeChanger:!1,showQuickJumper:!0,hideOnSinglePage:!0,showTotal:function(e){return b.a.createElement("span",{className:"mr10"},"共",b.a.createElement("span",{className:"c-orange"},e),"条数据")}}))),b.a.createElement(V,null),b.a.createElement(z,null),b.a.createElement(J,null),$e&&b.a.createElement(u.a,{title:"防作弊头像",visible:$e,centered:!0,onCancel:function(){Ot(1),et(!1),xt([]),it("alert"),Dt("")},footer:b.a.createElement("div",{style:{display:"flex"}},b.a.createElement("div",{style:{flex:1,textAlign:"left"}}," ",b.a.createElement(a.a,{onClick:Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(It){e.next=3;break}return s.b.info("输入框内容不能为空"),e.abrupt("return");case 3:return mt(!0),e.next=6,Object(y.a)("/api/exercises/".concat(Me.categoryId,"/send_alert.json"),{method:"post",body:{content:It,clazz:rt,exercise_user_id:Nt}});case 6:0===(null==(t=e.sent)?void 0:t.status)&&(s.b.info("发送成功"),Ot(1),et(!1),xt([]),it("alert"),Dt("")),mt(!1);case 9:case"end":return e.stop()}}),e)}))),disabled:Bt,loading:pt},"发送")),b.a.createElement(a.a,{disabled:0===(null==Et?void 0:Et.length),style:{marginRight:"10px"},onClick:Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ot(St-1==0?null==Et?void 0:Et.length:St-1);case 2:case"end":return e.stop()}}),e)})))},"上一张"),b.a.createElement(a.a,{disabled:0===(null==Et?void 0:Et.length),type:"primary",onClick:Object(c.a)(g.a.mark((function e(){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ot(St===(null==Et?void 0:Et.length)?1:St+1);case 2:case"end":return e.stop()}}),e)})))},"下一张"))},b.a.createElement("img",{style:{width:"234px !important",height:"132px",borderRadius:"5px"},src:Et[St-1]}),b.a.createElement("span",{onClick:function(){Z.a.publish("preview-image",Et[St-1]),console.log("src:",Et[St-1],Et,St-1)},style:{background:"#0152d9",color:"#fff",display:"inline-flex",width:"54px",height:"20px",borderRadius:"10px",justifyContent:"center",lineHeight:"20px",alignItems:"center",position:"absolute",top:"70px",left:"190px",zIndex:5,cursor:"pointer"}},"预览"),b.a.createElement("span",{style:{color:"#0152d9",marginTop:"16px",width:"234px",justifyContent:"center",display:"flex"}},St+"/"+(null==Et?void 0:Et.length)),b.a.createElement(T.a,{className:"mt20",checked:"alert"===rt,onChange:function(){return it("alert")}},"发送警告",b.a.createElement("span",{className:"font14 c-grey-999"},"(如发现学生在进行中的照片存在异常时,可发送消息给学生)")),b.a.createElement(T.a,{className:"mt10",checked:"notice"===rt,onChange:function(){return it("notice")}},"发送通知",b.a.createElement("span",{className:"font14 c-grey-999"},"(进行中如有消息通知,可发送消息给学生)")),b.a.createElement(L.a.TextArea,{className:"mt20",value:It,onChange:function(e){return Dt(e.target.value)},placeholder:"请输入".concat("alert"===rt?"警告":"通知","内容").concat("alert"===rt?",如:扭头低头大幅度动作检测":"")}),b.a.createElement("div",{style:{color:"#E30000",fontSize:12,margin:"10px 0"}},"已发送",st,"次警告")),b.a.createElement(X.a,null))})),ie=(n("OaEy"),n("2fM7")),ae=n("8Skl"),oe=n("y3Kf"),se=n("mxOx"),le=n.n(se),ce=n("LvDl"),ue=n.n(ce),de=n("GUcZ"),he=(n("ulZh"),/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i),fe=Object(v.forwardRef)((function(e,t){var n,r,i,a=e.src,o=(e.videoId,e.logWatchHistory,e.courseId,e.startTime,e.handlePause,e.handlePlay,e.handlePlayEnded,e.videoSpeed,"flv"===(null===(r=a=null===(n=a)||void 0===n?void 0:n.replace("http://","http://"))||void 0===r||null===(i=r.split("."))||void 0===i?void 0:i.pop())),s=Object(v.useRef)(),l=Object(v.useRef)(),c=Object(v.useRef)(0),u=Object(v.useRef)(0),d=Object(v.useState)(0),h=Object(f.a)(d,2),p=h[0],m=h[1],g=navigator.userAgent.toLowerCase().match(he);g&&g[0];Object(v.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return s.current.currentTime},getDuration:function(){return s.current.duration}}})),Object(v.useEffect)((function(){u.current=void 0;try{var e;de.a.isSupported&&o&&a&&(null===(e=a)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(u.current=de.a.createPlayer({type:"flv",volume:.8,cors:!0,url:a+"?t="+Date.now(),muted:!1,isLive:!0}),u.current.on("play",(function(){console.log(21111)})),s.current&&(u.current.detachMediaElement(s.current),u.current.attachMediaElement(s.current),u.current.load(),u.current.play())):s.current.setAttribute("src",a+"?t="+Date.now())}catch(e){setTimeout((function(){m(p+1)}),1e3)}return console.log("src:",a),function(){var e,t,n,r,i,a,o,l;u.current&&(null===(e=u.current)||void 0===e||null===(t=e.unload)||void 0===t||t.call(e),null===(n=u.current)||void 0===n||null===(r=n.pause)||void 0===r||r.call(n),null===(i=u.current)||void 0===i||null===(a=i.destroy)||void 0===a||a.call(i),null===(o=u.current)||void 0===o||null===(l=o.detachMediaElement)||void 0===l||l.call(o,s.current),u.current=void 0,s.current.src="")}}),[s,o,a,p]),Object(v.useEffect)((function(){return l.current=setInterval((function(){c.current>0&&c.current===s.current.currentTime&&(console.log("播放一次"),m(p+1)),c.current=s.current.currentTime}),3e3),function(){clearInterval(l.current)}}),[]);return b.a.createElement("video",{ref:s,onerr:!0,onErrorCapture:function(){m(p+1)},autoPlay:!0,muted:!0})})),pe=Object(_.a)((function(e){return{exercise:e.exercise,user:e.user}}))((function(e){var t,n=e.exercise,r=e.dispatch,i=(e.user,Object(E.i)()),a=Object(v.useState)({page:1,limit:20,sort_by:null,sort_direction:null,state:null,audit:null,name:"",save_name:"",exercise_id:null==i?void 0:i.categoryId}),o=Object(f.a)(a,2),l=o[0],d=o[1],p=U.a.useForm(),m=Object(f.a)(p,1)[0],x=Object(v.useState)(),_=Object(f.a)(x,2),k=_[0],w=_[1],C=Object(v.useState)(!1),S=Object(f.a)(C,2),A=S[0],T=S[1],I=n.exerciseList,D=n.commonHeader,j=Object(v.useState)([]),H=Object(f.a)(j,2),G=H[0],z=H[1],V=Object(v.useState)([]),W=Object(f.a)(V,2),K=W[0],q=W[1],Y=Object(v.useState)(0),Q=Object(f.a)(Y,2),J=Q[0],$=Q[1],ee=Object(v.useState)(!0),te=Object(f.a)(ee,2),ne=te[0],re=te[1],se=Object(v.useState)(!1),ce=Object(f.a)(se,2),de=ce[0],he=ce[1],pe=Object(v.useRef)(null);Object(v.useEffect)((function(){ge(),ve(l)}),[]),Object(v.useEffect)((function(){return clearInterval(pe.current),2===(null==D?void 0:D.exercise_status)&&(pe.current=setInterval((function(){ve(l)}),3e4)),function(){clearInterval(pe.current)}}),[null==D?void 0:D.exercise_status,l]);var ge=function(){r({type:"exercise/getExerciseList",payload:i})},ve=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=ue.a.cloneDeep(t),console.log(n,"sendData"),re(!0),z([]),e.next=6,Object(y.a)("/api/exercises/".concat(null==t?void 0:t.exercise_id,"/exercise_identity_photos.json"),{method:"get",params:n});case 6:r=e.sent,q([]),re(!1),$(null==r?void 0:r.count),z((null==r?void 0:r.exercise_users)||[]);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),be=function(e,t){l.page=1,l[t]=e,d(Object(h.a)({},l)),ve(l)};Object(v.useEffect)((function(){document.getElementById("divhe")&&(document.getElementById("divhe").scrollHeight>47&&(w(47),T(!0)))}),[document.getElementById("divhe"),I]);var ye=[{title:"序号",dataIndex:"number",width:80,render:function(e,t,n){return l.limit*(l.page-1)+n+1}},{title:"姓名",dataIndex:"user_name",width:110,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement(B.a,{placement:"bottomLeft",title:e},b.a.createElement("span",null,e))}},{title:"学号",dataIndex:"student_id",sorter:!0,width:140,showSorterTooltip:!1,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement(B.a,{placement:"bottomLeft",title:e||"--"},b.a.createElement("span",null,e||"--"))}},{title:"分班",dataIndex:"user_group_name",ellipsis:{showTitle:!1},render:function(e,t){return e?b.a.createElement(B.a,{placement:"bottom",title:e},b.a.createElement("span",{className:le.a.es},e)):"--"}},{title:"人脸照片",dataIndex:"photo_url",width:90,ellipsis:{showTitle:!1},render:function(e,t){return b.a.createElement("img",{width:40,style:{maxHeight:30},src:e,className:"current",onClick:function(){_e(t)}})}},{title:"审核状态",width:100,dataIndex:"exercise_identity_photo_state",ellipsis:{showTitle:!1},render:function(e,t){return b.a.createElement(b.a.Fragment,null,"passed"===e&&b.a.createElement("span",{style:{color:"#44D7B6"}},"审核通过"),"rejected"===e&&b.a.createElement("span",{style:{color:"#E53333"}},"审核不通过"),"submitted"===e&&b.a.createElement("span",{style:{color:"#666666"}},"待审核"))}},{title:"审核时间",dataIndex:"audit_time",width:180,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement("span",null,e||"--")}},{title:"审核类型",dataIndex:"audit_clazz",width:90,ellipsis:{showTitle:!1},render:function(e){return b.a.createElement("span",null,e||"--")}},{title:"操作",dataIndex:"action",width:180,ellipsis:{showTitle:!1},render:function(e,t){var n;return b.a.createElement(b.a.Fragment,null,"submitted"===(null==t?void 0:t.exercise_identity_photo_state)?b.a.createElement("span",{className:"c-light-primary current",onClick:function(){return he(t)}},"审核"):b.a.createElement("span",{className:"c-grey-999 cursorNotAllowed"},"审核"),"submitted"!==(null==t?void 0:t.exercise_identity_photo_state)?b.a.createElement("span",{className:"c-light-primary current ml10 mr10",onClick:function(){return Ee(t)}},"审核记录"):b.a.createElement("span",{className:"c-grey-999 ml10 mr10 cursorNotAllowed"},"审核记录"),"passed"===(null==t?void 0:t.exercise_identity_photo_state)&&null!=t&&null!==(n=t.play_url)&&void 0!==n&&n.length?b.a.createElement("span",{className:"c-light-primary current",onClick:function(){return xe(t)}},"摄像监控"):b.a.createElement("span",{className:"c-grey-999 cursorNotAllowed"},"摄像监控"))}}],Ee=function(e){var t=[{title:"审核时间",dataIndex:"audit_time",width:170,render:function(e,t){return b.a.createElement("span",null,e||"--")}},{title:"审核状态",dataIndex:"exercise_identity_photo_state",width:110,render:function(e,t){return b.a.createElement(b.a.Fragment,null,"passed"===e&&b.a.createElement("span",{style:{color:"#44D7B6"}},"审核通过"),"rejected"===e&&b.a.createElement("span",{style:{color:"#E53333"}},"审核不通过"),"submitted"===e&&b.a.createElement("span",{style:{color:"#666666"}},"待审核"))}},{title:"审核意见",dataIndex:"comment",render:function(e,t){return e?b.a.createElement(B.a,{placement:"bottom",title:e},b.a.createElement("span",null,e)):"--"}},{title:"采集照片",dataIndex:"photo_url",width:90,render:function(e,t){return b.a.createElement("span",{className:"current c-light-primary",onClick:function(){Z.a.publish("preview-image",e)}},"查看")}}],n=u.a.confirm({icon:null,width:700,className:"".concat(le.a.cusModal," custom-modal-divider"),centered:!0,title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"审核记录"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-guanbi7 font12 current c-grey-c",onClick:function(){return n.destroy()}}))),content:b.a.createElement("div",null,b.a.createElement(N.a,{className:le.a.customTable,dataSource:[Object(h.a)({},e)],bordered:!1,columns:t,rowKey:"exercise_identity_photo_id",rowClassName:le.a.row,pagination:!1}))})},xe=function(e){var t,n,r=u.a.confirm({icon:null,className:"".concat(le.a.cusModal," custom-modal-divider"),centered:!0,width:(null==e||null===(t=e.play_url)||void 0===t?void 0:t.length)<6?724:744,title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"视频"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-guanbi7 font12 current c-grey-c",onClick:function(){return r.destroy()}}))),content:b.a.createElement("ul",{className:le.a.sys},null==e||null===(n=e.play_url)||void 0===n?void 0:n.map((function(e,t){return b.a.createElement("li",{className:le.a.li,key:t},b.a.createElement("div",{className:le.a.d1},b.a.createElement("div",{className:le.a.img},b.a.createElement(fe,{src:null==e?void 0:e.replace(".m3u8",".flv"),autoPlay:!0})),b.a.createElement("div",{className:le.a.btn},b.a.createElement("div",{className:le.a.b1},"回放视频",t+1))))})))})},_e=function(e){var t=u.a.confirm({icon:null,className:"".concat(le.a.cusModal," custom-modal-divider"),centered:!0,width:710,title:b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"1"},"人脸照片"),b.a.createElement(P.a,null,b.a.createElement("span",{className:"iconfont icon-guanbi7 font12 current c-grey-c",onClick:function(){return t.destroy()}}))),content:b.a.createElement(M.a,null,b.a.createElement("aside",{className:le.a.imgWrap,style:{marginBottom:40}},b.a.createElement("div",{className:le.a.img},b.a.createElement("img",{width:326,src:Object(O.g)(null==e?void 0:e.photo_url)}),b.a.createElement("div",{className:le.a.textP},"采集照片")),b.a.createElement("div",{className:le.a.img,style:{marginLeft:20}},null!=e&&e.identity_url?b.a.createElement("img",{width:326,src:Object(O.g)(null==e?void 0:e.identity_url)}):b.a.createElement("div",{className:le.a.no,style:{width:326}},b.a.createElement("span",null,"暂无证件照片")),b.a.createElement("div",{className:le.a.textP},"证件照片"))))})},ke={selectedRowKeys:K,columnWidth:40,onChange:function(e){q(e)},getCheckboxProps:function(e){return{disabled:!("passed"!==(null==e?void 0:e.exercise_identity_photo_state))}}};return b.a.createElement("section",{className:le.a.wrap},b.a.createElement(U.a,{form:m,onChange:function(){l.page=1;var e=Object.assign({},m.getFieldsValue());Object.keys(e).map((function(t){switch(t){case"exercise_group_id":e[t].includes("all")||!e[t].length?(delete l.course_group,m.setFieldsValue(Object(F.a)({},"exercise_group_id","all"))):(l.course_group=e[t],m.setFieldsValue(Object(F.a)({},"exercise_group_id",l.course_group)))}})),d(Object(h.a)({},l)),ve(l)},initialValues:Object(F.a)({},"exercise_group_id","all")},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{className:"font14",flex:"80px"},"选择分班:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all"},"全部")),b.a.createElement(P.a,{flex:"1",id:"divhe",style:{height:k+"px",overflow:"hidden"}},null===(t=I.course_groups)||void 0===t?void 0:t.map((function(e,t){return b.a.createElement(R.a,{key:t,value:e.exercise_group_id,className:"ml0 mr8"},e.exercise_group_name,"(",e.exercise_group_students,")")}))),A&&b.a.createElement("span",{onClick:function(){var e=document.getElementById("divhe").scrollHeight;w(k>47?47:e)},style:{color:"rgb(76, 172, 255)",cursor:"pointer",alignItems:"flex-end",display:"flex"}},47===k?"展开":"收起",47===k?b.a.createElement(ae.a,{style:{marginBottom:"3px",marginLeft:"2px"}}):b.a.createElement(oe.a,{style:{marginBottom:"3px",marginLeft:"2px"}})))))),b.a.createElement("div",{className:le.a.control},b.a.createElement(L.a.Search,{placeholder:"请输入姓名或者学号搜索",value:null==l?void 0:l.save_name,onChange:function(e){return t=e.target.value,l.page=1,l.save_name=t,void d(Object(h.a)({},l));var t},onSearch:function(){l.page=1,l.name=l.save_name,d(Object(h.a)({},l)),ve(l)}}),b.a.createElement(ie.a,{placeholder:"请选择审核状态",value:null==l?void 0:l.state,onChange:function(e){return be(e,"state")}},b.a.createElement(ie.a.Option,{value:null},"全部"),b.a.createElement(ie.a.Option,{value:"submitted"},"待审核"),b.a.createElement(ie.a.Option,{value:"passed"},"审核通过"),b.a.createElement(ie.a.Option,{value:"rejected"},"审核不通过")),b.a.createElement(ie.a,{placeholder:"请选择审核类型",value:null==l?void 0:l.audit,onChange:function(e){return be(e,"audit")}},b.a.createElement(ie.a.Option,{value:null},"全部"),b.a.createElement(ie.a.Option,{value:1},"自动审核"),b.a.createElement(ie.a.Option,{value:2},"人工审核")),b.a.createElement("span",{className:le.a.btn,style:{cursor:"pointer"},onClick:function(){K.length?he(!0):s.b.warn("请选择学生")}},b.a.createElement("i",{className:"iconfont icon-piliangcaozuo font14 mr5"}),"批量审核")),b.a.createElement("div",{className:le.a.bgH}),b.a.createElement(N.a,{rowSelection:ke,className:le.a.customTable,dataSource:G,bordered:!1,columns:ye,rowKey:"exercise_identity_photo_id",rowClassName:le.a.row,loading:ne,onChange:function(e,t,n){l.page=null==e?void 0:e.current,l.limit=null==e?void 0:e.pageSize,null!=n&&n.order?(l.sort_by=null==n?void 0:n.field,l.sort_direction="ascend"===(null==n?void 0:n.order)?"asc":"desc"):(l.sort_by=null,l.sort_direction=null),d(Object(h.a)({},l)),ve(l)},pagination:{pageSize:l.limit,total:J,current:l.page,showQuickJumper:!0,hideOnSinglePage:!0,showSizeChanger:!1,position:["bottomCenter"],showTotal:function(e){return b.a.createElement("span",{className:"mr10"},"共",b.a.createElement("span",{className:"c-orange"},e),"条数据")}}}),b.a.createElement(me,{selectIds:K,visible:de,onCancel:function(){return he(!1)},onOk:function(){he(!1),ve(l)},params:l}),b.a.createElement(X.a,null))})),me=function(e){var t=e.visible,n=e.onOk,r=e.onCancel,i=e.selectIds,a=e.params,o=Object(v.useState)(!1),s=Object(f.a)(o,2),l=s[0],d=s[1],p=Object(v.useState)({}),m=Object(f.a)(p,2),E=m[0],x=m[1],_=U.a.useForm(),k=Object(f.a)(_,1)[0],w=function(){var e=Object(c.a)(g.a.mark((function e(r){var o,s;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(d(!0),!0!==t){e.next=7;break}return e.next=4,Object(y.a)("/api/exercises/".concat(null==a?void 0:a.exercise_id,"/batch_audit_identity_photo.json"),{method:"post",body:Object(h.a)({identity_photo_ids:i},r)});case 4:s=e.sent,e.next=10;break;case 7:return e.next=9,Object(y.a)("/api/exercises/".concat(null==a?void 0:a.exercise_id,"/audit_identity_photo.json"),{method:"post",body:Object(h.a)({identity_photo_id:null==t?void 0:t.exercise_identity_photo_id},r)});case 9:s=e.sent;case 10:0===(null===(o=s)||void 0===o?void 0:o.status)&&n(),d(!1);case 12:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return b.a.createElement(u.a,{title:!0!==t?"人脸身份审核":"批量审核",visible:!!t,centered:!0,width:650,destroyOnClose:!0,onCancel:function(){r()},afterClose:function(){k.resetFields(),x({})},confirmLoading:l,onOk:function(){return k.submit()}},b.a.createElement(U.a,{className:le.a.formWrap,form:k,labelCol:{span:4},wrapperCol:{span:18},onFinish:w,onValuesChange:function(){x(Object(h.a)({},k.getFieldsValue()))}},!0!==t&&b.a.createElement(M.a,{style:{marginLeft:28,marginBottom:38}},b.a.createElement(P.a,null,"采集照片:"),b.a.createElement(P.a,null,b.a.createElement("aside",{className:le.a.imgWrap},b.a.createElement("div",{className:le.a.img},b.a.createElement("img",{width:234,src:Object(O.g)(null==t?void 0:t.photo_url)}),b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",null==t?void 0:t.photo_url)},className:le.a.iBtn},"预览"),b.a.createElement("div",{className:le.a.text},"采集照片")),b.a.createElement("div",{className:le.a.img,style:{marginLeft:20}},null!=t&&t.identity_url?b.a.createElement("img",{width:234,src:Object(O.g)(null==t?void 0:t.identity_url)}):b.a.createElement("div",{className:le.a.no,style:{width:326}},b.a.createElement("span",null,"暂无证件照片")),!(null==t||!t.identity_url)&&b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",Object(O.g)(null==t?void 0:t.identity_url))},className:le.a.iBtn},"预览"),b.a.createElement("div",{className:le.a.text},"证件照片"))))),b.a.createElement(U.a.Item,{label:"审核状态",name:"state",rules:[{required:!0,message:"请输入审核状态"}]},b.a.createElement(T.a.Group,null,b.a.createElement(T.a,{value:"passed"},"审核通过"),b.a.createElement(T.a,{value:"rejected"},"审核不通过"))),"rejected"===(null==E?void 0:E.state)&&b.a.createElement(U.a.Item,{label:"审核意见",name:"comment",rules:[{required:!0,message:"请输入审核意见"}]},b.a.createElement(L.a,{placeholder:"如:你的个人信息与照片不一致。",maxLength:30})),b.a.createElement("div",{style:{color:"#FA6400",paddingLeft:32}},"注意:审核通过后,该学生在本场作业与测验的认证状态将更新为“审核通过”,且能够进入作业与测验。")))},ge=(n("cWXX"),n("/ezw")),ve=(n("R9oj"),n("ECub")),be=n("hZbv"),ye=n.n(be),Ee=Object(_.a)((function(e){return{exercise:e.exercise,user:e.user}}))((function(e){var t,n,i,o,l,d,p,m,x,_=e.exercise,k=e.dispatch,w=(e.user,Object(E.i)()),C=Object(v.useState)({page:1,limit:10,name:"",save_name:"",exercise_id:null==w?void 0:w.categoryId}),S=Object(f.a)(C,2),A=S[0],D=S[1],j=U.a.useForm(),H=Object(f.a)(j,1)[0],z=Object(v.useState)(),V=Object(f.a)(z,2),W=V[0],K=V[1],q=Object(v.useState)(!1),Y=Object(f.a)(q,2),Q=Y[0],J=Y[1],$=_.exerciseList,ee=Object(v.useState)([]),te=Object(f.a)(ee,2),ne=te[0],re=te[1],se=Object(v.useState)(0),le=Object(f.a)(se,2),ce=le[0],de=le[1],he=Object(v.useState)(!0),fe=Object(f.a)(he,2),pe=fe[0],me=fe[1],be=Object(v.useState)(!1),Ee=Object(f.a)(be,2),xe=Ee[0],_e=Ee[1],ke=Object(v.useState)("1"),we=Object(f.a)(ke,2),Ce=we[0],Se=we[1],Oe=Object(v.useState)(1),Ae=Object(f.a)(Oe,2),Te=Ae[0],Ie=Ae[1],De=Object(v.useState)("alert"),Le=Object(f.a)(De,2),Re=Le[0],Ne=Le[1],je=Object(v.useState)(1),Me=Object(f.a)(je,2),Pe=Me[0],Be=Me[1],Fe=Object(v.useState)(""),Ue=Object(f.a)(Fe,2),He=Ue[0],Ge=Ue[1],ze=Object(v.useState)(!1),Ve=Object(f.a)(ze,2),We=Ve[0],Ke=Ve[1],qe=Object(v.useState)(!1),Ye=Object(f.a)(qe,2),Qe=Ye[0],Je=Ye[1],Xe=Object(v.useState)([]),Ze=Object(f.a)(Xe,2),$e=Ze[0],et=Ze[1];Object(v.useEffect)((function(){tt(),nt(A)}),[]);var tt=function(){k({type:"exercise/getExerciseList",payload:w})},nt=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=ue.a.cloneDeep(t),me(!0),re([]),e.next=5,Object(y.a)("/api/exercises/".concat(null==t?void 0:t.exercise_id,"/exercise_videos.json"),{method:"get",params:n});case 5:r=e.sent,me(!1),de(null==r?void 0:r.count),re((null==r?void 0:r.exercise_users)||[]);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();Object(v.useEffect)((function(){document.getElementById("divhe")&&(document.getElementById("divhe").scrollHeight>47&&(K(47),J(!0)))}),[document.getElementById("divhe"),$]);var rt=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Ke(!0),_e({}),e.next=4,Object(y.a)("/api/exercises/".concat(null==A?void 0:A.exercise_id,"/student_info.json"),{method:"get",params:{exercise_user_id:null==t?void 0:t.exercise_user_id}});case 4:return n=e.sent,e.next=7,Object(y.a)("/api/exercises/".concat(null==A?void 0:A.exercise_id,"/video_push_logs.json"),{method:"get",params:{exercise_user_id:null==t?void 0:t.exercise_user_id}});case 7:null!=(r=e.sent)&&r.data&&et((null==r?void 0:r.data)||[]),null!=n&&n.data&&_e(Object(h.a)(Object(h.a)({},null==n?void 0:n.data),{},{exercise_user_id:null==t?void 0:t.exercise_user_id,datas:t})),Ke(!1);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),it=function(e){var t,n;"prev"===e?Ie(Te-1==0?null==xe||null===(t=xe.exercise_user_photos)||void 0===t?void 0:t.length:Te-1):Ie(Te===(null==xe||null===(n=xe.exercise_user_photos)||void 0===n?void 0:n.length)?1:Te+1)},at=function(e){Ne(e),Be(1),Ge("")},ot=[{key:1,value:"手机录像异常,请重新扫描左侧二维码开启手机摄像录制。"},{key:2,value:"请勿离开监控范围!"},{key:3,value:"请不要与其他人交谈!"},{key:4,value:"请不要做与作业与测验无关的行为!"},{key:5,value:"请勿切屏,超过3次将被强制交卷!"},{key:6,value:"请勿遮挡或关闭电脑摄像监控!"},{key:0,value:"其他"}],st=[{key:1,value:"请将手机放置于侧后方45°,离桌面1米左右,保证能拍摄到上半身、电脑屏幕和桌面。"},{key:2,value:"手机录像异常,请重新扫描左侧二维码开启手机摄像录制。"},{key:0,value:"其他"}],lt="alert"===Re?ot:st;return b.a.createElement("section",{className:ye.a.wrap},b.a.createElement(U.a,{form:H,onChange:function(){A.page=1;var e=Object.assign({},H.getFieldsValue());Object.keys(e).map((function(t){switch(t){case"exercise_group_id":e[t].includes("all")||!e[t].length?(delete A.course_group,H.setFieldsValue(Object(F.a)({},"exercise_group_id","all"))):(A.course_group=e[t],H.setFieldsValue(Object(F.a)({},"exercise_group_id",A.course_group)))}})),nt(A)},initialValues:Object(F.a)({},"exercise_group_id","all")},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{className:"font14",flex:"80px"},"选择分班:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all"},"全部")),b.a.createElement(P.a,{flex:"1",id:"divhe",style:{height:W+"px",overflow:"hidden"}},null===(t=$.course_groups)||void 0===t?void 0:t.map((function(e,t){return b.a.createElement(R.a,{key:t,value:e.exercise_group_id,className:"ml0 mr8"},e.exercise_group_name,"(",e.exercise_group_students,")")}))),Q&&b.a.createElement("span",{onClick:function(){var e=document.getElementById("divhe").scrollHeight;K(W>47?47:e)},style:{color:"rgb(76, 172, 255)",cursor:"pointer",alignItems:"flex-end",display:"flex"}},47===W?"展开":"收起",47===W?b.a.createElement(ae.a,{style:{marginBottom:"3px",marginLeft:"2px"}}):b.a.createElement(oe.a,{style:{marginBottom:"3px",marginLeft:"2px"}})))))),b.a.createElement("div",{className:ye.a.control},b.a.createElement(L.a.Search,{placeholder:"请输入姓名或者学号搜索",value:null==A?void 0:A.save_name,onChange:function(e){return t=e.target.value,A.page=1,A.save_name=t,void D(Object(h.a)({},A));var t},onSearch:function(){A.page=1,A.name=A.save_name,D(Object(h.a)({},A)),nt(A)}})),b.a.createElement("div",{className:ye.a.bgH}),b.a.createElement("div",{className:ye.a.warpList},b.a.createElement(ge.a,{loading:pe,active:!0,paragraph:{rows:5}},b.a.createElement("div",{className:"c-grey-666 mb20 mt20"},"共",b.a.createElement("span",{className:"c-orange"},ce),"名学生已开启手机摄影"),ne.length?b.a.createElement("ul",{className:ye.a.sys},ne.map((function(e,t){var n=e.user_name,r=e.user_group_name,i=e.video_url,a=e.login,o=e.student_id;return b.a.createElement("li",{className:ye.a.li,key:t},b.a.createElement("div",{className:ye.a.d1},b.a.createElement("div",{className:ye.a.img},b.a.createElement("iframe",{style:{height:340,width:"100%",border:"none"},src:"/live-play.html?key=".concat(t,"&video_url=").concat(null==i?void 0:i.replace(".m3u8",".flv"))})),b.a.createElement(B.a,{title:"姓名+学号"},b.a.createElement("div",{className:ye.a.btn,onClick:function(){return Object(O.s)("".concat(A.exercise_id,"-").concat(a),!0)}},b.a.createElement("div",{title:n,className:ye.a.b1},n),b.a.createElement("div",{title:r,className:ye.a.b2},"(",o,")"))),b.a.createElement("div",{onClick:function(){return rt(e)},className:ye.a.big},"查看")))}))):b.a.createElement(ve.a,null)),b.a.createElement(I.a,{showTotal:function(e){return b.a.createElement("span",{className:"mr10"},"共",b.a.createElement("span",{className:"c-orange"},e),"条数据")},className:"tc",showSizeChanger:!1,showQuickJumper:!0,hideOnSinglePage:!0,onChange:function(e,t){A.page=e,A.limit=t,D(Object(h.a)({},A)),nt(A)},pageSize:null==A?void 0:A.limit,current:A.page,total:ce})),b.a.createElement(u.a,{title:"查看详细信息",visible:xe,centered:!0,width:850,destroyOnClose:!0,onCancel:function(){_e(!1)},afterClose:function(){Ie(1),Ne("alert"),Ge(""),Se("1"),Be(1)},footer:null},b.a.createElement(ge.a,{loading:We,active:!0,paragraph:{rows:5}},b.a.createElement("div",null,b.a.createElement("span",null,"姓名:",null==xe||null===(n=xe.datas)||void 0===n?void 0:n.user_name),b.a.createElement("span",{className:"ml20"},"学号:",null==xe||null===(i=xe.datas)||void 0===i?void 0:i.student_id),b.a.createElement("span",{className:"ml20"},"班级:",null==xe||null===(o=xe.datas)||void 0===o?void 0:o.user_group_name)),b.a.createElement(r.a,{className:"mt10",defaultActiveKey:Ce,onChange:function(e){Se(e)}},b.a.createElement(r.a.TabPane,{tab:"防作弊头像",key:"1"},b.a.createElement("aside",{className:ye.a.imgWrap},b.a.createElement("div",{className:ye.a.img,style:{width:234,marginLeft:30,textAlign:"center"}},null!=xe&&null!==(l=xe.exercise_user_photos)&&void 0!==l&&l.length?b.a.createElement(v.Fragment,null,b.a.createElement("img",{height:131,src:null==xe||null===(d=xe.exercise_user_photos)||void 0===d?void 0:d[Te-1]}),b.a.createElement("div",{onClick:function(){var e;Z.a.publish("preview-image",null==xe||null===(e=xe.exercise_user_photos)||void 0===e?void 0:e[Te-1])},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"进行中照片",b.a.createElement("span",{className:"c-light-primary"},Te,"/",null==xe||null===(p=xe.exercise_user_photos)||void 0===p?void 0:p.length)),1===Te?b.a.createElement("div",{style:{color:"#ccc",cursor:"not-allowed"},className:ye.a.l}," ",b.a.createElement("i",{className:"iconfont icon-fanhui2"})):b.a.createElement("div",{onClick:function(){return it("prev")},className:ye.a.l}," ",b.a.createElement("i",{className:"iconfont icon-fanhui2"})),b.a.createElement("div",{onClick:function(){return it("next")},className:ye.a.r},b.a.createElement("i",{className:"iconfont icon-lujing"}))):b.a.createElement("div",{className:ye.a.no},b.a.createElement("span",null,"暂无进行中照片"))),b.a.createElement("div",{className:ye.a.img,style:{marginLeft:60,width:234,textAlign:"center"}},null!=xe&&xe.identity_url?b.a.createElement("img",{height:131,src:Object(O.g)(null==xe?void 0:xe.identity_url)}):b.a.createElement("div",{className:ye.a.no},b.a.createElement("span",null,"暂无证件照片")),!(null==xe||!xe.identity_url)&&b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",Object(O.g)(null==xe?void 0:xe.identity_url))},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"证件照片")))),b.a.createElement(r.a.TabPane,{tab:"人脸照片",key:"2"},b.a.createElement("aside",{className:ye.a.imgWrap,style:{marginLeft:70}},b.a.createElement("div",{className:ye.a.img},b.a.createElement("img",{width:234,src:null==xe?void 0:xe.exercise_identity_photo}),b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",null==xe?void 0:xe.exercise_identity_photo)},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"采集照片")),b.a.createElement("div",{className:ye.a.img,style:{marginLeft:20,width:234,textAlign:"center"}},null!=xe&&xe.identity_url?b.a.createElement("img",{height:131,src:Object(O.g)(null==xe?void 0:xe.identity_url)}):b.a.createElement("div",{className:ye.a.no},b.a.createElement("span",null,"暂无证件照片")),!(null==xe||!xe.identity_url)&&b.a.createElement("div",{onClick:function(){Z.a.publish("preview-image",Object(O.g)(null==xe?void 0:xe.identity_url))},className:ye.a.iBtn},"预览"),b.a.createElement("div",{className:ye.a.text},"证件照片")))),b.a.createElement(r.a.TabPane,{tab:"警告和通知",key:"3"},b.a.createElement("div",{className:ye.a.fo},b.a.createElement(T.a,{className:"mt20",checked:"alert"===Re,onChange:function(){return at("alert")}},"发送警告",b.a.createElement("span",{className:"font14 c-grey-999"},"(如发现学生在进行中的照片存在异常时,可发送消息给学生)")),b.a.createElement(T.a,{className:"mt10",checked:"notice"===Re,onChange:function(){return at("notice")}},"发送通知",b.a.createElement("span",{className:"font14 c-grey-999"},"(进行中如有消息通知,可发送消息给学生)")),b.a.createElement("div",{className:"mt20"},b.a.createElement("span",{className:"mr10"},"原因:"),b.a.createElement(ie.a,{getPopupContainer:function(e){return e.parentNode.parentNode},style:{width:570},value:Pe,onChange:function(e){Be(e)}},null==lt?void 0:lt.map((function(e){return b.a.createElement(ie.a.Option,{key:e.key,value:e.key},e.value)})))),0===Pe&&b.a.createElement(L.a.TextArea,{className:"mt20",value:He,onChange:function(e){return Ge(e.target.value)},placeholder:"请填写其他原因"}),b.a.createElement(M.a,{className:"mt10",align:"middle"},b.a.createElement("div",{className:"mr10"},"发送记录"),b.a.createElement("div",{style:{color:"#E30000",fontSize:12,margin:"10px 0"}},"已发送",null==xe?void 0:xe.alert_count,"次警告和",(null==xe||null===(m=xe.alerts)||void 0===m?void 0:m.length)-(null==xe?void 0:xe.alert_count),"次通知")),b.a.createElement(N.a,{dataSource:(null==xe?void 0:xe.alerts)||[],bordered:!1,scroll:(null==xe||null===(x=xe.alerts)||void 0===x?void 0:x.length)>4?{y:200}:{},columns:[{title:"开始时间",dataIndex:"created_at",width:164},{title:"发送人",dataIndex:"sender",width:100,ellipsis:{showTitle:!1},render:function(e){return e?b.a.createElement("span",{title:e},e):"--"}},{title:"发送类型",dataIndex:"clazz",width:80,render:function(e){return"alert"===e?"警告":"通知"}},{title:"发送内容",dataIndex:"content",ellipsis:!0}],pagination:!1}),b.a.createElement(a.a,{className:ye.a.b,onClick:Object(c.a)(g.a.mark((function e(){var t,n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(He||0!==Pe){e.next=3;break}return s.b.info("请输入其他原因"),e.abrupt("return");case 3:return t=He,Pe&&(t=("alert"===Re?ot:st).find((function(e){return e.key===Pe})).value),Je(!0),e.next=8,Object(y.a)("/api/exercises/".concat(A.exercise_id,"/send_alert.json"),{method:"post",body:{content:t,clazz:Re,exercise_user_id:null==xe?void 0:xe.exercise_user_id}});case 8:0===(null==(n=e.sent)?void 0:n.status)&&(s.b.info("发送成功"),_e(!1)),Je(!1);case 11:case"end":return e.stop()}}),e)}))),loading:Qe,type:"primary"},b.a.createElement("i",{className:"iconfont icon-fasongtongzhi mr5"}),"发送"))),b.a.createElement(r.a.TabPane,{tab:"断流记录",key:"4"},b.a.createElement(N.a,{dataSource:$e,bordered:!1,scroll:$e.length>7?{y:300}:{},columns:[{title:"开始时间",dataIndex:"start_time",width:164},{title:"结束时间",dataIndex:"end_time",width:164,render:function(e){return G()(e).format("YYYY-MM-DD HH:mm:ss")||"--"}},{title:"推流时长",dataIndex:"push_duration",ellipsis:!0,width:120,render:function(e){return e&&Object(O.Z)(Number(e)/1e3)||0}},{title:"断流原因",dataIndex:"msg",ellipsis:!0}]}))))),b.a.createElement(X.a,null))})),xe=n("wNxg"),_e=n.n(xe),ke=n("b6Jr"),we=n.n(ke),Ce=function(e){var t=e.index,n=e.bottomLine,r=e.gather,i=e.search,a=Object(v.useState)([]),o=Object(f.a)(a,2),s=o[0],l=o[1],u=Object(v.useState)(!1),d=Object(f.a)(u,2),p=d[0],m=d[1],_=Object(v.useState)(!1),k=Object(f.a)(_,2),w=k[0],C=k[1],S=Object(E.i)(),O=Object(E.h)(),A=Object(v.useState)({page:1,limit:6,total:0}),T=Object(f.a)(A,2),I=T[0],D=T[1];Object(v.useEffect)((function(){console.log(r,"gather"),0===t&&C(!0)}),[]),Object(v.useEffect)((function(){w&&R()}),[w]);var L=[{title:"序号",dataIndex:"index",key:"index",align:"left",ellipsis:!0,render:function(e,t,n){return I.limit*(I.page-1)+n+1}},{title:"姓名",dataIndex:"username",key:"username",align:"left",ellipsis:!0},{title:"班级",dataIndex:"user_group_name",key:"user_group_name",align:"left",render:function(e){return e||"--"}},{title:"学号",dataIndex:"student_id",key:"student_id",align:"left"},{title:"相似度",dataIndex:"code_rate",key:"code_rate",align:"left",render:function(e){return e+"%"}},{title:"操作",dataIndex:"id",key:"id",align:"left",render:function(e){var t,n,r="/classrooms/".concat(null==S?void 0:S.coursesId,"/exercise/").concat(null==S?void 0:S.categoryId,"/detail/").concat(e,"/review_detail");null!=O&&null!==(t=O.query)&&void 0!==t&&t.random&&(r+="?random=".concat(null==O||null===(n=O.query)||void 0===n?void 0:n.random));return b.a.createElement(x.a,{to:r,target:"_blank"},"查看")}}],R=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,a,o;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return m(!0),n=t||{page:1,limit:10,total:0},a=Object(h.a)({id:null==S?void 0:S.categoryId,question_id:null==r?void 0:r.question_id,search:i},n),e.next=5,Object(y.a)("/api/courses/".concat(null==S?void 0:S.coursesId,"/exercises/code_review_users.json"),{method:"get",params:a});case 5:(o=e.sent)&&(l(null==o?void 0:o.users),m(!1),D(Object(h.a)(Object(h.a)({},n),{},{total:(null==o?void 0:o.count)||0})));case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return b.a.createElement("div",{className:we.a.subjectTable},b.a.createElement("aside",{className:we.a.title},b.a.createElement("span",{className:"c-light-primary"},t+1,"、",5===(null==r?void 0:r.question_type)?"实训题":"编程题"),b.a.createElement("span",{className:"c-grey-333"},"(",null==r?void 0:r.score,"分):",null==r?void 0:r.question_title),b.a.createElement("span",{className:"ml40 c-grey-999"},b.a.createElement("b",{className:"c-red-ee4"},null==r?void 0:r.checked_count)," 个疑似抄袭作品(共",null==r?void 0:r.total_count,"个作品)"),b.a.createElement("span",{onClick:function(){C(!w)},style:{marginLeft:"auto",cursor:"pointer",color:"#0152d9"}},w?"收起":"展开",w?b.a.createElement(oe.a,null):b.a.createElement(ae.a,null)),5===(null==r?void 0:r.question_type)&&b.a.createElement("a",{style:{marginLeft:20},target:"_blank",href:"/shixuns/".concat(null==r?void 0:r.shixun_identifier,"/challenges")},"实训详情")),b.a.createElement(N.a,{className:we.a.customTable,style:{display:w?"block":"none"},dataSource:s,bordered:!1,rowKey:function(e){return e.id},rowClassName:we.a.row,columns:L,loading:p,pagination:{pageSize:I.limit,total:I.total,current:I.page,onChange:function(e){var t=Object(h.a)(Object(h.a)({},I),{},{page:e});D(t),R(t)},showQuickJumper:!0,showSizeChanger:!1,hideOnSinglePage:!0,position:["bottomCenter"]}}),b.a.createElement("div",{className:we.a.line,style:{visibility:n?"hidden":"visible"}}))},Se=n("lzim"),Oe=Object(_.a)((function(e){return{exercise:e.exercise,globalSetting:e.globalSetting}}))((function(e){e.exercise,e.globalSetting,e.dispatch;var t=Object(v.useState)(""),n=Object(f.a)(t,2),r=n[0],i=n[1],a=Object(v.useState)([]),o=Object(f.a)(a,2),s=o[0],l=o[1],u=Object(v.useState)(""),d=Object(f.a)(u,2),h=d[0],p=d[1],m=Object(v.useState)(!1),x=Object(f.a)(m,2),_=x[0],k=x[1],w=Object(E.i)();Object(v.useEffect)((function(){C()}),[]);var C=function(){var e=Object(c.a)(g.a.mark((function e(t){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return k(!0),e.next=3,Object(y.a)("/api/courses/".concat(null==w?void 0:w.coursesId,"/exercises/code_review_results.json"),{method:"get",params:{id:null==w?void 0:w.categoryId,search:r}});case 3:if(-2!==(null==(n=e.sent)?void 0:n.status)){e.next=7;break}return C(),e.abrupt("return");case 7:n&&(k(!1),l((null==n?void 0:n.exercise_questions)||[]),p(null==n?void 0:n.last_review_time));case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),S=function(){C()};return b.a.createElement("section",{className:_e.a.warp},b.a.createElement("aside",{className:_e.a.header},b.a.createElement("div",null,"查重时间:",h||"--"),!!h&&b.a.createElement(L.a,{value:r,onChange:function(e){return i(e.target.value)},suffix:b.a.createElement("i",{onClick:S,className:"iconfont icon-sousuo2 c-grey-c"}),bordered:!1,placeholder:"请输入姓名或学号搜索",onPressEnter:S})),b.a.createElement(ge.a,{loading:_,active:!0,paragraph:{rows:5}},s.length>0?b.a.createElement("aside",{className:_e.a.subject},s.map((function(e,t){return b.a.createElement(Ce,{key:t,index:t,bottomLine:t===s.length-1,gather:e,search:r})}))):b.a.createElement("div",{className:_e.a.empty},b.a.createElement("img",{src:Se.l,width:"258"}),b.a.createElement("span",{className:"c-grey-c"},"暂无数据"))))})),Ae=(n("/zsF"),n("PArb")),Te=n("LYsE"),Ie=n("k5F3"),De=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading.effects}}))((function(e){var t=e.exercise,n=(e.loading,e.dispatch),r=e.activeTabs,i=Object(E.i)(),a=Object(v.useState)(Object(h.a)(Object(h.a)({},i),{page:1,per_page:10})),o=Object(f.a)(a,1)[0],s=t.editData;Object(v.useEffect)((function(){"2"===r&&l()}),[i.categoryId,r]);var l=function(){n({type:"exercise/editExercise",payload:Object(h.a)({},o)})};return Object(v.useEffect)((function(){return n({type:"globalSetting/onlyShowBackTopToggle",payload:!1}),n({type:"globalSetting/onlyShowBackTopIconToggle",payload:!1}),function(){n({type:"globalSetting/onlyShowBackTopToggle",payload:!0}),n({type:"globalSetting/onlyShowBackTopIconToggle",payload:!0})}}),[]),b.a.createElement("section",{className:"minH1050 mb20 pt30 pb30 pl60 bg-white relative"},b.a.createElement(Ie.a,{isPreview:!0,activeTabs:r}),b.a.createElement(Ae.a,null),b.a.createElement(Te.a,{data:null==s?void 0:s.exercise_question_types,isDragDisabled:!0}))})),Le=(n("T2oS"),n("W9HT")),Re=(n("Q9mQ"),n("diRs")),Ne=n("CCdo"),je=n.n(Ne),Me=n("RotF"),Pe=n.n(Me),Be=n("6K3P"),Fe=n.n(Be),Ue=n("0owl"),He=n("ek7X"),Ge=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading}}))((function(e){var t,n,r,i=e.exercise,a=(e.loading,e.dispatch),o=e.cb,l=Object(h.a)(Object(h.a)({},Object(E.i)()),{},{page:0,limit:50,one:null,two:null,save_one:null,save_two:null,sort:null,course_group:"",student_id:"",realname:"",save_course_group:"",save_student_id:"",save_realname:""}),p=Object(v.useState)(Object(h.a)({},l)),m=Object(f.a)(p,2),y=m[0],x=m[1],_=Object(v.useState)([]),k=Object(f.a)(_,2),w=k[0],O=k[1],A=Object(v.useState)(!0),T=Object(f.a)(A,2),I=T[0],N=T[1],j=Object(v.useState)(!0),M=Object(f.a)(j,2),P=M[0],B=M[1],F=Object(v.useState)(0),U=Object(f.a)(F,2),H=U[0],G=U[1],z=Object(v.useState)(!1),V=Object(f.a)(z,2),W=V[0],K=(V[1],Object(v.useState)([])),q=Object(f.a)(K,2),Y=q[0],Q=q[1];Object(v.useEffect)((function(){"打回重做"===i.actionTabs.key&&(w=[],J(1))}),[i.actionTabs.key]);var J=function(){var e=Object(c.a)(g.a.mark((function e(t){var n,r;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return 1==t&&(w=[]),N(!0),y.page=t,B(!0),e.next=6,a({type:"exercise/getRedoModal",payload:Object(h.a)(Object(h.a)({},y),{},{score:((null==y?void 0:y.one)||0)+"".concat(null!=y&&y.two?","+(null==y?void 0:y.two):"")})});case 6:(null==(r=e.sent)||null===(n=r.exercise_users)||void 0===n?void 0:n.length)0?b.a.createElement("p",null,"选择班级:"):b.a.createElement("p",null,"暂无分班"),b.a.createElement(R.a.Group,{value:m,onChange:function(e){x(e),A(e.length===l.length)}},l.map((function(e){return b.a.createElement(R.a,{key:e.id,value:e.id},e.name)})))),b.a.createElement("p",{style:{marginBottom:40},className:"c-grey-999 mt40"},"说明:平台目前仅支持java、python、c、c++语言的实训题和编程题的代码查重。")),b.a.createElement("div",{className:Ke.a.footer},b.a.createElement(R.a,{checked:O,onChange:function(e){var t=e.target.checked?l.map((function(e){return e.id})):[];x(t),A(e.target.checked)}},"全选"),b.a.createElement(a.a,{onClick:I},"取消"),b.a.createElement(a.a,{onClick:function(){r(m)},type:"primary"},"确认"))))})),Ye=n("Fzz4"),Qe=(n("DZo9"),n("8z0m")),Je=n("/MfK"),Xe=n("w5pM"),Ze=n("jN4g"),$e=n("xvlK"),et=n("dfu6"),tt=r.a.TabPane,nt=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading}}))((function(e){var t,n=e.exercise,i=(e.loading,e.dispatch),a=(Object(E.i)(),Object(E.h)(),U.a.useForm()),o=Object(f.a)(a,1)[0],l=Object(v.useState)({}),p=Object(f.a)(l,2),m=p[0],y=p[1],x=Object(v.useState)("1"),_=Object(f.a)(x,2),k=_[0],w=_[1];return Object(v.useEffect)((function(){"addIp"===n.actionTabs.key&&(o.resetFields(),w("1"))}),[n.actionTabs]),b.a.createElement(u.a,{centered:!0,title:"添加IP范围",visible:"addIp"===n.actionTabs.key,okText:"确认",cancelText:"取消",width:600,bodyStyle:{minHeight:200},onOk:Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.validateFields();case 2:if(m.zz){e.next=8;break}if(m.ip){e.next=8;break}if(t=m.startIP.split(".")[3],!(parseInt(t)>parseInt(m.endIP))){e.next=8;break}return s.b.warn("IP区间段不合法"),e.abrupt("return");case 8:i({type:"exercise/setActionTabs",payload:{key:"insterIp",data:Object(h.a)({},o.getFieldValue()),type:n.actionTabs.type}});case 9:case"end":return e.stop()}}),e)}))),onCancel:function(){i({type:"exercise/setActionTabs",payload:{}})}},b.a.createElement("section",{className:"pl10 pr10"},b.a.createElement(r.a,{activeKey:k,onChange:function(e){w(e),o.resetFields()}},b.a.createElement(tt,{tab:"新增IP地址",key:"1"}),b.a.createElement(tt,{tab:"新增IP范围",key:"2"}),b.a.createElement(tt,{tab:"新增IP规则",key:"3"})),b.a.createElement(U.a,{form:o,className:"pt30",name:"form",layout:"vertical",onValuesChange:function(e,t){y(Object(h.a)({},t))}},"1"===k&&b.a.createElement(U.a.Item,{name:"ip",rules:[{required:!0,message:"请输入IP地址"}],label:"IP地址"},b.a.createElement(ie.a,{open:!1,tokenSeparators:[";",",",";"],size:"large",mode:"tags",style:{width:"100%"},placeholder:"请输入IP地址,可同时添加多个IP地址,中间用英文的分号间隔。",onChange:function(e){o.setFieldsValue({ip:Object(d.a)(e.filter((function(e){return!!Object(et.a)(e)||(s.b.warn("IP不合法,请重新输入"),!1)})))})}})),"2"===k&&b.a.createElement(M.a,{gutter:[20,20]},b.a.createElement(P.a,{flex:"1"},b.a.createElement(U.a.Item,{name:"startIP",rules:[{required:!0,message:"请输入起始IP地址"}],label:"起始IP地址"},b.a.createElement(L.a,{maxLength:15,placeholder:"请输入起始IP地址",onBlur:function(e){var t="";Object(et.a)(e.target.value)?t=e.target.value:(t="",s.b.warn("IP不合法,请重新输入")),o.setFieldsValue({startIP:t})}}))),b.a.createElement(P.a,{flex:"1"},b.a.createElement(U.a.Item,{name:"endIP",rules:[{required:!0,message:"请输入结束IP地址"},{pattern:/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/,message:"请输入0-255的网段"}],label:"结束IP地址"},b.a.createElement(L.a,{onBlur:function(e){},prefix:b.a.createElement("span",{className:"font14"},null===(t=m.startIP)||void 0===t?void 0:t.substring(0,m.startIP.lastIndexOf("."))),maxLength:3,placeholder:"请输入结束IP地址的后三位"})))),"3"===k&&b.a.createElement(M.a,{gutter:[20,20]},b.a.createElement(P.a,{flex:"1"},b.a.createElement(U.a.Item,{name:"zz",rules:[{required:!0,message:"请输入IP规则正则表达式"}],label:"IP规则正则表达式"},b.a.createElement(L.a,{placeholder:"请输入IP规则正则表达式",onBlur:function(e){try{new RegExp(e.target.value,"g")}catch(e){console.log("-----",11111),s.b.info("请输入正确的正则表达式")}}})))))))})),rt=n("2JKx"),it=n.n(rt),at=n("Ot1p"),ot=(n("+BJd"),n("mr32")),st=(r.a.TabPane,ie.a.Option),lt=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading}}))((function(e){var t,n,r,i=e.exercise,a=(e.loading,e.data),o=e.disabled,l=e.updata,p=(e.dispatch,Object(E.i)()),m=(Object(E.h)(),U.a.useForm()),y=(Object(f.a)(m,1)[0],Object(v.useState)({})),x=Object(f.a)(y,2),_=(x[0],x[1],Object(v.useState)("1")),k=Object(f.a)(_,2),w=(k[0],k[1],i.workSetting),C=i.commonHeader,O=Object(v.useState)(!1),A=Object(f.a)(O,2),I=A[0],L=A[1],j=Object(v.useState)([]),B=Object(f.a)(j,2),F=B[0],H=B[1],G=Object(v.useState)([]),z=Object(f.a)(G,2),V=z[0],W=z[1],K=Object(v.useState)(!1),q=Object(f.a)(K,2),Y=q[0],Q=q[1],J=Object(v.useState)([]),X=Object(f.a)(J,2),Z=X[0],$=X[1],ee=Object(v.useState)([]),te=Object(f.a)(ee,2),ne=te[0],re=te[1],ae=Object(v.useState)({id:p.categoryId,exercise_group_id:[]}),oe=Object(f.a)(ae,2),se=oe[0],le=(oe[1],Object(v.useState)(0)),ce=Object(f.a)(le,2),ue=ce[0],de=ce[1];Object(v.useMemo)((function(){var e,t,n,r;if(null!=w&&null!==(e=w.published_course_groups)&&void 0!==e&&e.length){var i,a=Object(d.a)(null==w||null===(i=w.published_course_groups)||void 0===i?void 0:i.map((function(e){return Object(d.a)(e.course_group_id)})).flat());H(Object(d.a)(a))}else if(null!=w&&w.published_course_groups){var o;H(Object(d.a)(null==w||null===(o=w.course_groups)||void 0===o?void 0:o.map((function(e){return e.course_group_id}))))}if((null!=w&&null!==(t=w.exercise)&&void 0!==t&&t.group_make_ups||null!=w&&null!==(n=w.exercise)&&void 0!==n&&n.unified_make_up)&&(Q(!0),null!=w&&null!==(r=w.exercise)&&void 0!==r&&r.group_make_ups)){var s,l,c=V;null==w||null===(s=w.exercise)||void 0===s||null===(l=s.group_make_ups)||void 0===l||l.map((function(e,t){c[t]=e.course_group_id||[]})),W(Object(d.a)(c))}}),[w]),Object(v.useEffect)((function(){console.log("groupIds:",F)}),[F]),Object(v.useEffect)((function(){console.log("selectGroupIds:",V)}),[V]);var he=function(){var e=Object(c.a)(g.a.mark((function e(t){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(S.K)(Object(h.a)({},se));case 2:n=e.sent,re(Object(d.a)(n.users.map((function(e){return e.key=String(e.id),e})).filter((function(e){var t;return console.log("openKeys",a.group_make_ups[ue].students,ue),null===(t=a.group_make_ups[ue].students)||void 0===t||!t.some((function(t){return t.id===e.id}))}))));case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),fe={onChange:function(e,t){$(Object(d.a)(t)),console.log("selectedRowKeys: ".concat(e),"selectedRows: ",t)},getCheckboxProps:function(e){return{disabled:"Disabled User"===e.name,name:e.name}}},pe=function(e){var t,n,r;return!!o||!!(2!==C.exercise_status||null!=w&&null!==(t=w.exercise)&&void 0!==t&&null!==(n=t.group_make_ups)&&void 0!==n&&null!==(r=n[e])&&void 0!==r&&r.course_groups)&&3!==C.exercise_status},me=function(e){return!!o||(2===C.exercise_status?null==w||null===(t=w.exercise)||void 0===t||null===(n=t.group_make_ups)||void 0===n||null===(r=n[e])||void 0===r?void 0:r.is_all:3!==C.exercise_status);var t,n,r};return b.a.createElement(b.a.Fragment,null,b.a.createElement(M.a,null,b.a.createElement(P.a,{span:24},b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{flex:"1"},b.a.createElement("h1",{className:"mt15"},"补考设置 ",b.a.createElement("span",{className:"c-red font14"},"(正式开始补考前,切记修改作业与测验截止时间大于当前时间)"))))),b.a.createElement(P.a,{span:24,className:"mt10"},b.a.createElement(R.a,{checked:a.unified_make_up||(null===(t=a.group_make_ups)||void 0===t?void 0:t.length),disabled:o,onChange:function(e){e.target.checked?a.unified_make_up=!0:(a.unified_make_up=!1,delete a.group_make_ups),Q(e.target.checked)}},b.a.createElement("strong",null,"开启补考")),b.a.createElement("span",{className:"c-grey-c font12"},"(开启后可针对未答卷的学生设置补考,补考与延长截止时间不可共存)"))),Y&&b.a.createElement("section",{className:"ml40"},b.a.createElement(M.a,{align:"middle",className:"mt10"},b.a.createElement(P.a,null,b.a.createElement(T.a,{checked:a.unified_make_up,disabled:o,onClick:function(){a.unified_make_up=!0,delete a.group_make_ups,l(Object(h.a)({},a))}},"所有分班统一补考")),b.a.createElement(P.a,null,b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{className:"ml50"},"补考扣分"),b.a.createElement(P.a,{className:"ml10 mr10"},b.a.createElement(D.a,{min:0,max:100,placeholder:"为空代表不扣分",disabled:o||3!==C.exercise_status,onChange:function(e){a.make_up_score=e,l(Object(h.a)({},a))},value:a.make_up_score,style:{width:150}})),b.a.createElement(P.a,null,"(分)")))),(null===(n=w.course_groups)||void 0===n?void 0:n.length)>0&&b.a.createElement(M.a,{align:"middle",className:"mt10"},b.a.createElement(P.a,null,b.a.createElement(T.a,{disabled:o||3!==C.exercise_status,checked:a.group_make_ups,onClick:function(){var e;delete a.unified_make_up,a.group_make_ups=(null==w||null===(e=w.exercise)||void 0===e?void 0:e.group_make_ups)||[{students:[],course_group_id:[],score:0}],l(Object(h.a)({},a))}},"各班分别补考"))),null===(r=a.group_make_ups)||void 0===r?void 0:r.map((function(e,t){var n,r;return b.a.createElement("div",{key:t},b.a.createElement(M.a,{align:"middle",className:"mt10"},b.a.createElement(P.a,{flex:"100px"},"补考规则",t+1),b.a.createElement(P.a,{className:"ml10"},b.a.createElement(ie.a,{style:{width:307},value:e.course_group_id,mode:"multiple",placeholder:"请选择分班",disabled:pe(t),onChange:function(e,n,r){V[t]=e,a.group_make_ups[t].course_group_id=e,l(Object(h.a)({},a)),W(Object(d.a)(V))}},null==w||null===(n=w.course_groups)||void 0===n?void 0:n.map((function(e,n){var r=[];if(F.includes(e.course_group_id)&&(V.length&&(r=V.filter((function(n,r){return t!==r&&!!n.includes(e.course_group_id)}))),!r.length))return b.a.createElement(st,{value:e.course_group_id,key:n},e.course_group_name)})))),b.a.createElement(P.a,null,b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{className:"ml50"},"补考扣分"),b.a.createElement(P.a,{className:"ml10 mr10"},b.a.createElement(D.a,{value:e.score,min:0,max:100,style:{width:150},placeholder:"为空代表不扣分",disabled:pe(t),onChange:function(e){a.group_make_ups[t].score=e,l(Object(h.a)({},a))}})),b.a.createElement(P.a,null,"(分)")))),b.a.createElement(M.a,{className:"mt20"},b.a.createElement(P.a,{flex:"220px"},b.a.createElement(T.a.Group,{name:"student",value:e.is_all,disabled:me(t),onChange:function(e){var n,r,i;e.target.value?delete a.group_make_ups[t].students:a.group_make_ups[t].students=(null==w||null===(n=w.exercise)||void 0===n||null===(r=n.group_make_ups)||void 0===r||null===(i=r[t])||void 0===i?void 0:i.students)||[];a.group_make_ups[t].is_all=e.target.value,l(Object(h.a)({},a))}},b.a.createElement(T.a,{value:!0},"全部未答学生"),b.a.createElement(T.a,{value:!1},"指定学生"))),b.a.createElement(P.a,{flex:"1"},!a.group_make_ups[t].is_all&&b.a.createElement("div",{onClick:function(){var e;null!==(e=V[t])&&void 0!==e&&e.length?o||(se.exercise_group_id=V[t],L(!0),$([]),de(t),re([]),he({page:1})):s.b.warn("请先选择补考班级")},className:"".concat(o&&"disabledStyle"),style:{minHeight:28,border:"1px solid #ccc",padding:4}},null===(r=e.students)||void 0===r?void 0:r.map((function(t,n){return b.a.createElement(ot.a,{key:n,closable:t.add||C.exercise_status>2,onClose:function(){e.students.splice(n,1),l(Object(h.a)({},a))}},t.name)})))),b.a.createElement(P.a,{flex:"100px",className:"tr"},t>0&&3===C.exercise_status&&b.a.createElement(Je.a,{onClick:function(){a.group_make_ups.splice(t,1),l(Object(h.a)({},a))}}),b.a.createElement(Xe.a,{className:"c-green ml20",onClick:function(){a.group_make_ups.push({students:[],course_group_id:[],score:0,is_all:!0}),l(Object(h.a)({},a))}}))))})),b.a.createElement(u.a,{title:"指定补考学生",visible:I,onCancel:function(){return L(!1)},destroyOnClose:!0,onOk:function(){a.group_make_ups[ue].students=a.group_make_ups[ue].students.concat(Z.map((function(e){return e.add=!0,e}))),L(!1),console.log("data:",a),l(Object(h.a)({},a))}},b.a.createElement(N.a,{columns:[].concat([,{title:"学生姓名",dataIndex:"name"},{title:"分班",dataIndex:"course_group_name"}]),dataSource:Object(d.a)(ne),rowSelection:Object(h.a)({type:"checkbox"},fe),pagination:{pageSize:10,defaultCurrent:1}}))))})),ct=n("m3rI"),ut=L.a.TextArea,dt=Q.a.RangePicker,ht=ie.a.Option,ft=Object(_.a)((function(e){var t=e.exercise,n=e.loading,r=e.globalSetting;return{exercise:t,loading:n.effects,globalSetting:r}}))((function(e){var t,n,r,i,o,l,p,m,x,_,k=e.exercise,w=(e.globalSetting,e.loading,e.dispatch),C=Object(E.i)(),A=(Object(E.h)(),k.workSetting),I=k.commonHeader,L=Object(v.useState)(!0),N=Object(f.a)(L,2),j=N[0],H=N[1],z=Object(v.useState)([]),V=Object(f.a)(z,2),W=(V[0],V[1]),K=Object(v.useState)({}),q=Object(f.a)(K,2),Y=(q[0],q[1],Object(v.useState)([])),J=Object(f.a)(Y,2),ee=(J[0],J[1],Object(v.useState)()),te=Object(f.a)(ee,2),ne=te[0],re=te[1],ae=U.a.useForm(),oe=(Object(f.a)(ae,1)[0],Object(v.useState)([])),se=Object(f.a)(oe,2),le=se[0],ce=se[1],ue=Object(v.useState)({ip_bind:!1,export_page_num:40,ip_limit:null,public_ip:[],inner_ip:[],screen_open:!1,screen_num:3,screen_sec:5,open_camera:!1,identity_verify:!1,open_phone_video_recording:!1,photo_count:5,open_make_up:!1,unified_setting:!1,publish_time:"",end_time:"",group_make_ups:[],unified_make_up:!1,make_up_score:0,send_role:"random",open_time:"",time:"",choice_random:!1,question_random:!1,show_statistic:!1,assistant_auth:!1,answer_open:!1,score_open:!1,answered_open:!0,open_score:!0,open_total_score:!0,file_list:[],show_title:!1,show_body:!1,show_info:!1,show_table:!0,show_user:!1,show_no:!1,show_group:!0,show_desc:!1,description:"",attachment_id:""}),de=Object(f.a)(ue,2),he=de[0],fe=de[1];function pe(){return(pe=Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/courses/".concat(null==C?void 0:C.coursesId,"/exercises/overload_alert.json"),{method:"get",params:{course_id:null==C?void 0:C.coursesId}});case 2:t=e.sent,re(null==t?void 0:t.alert);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}C.category=C.categoryId,Object(v.useEffect)((function(){ge()}),[A]),Object(v.useEffect)((function(){w({type:"exercise/getWorkSetting",payload:Object(h.a)({},C)}),Object($.s)()||function(){pe.apply(this,arguments)}()}),[]),Object(v.useEffect)((function(){"insterIp"===k.actionTabs.key&&(k.actionTabs.data.ip?he[k.actionTabs.type]=[].concat(Object(d.a)(he[k.actionTabs.type]||[]),Object(d.a)(k.actionTabs.data.ip)):k.actionTabs.data.zz?he[k.actionTabs.type]=[].concat(Object(d.a)(he[k.actionTabs.type]||[]),[k.actionTabs.data.zz]):he[k.actionTabs.type]=[].concat(Object(d.a)(he[k.actionTabs.type]||[]),["".concat(k.actionTabs.data.startIP,",").concat(k.actionTabs.data.startIP.substring(0,k.actionTabs.data.startIP.lastIndexOf("."))+"."+k.actionTabs.data.endIP)]),fe(Object(h.a)({},he)))}),[k.actionTabs]);var me,ge=function(){var e,t,n,r,i,a,o,s=JSON.parse(JSON.stringify(A));Object.keys(he).map((function(e){var t,n,r,i,a;(he[e]=(null==s||null===(t=s.exercise)||void 0===t?void 0:t[e])||(null==s||null===(n=s.exercise_header)||void 0===n?void 0:n[e]),null!=s&&null!==(r=s.exercise_header)&&void 0!==r&&r[e])?he[e]=null==s||null===(i=s.exercise_header)||void 0===i?void 0:i[e]:he[e]=null==s||null===(a=s.exercise)||void 0===a?void 0:a[e]})),he.file_list=null!=s&&null!==(e=s.exercise_header)&&void 0!==e&&e.attachment_id?[{uid:null==s||null===(t=s.exercise_header)||void 0===t?void 0:t.attachment_id,id:null==s||null===(n=s.exercise_header)||void 0===n?void 0:n.attachment_id,url:null==s||null===(r=s.exercise_header)||void 0===r?void 0:r.photo_url}]:[],le=(null==s||null===(i=s.published_course_groups)||void 0===i?void 0:i.map((function(e){return{course_group_id:e.course_group_id,end_time:e.course_end_time,publish_time:e.course_publish_time}})))||[{}],null==A||null===(a=A.course_groups)||void 0===a||a.map((function(e,t){e.cilckkey="",e.isselect=!1})),null==A||null===(o=A.course_groups)||void 0===o||o.map((function(e,t){var n;null==A||null===(n=A.published_course_groups)||void 0===n||n.map((function(t,n){var r;null!=t&&null!==(r=t.course_group_id)&&void 0!==r&&r.includes(null==e?void 0:e.course_group_id)&&(e.cilckkey=n,e.isselect=!0)}))})),console.log("data:",he,A),fe(he),ce(le)},ve=function(e){Object(S.cb)(Object(h.a)({},e)).then((function(e){0===e.status&&(s.b.success("更新成功"),w({type:"exercise/getCommonHeader",payload:Object(h.a)({},C)}),w({type:"exercise/getWorkSetting",payload:Object(h.a)({},C)}),H(!0))}))},be=function(e){return e&&e1&&(null==e||!e.new)||!(null==A||null===(n=A.published_course_groups)||void 0===n||!n.some((function(t){return t.course_group_id===e.course_group_id})))&&j},Ee={disabled:j,multiple:!1,listType:"picture-card",onPreview:function(e){Z.a.publish("preview-image",e.thumbUrl)},withCredentials:!0,fileList:he.file_list,beforeUpload:function(e){return!(e.size/1024>200)||(s.b.error("该文件无法上传。超过文件大小限制(200KB),建议上传到百度云等其它共享工具里,然后再txt文档里给出链接以及共享密码并上传"),!1)},action:"".concat(ct.a.API_SERVER,"/api/attachments.json"),onChange:function(e){var t=e.fileList.filter((function(e){return!!e.status}));he.file_list=t,fe(Object.assign({},he))},onRemove:(me=Object(c.a)(g.a.mark((function e(t){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return he.file_list=[],fe(Object.assign({},he)),e.abrupt("return",!0);case 3:case"end":return e.stop()}}),e)}))),function(e){return me.apply(this,arguments)})};return b.a.createElement("section",{className:[it.a.form,"mb50 bg-white"].join(" ")},b.a.createElement(M.a,null,b.a.createElement(P.a,{span:24},b.a.createElement(M.a,{align:"middle"},b.a.createElement(P.a,{flex:"1"},b.a.createElement("h1",{className:"mt15"},"发布设置")),b.a.createElement(P.a,null,Object($.c)()&&j&&b.a.createElement(a.a,{type:"primary",size:"middle",ghost:!0,onClick:function(){return H(!1)}},"编辑设置")))),(null===(t=A.course_groups)||void 0===t?void 0:t.length)>0&&b.a.createElement(P.a,{span:24,className:"mt10"},b.a.createElement(R.a,{checked:he.unified_setting,disabled:j||(null==A||null===(n=A.exercise)||void 0===n?void 0:n.exercise_status)>1,onChange:function(){var e;(null==A||null===(e=A.exercise)||void 0===e?void 0:e.exercise_status)>1?s.b.error("已发布,不能再修改分班统一发布"):(he.unified_setting=!he.unified_setting,!1===he.unified_setting&&""==le&&ce(le.concat({})),fe(Object.assign({},he)))}},b.a.createElement("strong",null,"分班统一发布")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则所有分班使用相同的发布设置,仅课堂管理员可修改;否则各个分班允许单独设置)")),b.a.createElement("span",{style:{color:"red"}},(null==A||null===(r=A.exercise)||void 0===r?void 0:r.exercise_status)>1&&ne&&"当前课堂中学生人数较多,为提供更好的服务,我们将进行服务器扩容,建议您在30分钟后发起作业与测验。您也可以立即发布。")),he.unified_setting&&b.a.createElement("div",null,b.a.createElement(M.a,{align:"middle",className:"mt25 pl30"},b.a.createElement(P.a,null,"发布时间:"),b.a.createElement(P.a,{className:"ml5"},b.a.createElement(B.a,{placement:"bottom",title:(null==A||null===(i=A.exercise)||void 0===i?void 0:i.exercise_status)>1&&"发布时间已过,不能修改"},b.a.createElement(Q.a,{style:{width:170},placeholder:"请选择发布时间",showTime:{format:"HH:mm",defaultValue:G()(Object(O.d)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabledDate:be,disabled:j||(null==A||null===(o=A.exercise)||void 0===o?void 0:o.exercise_status)>1,value:he.publish_time?G()(he.publish_time):"",allowClear:!1,onChange:function(e,t){he.publish_time=t,he.end_time||(he.end_time=G()(e).add(1,"month").format("YYYY-MM-DD HH:mm:ss")),fe(Object.assign({},he))}}))),b.a.createElement(P.a,null,b.a.createElement("span",{className:"c-grey-c ml10"},"(学生开始答题时间)"))),b.a.createElement(M.a,{align:"middle",className:"mt25 pl30"},b.a.createElement(P.a,null,"截止时间:"),b.a.createElement(P.a,{className:"ml5"},b.a.createElement(Q.a,{style:{width:170},placeholder:"请选择截止时间",showTime:{format:"HH:mm",defaultValue:G()(Object(O.d)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:j,allowClear:!1,value:he.end_time?G()(he.end_time):"",disabledDate:function(e){return he.end_time?e&&(e1?null!=n&&n.new?[!1,!1]:[!0,!1]:null!=A&&null!==(i=A.published_course_groups)&&void 0!==i&&i.some((function(e){return e.course_group_id===n.course_group_id}))&&(j||(null==A||null===(a=A.exercise)||void 0===a?void 0:a.exercise_status)>1)?[!0,!1]:[!1,!1]),disabledDate:be,style:{width:400},placeholder:["请选择发布时间","请选择截止时间"],showTime:{format:"HH:mm",defaultValue:[G()(Object(O.d)(),"HH:mm"),G()(Object(O.d)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",size:"large",value:e.publish_time&&[G()(e.publish_time),e.end_time&&G()(e.end_time)],onChange:function(n,r){ye(e)||(le[t].publish_time=r[0]),le[t].end_time=r[1],ce(Object(d.a)(le))}})),!j&&b.a.createElement(P.a,{span:4},t>0&&(null==e?void 0:e.new)&&b.a.createElement(Je.a,{onClick:function(){le=le.filter((function(e,n){return t!==n})),ce(Object(d.a)(le))}}),b.a.createElement(Xe.a,{className:"c-green ml20",onClick:function(){ce(le.concat({new:!0}))}}))));var n,r,i,a}))),b.a.createElement(Ae.a,null),(3===(null==I?void 0:I.exercise_status)||he.open_make_up)&&b.a.createElement(b.a.Fragment,null,b.a.createElement(lt,{data:he,disabled:j,updata:fe}),b.a.createElement(Ae.a,null)),b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"答题设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"答题时长:"),b.a.createElement(D.a,{size:"large",disabled:j,min:1,value:-1===he.time?null:he.time,onChange:function(e){he.time=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"ml10"},"分钟"),b.a.createElement("span",{className:"c-grey-c font12 ml10"},"(空值,代表不限时长;非空值,代表限制时长,从学生首次答题开始持续计时)")),(null==I?void 0:I.is_random)&&b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"分发规则:"),b.a.createElement(T.a.Group,{disabled:j,value:he.send_role,onChange:function(e){he.send_role=e.target.value,fe(Object(h.a)({},he))}},b.a.createElement(T.a,{value:"random"},"默认随机分发"),b.a.createElement(T.a,{value:"ip"},"根据IP地址分发"),b.a.createElement(T.a,{value:"student_id"},"根据学号分发"))),!(null!=I&&I.is_random)&&b.a.createElement(b.a.Fragment,null,b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.question_random,disabled:j,onChange:function(e){he.question_random=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"题目顺序随机打乱")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生答题时,题目顺序按照题型随机显示)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.choice_random,disabled:j,onChange:function(e){he.choice_random=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"选项顺序随机打乱")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生答题时,选项顺序随机显示)")))),b.a.createElement(Ae.a,null),b.a.createElement(b.a.Fragment,null,b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"防作弊设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.identity_verify,disabled:!Object($.o)()||j,onChange:function(e){he.identity_verify=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"作业与测验前人脸身份核验")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生参加作业与测验前将会要求调用摄像头并完成拍照采集,教师/助教审核通过后学生并开启手机录制视频则可以开始作业与测验)"),b.a.createElement("br",null),b.a.createElement("span",{className:"c-grey-c font12"},"如开启,教师/助教可以在该进行中的详情页中对学生人脸身份进行审核。")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.open_camera,disabled:j,onChange:function(e){he.time?(he.open_camera=e.target.checked,he.photo_count=he.photo_count||5,fe(Object.assign({},he))):s.b.error("不限时长的作业与测验不可开启摄像头,请填写作业与测验时长")}},b.a.createElement("strong",null,"进行中启用拍照监考")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生参加作业与测验时将会要求调用摄像头)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"本场作业与测验最多拍摄:"),b.a.createElement(D.a,{size:"large",disabled:j||!he.open_camera,min:1,defaultValue:5,max:Object($.v)()?1e3:10,value:he.photo_count,onChange:function(e){he.photo_count=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"ml10"},"(次)"),b.a.createElement("span",{className:"c-grey-c font12 ml10"},"(请填写不大于10的正整数)")),b.a.createElement(P.a,{className:"c-grey-c font12 pl30 mt10"},"如开启防作弊设置,学生必须同意才可以参加作业与测验。"),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.screen_open,disabled:j,onChange:function(e){he.screen_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"切屏后强制交卷"))),he.screen_open&&b.a.createElement(P.a,{span:24,className:"mt15 pl30 font14"},b.a.createElement("span",{className:"c-grey-333 mr10"},"作业与测验过程中切换页面超过"),b.a.createElement(D.a,{size:"large",disabled:j,min:0,defaultValue:3,max:10,value:he.screen_num,onChange:function(e){he.screen_num=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"c-grey-333 mr10"},"(次)后将被强制交卷,切换到其他页面"),b.a.createElement(D.a,{size:"large",disabled:j,min:0,defaultValue:5,max:60,value:he.screen_sec,onChange:function(e){he.screen_sec=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"c-grey-333"},"(秒)后即判定为切屏。")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:"no"!==he.ip_limit,disabled:j,onChange:function(e){"no"===he.ip_limit?he.ip_limit="pub":he.ip_limit="no",fe(Object.assign({},he))}},b.a.createElement("strong",null,"限制作业与测验访问IP"),b.a.createElement("span",{className:"font12 c-grey-c"},"(不在IP范围中的将无法参加此作业与测验)"))),"no"!==he.ip_limit&&b.a.createElement(P.a,{className:"mt15 ml50"},b.a.createElement("span",{className:"c-red"},"(只允许在Chrome谷歌浏览器作答,并且要求学生安装WebRTC Leak Prevent插件)"),b.a.createElement("a",{className:"c-blue",target:"_blank",href:"https://www.educoder.net/forums/4478"},"如何安装WebRTC Leak Prevent插件?"))),"no"!==he.ip_limit&&b.a.createElement(b.a.Fragment,null,b.a.createElement(M.a,{className:"mt15 ml50 ".concat(it.a.ipWrp)},b.a.createElement(P.a,null,b.a.createElement("span",null,"公网IP地址范围:")),b.a.createElement(P.a,null,!(null!==(l=he.public_ip)&&void 0!==l&&l.length)&&b.a.createElement("span",null,"当前还未设置IP范围"),null===(p=he.public_ip)||void 0===p?void 0:p.map((function(e,t){return b.a.createElement("span",{className:it.a.ipItem},b.a.createElement("i",null,e," "),!j&&b.a.createElement(Ze.a,{onClick:function(){u.a.confirm({okText:"确定",cancelText:"取消",title:"确定删除该IP吗?",onOk:function(){he.public_ip.splice(t,1),fe(Object(h.a)({},he))}})},className:" c-grey-c",size:20}))})),Object($.c)()&&!j&&b.a.createElement("span",{onClick:function(){w({type:"exercise/setActionTabs",payload:{key:"addIp",type:"public_ip"}})},className:"font14 c-blue ml10"}," ",b.a.createElement("i",{className:"iconfont icon-xuanyong font14"})," 添加"))),b.a.createElement(M.a,{className:"mt15 ml50 ".concat(it.a.ipWrp)},b.a.createElement(P.a,null,b.a.createElement("span",null,"内网IP地址范围:")),b.a.createElement(P.a,null,!(null!==(m=he.inner_ip)&&void 0!==m&&m.length)&&b.a.createElement("span",null,"当前还未设置IP范围"),null===(x=he.inner_ip)||void 0===x?void 0:x.map((function(e,t){return b.a.createElement("span",{className:it.a.ipItem},b.a.createElement("i",null,e," "),!j&&b.a.createElement(Ze.a,{onClick:function(){j||u.a.confirm({title:"确定删除该IP吗?",onOk:function(){he.inner_ip.splice(t,1),fe(Object(h.a)({},he))}})},className:" c-grey-c",size:20}))})),Object($.c)()&&!j&&b.a.createElement("span",{className:"font14 c-blue ml10",onClick:function(){w({type:"exercise/setActionTabs",payload:{key:"addIp",type:"inner_ip"}})}}," ",b.a.createElement("i",{className:"iconfont icon-xuanyong font14"})," 添加")))),b.a.createElement(M.a,null,b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.ip_bind,disabled:j,onChange:function(e){he.ip_bind=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"IP绑定"),b.a.createElement("span",{className:"font12 c-grey-c"},"(作业与测验开始后,学生的账号将自动与机器IP绑定。如遇特殊情况,教师/助教可以解除学生的IP绑定)")))),b.a.createElement(Ae.a,null)),b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"属性设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.score_open,disabled:j,onChange:function(e){he.score_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"公开成绩")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则在作业与测验截止时间之后,已提交答题的学生可以查看其它学生的成绩,否则只能查看自己的成绩;但未选中“查看总成绩”时自己和其他同学成绩均不可见)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.answer_open,disabled:j,onChange:function(e){he.answer_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"公开答案")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则在作业与测验截止时间之后,已提交答题的学生可以查看作业与测验题目的答案,否则不能查看)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30 "},b.a.createElement(R.a,{checked:he.show_statistic,disabled:j,onChange:function(e){he.show_statistic=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"公开统计")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则在作业与测验截止时间之后,已提交答题的学生可以查看答题统计,否则不能查看)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.open_total_score,disabled:j,onChange:function(e){he.open_total_score=e.target.checked,!1===e.target.checked&&(he.open_score=e.target.checked),fe(Object.assign({},he))}},b.a.createElement("strong",null,"查看总成绩")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生交卷后能看到自己的总成绩及每个小题的得分,否则总成绩和小题得分均不能查看)")),he.open_total_score&&b.a.createElement(P.a,{style:{marginLeft:20},span:24,className:"mt15 pl30"},b.a.createElement("strong",null,"公开时间"),b.a.createElement(Q.a,{format:"YYYY-MM-DD HH:mm:ss",style:{margin:"0px 15px"},disabled:j,onChange:function(e,t){he.open_time=t,fe(Object.assign({},he))},value:he.open_time?G()(he.open_time):"",disabledDate:be,showTime:{defaultValue:G()("00:00:00","HH:mm:ss")}}),b.a.createElement("span",{className:"c-grey-c font12"},"(可设置成绩公布的时间;未设置时,学生交卷后可立即查看个人成绩)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.open_score,disabled:!he.open_total_score||j,onChange:function(e){he.open_score=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"查看小题得分")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生交卷后能看到自己每个小题的得分详情,否则不能查看。选中本项前必须先选中“查看总成绩”)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.answered_open,disabled:j,onChange:function(e){he.answered_open=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"查看已答作业与测验")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则学生交卷后能查看作业与测验和成绩;否则只能查看成绩,不能查看作业与测验)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30 pb40"},b.a.createElement(R.a,{checked:he.assistant_auth,disabled:j,onChange:function(e){he.assistant_auth=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"助教查看答案")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中,则允许助教查看答案)"))),b.a.createElement(Ae.a,null),Object($.c)()&&b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"600px"},b.a.createElement(M.a,null,b.a.createElement(P.a,null,b.a.createElement("strong",null,"作业与测验导出格式设置")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("strong",null,"卷头左角标"),b.a.createElement("span",{className:"c-grey-c font12"},"(位于首页左上角,请以图片上传;大小请勿超过200k,尺寸为700x500)")),b.a.createElement("div",{className:"mt15 pl30"},b.a.createElement(Qe.a,Ee,!(null!==(_=he.file_list)&&void 0!==_&&_.length)&&b.a.createElement("div",null,b.a.createElement($e.a,null),b.a.createElement("div",{style:{marginTop:8}},"上传")))),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_title,disabled:j,onChange:function(e){he.show_title=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示作业与测验标题")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则在卷头展示作业与测验标题)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30 "},b.a.createElement(R.a,{checked:he.show_body,disabled:j,onChange:function(e){he.show_body=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示作业与测验内容")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则在卷头展示作业与测验内容,即本作业与测验所属课程名称)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_info,disabled:j,onChange:function(e){he.show_info=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示题量、分值、作业与测验时长")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则在卷头展示题量、分值、作业与测验时长信息)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_table,disabled:j,onChange:function(e){he.show_table=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"展示得分、评分表格")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中则给出学生的得分、评分表格)")),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("strong",null,"密封线区域设置"),b.a.createElement(R.a,{className:"pl8",checked:he.show_user,disabled:j,onChange:function(e){he.show_user=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"姓名")),b.a.createElement(R.a,{checked:he.show_no,disabled:j,onChange:function(e){he.show_no=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"学号")),b.a.createElement(R.a,{checked:he.show_group,disabled:j,onChange:function(e){he.show_group=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"专业班级"))),Object($.o)()&&b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement("span",null,"每页导出最大试题数:"),b.a.createElement(D.a,{size:"large",min:1,value:he.export_page_num?he.export_page_num:40,onChange:function(e){he.export_page_num=e,fe(Object(h.a)({},he))}}),b.a.createElement("span",{className:"ml10"},"题")),b.a.createElement("span",{className:"c-grey-c font12 pl30 pt10"},"(勾选项将会出现在首页左侧密封线内,不选则代表不设置密封区)"),b.a.createElement(P.a,{span:24,className:"mt15 pl30"},b.a.createElement(R.a,{checked:he.show_desc,disabled:j,onChange:function(e){he.show_desc=e.target.checked,fe(Object.assign({},he))}},b.a.createElement("strong",null,"作业与测验说明")),b.a.createElement("span",{className:"c-grey-c font12"},"(选中开启文本编辑器,可输入500字以内的作业与测验说明)")),he.show_desc&&b.a.createElement("div",{className:"mt15 pl30 pb40"},j?b.a.createElement(ut,{style:{height:150,width:550},disabled:!0,value:he.description}):b.a.createElement(at.a,{width:550,height:150,defaultValue:he.description,id:"exercise-detail-config-exam-description-id",onChange:function(e){he.description=e,fe(Object.assign({},he))}})))),b.a.createElement(P.a,{flex:1,className:"pt40 mb20"},b.a.createElement("div",{className:"pb10"},"示例图片预览:"),b.a.createElement("img",{src:Se.o}))),!j&&b.a.createElement(P.a,{className:"mb50 pb10 btn-w120"},b.a.createElement(a.a,{type:"primary",size:"large",onClick:function(){return function(){var e,t,n,r,i,a=JSON.parse(JSON.stringify(he));if(a.categoryId=C.categoryId,a.publish_time_groups=le,a.attachment_id=(null===(e=a.file_list)||void 0===e||null===(t=e[0])||void 0===t||null===(n=t.response)||void 0===n?void 0:n.id)||null,delete a.file_list,he.unified_setting){if(!he.publish_time||!he.end_time)throw s.b.error("发布截止时间不能为空"),new String("发布截止时间不能为空")}else{if(!le.length)return void s.b.warn("提交失败:分班发布设置不能为空");delete a.publish_time,delete a.end_time,le.map((function(e){var t;if(!e.course_group_id||null===(t=e.course_group_id)||void 0===t||!t.length)throw s.b.error("分班不能为空"),new String("分班不能为空");if(!e.publish_time||!e.end_time)throw s.b.error("发布截止时间不能为空"),new String("发布截止时间不能为空")}))}if(he.open_camera&&he.photo_count<1)throw s.b.error("请填写本场作业与测验最大拍摄次数"),new String("请填写本场作业与测验最大拍摄次数");if(!("no"===he.ip_limit||null!==(r=he.public_ip)&&void 0!==r&&r.length||null!==(i=he.inner_ip)&&void 0!==i&&i.length))throw s.b.error("请填写公网IP或内网IP地址"),new String("请填写内网IP地址");if(he.open_camera||he.screen_open)var o=u.a.confirm({title:"作业与测验说明",className:"custom-modal-divider",icon:null,width:750,content:b.a.createElement("div",{className:"font16 p20"},he.open_camera&&b.a.createElement(M.a,{align:"",justify:"start",className:"mt20"},b.a.createElement(P.a,{flex:"24px"},b.a.createElement("span",{className:"iconfont icon-kaiqishexiangtou c-blue mr20 font24"})),b.a.createElement(P.a,{flex:"1"},"您已开启进行中摄像防作弊功能,",b.a.createElement("span",{className:"c-red"},"这需要调用学生用户的摄像设备"),"。Educoder平台将会严格保护所有学生的照片和视频,并承诺不在本平台以外使用。",b.a.createElement("br",null),"请确认:为严格监督作业与测验以获得公平,您同意并和要求Educoder平台在本次进行中调用学生用户的摄像设备并获取学生的影像信息。")),he.screen_open&&b.a.createElement(M.a,{justify:"start",className:"mt20"},b.a.createElement(P.a,{flex:"24px",className:"mr20"},b.a.createElement("span",{className:"iconfont icon-kaiqifangqieping c-blue font24"})),b.a.createElement(P.a,{flex:"1"},"您已开启进行中防切屏功能,这项功能暂时仅支持谷歌、火狐浏览器。 请确保:在正式开始作业与测验前通知全体学生,使用 ",b.a.createElement("img",{width:"26",src:Se.g})," ",b.a.createElement("span",{className:"c-red"},"谷歌浏览器"),"或",b.a.createElement("img",{width:"26",src:Se.p})," ",b.a.createElement("span",{className:"c-red"},"火狐浏览器"),"进行作业与测验。")),b.a.createElement("p",{className:"ml40 mt40"},b.a.createElement(R.a,{onChange:function(e){return o.update({okButtonProps:{disabled:!e.target.checked}})}},"我已阅读"))),onOk:function(){ve(a)},okButtonProps:{disabled:!0}});else ve(a)}()}},"提交"),b.a.createElement(a.a,{onClick:function(){H(!0),ge()},type:"primary",size:"large",ghost:!0,className:"ml20"},"取消")),b.a.createElement(X.a,null),b.a.createElement(nt,null))})),pt=(n("MXD1"),n("CFYs")),mt=n("9Bee"),gt=n("51gm"),vt=n.n(gt),bt={0:"单选题",1:"多选题",2:"判断题",3:"填空题",4:"问答题",5:"实训题",6:"编程题",7:"接龙题"},yt={1:"满分作答",2:"部分得分作答",3:"零分作答",4:"未批"},Et=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading.effects}}))((function(e){var t,n,r=e.exercise,i=e.loading,a=e.dispatch,o=Object(E.i)(),s=Object(v.useState)(Object(h.a)(Object(h.a)({},o),{sort:"asc",page:1,limit:10})),l=Object(f.a)(s,2),u=l[0],d=l[1],p=(Object(E.h)(),r.statisticsList),m=Object(v.useState)({}),y=Object(f.a)(m,2),x=y[0],_=(y[1],Object(v.useState)([])),k=Object(f.a)(_,2),w=k[0],C=k[1],S=Object(v.useState)(""),A=Object(f.a)(S,2),T=(A[0],A[1],Object(v.useState)("")),D=Object(f.a)(T,2),L=(D[0],D[1],U.a.useForm()),j=Object(f.a)(L,1)[0],B=[{title:"提交率",dataIndex:"commit_percent",align:"center",render:function(e){return b.a.createElement("span",null,0===e?0:(100*e).toFixed(2),"%")}},{title:"最低分",dataIndex:"min_score",align:"center",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"最高分",dataIndex:"max_score",align:"center",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"分")}},{title:"平均分",dataIndex:"average_score",align:"center",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"不及格(得分 低于60%)",dataIndex:"fail_counts",align:"center",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"及格(得分60%~70%)",dataIndex:"pass_counts",align:"center",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"良好(得分70%~90%)",dataIndex:"good_counts",align:"center",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"优秀(得分90%~100%)",dataIndex:"best_counts",align:"center",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"人")}}],H=function(){var e=Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a({type:"exercise/getExerciseStatistics",payload:Object(h.a)({},u)});case 2:null!=(t=e.sent)&&t.exercise_counts&&C([t.exercise_counts]);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return Object(v.useEffect)((function(){H()}),[u.coursesId]),b.a.createElement(b.a.Fragment,null,b.a.createElement("section",{className:"minH500 bg-white"},b.a.createElement("aside",{className:"pt20"},b.a.createElement(U.a,{form:j,onChange:function(){var e=Object.assign({},j.getFieldValue());Object.keys(e).map((function(t){e[t].includes("all")?(delete u[t],j.setFieldsValue(Object(F.a)({},t,"all"))):(u[t]=e[t],j.setFieldsValue(Object(F.a)({},t,u[t])))})),u.page=1,u.limit=10,H()},initialValues:(t={},Object(F.a)(t,"commit_status","all"),Object(F.a)(t,"exercise_group_id","all"),Object(F.a)(t,"review","all"),t)},b.a.createElement(U.a.Item,{name:"exercise_group_id"},b.a.createElement(R.a.Group,{style:{width:"100%"}},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:"80px",className:"font14"},"分班情况:"),b.a.createElement(P.a,{flex:"80px"},b.a.createElement(R.a,{value:"all",checked:!x.course_group},"全部")),b.a.createElement(P.a,{flex:"1",className:vt.a.wrap},p.course_groups&&p.course_groups.map((function(e,t){return b.a.createElement(R.a,{value:e.exercise_group_id,key:t},e.exercise_group_name,"(",e.exercise_group_students,")")})))))))),b.a.createElement(N.a,{className:"mt30",loading:i["exercise/getExerciseStatistics"],pagination:!1,dataSource:w,columns:B}),b.a.createElement("div",{className:vt.a.title},b.a.createElement(M.a,{align:"middle",style:{height:"100%"},className:"ml5 mr5"},b.a.createElement(P.a,{flex:1,className:"font16"},"统计详情"),b.a.createElement(P.a,{className:"font16"},b.a.createElement("span",{className:"current",onClick:function(){u.sort="desc"===u.sort?"asc":"desc",u.sort_by="cost_time",console.log("xx params.sort: ",u.sort),d(Object(h.a)({},u)),H()}},b.a.createElement("span",null,"平均完成时间"),b.a.createElement("p",{className:"edu-sorter current ".concat("cost_time"===u.sort_by?u.sort:"")},b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-up"}),b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-down"})))),b.a.createElement(P.a,{className:"font16 ml20 mr20"},b.a.createElement("span",{className:"current",onClick:function(){u.sort="desc"===u.sort?"asc":"desc",u.sort_by="right_code_count",console.log("xx params.sort: ",u.sort),d(Object(h.a)({},u)),H()}},b.a.createElement("span",null,"平均正确代码行数"),b.a.createElement("p",{className:"edu-sorter current ".concat("right_code_count"===u.sort_by?u.sort:"")},b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-up"}),b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-down"})))),b.a.createElement(P.a,{className:"font16"},b.a.createElement("span",{className:"current",onClick:function(){u.sort="desc"===u.sort?"asc":"desc",u.sort_by="",console.log("xx params.sort: ",u.sort),d(Object(h.a)({},u)),H()}},b.a.createElement("span",null,"正确率"),b.a.createElement("p",{className:"edu-sorter current ".concat(""===u.sort_by?u.sort:"")},b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-up"}),b.a.createElement("span",{className:"iconfont icon-sanjiaoxing-down"})))))),b.a.createElement(Le.a,{spinning:i["exercise/getExerciseStatistics"]},b.a.createElement("div",{className:"minH200"},null==p||null===(n=p.commit_results)||void 0===n?void 0:n.map((function(e,t){var n;return b.a.createElement("aside",{key:t,className:"font14 c-black mt30"},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:1},e.ques_position,".",bt[e.ques_type]),6===e.ques_type&&b.a.createElement(b.a.Fragment,null,b.a.createElement(P.a,null,"平均正确代码行数:",b.a.createElement("span",{className:"c-orange"},e.right_code_count)),b.a.createElement(P.a,{className:"ml20 mr20"},"平均完成时间:",b.a.createElement("span",{className:"c-orange"},e.cost_time))),b.a.createElement(P.a,null,"正确率 ",b.a.createElement("span",{className:"c-orange"},e.right_percent,"%"))),b.a.createElement("div",null,b.a.createElement(mt.a,{value:e.ques_title})),b.a.createElement("div",{className:"mt20",style:{display:5===e.ques_type?"none":""}},b.a.createElement(M.a,{className:"c-light-black ",gutter:[24,20]},b.a.createElement(P.a,{flex:1},"选项"),b.a.createElement(P.a,{flex:"60px",className:"tc"},"小计"),b.a.createElement(P.a,{flex:"200px"},"百分比"))),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20,display:5===e.ques_type?"none":""}}),7===(null==e?void 0:e.ques_type)&&(null==e?void 0:e.sub_exercise_questions.map((function(t,n){var r;return b.a.createElement("div",null,b.a.createElement("div",{style:{marginBottom:10,display:"flex",justifyContent:"space-between"}},b.a.createElement(P.a,null,b.a.createElement("span",null,t.ques_title)),b.a.createElement(P.a,null,"正确率 ",b.a.createElement("span",{className:"c-orange"},t.right_percent,"%"))),null==t||null===(r=t.ques_details)||void 0===r?void 0:r.map((function(t,n){return b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},b.a.createElement(M.a,{style:{alignItems:"center"}},2===e.ques_type||3===e.ques_type||4===e.ques_type?"":b.a.createElement(P.a,null,O.m[n],". "),4===e.ques_type?b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:yt[t.choice_text]})):b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:"wrong"===t.choice_text?"填写了错误答案":t.choice_text})))),b.a.createElement(P.a,{flex:"60px",className:"tc"},b.a.createElement("span",{className:t.choice_right_boolean&&"c-green"},t.choice_users_count||0)),b.a.createElement(P.a,{flex:"200px"},b.a.createElement(pt.a,{status:"active",strokeColor:"#2abd8b",percent:(100*t.choice_percent).toFixed(),width:200})))})),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20}}))}))),(null==e?void 0:e.ques_type)<7&&(null==e||null===(n=e.ques_details)||void 0===n?void 0:n.map((function(t,n){return 5===e.ques_type?b.a.createElement("div",{className:"mt20"},b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},t.challenge_position,".",t.challenge_name),b.a.createElement(P.a,null,"正确率 ",b.a.createElement("span",{className:"c-orange"},t.challenge_percent,"%"))),b.a.createElement("div",null,b.a.createElement(M.a,{className:"c-light-black ",gutter:[24,20]},b.a.createElement(P.a,{flex:1},"选项"),b.a.createElement(P.a,{flex:"60px",className:"tc"},"小计"),b.a.createElement(P.a,{flex:"200px"},"百分比"))),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20}}),null==t?void 0:t.challenge_details.map((function(e){return b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},b.a.createElement(M.a,null,b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:yt[e.choice_text]})))),b.a.createElement(P.a,{flex:"60px",className:"tc"},b.a.createElement("span",{className:e.choice_right_boolean&&"c-green"},e.choice_users_count||0)),b.a.createElement(P.a,{flex:"200px"},b.a.createElement(pt.a,{status:"active",strokeColor:"#2abd8b",percent:(100*e.choice_percent).toFixed(),width:200})))})),b.a.createElement(M.a,{className:"",gutter:[24,20]},b.a.createElement(P.a,{className:"ml10",flex:1},"有效填写量"),b.a.createElement(P.a,{flex:"60px",className:"tc"},e.effictive_counts),b.a.createElement(P.a,{flex:"200px"})),b.a.createElement(Ae.a,{style:{margin:0,marginBottom:20}})):b.a.createElement(M.a,{key:n,gutter:[24,24],className:"font14 c-black"},b.a.createElement(P.a,{flex:1},b.a.createElement(M.a,null,2===e.ques_type||3===e.ques_type||4===e.ques_type?"":b.a.createElement(P.a,null,O.m[n],". "),4===e.ques_type?b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:yt[t.choice_text]})):b.a.createElement(P.a,{flex:1,className:"ml10"},b.a.createElement(mt.a,{value:"wrong"===t.choice_text?"填写了错误答案":t.choice_text})))),b.a.createElement(P.a,{flex:"60px",className:"tc"},b.a.createElement("span",{className:t.choice_right_boolean&&"c-green"},t.choice_users_count||0)),b.a.createElement(P.a,{flex:"200px"},b.a.createElement(pt.a,{status:"active",strokeColor:"#2abd8b",percent:(100*t.choice_percent).toFixed(),width:200})))}))),b.a.createElement(M.a,{style:{display:5===e.ques_type?"none":""},className:"",gutter:[24,20]},b.a.createElement(P.a,{className:2===e.ques_type||3===e.ques_type||4===e.ques_type?"ml10":"",flex:1},"有效填写量"),b.a.createElement(P.a,{flex:"60px",className:"tc"},e.effictive_counts),b.a.createElement(P.a,{flex:"200px"})))}))))),b.a.createElement("div",{className:"tc mt30 mb50"},b.a.createElement(I.a,{hideOnSinglePage:!1,total:null==p?void 0:p.questions_count,current:u.page||1,pageSize:u.limit,onChange:function(e,t){u.page=e,u.limit=t,H()}})))})),xt=n("cVA7"),_t=n.n(xt),kt=n("5e8a"),wt=n.n(kt),Ct=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{title:{left:"center"},tooltip:{trigger:"item",formatter:"{a}
{b} ({d}%)"},color:["#0152d9","#13C2C2","#2FC25B","#FACC14"],series:[{name:"",type:"pie",radius:"55%",center:["40%","50%"],data:e,emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]}},St=function(e){var t=e.names,n=void 0===t?[]:t,r=e.values,i=void 0===r?[]:r,a=e.values1,o=void 0===a?[]:a;return{tooltip:{trigger:"axis",axisPointer:{type:"cross",crossStyle:{color:"#999"}}},legend:{data:["Evaporation","Precipitation","Temperature"]},color:["#0152d9","#13C2C2","#2FC25B","#FACC14"],xAxis:[{type:"category",data:n,axisPointer:{type:"shadow"}}],yAxis:[{type:"value",name:"学员人数",min:0,max:e.num,interval:50,axisLabel:{formatter:"{value}"}},{type:"value",name:"人数占比",min:0,max:100,interval:10,axisLabel:{formatter:"{value}%"}}],series:[{name:"学员人数",type:"bar",tooltip:{valueFormatter:function(e){return e+" 人"}},data:i},{name:"人数占比",type:"line",yAxisIndex:1,tooltip:{valueFormatter:function(e){return e+"%"}},data:o}]}},Ot=function(e){var t=e.names,n=void 0===t?[]:t,r=e.values;return{xAxis:{type:"category",data:n},color:["#0152d9","#13C2C2","#2FC25B","#FACC14"],yAxis:{type:"value"},series:[{data:void 0===r?[]:r,type:"bar"}]}},At=["#0152d9","#13C2C2","#2FC25B","#FACC14"],Tt=["不及格","及格","良好","优秀"],It=Object(_.a)((function(e){var t=e.classroomList,n=e.loading,r=e.user,i=e.problemset,a=e.exercise;return{classroomList:t,globalSetting:e.globalSetting,problemset:i,exercise:a,user:r,loading:n.effects}}))((function(e){e.classroomList,e.globalSetting,e.problemset,e.loading;var t=e.exercise,n=e.user,r=e.dispatch,i=(Object(p.a)(e,["classroomList","globalSetting","problemset","loading","exercise","user","dispatch"]),Object(E.h)(),n.userInfo,t.exerciseList,t.commonHeader,t.checkDomain,Object(v.useState)([])),a=Object(f.a)(i,2),o=a[0],s=a[1],l=Object(v.useState)({}),u=Object(f.a)(l,2),d=u[0],m=u[1],x=Object(v.useState)({}),_=Object(f.a)(x,2),k=_[0],w=_[1],C=Object(v.useState)(Object(h.a)(Object(h.a)({},Object(E.i)()),{},{page:1,per_page:20})),S=Object(f.a)(C,2),O=S[0];S[1];function A(){return(A=Object(c.a)(g.a.mark((function e(){var t,n,r,i,a,o,l,c,u,d,f,p,v,b,E,x,_,k,C,S,A,T,I,D,L,R;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/exercises/".concat(null==O?void 0:O.categoryId,"/exercise_analysis_charts.json"),{method:"get"});case 2:null!=(i=e.sent)&&i.grade_chart&&(u=[{name:"不及格",value:null==i||null===(a=i.grade_chart)||void 0===a?void 0:a.fail_percent},{name:"及格",value:null==i||null===(o=i.grade_chart)||void 0===o?void 0:o.pass_percent},{name:"良好",value:null==i||null===(l=i.grade_chart)||void 0===l?void 0:l.good_percent},{name:"优秀",value:null==i||null===(c=i.grade_chart)||void 0===c?void 0:c.best_percent}],s([].concat(u))),(null==i||null===(t=i.score_area_chart)||void 0===t||null===(n=t.data)||void 0===n?void 0:n.length)>0&&(_=null==i||null===(d=i.score_area_chart)||void 0===d||null===(f=d.data)||void 0===f?void 0:f.map((function(e){return e.area})),k=null==i||null===(p=i.score_area_chart)||void 0===p||null===(v=p.data)||void 0===v?void 0:v.map((function(e){return e.stu_num})),C=null==i||null===(b=i.score_area_chart)||void 0===b||null===(E=b.data)||void 0===E?void 0:E.map((function(e){return e.percent})),S=(null==i||null===(x=i.score_area_chart)||void 0===x?void 0:x.max_stu_num)||0,A={names:_,values:k,values1:C,num:S},m(Object(h.a)({},A))),(null==i||null===(r=i.exercise_time_chart)||void 0===r?void 0:r.length)>0&&(D=null==i||null===(T=i.exercise_time_chart)||void 0===T?void 0:T.map((function(e){return e.area})),L=null==i||null===(I=i.exercise_time_chart)||void 0===I?void 0:I.map((function(e){return e.student_num})),R={names:D,values:L},w(Object(h.a)({},R)));case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return Object(v.useEffect)((function(){r({type:"exercise/getCommonHeader",payload:Object(h.a)({},O)})}),[O.coursesId]),Object(v.useEffect)((function(){!function(){A.apply(this,arguments)}()}),[]),b.a.createElement("section",{className:"edu-container"},b.a.createElement("div",{style:{display:"flex",marginTop:10}},b.a.createElement("div",{style:{flex:5,background:"#fff",marginRight:10}},b.a.createElement("p",{style:{fontSize:16,fontWeight:400,height:40,alignItems:"center",display:"flex",paddingLeft:20,borderBottom:"1px solid #fff9f9"}},"成绩等级占比"),b.a.createElement("div",{className:wt.a.countcenter},b.a.createElement(_t.a,{option:Ct(o),style:{height:400,width:430},opts:{renderer:"svg"}}),b.a.createElement("div",null,b.a.createElement("p",null,"单位:人"),null==At?void 0:At.map((function(e,t){return b.a.createElement("p",{key:t,style:{display:"flex",alignItems:"center"}},b.a.createElement("div",{key:t,className:wt.a.radiusdiv,style:{background:e}})," ",Tt[t])}))))),console.log("---",d),b.a.createElement("div",{style:{flex:5,background:"#fff",marginLeft:10}},b.a.createElement("p",{style:{fontSize:16,fontWeight:400,height:40,display:"flex",paddingLeft:20,borderBottom:"1px solid #fff9f9"}},"分数段分析"),b.a.createElement("div",{className:wt.a.countcenter},b.a.createElement(_t.a,{option:St(Object(h.a)({},d)),style:{height:400,width:550},opts:{renderer:"svg"}})))),b.a.createElement("div",null,b.a.createElement("p",{style:{fontSize:16,fontWeight:400,height:40,alignItems:"center",display:"flex",paddingLeft:20,borderBottom:"1px solid #fff9f9"}},"作业与测验用时分析"),b.a.createElement("div",{className:wt.a.countcenter},b.a.createElement(_t.a,{option:Ot(Object(h.a)({},k)),style:{height:400,width:1100},opts:{renderer:"svg"}}))))})),Dt=function(){var e=Object(c.a)(g.a.mark((function e(t,n){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Object(y.a)("/api/exercises/".concat(t,"/exercise_analysis.json"),{method:"GET",params:n}));case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),Lt=n("CY+3"),Rt=n.n(Lt),Nt=(n("h6EL"),Object(v.memo)((function(e){var t=e.data,n=["#307DFE","#13C2C2","#8543E0"],r=Object(v.useMemo)((function(){return{legend:{show:!0,orient:"vertical",top:"middle",right:80,itemWidth:8,itemHeight:8,itemGap:20,icon:"circle",selectedMode:!1},series:[{type:"pie",clockwise:!0,right:134,data:null==t?void 0:t.map((function(e){return{name:e.type,value:parseFloat(e.num)}})),label:{show:!0,position:"inside",formatter:"{d}%",fontSize:14,fontWeight:400},itemStyle:{color:function(e){var t=(e||{}).dataIndex;return n[t]}}}]}}),[t]);return b.a.createElement(_t.a,{option:r})}))),jt=Object(v.memo)((function(e){var t=e.data,n=["#307DFE","#13C2C2","#2FC25B","#FACC14","#F04864","#8543E0","#3436C7","#223273"],r=Object(v.useMemo)((function(){return{legend:{show:!0,orient:"vertical",top:"middle",right:80,itemWidth:8,itemHeight:8,itemGap:20,icon:"circle",selectedMode:!1},series:[{type:"pie",right:134,clockwise:!0,data:null==t?void 0:t.map((function(e){return{name:e.type,value:parseFloat(e.num)}})),label:{show:!0,position:"inside",formatter:"{d}%",fontSize:14,fontWeight:400},itemStyle:{color:function(e){var t=e.dataIndex;return n[t]}}}]}}),[t]);return b.a.createElement(_t.a,{option:r})})),Mt=Object(v.memo)((function(e){var t=e.data,n=Object(v.useMemo)((function(){var e=Object.keys(t),n=e.map((function(e){return t[e]}));return{xAxis:{type:"category",data:e},yAxis:{type:"value",name:"题数",nameLocation:"middle",nameGap:20,minInterval:1},tooltip:{show:!0,position:"top",formatter:"{b}
题数:{c}"},series:[{data:n,type:"bar",itemStyle:{color:"#a3c5fe",borderColor:"#196EFD"}}]}}),[t]);return b.a.createElement(_t.a,{option:n})})),Pt=Object(v.memo)((function(e){var t=e.data,n=new Image;n.src=Se.q;var r=Object(v.useMemo)((function(){return{backgroundColor:"#fff",series:[{type:"wordCloud",sizeRange:[10,30],rotationRange:[-90,90],rotationStep:45,maskImage:n,gridSize:2,shape:"pentagon",textStyle:{normal:{color:function(){return"rgb("+Math.round(255*Math.random())+", "+Math.round(255*Math.random())+", "+Math.round(255*Math.random())+")"}}},left:"center",top:"center",right:null,bottom:null,width:"100%",height:"100%",data:t.map((function(e,t){return{name:e,value:t}}))}]}}),[]);return b.a.createElement(_t.a,{option:r})})),Bt=function(){var e=Object(E.i)(),t=e.coursesId,n=e.categoryId,r=Object(v.useState)(),i=Object(f.a)(r,2),a=i[0],o=i[1];return Object(v.useEffect)((function(){Dt(n,{categoryId:n,coursesId:t}).then((function(e){"status"in e||o(e)}))}),[]),a?b.a.createElement("div",null,b.a.createElement(M.a,{gutter:20,style:{marginBottom:20,marginTop:30}},b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"难度分布"),b.a.createElement(Nt,{data:null==a?void 0:a.difficulty_list}))),b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"题型分布"),b.a.createElement(jt,{data:null==a?void 0:a.ques_type_list})))),b.a.createElement(M.a,{gutter:20,style:{marginBottom:30}},b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"分值分布"),b.a.createElement(Mt,{data:null==a?void 0:a.score_list}))),b.a.createElement(P.a,{span:12},b.a.createElement("div",{className:Rt.a.chartWrapper},b.a.createElement("div",{className:Rt.a.title},"知识点"),b.a.createElement(Pt,{data:null==a?void 0:a.tag_discipline_list}))))):b.a.createElement(Y.a,null)},Ft=Object(_.a)((function(e){var t=e.classroomList,n=e.loading,r=e.user,i=e.problemset,a=e.exercise;return{classroomList:t,globalSetting:e.globalSetting,problemset:i,exercise:a,user:r,loading:n.effects}}))((function(e){e.classroomList,e.globalSetting,e.problemset,e.loading;var t=e.exercise,n=e.user,i=e.dispatch,a=(Object(p.a)(e,["classroomList","globalSetting","problemset","loading","exercise","user","dispatch"]),Object(E.h)(),n.userInfo,t.exerciseList,t.commonHeader,t.checkDomain,Object(v.useState)(Object(h.a)(Object(h.a)({},Object(E.i)()),{},{page:1,per_page:20}))),o=Object(f.a)(a,2),s=o[0];o[1];return Object(v.useEffect)((function(){i({type:"exercise/getCommonHeader",payload:Object(h.a)({},s)})}),[s.coursesId]),b.a.createElement(r.a,{defaultActiveKey:"1"},b.a.createElement(r.a.TabPane,{key:1,tab:"答题统计"},b.a.createElement(Et,null)),b.a.createElement(r.a.TabPane,{key:2,tab:"作业与测验分析"},b.a.createElement(Bt,null),b.a.createElement(It,null)))})),Ut={0:"单选题",1:"多选题",2:"判断题",3:"填空题",4:"简答题",5:"实训题",6:"编程题",7:"接龙题"},Ht=Object(_.a)((function(e){return{exercise:e.exercise,loading:e.loading.effects}}))((function(e){var t,n=e.exercise,r=e.loading,i=e.dispatch,a=Object(E.i)(),o=(Object(E.h)(),n.statisticsList),s=Object(v.useState)({}),l=Object(f.a)(s,2),u=(l[0],l[1],Object(v.useState)([])),d=Object(f.a)(u,2),p=d[0],m=d[1],y=Object(v.useState)(""),x=Object(f.a)(y,2),_=(x[0],x[1],Object(v.useState)("")),k=Object(f.a)(_,2),w=(k[0],k[1],Object(v.useState)({})),C=Object(f.a)(w,2),S=(C[0],C[1],U.a.useForm());Object(f.a)(S,1)[0];a.sort="asc";var O=function(e){return{title:{text:"『 学生正确率分布图 』",left:"center"},tooltip:{trigger:"item",formatter:"{b} : {c} 人"},legend:{bottom:0,icon:"circle",left:"center",itemWidth:6,itemHeight:6,data:["100%","90%-100%","70%-90%","60%-70%","60%以下"].reverse()},series:[{type:"pie",radius:"55%",minAngle:15,center:["50%","50%"],selectedMode:"single",label:{show:!0,position:"outer",normal:{formatter:"{b} \n {c}人",color:"#5c5c5c",lineHeight:20}},labelLine:{normal:{length:20,length2:20,lineStyle:{color:"rgba(0,0,0,.45)"}}},data:[{value:e.details[0].full_count,name:"100%"},{value:e.details[0].best_count,name:"90%-100%"},{value:e.details[0].good_count,name:"70%-90%"},{value:e.details[0].pass_count,name:"60%-70%"},{value:e.details[0].fails_count,name:"60%以下"}],itemStyle:{emphasis:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"},normal:{color:function(e){return["#99B8FB","#80E0B9","#8190AA","#F7C739","#EB7E65"][e.dataIndex]}}},emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:"rgba(0, 0, 0, 0.5)"}}}]}},A=[{title:"提交率",dataIndex:"commit_percent",render:function(e){return b.a.createElement("span",null,100*e,"%")}},{title:"最低分",dataIndex:"min_score",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"最高分",dataIndex:"max_score",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"分")}},{title:"平均分",dataIndex:"average_score",render:function(e){return b.a.createElement("span",null,e,"分")}},{title:"不及格(得分 低于60%)",dataIndex:"fail_counts",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"及格(得分60%~70%)",dataIndex:"pass_counts",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"良好(得分70%~90%)",dataIndex:"good_counts",render:function(e){return b.a.createElement("span",null,e,"人")}},{title:"优秀(得分90%~100%)",dataIndex:"best_counts",render:function(e){return b.a.createElement("span",{className:"c-orange"},e,"人")}}],T=function(){var e=Object(c.a)(g.a.mark((function e(){var t;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i({type:"exercise/getExerciseStatistics",payload:Object(h.a)({},a)});case 2:null!=(t=e.sent)&&t.exercise_counts&&m([t.exercise_counts]);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return Object(v.useEffect)((function(){T()}),[a.coursesId]),b.a.createElement("section",{className:"minH500 ",style:{padding:0}},b.a.createElement("aside",{className:"bg-white inline-block w100 th-bg-white"},b.a.createElement(N.a,{className:"mt10 bg-white",loading:r["exercise/getExerciseStatistics"],pagination:!1,dataSource:p,columns:A})),b.a.createElement("aside",{className:"mt20"},b.a.createElement("span",{className:"bold c-black font16 ml20"},"已交卷学生答题详情")),b.a.createElement("aside",null,null==o||null===(t=o.commit_results)||void 0===t?void 0:t.map((function(e,t){return b.a.createElement("div",{key:t,className:"bg-white pl20 pt20 pr20 pb20 mt20"},b.a.createElement("div",{style:{fontSize:14,color:"#0152d9",fontWeight:500}},t+1,"、",Ut[e.question_type],b.a.createElement("span",{style:{color:"#999",paddingLeft:10}},"(共",e.question_count,"小题,",e.question_score,"分)"),b.a.createElement("span",{style:{color:"#000",float:"right"}},"全班正确率:",100*e.right_percent,"%")),b.a.createElement(_t.a,{option:O(e),style:{height:370},opts:{renderer:"svg"}}))}))))})),Gt=n("tf39"),zt=n.n(Gt);t.default=Object(_.a)((function(e){var t=e.exercise,n=e.loading,r=e.user;return{exercise:t,globalSetting:e.globalSetting,user:r,loading:n.effects}}))((function(e){var t,n,m,T,I,D,L,R,N,j,M,P,B=e.exercise,F=(e.globalSetting,e.loading,e.dispatch),U=e.user,H=(e.match,Object(p.a)(e,["exercise","globalSetting","loading","dispatch","user","match"])),z=Object(E.i)(),V=Object(E.h)(),W=Object(v.useState)([]),K=Object(f.a)(W,2),q=(K[0],K[1],B.exerciseList),Y=B.commonHeader,Q=B.checkDomain,J=Object(v.useState)(V.query.tabs||0),X=Object(f.a)(J,2),Z=X[0],ee=X[1],te=Object(v.useState)(G()(new Date).valueOf()),ne=Object(f.a)(te,2),ie=ne[0],ae=ne[1],oe=Object(v.useState)(),se=Object(f.a)(oe,2),le=se[0],ce=se[1],ue=U.userInfo;Object(E.g)();z.category=V.query.category_id;var de=!Q||Q&&(null==ue||null===(t=ue.course)||void 0===t?void 0:t.course_identity)<3;Object(v.useEffect)((function(){F({type:"exercise/getCommonHeader",payload:Object(h.a)({},z)})}),[z.coursesId]);var he=function(){var e;Object(O.Y)({inner_ip:Y.inner_ip,public_ip:Y.public_ip,ip_limit:Y.ip_limit,ip_bind:Y.ip_bind,open_camera:Y.open_camera,exercise_tips:[Y.open_camera?"已开启防作弊":""],exerciseId:Y.id,screen_open:Y.screen_open,screen_num:Y.screen_num,coursesId:z.coursesId,login:ue.login,history:H.history,identity_verify:Y.identity_verify,current_status:null==Y||null===(e=Y.user_permission)||void 0===e?void 0:e.current_status,open_phone_video_recording:null==Y?void 0:Y.open_phone_video_recording})},fe=function(){F({type:"exercise/getCommonHeader",payload:Object(h.a)({},z)});var e={0:function(){F({type:"exercise/getExerciseList",payload:Object(h.a)({},z)})},3:function(){F({type:"exercise/getWorkSetting",payload:Object(h.a)({},z)})}};e[Z]&&e[Z]()};var me=[{name:"答题列表",id:0,compontent:b.a.createElement(re,{getparams:function(e){ce(Object(h.a)({},e))},checkDomainAuthority:de})},{name:"预览",id:2,compontent:b.a.createElement(De,{activeTabs:Z})},{name:"统计结果",id:1,compontent:b.a.createElement(Ft,null)},{name:"代码查重",id:4,compontent:b.a.createElement(Oe,{key:ie})},{name:"规则设置",id:3,compontent:b.a.createElement(ft,null)},{name:"人脸审核",id:5,compontent:b.a.createElement(pe,null)},{name:"摄像监控",id:6,compontent:b.a.createElement(Ee,null)}].filter((function(e){return null!=Y&&Y.is_random&&("统计结果"===e.name&&(e.compontent=b.a.createElement(Ht,null)),"预览"===e.name&&(e.compontent=b.a.createElement(Ve.default,null))),!0})).filter((function(e){return!!(Object($.k)()&&null!=Y&&Y.assistant_auth||Object($.c)())||(null!=Y&&Y.show_statistic&&3===(null==Y?void 0:Y.exercise_status)?"预览"!==e.name:"答题列表"===e.name||"规则设置"===e.name)})).filter((function(e){return!(Object($.s)()||1===Y.exercise_status||!Y.exist_program)||"代码查重"!==e.name})).filter((function(e){return!!Y.identity_verify||"人脸审核"!==e.name})).filter((function(e){return!!Y.open_phone_video_recording||"摄像监控"!==e.name})).filter((function(e){return!(Object(O.K)()&&!Object($.o)())||"预览"!==e.name&&"统计结果"!==e.name})).filter((function(e){return!!de||"统计结果"!==e.name&&"预览"!==e.name&&"规则设置"!==e.name})).filter((function(e){return!!e}));console.log(me,"tabsArr"),(null==Y?void 0:Y.exercise_status)&&1===(null==Y?void 0:Y.exercise_status)&&me.splice.apply(me,[0,1].concat(Object(d.a)(me.splice(1,1,me[0])))),Object(v.useEffect)((function(){(null==Y?void 0:Y.exercise_status)&&1===(null==Y?void 0:Y.exercise_status)&&ee("2")}),[null==Y?void 0:Y.exercise_status]);var ge="YYYY-MM-DD",ve=G()("2020-11-15",ge),be=function(){return u.a.info({title:"题库改版告知",content:b.a.createElement(b.a.Fragment,null,"EduCoder已升级题库功能,所有试题均需匹配知识点。 当前作业与测验所涉及试题均未匹配知识点,无法随机抽取,已不能有效使用。请在作业与测验库重新组卷后使用。 由此带来的不便,敬请谅解!")})},ye=function(){var e=Object(c.a)(g.a.mark((function e(t){var n;return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(y.a)("/api/courses/".concat(null==z?void 0:z.coursesId,"/exercises/exercise_code_repeat.json"),{method:"post",body:{group_ids:t,id:null==z?void 0:z.categoryId}});case 2:if(0!==(n=e.sent).status){e.next=8;break}return ee(4),ae(G()(new Date).valueOf()),F({type:"exercise/setActionTabs",payload:{}}),e.abrupt("return");case 8:n.status<-2&&s.b.error(null==n?void 0:n.message);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return Object($.h)()?b.a.createElement("section",{className:zt.a.bg},b.a.createElement("div",{className:"edu-container"},ue.username&&b.a.createElement("section",{className:"animated fadeIn"},b.a.createElement("aside",{className:"mt10"},b.a.createElement(o.a,{separator:">"},b.a.createElement(o.a.Item,null,b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exercise")},null==U||null===(n=U.userInfo)||void 0===n||null===(m=n.course)||void 0===m?void 0:m.course_name)),b.a.createElement(o.a.Item,null,b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exercise")},"作业与测验")),b.a.createElement(o.a.Item,null,"详情"))),b.a.createElement("aside",{className:[zt.a.title,"mt20"].join(" ")},b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exercise")},b.a.createElement(k.a,{className:"font16 c-black"})),Object(O.z)(null==Y?void 0:Y.exercise_status),b.a.createElement("strong",{className:"font20 ml5"},null==Y?void 0:Y.exercise_name))),b.a.createElement("aside",{className:"mt30 relative"},b.a.createElement("div",{className:zt.a.export},!Object($.s)()&&de&&Y.exercise_status>1&&Y.exist_program&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault(),F({type:"exercise/setActionTabs",payload:{key:"代码查重",params:z}})}},b.a.createElement("span",{className:"iconfont icon-daimachazhong font14 mr5"}),"代码查重"),Object($.c)()&&de&&(null==Y||null===(T=Y.user_permission)||void 0===T?void 0:T.user_commit_counts)>0&&2===(null==Y?void 0:Y.exercise_status)&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault(),F({type:"exercise/setActionTabs",payload:{key:"打回重做",params:z}})}},b.a.createElement("span",{className:"iconfont icon-dahuizhongzuo3x font14 mr5"}),"打回重做"),Object($.c)()&&de&&(null==Y||null===(I=Y.user_permission)||void 0===I?void 0:I.exercise_unpublish_count)>0&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault();var t=G()(null==Y?void 0:Y.created_at,ge);G()(ve).diff(G()(t),"days")>0&&null!=Y&&Y.is_random?be():F({type:"exercise/setActionTabs",payload:{key:"批量发布",selectArrs:[z.categoryId],params:z,disabled:1!==(null==Y?void 0:Y.exercise_status),type:2,cb:fe}})}},b.a.createElement("span",{className:"iconfont icon-fabuzhiwei font14 mr5"}),"发布作业与测验"),Object($.c)()&&de&&(null==Y||null===(D=Y.user_permission)||void 0===D?void 0:D.exercise_publish_count)>0&&b.a.createElement(a.a,{onClick:function(e){e.preventDefault(),F({type:"exercise/setActionTabs",payload:{key:"批量结束",selectArrs:[z.categoryId],params:z,cb:fe}})}},b.a.createElement("span",{className:"iconfont icon-lijijiezhi mr5 font14"}),"结束"),Object($.s)()&&2===(null==Y||null===(L=Y.user_permission)||void 0===L?void 0:L.current_status)&&Y.exercise_status>1&&b.a.createElement(a.a,{style:{color:(null==q||null===(R=q.exercise_types)||void 0===R?void 0:R.is_redo)&&"red"},onClick:he},b.a.createElement("span",{className:"iconfont icon-bianjizuoye mr5 font14"}),null!=q&&null!==(N=q.exercise_types)&&void 0!==N&&N.is_redo?"重新作业与测验":"开始作业与测验"),Object($.s)()&&0===(null==Y||null===(j=Y.user_permission)||void 0===j?void 0:j.current_status)&&Y.exercise_status>1&&b.a.createElement(a.a,{onClick:he},b.a.createElement("span",{className:"iconfont icon-bianjizuoye mr5 font14"}),"继续作业与测验"),Object($.c)()&&de&&(Object($.k)()&&(null==Y?void 0:Y.assistant_auth)||!Object($.k)())&&b.a.createElement(a.a,{onClick:function(){var e=G()(null==Y?void 0:Y.created_at,ge);G()(ve).diff(G()(e),"days")>0&&null!=Y&&Y.is_random?be():_.d.push(null!=Y&&Y.is_random?"/classrooms/".concat(z.coursesId,"/exercise/").concat(z.categoryId,"/random/edit?random=true"):"/classrooms/".concat(z.coursesId,"/exercise/").concat(z.categoryId,"/edit?random=false"))}},b.a.createElement("span",{className:"iconfont icon-bianjizuoye mr5 font14"}),"编辑"),Object($.c)()&&de&&b.a.createElement(i.a,{overlay:function(){return b.a.createElement(l.a,{onClick:function(){var e=Object(c.a)(g.a.mark((function e(t){return g.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=t.key,e.next="1"===e.t0?3:8;break;case 3:return e.next=5,Object(S.n)(Object(h.a)(Object(h.a)({},z),le));case 5:return 0===e.sent.status&&Object(A.i)(Object(h.a)(Object(h.a)({},z),le)),e.abrupt("break",8);case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()},b.a.createElement(l.a.Item,{key:"1"},"学生成绩"),b.a.createElement(l.a.Item,{key:"2"},b.a.createElement("a",{target:"_blank",href:"/classrooms/".concat(z.coursesId,"/exercise/").concat(z.categoryId,"/export_blank")},"导出作业与测验")),b.a.createElement(l.a.Item,{key:"3"},b.a.createElement(x.a,{to:"/classrooms/".concat(z.coursesId,"/exportlist/exercise_score")},"历史导出")))}},b.a.createElement(a.a,null,b.a.createElement(w.a,null),"导出",b.a.createElement(C.a,null)))),b.a.createElement(r.a,{activeKey:String(Z),className:zt.a.tabs,onChange:function(e){var t=G()(null==Y?void 0:Y.created_at,ge);G()(ve).diff(G()(t),"days")>0&&3===parseInt(e)&&null!=Y&&Y.is_random?be():ee(e)}},me.map((function(e,t){return b.a.createElement(r.a.TabPane,{tab:e.name,key:e.id})}))),b.a.createElement("section",{className:null!=Y&&Y.is_random&&"2"===Z?"":"pl25 pr25 bg-white"},null===(M=me.filter((function(e){return e.id==Z})))||void 0===M||null===(P=M[0])||void 0===P?void 0:P.compontent))),b.a.createElement(ze.a,null),b.a.createElement(qe,{onOk:ye}),b.a.createElement(Ye.a,null),b.a.createElement(Ge,{cb:function(){F({type:"exercise/getExerciseList",payload:Object(h.a)({},z)})}})):""}))},JWDV: /*!****************************************************!*\ !*** ./src/assets/images/icons/charpter-white.svg ***! \****************************************************/ diff --git a/p__Classrooms__Lists__Video__index.07277313.async.js b/p__Classrooms__Lists__Video__index.07277313.async.js index 3127c421f5..d3ee9dfa2b 100644 --- a/p__Classrooms__Lists__Video__index.07277313.async.js +++ b/p__Classrooms__Lists__Video__index.07277313.async.js @@ -287,7 +287,7 @@ !*** ./src/components/Video/Play/index.jsx ***! \*********************************************/ /*! exports provided: default */ -/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),a=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),s=n.n(a),o=n(/*! react */"q1tI"),l=n.n(o),c=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),d=n.n(u),h=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),v=n.n(p);function m(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function g(e,t){return e-t}function y(e){e.sort(g);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(o.forwardRef)((function(e,t){var n,a,u,p=e.src,g=e.toLog,E=e.videoId,_=e.logWatchHistory,S=e.courseId,T=void 0===S?null:S,k=e.startTime,O=e.handlePause,A=void 0===O?function(){}:O,L=e.handlePlay,C=void 0===L?function(){}:L,R=e.handlePlayEnded,D=void 0===R?function(){}:R,w=e.videoSpeed,x=void 0===w?1:w,I="flv"===(null===(a=p=null===(n=p)||void 0===n?void 0:n.replace("http://","https://"))||void 0===a||null===(u=a.split("."))||void 0===u?void 0:u.pop()),M=Object(o.useRef)(),P=Object(o.useRef)(),N=Object(o.useRef)(),j=Object(o.useRef)(),F=Object(o.useRef)(),B=Object(o.useRef)(),U=Object(o.useRef)(),K=Object(o.useRef)(),G=Object(o.useRef)(),V=Object(o.useRef)(),H=Object(o.useRef)(),z=Object(o.useRef)(),W=Object(o.useRef)(),q=Object(o.useRef)(),Y=navigator.userAgent.toLowerCase().match(b),X=Y?Y[0]:"pc",Q=Object(o.useRef)(!1),J=Object(h.x)(),Z=0,$=0,ee=0,te=null,ne=!1,re=20,ie=1,ae=!1,se=!1,oe=[];Object(o.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return M.current.currentTime},getDuration:function(){return M.current.duration}}}));var le=Object(o.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:M.current.currentTime};function r(){return a.apply(this,arguments)}function a(){return(a=Object(i.a)(s.a.mark((function t(){var r;return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae=!0,t.next=3,_(n);case 3:r=t.sent,te=r,ae=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=y(oe),n.total_duration=$):(T?(n.video_id=parseInt(E,10),n.course_id=T):n.video_id=E,n.duration=Z,n.device=X),t&&(n.ed="1"),r()}),[E,T]);function ce(){M.current.paused?(j.current.style.display="none",F.current.style.display="block"):(j.current.style.display="block",F.current.style.display="none")}function ue(){H.current.style.display="none",W.current.style.display="none",z.current.style.display="none",M.current.muted||0===M.current.volume?H.current.style.display="block":M.current.volume>0&&M.current.volume<=.5?W.current.style.display="block":z.current.style.display="block"}Object(o.useEffect)((function(){var e;r.b.destroy();var t=null;return c.a.isSupported&&I&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),M.current&&(t.attachMediaElement(M.current),t.load())):M.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[M,I,p]),Object(o.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){C(),k&&!Q.current&&(M.current.currentTime=k),Q.current=!0,oe.push(M.current.currentTime),ne||(ne=!0,g&&le())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(i.a)(s.a.mark((function e(){return s.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ce(),oe.push(M.current.currentTime),g&&le((function(){te=null,ee=0,ne=!1,ae=!1,se=!1,oe=[],$=0,ie=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(M.current.duration);B.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);K.current.innerText="".concat(t.minutes,":").concat(t.seconds),K.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function a(){var e=Math.round(M.current.duration);B.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);K.current.innerText="".concat(t.minutes,":").concat(t.seconds),K.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),B.current.value=Math.floor(M.current.currentTime),U.current.value=Math.floor(M.current.currentTime),function(){var e=m(Math.round(M.current.currentTime));G.current.innerText="".concat(e.minutes,":").concat(e.seconds),G.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=P.current.getBoundingClientRect(),r=n.width,i=(n.height,n.x),a=n.y;if(!(i<0||a<0)&&r&&!se){var s=M.current.currentTime,o=s-ee;Math.abs(o)<10?($+=Math.abs(o),ee=s,ae||$-ie*re>=0&&(ie++,oe.push(ee),g&&le())):(ee=s,g&&le())}}function o(){se=!0}function l(){M.current.playing&&oe.push(M.current.currentTime,ee),ee=M.current.currentTime,se=!1}function c(){(Z=M.current.duration)<=20&&(re=Z/3),M.current.addEventListener("play",e)}function u(){A()}function d(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;M.current.currentTime=t,U.current.value=t,B.current.value=t}function h(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));B.current.setAttribute("data-seek",t);var n=m(t);V.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=M.current.getBoundingClientRect();V.current.style.left="".concat(e.pageX-r.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(M.current.style.width="100%",M.current.style.height="100%"):M.current.style.cssText=""})),M.current.addEventListener("canplay",c),M.current.addEventListener("ended",t),M.current.addEventListener("seeking",o),M.current.addEventListener("seeked",l),M.current.addEventListener("loadedmetadata",r),B.current.addEventListener("mousemove",h),B.current.addEventListener("input",d),M.current.addEventListener("timeupdate",a),M.current.addEventListener("pause",u),M.current.addEventListener("volumechange",ue),function(){M.current.removeEventListener("canplay",c),M.current.removeEventListener("play",e),M.current.removeEventListener("ended",t),M.current.removeEventListener("seeking",o),M.current.removeEventListener("seeked",l),B.current.removeEventListener("mousemove",h),B.current.removeEventListener("input",d),M.current.removeEventListener("timeupdate",a),M.current.removeEventListener("pause",u),M.current.removeEventListener("loadedmetadata",r),M.current.removeEventListener("volumechange",ue),M.current.playing&&(oe.push(ee,M.current.currentTime),g&&le())}}),[M,p]),Object(o.useEffect)((function(){var e;if(M.current.onended=function(){D(M)},M.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(M.current.canPlayType("application/vnd.apple.mpegurl"))M.current.src=p;else if(d.a.isSupported()){var t=new d.a;t.loadSource(p),t.attachMedia(M.current)}}),[p]),Object(o.useEffect)((function(){M.current.playbackRate=x}),[x]);return l.a.createElement("div",{style:{position:"relative"},ref:N},l.a.createElement("div",{ref:P,className:"".concat(v.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(v.a.animate__loop)},J?J.login:" "),l.a.createElement("div",{className:v.a.container},l.a.createElement("div",{className:v.a["video-container"],id:"video-container"},l.a.createElement("div",{className:v.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:v.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:v.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:M,autoPlay:!1}),l.a.createElement("div",{className:"".concat(v.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:v.a["bottom-controls"]},l.a.createElement("div",{className:v.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){M.current.paused||M.current.ended?M.current.play():M.current.pause(),ce()}},l.a.createElement("svg",{className:v.a["playback-icons"]},l.a.createElement("use",{ref:F,href:"#play-icon"}),l.a.createElement("use",{ref:j,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:v.a.time},l.a.createElement("time",{id:"time-elapsed",ref:G},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:K},"00:00"))),l.a.createElement("div",{className:v.a["right-controls"]},l.a.createElement("div",{className:v.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:v.a["volume-button"],id:"volume-button",onClick:function(){M.current.muted=!M.current.muted,M.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:H,href:"#volume-mute"}),l.a.createElement("use",{ref:W,href:"#volume-low"}),l.a.createElement("use",{ref:z,href:"#volume-high"}))),l.a.createElement("input",{className:v.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:v.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:v.a["video-progress"]},l.a.createElement("progress",{ref:U,value:"0",min:"0"}),l.a.createElement("input",{className:v.a.seek,ref:B,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:v.a["seek-tooltip"],ref:V,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},iVQj: +/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),a=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),s=n.n(a),o=n(/*! react */"q1tI"),l=n.n(o),c=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),d=n.n(u),h=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),v=n.n(p);function m(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function g(e,t){return e-t}function y(e){e.sort(g);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(o.forwardRef)((function(e,t){var n,a,u,p=e.src,g=e.toLog,E=e.videoId,_=e.logWatchHistory,S=e.courseId,T=void 0===S?null:S,k=e.startTime,O=e.handlePause,A=void 0===O?function(){}:O,L=e.handlePlay,C=void 0===L?function(){}:L,R=e.handlePlayEnded,D=void 0===R?function(){}:R,w=e.videoSpeed,x=void 0===w?1:w,I="flv"===(null===(a=p=null===(n=p)||void 0===n?void 0:n.replace("http://","http://"))||void 0===a||null===(u=a.split("."))||void 0===u?void 0:u.pop()),M=Object(o.useRef)(),P=Object(o.useRef)(),N=Object(o.useRef)(),j=Object(o.useRef)(),F=Object(o.useRef)(),B=Object(o.useRef)(),U=Object(o.useRef)(),K=Object(o.useRef)(),G=Object(o.useRef)(),V=Object(o.useRef)(),H=Object(o.useRef)(),z=Object(o.useRef)(),W=Object(o.useRef)(),q=Object(o.useRef)(),Y=navigator.userAgent.toLowerCase().match(b),X=Y?Y[0]:"pc",Q=Object(o.useRef)(!1),J=Object(h.x)(),Z=0,$=0,ee=0,te=null,ne=!1,re=20,ie=1,ae=!1,se=!1,oe=[];Object(o.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return M.current.currentTime},getDuration:function(){return M.current.duration}}}));var le=Object(o.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:M.current.currentTime};function r(){return a.apply(this,arguments)}function a(){return(a=Object(i.a)(s.a.mark((function t(){var r;return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae=!0,t.next=3,_(n);case 3:r=t.sent,te=r,ae=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=y(oe),n.total_duration=$):(T?(n.video_id=parseInt(E,10),n.course_id=T):n.video_id=E,n.duration=Z,n.device=X),t&&(n.ed="1"),r()}),[E,T]);function ce(){M.current.paused?(j.current.style.display="none",F.current.style.display="block"):(j.current.style.display="block",F.current.style.display="none")}function ue(){H.current.style.display="none",W.current.style.display="none",z.current.style.display="none",M.current.muted||0===M.current.volume?H.current.style.display="block":M.current.volume>0&&M.current.volume<=.5?W.current.style.display="block":z.current.style.display="block"}Object(o.useEffect)((function(){var e;r.b.destroy();var t=null;return c.a.isSupported&&I&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),M.current&&(t.attachMediaElement(M.current),t.load())):M.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[M,I,p]),Object(o.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){C(),k&&!Q.current&&(M.current.currentTime=k),Q.current=!0,oe.push(M.current.currentTime),ne||(ne=!0,g&&le())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(i.a)(s.a.mark((function e(){return s.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ce(),oe.push(M.current.currentTime),g&&le((function(){te=null,ee=0,ne=!1,ae=!1,se=!1,oe=[],$=0,ie=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(M.current.duration);B.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);K.current.innerText="".concat(t.minutes,":").concat(t.seconds),K.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function a(){var e=Math.round(M.current.duration);B.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);K.current.innerText="".concat(t.minutes,":").concat(t.seconds),K.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),B.current.value=Math.floor(M.current.currentTime),U.current.value=Math.floor(M.current.currentTime),function(){var e=m(Math.round(M.current.currentTime));G.current.innerText="".concat(e.minutes,":").concat(e.seconds),G.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=P.current.getBoundingClientRect(),r=n.width,i=(n.height,n.x),a=n.y;if(!(i<0||a<0)&&r&&!se){var s=M.current.currentTime,o=s-ee;Math.abs(o)<10?($+=Math.abs(o),ee=s,ae||$-ie*re>=0&&(ie++,oe.push(ee),g&&le())):(ee=s,g&&le())}}function o(){se=!0}function l(){M.current.playing&&oe.push(M.current.currentTime,ee),ee=M.current.currentTime,se=!1}function c(){(Z=M.current.duration)<=20&&(re=Z/3),M.current.addEventListener("play",e)}function u(){A()}function d(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;M.current.currentTime=t,U.current.value=t,B.current.value=t}function h(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));B.current.setAttribute("data-seek",t);var n=m(t);V.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=M.current.getBoundingClientRect();V.current.style.left="".concat(e.pageX-r.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(M.current.style.width="100%",M.current.style.height="100%"):M.current.style.cssText=""})),M.current.addEventListener("canplay",c),M.current.addEventListener("ended",t),M.current.addEventListener("seeking",o),M.current.addEventListener("seeked",l),M.current.addEventListener("loadedmetadata",r),B.current.addEventListener("mousemove",h),B.current.addEventListener("input",d),M.current.addEventListener("timeupdate",a),M.current.addEventListener("pause",u),M.current.addEventListener("volumechange",ue),function(){M.current.removeEventListener("canplay",c),M.current.removeEventListener("play",e),M.current.removeEventListener("ended",t),M.current.removeEventListener("seeking",o),M.current.removeEventListener("seeked",l),B.current.removeEventListener("mousemove",h),B.current.removeEventListener("input",d),M.current.removeEventListener("timeupdate",a),M.current.removeEventListener("pause",u),M.current.removeEventListener("loadedmetadata",r),M.current.removeEventListener("volumechange",ue),M.current.playing&&(oe.push(ee,M.current.currentTime),g&&le())}}),[M,p]),Object(o.useEffect)((function(){var e;if(M.current.onended=function(){D(M)},M.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(M.current.canPlayType("application/vnd.apple.mpegurl"))M.current.src=p;else if(d.a.isSupported()){var t=new d.a;t.loadSource(p),t.attachMedia(M.current)}}),[p]),Object(o.useEffect)((function(){M.current.playbackRate=x}),[x]);return l.a.createElement("div",{style:{position:"relative"},ref:N},l.a.createElement("div",{ref:P,className:"".concat(v.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(v.a.animate__loop)},J?J.login:" "),l.a.createElement("div",{className:v.a.container},l.a.createElement("div",{className:v.a["video-container"],id:"video-container"},l.a.createElement("div",{className:v.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:v.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:v.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:M,autoPlay:!1}),l.a.createElement("div",{className:"".concat(v.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:v.a["bottom-controls"]},l.a.createElement("div",{className:v.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){M.current.paused||M.current.ended?M.current.play():M.current.pause(),ce()}},l.a.createElement("svg",{className:v.a["playback-icons"]},l.a.createElement("use",{ref:F,href:"#play-icon"}),l.a.createElement("use",{ref:j,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:v.a.time},l.a.createElement("time",{id:"time-elapsed",ref:G},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:K},"00:00"))),l.a.createElement("div",{className:v.a["right-controls"]},l.a.createElement("div",{className:v.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:v.a["volume-button"],id:"volume-button",onClick:function(){M.current.muted=!M.current.muted,M.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:H,href:"#volume-mute"}),l.a.createElement("use",{ref:W,href:"#volume-low"}),l.a.createElement("use",{ref:z,href:"#volume-high"}))),l.a.createElement("input",{className:v.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:v.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:v.a["video-progress"]},l.a.createElement("progress",{ref:U,value:"0",min:"0"}),l.a.createElement("input",{className:v.a.seek,ref:B,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:v.a["seek-tooltip"],ref:V,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},iVQj: /*!****************************************************************!*\ !*** ./src/pages/Classrooms/Lists/Video/index.tsx + 9 modules ***! \****************************************************************/ diff --git a/p__Question__OjProblem.85547e8c.async.js b/p__Question__OjProblem.85547e8c.async.js index 3dd6bfdaa1..787d0575b7 100644 --- a/p__Question__OjProblem.85547e8c.async.js +++ b/p__Question__OjProblem.85547e8c.async.js @@ -889,7 +889,7 @@ PERFORMANCE OF THIS SOFTWARE. !*** ./src/components/Video/Play/index.jsx ***! \*********************************************/ /*! exports provided: default */ -/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),o=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),a=n.n(o),s=n(/*! react */"q1tI"),l=n.n(s),c=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),h=n.n(u),d=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),m=n.n(p);function g(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function v(e,t){return e-t}function y(e){e.sort(v);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(s.forwardRef)((function(e,t){var n,o,u,p=e.src,v=e.toLog,_=e.videoId,E=e.logWatchHistory,x=e.courseId,w=void 0===x?null:x,S=e.startTime,k=e.handlePause,C=void 0===k?function(){}:k,T=e.handlePlay,O=void 0===T?function(){}:T,A=e.handlePlayEnded,L=void 0===A?function(){}:A,R=e.videoSpeed,D=void 0===R?1:R,I="flv"===(null===(o=p=null===(n=p)||void 0===n?void 0:n.replace("http://","https://"))||void 0===o||null===(u=o.split("."))||void 0===u?void 0:u.pop()),M=Object(s.useRef)(),N=Object(s.useRef)(),P=Object(s.useRef)(),j=Object(s.useRef)(),B=Object(s.useRef)(),F=Object(s.useRef)(),U=Object(s.useRef)(),G=Object(s.useRef)(),z=Object(s.useRef)(),H=Object(s.useRef)(),V=Object(s.useRef)(),W=Object(s.useRef)(),K=Object(s.useRef)(),q=Object(s.useRef)(),X=navigator.userAgent.toLowerCase().match(b),Y=X?X[0]:"pc",$=Object(s.useRef)(!1),J=Object(d.x)(),Z=0,Q=0,ee=0,te=null,ne=!1,re=20,ie=1,oe=!1,ae=!1,se=[];Object(s.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return M.current.currentTime},getDuration:function(){return M.current.duration}}}));var le=Object(s.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:M.current.currentTime};function r(){return o.apply(this,arguments)}function o(){return(o=Object(i.a)(a.a.mark((function t(){var r;return a.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return oe=!0,t.next=3,E(n);case 3:r=t.sent,te=r,oe=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=y(se),n.total_duration=Q):(w?(n.video_id=parseInt(_,10),n.course_id=w):n.video_id=_,n.duration=Z,n.device=Y),t&&(n.ed="1"),r()}),[_,w]);function ce(){M.current.paused?(j.current.style.display="none",B.current.style.display="block"):(j.current.style.display="block",B.current.style.display="none")}function ue(){V.current.style.display="none",K.current.style.display="none",W.current.style.display="none",M.current.muted||0===M.current.volume?V.current.style.display="block":M.current.volume>0&&M.current.volume<=.5?K.current.style.display="block":W.current.style.display="block"}Object(s.useEffect)((function(){var e;r.b.destroy();var t=null;return c.a.isSupported&&I&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),M.current&&(t.attachMediaElement(M.current),t.load())):M.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[M,I,p]),Object(s.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){O(),S&&!$.current&&(M.current.currentTime=S),$.current=!0,se.push(M.current.currentTime),ne||(ne=!0,v&&le())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(i.a)(a.a.mark((function e(){return a.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ce(),se.push(M.current.currentTime),v&&le((function(){te=null,ee=0,ne=!1,oe=!1,ae=!1,se=[],Q=0,ie=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);G.current.innerText="".concat(t.minutes,":").concat(t.seconds),G.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function o(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);G.current.innerText="".concat(t.minutes,":").concat(t.seconds),G.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),F.current.value=Math.floor(M.current.currentTime),U.current.value=Math.floor(M.current.currentTime),function(){var e=g(Math.round(M.current.currentTime));z.current.innerText="".concat(e.minutes,":").concat(e.seconds),z.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=N.current.getBoundingClientRect(),r=n.width,i=(n.height,n.x),o=n.y;if(!(i<0||o<0)&&r&&!ae){var a=M.current.currentTime,s=a-ee;Math.abs(s)<10?(Q+=Math.abs(s),ee=a,oe||Q-ie*re>=0&&(ie++,se.push(ee),v&&le())):(ee=a,v&&le())}}function s(){ae=!0}function l(){M.current.playing&&se.push(M.current.currentTime,ee),ee=M.current.currentTime,ae=!1}function c(){(Z=M.current.duration)<=20&&(re=Z/3),M.current.addEventListener("play",e)}function u(){C()}function h(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;M.current.currentTime=t,U.current.value=t,F.current.value=t}function d(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));F.current.setAttribute("data-seek",t);var n=g(t);H.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=M.current.getBoundingClientRect();H.current.style.left="".concat(e.pageX-r.left,"px")}return P.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(M.current.style.width="100%",M.current.style.height="100%"):M.current.style.cssText=""})),M.current.addEventListener("canplay",c),M.current.addEventListener("ended",t),M.current.addEventListener("seeking",s),M.current.addEventListener("seeked",l),M.current.addEventListener("loadedmetadata",r),F.current.addEventListener("mousemove",d),F.current.addEventListener("input",h),M.current.addEventListener("timeupdate",o),M.current.addEventListener("pause",u),M.current.addEventListener("volumechange",ue),function(){M.current.removeEventListener("canplay",c),M.current.removeEventListener("play",e),M.current.removeEventListener("ended",t),M.current.removeEventListener("seeking",s),M.current.removeEventListener("seeked",l),F.current.removeEventListener("mousemove",d),F.current.removeEventListener("input",h),M.current.removeEventListener("timeupdate",o),M.current.removeEventListener("pause",u),M.current.removeEventListener("loadedmetadata",r),M.current.removeEventListener("volumechange",ue),M.current.playing&&(se.push(ee,M.current.currentTime),v&&le())}}),[M,p]),Object(s.useEffect)((function(){var e;if(M.current.onended=function(){L(M)},M.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(M.current.canPlayType("application/vnd.apple.mpegurl"))M.current.src=p;else if(h.a.isSupported()){var t=new h.a;t.loadSource(p),t.attachMedia(M.current)}}),[p]),Object(s.useEffect)((function(){M.current.playbackRate=D}),[D]);return l.a.createElement("div",{style:{position:"relative"},ref:P},l.a.createElement("div",{ref:N,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},J?J.login:" "),l.a.createElement("div",{className:m.a.container},l.a.createElement("div",{className:m.a["video-container"],id:"video-container"},l.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:M,autoPlay:!1}),l.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:m.a["bottom-controls"]},l.a.createElement("div",{className:m.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){M.current.paused||M.current.ended?M.current.play():M.current.pause(),ce()}},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{ref:B,href:"#play-icon"}),l.a.createElement("use",{ref:j,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:m.a.time},l.a.createElement("time",{id:"time-elapsed",ref:z},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:G},"00:00"))),l.a.createElement("div",{className:m.a["right-controls"]},l.a.createElement("div",{className:m.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){M.current.muted=!M.current.muted,M.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:V,href:"#volume-mute"}),l.a.createElement("use",{ref:K,href:"#volume-low"}),l.a.createElement("use",{ref:W,href:"#volume-high"}))),l.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(P.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:m.a["video-progress"]},l.a.createElement("progress",{ref:U,value:"0",min:"0"}),l.a.createElement("input",{className:m.a.seek,ref:F,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:m.a["seek-tooltip"],ref:H,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},i3hx: +/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),o=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),a=n.n(o),s=n(/*! react */"q1tI"),l=n.n(s),c=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),h=n.n(u),d=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),m=n.n(p);function g(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function v(e,t){return e-t}function y(e){e.sort(v);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(s.forwardRef)((function(e,t){var n,o,u,p=e.src,v=e.toLog,_=e.videoId,E=e.logWatchHistory,x=e.courseId,w=void 0===x?null:x,S=e.startTime,k=e.handlePause,C=void 0===k?function(){}:k,T=e.handlePlay,O=void 0===T?function(){}:T,A=e.handlePlayEnded,L=void 0===A?function(){}:A,R=e.videoSpeed,D=void 0===R?1:R,I="flv"===(null===(o=p=null===(n=p)||void 0===n?void 0:n.replace("http://","http://"))||void 0===o||null===(u=o.split("."))||void 0===u?void 0:u.pop()),M=Object(s.useRef)(),N=Object(s.useRef)(),P=Object(s.useRef)(),j=Object(s.useRef)(),B=Object(s.useRef)(),F=Object(s.useRef)(),U=Object(s.useRef)(),G=Object(s.useRef)(),z=Object(s.useRef)(),H=Object(s.useRef)(),V=Object(s.useRef)(),W=Object(s.useRef)(),K=Object(s.useRef)(),q=Object(s.useRef)(),X=navigator.userAgent.toLowerCase().match(b),Y=X?X[0]:"pc",$=Object(s.useRef)(!1),J=Object(d.x)(),Z=0,Q=0,ee=0,te=null,ne=!1,re=20,ie=1,oe=!1,ae=!1,se=[];Object(s.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return M.current.currentTime},getDuration:function(){return M.current.duration}}}));var le=Object(s.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:M.current.currentTime};function r(){return o.apply(this,arguments)}function o(){return(o=Object(i.a)(a.a.mark((function t(){var r;return a.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return oe=!0,t.next=3,E(n);case 3:r=t.sent,te=r,oe=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=y(se),n.total_duration=Q):(w?(n.video_id=parseInt(_,10),n.course_id=w):n.video_id=_,n.duration=Z,n.device=Y),t&&(n.ed="1"),r()}),[_,w]);function ce(){M.current.paused?(j.current.style.display="none",B.current.style.display="block"):(j.current.style.display="block",B.current.style.display="none")}function ue(){V.current.style.display="none",K.current.style.display="none",W.current.style.display="none",M.current.muted||0===M.current.volume?V.current.style.display="block":M.current.volume>0&&M.current.volume<=.5?K.current.style.display="block":W.current.style.display="block"}Object(s.useEffect)((function(){var e;r.b.destroy();var t=null;return c.a.isSupported&&I&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),M.current&&(t.attachMediaElement(M.current),t.load())):M.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[M,I,p]),Object(s.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){O(),S&&!$.current&&(M.current.currentTime=S),$.current=!0,se.push(M.current.currentTime),ne||(ne=!0,v&&le())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(i.a)(a.a.mark((function e(){return a.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ce(),se.push(M.current.currentTime),v&&le((function(){te=null,ee=0,ne=!1,oe=!1,ae=!1,se=[],Q=0,ie=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);G.current.innerText="".concat(t.minutes,":").concat(t.seconds),G.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function o(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);G.current.innerText="".concat(t.minutes,":").concat(t.seconds),G.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),F.current.value=Math.floor(M.current.currentTime),U.current.value=Math.floor(M.current.currentTime),function(){var e=g(Math.round(M.current.currentTime));z.current.innerText="".concat(e.minutes,":").concat(e.seconds),z.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=N.current.getBoundingClientRect(),r=n.width,i=(n.height,n.x),o=n.y;if(!(i<0||o<0)&&r&&!ae){var a=M.current.currentTime,s=a-ee;Math.abs(s)<10?(Q+=Math.abs(s),ee=a,oe||Q-ie*re>=0&&(ie++,se.push(ee),v&&le())):(ee=a,v&&le())}}function s(){ae=!0}function l(){M.current.playing&&se.push(M.current.currentTime,ee),ee=M.current.currentTime,ae=!1}function c(){(Z=M.current.duration)<=20&&(re=Z/3),M.current.addEventListener("play",e)}function u(){C()}function h(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;M.current.currentTime=t,U.current.value=t,F.current.value=t}function d(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));F.current.setAttribute("data-seek",t);var n=g(t);H.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=M.current.getBoundingClientRect();H.current.style.left="".concat(e.pageX-r.left,"px")}return P.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(M.current.style.width="100%",M.current.style.height="100%"):M.current.style.cssText=""})),M.current.addEventListener("canplay",c),M.current.addEventListener("ended",t),M.current.addEventListener("seeking",s),M.current.addEventListener("seeked",l),M.current.addEventListener("loadedmetadata",r),F.current.addEventListener("mousemove",d),F.current.addEventListener("input",h),M.current.addEventListener("timeupdate",o),M.current.addEventListener("pause",u),M.current.addEventListener("volumechange",ue),function(){M.current.removeEventListener("canplay",c),M.current.removeEventListener("play",e),M.current.removeEventListener("ended",t),M.current.removeEventListener("seeking",s),M.current.removeEventListener("seeked",l),F.current.removeEventListener("mousemove",d),F.current.removeEventListener("input",h),M.current.removeEventListener("timeupdate",o),M.current.removeEventListener("pause",u),M.current.removeEventListener("loadedmetadata",r),M.current.removeEventListener("volumechange",ue),M.current.playing&&(se.push(ee,M.current.currentTime),v&&le())}}),[M,p]),Object(s.useEffect)((function(){var e;if(M.current.onended=function(){L(M)},M.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(M.current.canPlayType("application/vnd.apple.mpegurl"))M.current.src=p;else if(h.a.isSupported()){var t=new h.a;t.loadSource(p),t.attachMedia(M.current)}}),[p]),Object(s.useEffect)((function(){M.current.playbackRate=D}),[D]);return l.a.createElement("div",{style:{position:"relative"},ref:P},l.a.createElement("div",{ref:N,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},J?J.login:" "),l.a.createElement("div",{className:m.a.container},l.a.createElement("div",{className:m.a["video-container"],id:"video-container"},l.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:M,autoPlay:!1}),l.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:m.a["bottom-controls"]},l.a.createElement("div",{className:m.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){M.current.paused||M.current.ended?M.current.play():M.current.pause(),ce()}},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{ref:B,href:"#play-icon"}),l.a.createElement("use",{ref:j,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:m.a.time},l.a.createElement("time",{id:"time-elapsed",ref:z},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:G},"00:00"))),l.a.createElement("div",{className:m.a["right-controls"]},l.a.createElement("div",{className:m.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){M.current.muted=!M.current.muted,M.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:V,href:"#volume-mute"}),l.a.createElement("use",{ref:K,href:"#volume-low"}),l.a.createElement("use",{ref:W,href:"#volume-high"}))),l.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(P.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:m.a["video-progress"]},l.a.createElement("progress",{ref:U,value:"0",min:"0"}),l.a.createElement("input",{className:m.a.seek,ref:F,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:m.a["seek-tooltip"],ref:H,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},i3hx: /*!**************************************************!*\ !*** ./src/components/SplitContainer/index.less ***! \**************************************************/ diff --git a/p__User__Detail__Videos__index.31f8fbf0.async.js b/p__User__Detail__Videos__index.31f8fbf0.async.js index ce109edc2e..e5dd2d54cc 100644 --- a/p__User__Detail__Videos__index.31f8fbf0.async.js +++ b/p__User__Detail__Videos__index.31f8fbf0.async.js @@ -373,7 +373,7 @@ !*** ./src/components/Video/Play/index.jsx ***! \*********************************************/ /*! exports provided: default */ -/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),a=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),o=n.n(i),s=n(/*! react */"q1tI"),c=n.n(s),l=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),d=n.n(u),h=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),m=n.n(p);function v(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function g(e,t){return e-t}function b(e){e.sort(g);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var _=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(s.forwardRef)((function(e,t){var n,i,u,p=e.src,g=e.toLog,y=e.videoId,k=e.logWatchHistory,E=e.courseId,O=void 0===E?null:E,S=e.startTime,w=e.handlePause,C=void 0===w?function(){}:w,x=e.handlePlay,A=void 0===x?function(){}:x,j=e.handlePlayEnded,R=void 0===j?function(){}:j,T=e.videoSpeed,D=void 0===T?1:T,L="flv"===(null===(i=p=null===(n=p)||void 0===n?void 0:n.replace("http://","https://"))||void 0===i||null===(u=i.split("."))||void 0===u?void 0:u.pop()),I=Object(s.useRef)(),M=Object(s.useRef)(),N=Object(s.useRef)(),P=Object(s.useRef)(),B=Object(s.useRef)(),K=Object(s.useRef)(),U=Object(s.useRef)(),F=Object(s.useRef)(),V=Object(s.useRef)(),z=Object(s.useRef)(),H=Object(s.useRef)(),G=Object(s.useRef)(),W=Object(s.useRef)(),q=Object(s.useRef)(),Y=navigator.userAgent.toLowerCase().match(_),X=Y?Y[0]:"pc",J=Object(s.useRef)(!1),Q=Object(h.x)(),Z=0,$=0,ee=0,te=null,ne=!1,re=20,ae=1,ie=!1,oe=!1,se=[];Object(s.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return I.current.currentTime},getDuration:function(){return I.current.duration}}}));var ce=Object(s.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:I.current.currentTime};function r(){return i.apply(this,arguments)}function i(){return(i=Object(a.a)(o.a.mark((function t(){var r;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ie=!0,t.next=3,k(n);case 3:r=t.sent,te=r,ie=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=b(se),n.total_duration=$):(O?(n.video_id=parseInt(y,10),n.course_id=O):n.video_id=y,n.duration=Z,n.device=X),t&&(n.ed="1"),r()}),[y,O]);function le(){I.current.paused?(P.current.style.display="none",B.current.style.display="block"):(P.current.style.display="block",B.current.style.display="none")}function ue(){H.current.style.display="none",W.current.style.display="none",G.current.style.display="none",I.current.muted||0===I.current.volume?H.current.style.display="block":I.current.volume>0&&I.current.volume<=.5?W.current.style.display="block":G.current.style.display="block"}Object(s.useEffect)((function(){var e;r.b.destroy();var t=null;return l.a.isSupported&&L&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=l.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),I.current&&(t.attachMediaElement(I.current),t.load())):I.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[I,L,p]),Object(s.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){A(),S&&!J.current&&(I.current.currentTime=S),J.current=!0,se.push(I.current.currentTime),ne||(ne=!0,g&&ce())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(a.a)(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:le(),se.push(I.current.currentTime),g&&ce((function(){te=null,ee=0,ne=!1,ie=!1,oe=!1,se=[],$=0,ae=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=v(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function i(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=v(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),K.current.value=Math.floor(I.current.currentTime),U.current.value=Math.floor(I.current.currentTime),function(){var e=v(Math.round(I.current.currentTime));V.current.innerText="".concat(e.minutes,":").concat(e.seconds),V.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=M.current.getBoundingClientRect(),r=n.width,a=(n.height,n.x),i=n.y;if(!(a<0||i<0)&&r&&!oe){var o=I.current.currentTime,s=o-ee;Math.abs(s)<10?($+=Math.abs(s),ee=o,ie||$-ae*re>=0&&(ae++,se.push(ee),g&&ce())):(ee=o,g&&ce())}}function s(){oe=!0}function c(){I.current.playing&&se.push(I.current.currentTime,ee),ee=I.current.currentTime,oe=!1}function l(){(Z=I.current.duration)<=20&&(re=Z/3),I.current.addEventListener("play",e)}function u(){C()}function d(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;I.current.currentTime=t,U.current.value=t,K.current.value=t}function h(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));K.current.setAttribute("data-seek",t);var n=v(t);z.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=I.current.getBoundingClientRect();z.current.style.left="".concat(e.pageX-r.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(I.current.style.width="100%",I.current.style.height="100%"):I.current.style.cssText=""})),I.current.addEventListener("canplay",l),I.current.addEventListener("ended",t),I.current.addEventListener("seeking",s),I.current.addEventListener("seeked",c),I.current.addEventListener("loadedmetadata",r),K.current.addEventListener("mousemove",h),K.current.addEventListener("input",d),I.current.addEventListener("timeupdate",i),I.current.addEventListener("pause",u),I.current.addEventListener("volumechange",ue),function(){I.current.removeEventListener("canplay",l),I.current.removeEventListener("play",e),I.current.removeEventListener("ended",t),I.current.removeEventListener("seeking",s),I.current.removeEventListener("seeked",c),K.current.removeEventListener("mousemove",h),K.current.removeEventListener("input",d),I.current.removeEventListener("timeupdate",i),I.current.removeEventListener("pause",u),I.current.removeEventListener("loadedmetadata",r),I.current.removeEventListener("volumechange",ue),I.current.playing&&(se.push(ee,I.current.currentTime),g&&ce())}}),[I,p]),Object(s.useEffect)((function(){var e;if(I.current.onended=function(){R(I)},I.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(I.current.canPlayType("application/vnd.apple.mpegurl"))I.current.src=p;else if(d.a.isSupported()){var t=new d.a;t.loadSource(p),t.attachMedia(I.current)}}),[p]),Object(s.useEffect)((function(){I.current.playbackRate=D}),[D]);return c.a.createElement("div",{style:{position:"relative"},ref:N},c.a.createElement("div",{ref:M,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},Q?Q.login:" "),c.a.createElement("div",{className:m.a.container},c.a.createElement("div",{className:m.a["video-container"],id:"video-container"},c.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},c.a.createElement("svg",{className:m.a["playback-icons"]},c.a.createElement("use",{className:"hidden",href:"#play-icon"}),c.a.createElement("use",{href:"#pause"}))),c.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:I,autoPlay:!1}),c.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},c.a.createElement("div",{className:m.a["bottom-controls"]},c.a.createElement("div",{className:m.a["left-controls"]},c.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){I.current.paused||I.current.ended?I.current.play():I.current.pause(),le()}},c.a.createElement("svg",{className:m.a["playback-icons"]},c.a.createElement("use",{ref:B,href:"#play-icon"}),c.a.createElement("use",{ref:P,style:{display:"none"},href:"#pause"}))),c.a.createElement("div",{className:m.a.time},c.a.createElement("time",{id:"time-elapsed",ref:V},"00:00"),c.a.createElement("span",null," / "),c.a.createElement("time",{id:"duration",ref:F},"00:00"))),c.a.createElement("div",{className:m.a["right-controls"]},c.a.createElement("div",{className:m.a["volume-controls"]},c.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){I.current.muted=!I.current.muted,I.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},c.a.createElement("svg",null,c.a.createElement("use",{ref:H,href:"#volume-mute"}),c.a.createElement("use",{ref:W,href:"#volume-low"}),c.a.createElement("use",{ref:G,href:"#volume-high"}))),c.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),c.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},c.a.createElement("svg",null,c.a.createElement("use",{href:"#fullscreen"}),c.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),c.a.createElement("div",{className:m.a["video-progress"]},c.a.createElement("progress",{ref:U,value:"0",min:"0"}),c.a.createElement("input",{className:m.a.seek,ref:K,value:"0",min:"0",type:"range",step:"1"}),c.a.createElement("div",{className:m.a["seek-tooltip"],ref:z,id:"seek-tooltip"},"00:00"))))),c.a.createElement("svg",{style:{display:"none"}},c.a.createElement("defs",null,c.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),c.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),c.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),c.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),c.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),c.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),c.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),c.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},k3GJ: +/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),a=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),o=n.n(i),s=n(/*! react */"q1tI"),c=n.n(s),l=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),d=n.n(u),h=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),m=n.n(p);function v(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function g(e,t){return e-t}function b(e){e.sort(g);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var _=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(s.forwardRef)((function(e,t){var n,i,u,p=e.src,g=e.toLog,y=e.videoId,k=e.logWatchHistory,E=e.courseId,O=void 0===E?null:E,S=e.startTime,w=e.handlePause,C=void 0===w?function(){}:w,x=e.handlePlay,A=void 0===x?function(){}:x,j=e.handlePlayEnded,R=void 0===j?function(){}:j,T=e.videoSpeed,D=void 0===T?1:T,L="flv"===(null===(i=p=null===(n=p)||void 0===n?void 0:n.replace("http://","http://"))||void 0===i||null===(u=i.split("."))||void 0===u?void 0:u.pop()),I=Object(s.useRef)(),M=Object(s.useRef)(),N=Object(s.useRef)(),P=Object(s.useRef)(),B=Object(s.useRef)(),K=Object(s.useRef)(),U=Object(s.useRef)(),F=Object(s.useRef)(),V=Object(s.useRef)(),z=Object(s.useRef)(),H=Object(s.useRef)(),G=Object(s.useRef)(),W=Object(s.useRef)(),q=Object(s.useRef)(),Y=navigator.userAgent.toLowerCase().match(_),X=Y?Y[0]:"pc",J=Object(s.useRef)(!1),Q=Object(h.x)(),Z=0,$=0,ee=0,te=null,ne=!1,re=20,ae=1,ie=!1,oe=!1,se=[];Object(s.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return I.current.currentTime},getDuration:function(){return I.current.duration}}}));var ce=Object(s.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:I.current.currentTime};function r(){return i.apply(this,arguments)}function i(){return(i=Object(a.a)(o.a.mark((function t(){var r;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ie=!0,t.next=3,k(n);case 3:r=t.sent,te=r,ie=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=b(se),n.total_duration=$):(O?(n.video_id=parseInt(y,10),n.course_id=O):n.video_id=y,n.duration=Z,n.device=X),t&&(n.ed="1"),r()}),[y,O]);function le(){I.current.paused?(P.current.style.display="none",B.current.style.display="block"):(P.current.style.display="block",B.current.style.display="none")}function ue(){H.current.style.display="none",W.current.style.display="none",G.current.style.display="none",I.current.muted||0===I.current.volume?H.current.style.display="block":I.current.volume>0&&I.current.volume<=.5?W.current.style.display="block":G.current.style.display="block"}Object(s.useEffect)((function(){var e;r.b.destroy();var t=null;return l.a.isSupported&&L&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=l.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),I.current&&(t.attachMediaElement(I.current),t.load())):I.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[I,L,p]),Object(s.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){A(),S&&!J.current&&(I.current.currentTime=S),J.current=!0,se.push(I.current.currentTime),ne||(ne=!0,g&&ce())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(a.a)(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:le(),se.push(I.current.currentTime),g&&ce((function(){te=null,ee=0,ne=!1,ie=!1,oe=!1,se=[],$=0,ae=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=v(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function i(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=v(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),K.current.value=Math.floor(I.current.currentTime),U.current.value=Math.floor(I.current.currentTime),function(){var e=v(Math.round(I.current.currentTime));V.current.innerText="".concat(e.minutes,":").concat(e.seconds),V.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=M.current.getBoundingClientRect(),r=n.width,a=(n.height,n.x),i=n.y;if(!(a<0||i<0)&&r&&!oe){var o=I.current.currentTime,s=o-ee;Math.abs(s)<10?($+=Math.abs(s),ee=o,ie||$-ae*re>=0&&(ae++,se.push(ee),g&&ce())):(ee=o,g&&ce())}}function s(){oe=!0}function c(){I.current.playing&&se.push(I.current.currentTime,ee),ee=I.current.currentTime,oe=!1}function l(){(Z=I.current.duration)<=20&&(re=Z/3),I.current.addEventListener("play",e)}function u(){C()}function d(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;I.current.currentTime=t,U.current.value=t,K.current.value=t}function h(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));K.current.setAttribute("data-seek",t);var n=v(t);z.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=I.current.getBoundingClientRect();z.current.style.left="".concat(e.pageX-r.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(I.current.style.width="100%",I.current.style.height="100%"):I.current.style.cssText=""})),I.current.addEventListener("canplay",l),I.current.addEventListener("ended",t),I.current.addEventListener("seeking",s),I.current.addEventListener("seeked",c),I.current.addEventListener("loadedmetadata",r),K.current.addEventListener("mousemove",h),K.current.addEventListener("input",d),I.current.addEventListener("timeupdate",i),I.current.addEventListener("pause",u),I.current.addEventListener("volumechange",ue),function(){I.current.removeEventListener("canplay",l),I.current.removeEventListener("play",e),I.current.removeEventListener("ended",t),I.current.removeEventListener("seeking",s),I.current.removeEventListener("seeked",c),K.current.removeEventListener("mousemove",h),K.current.removeEventListener("input",d),I.current.removeEventListener("timeupdate",i),I.current.removeEventListener("pause",u),I.current.removeEventListener("loadedmetadata",r),I.current.removeEventListener("volumechange",ue),I.current.playing&&(se.push(ee,I.current.currentTime),g&&ce())}}),[I,p]),Object(s.useEffect)((function(){var e;if(I.current.onended=function(){R(I)},I.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(I.current.canPlayType("application/vnd.apple.mpegurl"))I.current.src=p;else if(d.a.isSupported()){var t=new d.a;t.loadSource(p),t.attachMedia(I.current)}}),[p]),Object(s.useEffect)((function(){I.current.playbackRate=D}),[D]);return c.a.createElement("div",{style:{position:"relative"},ref:N},c.a.createElement("div",{ref:M,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},Q?Q.login:" "),c.a.createElement("div",{className:m.a.container},c.a.createElement("div",{className:m.a["video-container"],id:"video-container"},c.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},c.a.createElement("svg",{className:m.a["playback-icons"]},c.a.createElement("use",{className:"hidden",href:"#play-icon"}),c.a.createElement("use",{href:"#pause"}))),c.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:I,autoPlay:!1}),c.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},c.a.createElement("div",{className:m.a["bottom-controls"]},c.a.createElement("div",{className:m.a["left-controls"]},c.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){I.current.paused||I.current.ended?I.current.play():I.current.pause(),le()}},c.a.createElement("svg",{className:m.a["playback-icons"]},c.a.createElement("use",{ref:B,href:"#play-icon"}),c.a.createElement("use",{ref:P,style:{display:"none"},href:"#pause"}))),c.a.createElement("div",{className:m.a.time},c.a.createElement("time",{id:"time-elapsed",ref:V},"00:00"),c.a.createElement("span",null," / "),c.a.createElement("time",{id:"duration",ref:F},"00:00"))),c.a.createElement("div",{className:m.a["right-controls"]},c.a.createElement("div",{className:m.a["volume-controls"]},c.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){I.current.muted=!I.current.muted,I.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},c.a.createElement("svg",null,c.a.createElement("use",{ref:H,href:"#volume-mute"}),c.a.createElement("use",{ref:W,href:"#volume-low"}),c.a.createElement("use",{ref:G,href:"#volume-high"}))),c.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),c.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},c.a.createElement("svg",null,c.a.createElement("use",{href:"#fullscreen"}),c.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),c.a.createElement("div",{className:m.a["video-progress"]},c.a.createElement("progress",{ref:U,value:"0",min:"0"}),c.a.createElement("input",{className:m.a.seek,ref:K,value:"0",min:"0",type:"range",step:"1"}),c.a.createElement("div",{className:m.a["seek-tooltip"],ref:z,id:"seek-tooltip"},"00:00"))))),c.a.createElement("svg",{style:{display:"none"}},c.a.createElement("defs",null,c.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),c.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),c.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),c.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),c.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),c.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),c.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),c.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},k3GJ: /*!*******************************************************!*\ !*** ./node_modules/rc-tabs/es/index.js + 50 modules ***! \*******************************************************/ diff --git a/p__Video__Detail__id.dbf92de5.async.js b/p__Video__Detail__id.dbf92de5.async.js index 3bd30b5f98..79c650bfa0 100644 --- a/p__Video__Detail__id.dbf92de5.async.js +++ b/p__Video__Detail__id.dbf92de5.async.js @@ -352,7 +352,7 @@ PERFORMANCE OF THIS SOFTWARE. !*** ./src/components/Video/Play/index.jsx ***! \*********************************************/ /*! exports provided: default */ -/*! exports used: default */function(t,e,n){"use strict";n(/*! antd/es/message/style */"miYZ");var i=n(/*! antd/es/message */"tsqr"),r=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),o=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),s=n.n(o),a=n(/*! react */"q1tI"),l=n.n(a),c=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),h=n.n(u),d=n(/*! @/utils/authority */"xKgJ"),p=n(/*! @/utils/fullscreen.ts */"bntm"),f=n(/*! ./index.less?modules */"4xil"),m=n.n(f);function g(t){if(isNaN(t))return{minutes:"00",seconds:"00"};var e=new Date(1e3*t).toISOString().substr(11,8);return{minutes:e.substr(3,2),seconds:e.substr(6,2)}}function v(t,e){return t-e}function y(t){t.sort(v);for(var e=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;e.a=Object(a.forwardRef)((function(t,e){var n,o,u,f=t.src,v=t.toLog,_=t.videoId,w=t.logWatchHistory,x=t.courseId,S=void 0===x?null:x,k=t.startTime,E=t.handlePause,C=void 0===E?function(){}:E,A=t.handlePlay,T=void 0===A?function(){}:A,O=t.handlePlayEnded,R=void 0===O?function(){}:O,L=t.videoSpeed,I=void 0===L?1:L,M="flv"===(null===(o=f=null===(n=f)||void 0===n?void 0:n.replace("http://","https://"))||void 0===o||null===(u=o.split("."))||void 0===u?void 0:u.pop()),P=Object(a.useRef)(),D=Object(a.useRef)(),N=Object(a.useRef)(),j=Object(a.useRef)(),B=Object(a.useRef)(),U=Object(a.useRef)(),F=Object(a.useRef)(),z=Object(a.useRef)(),V=Object(a.useRef)(),G=Object(a.useRef)(),H=Object(a.useRef)(),W=Object(a.useRef)(),q=Object(a.useRef)(),X=Object(a.useRef)(),K=navigator.userAgent.toLowerCase().match(b),Y=K?K[0]:"pc",$=Object(a.useRef)(!1),Z=Object(d.x)(),J=0,Q=0,tt=0,et=null,nt=!1,it=20,rt=1,ot=!1,st=!1,at=[];Object(a.useImperativeHandle)(e,(function(){return{getLastUpdatedTime:function(){return P.current.currentTime},getDuration:function(){return P.current.duration}}}));var lt=Object(a.useCallback)((function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:P.current.currentTime};function i(){return o.apply(this,arguments)}function o(){return(o=Object(r.a)(s.a.mark((function e(){var i;return s.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return ot=!0,e.next=3,w(n);case 3:i=e.sent,et=i,ot=!1,t&&t();case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}et?(n.log_id=et,n.watch_duration=y(at),n.total_duration=Q):(S?(n.video_id=parseInt(_,10),n.course_id=S):n.video_id=_,n.duration=J,n.device=Y),e&&(n.ed="1"),i()}),[_,S]);function ct(){P.current.paused?(j.current.style.display="none",B.current.style.display="block"):(j.current.style.display="block",B.current.style.display="none")}function ut(){H.current.style.display="none",q.current.style.display="none",W.current.style.display="none",P.current.muted||0===P.current.volume?H.current.style.display="block":P.current.volume>0&&P.current.volume<=.5?q.current.style.display="block":W.current.style.display="block"}Object(a.useEffect)((function(){var t;i.b.destroy();var e=null;return c.a.isSupported&&M&&f&&(null===(t=f)||void 0===t?void 0:t.indexOf(".m3u8"))<0?(e=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:f,muted:!1}),P.current&&(e.attachMediaElement(P.current),e.load())):P.current.setAttribute("src",f),ut(),function(){e&&(e.unload(),e.pause(),e.destroy(),e=null)}}),[P,M,f]),Object(a.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function t(){T(),k&&!$.current&&(P.current.currentTime=k),$.current=!0,at.push(P.current.currentTime),nt||(nt=!0,v&<())}function e(){return n.apply(this,arguments)}function n(){return(n=Object(r.a)(s.a.mark((function t(){return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:ct(),at.push(P.current.currentTime),v&<((function(){et=null,tt=0,nt=!1,ot=!1,st=!1,at=[],Q=0,rt=1}),!0);case 3:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function i(){var t=Math.round(P.current.duration);U.current.setAttribute("max",t),F.current.setAttribute("max",t);var e=g(t);z.current.innerText="".concat(e.minutes,":").concat(e.seconds),z.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}function o(){var t=Math.round(P.current.duration);U.current.setAttribute("max",t),F.current.setAttribute("max",t);var e=g(t);z.current.innerText="".concat(e.minutes,":").concat(e.seconds),z.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s")),U.current.value=Math.floor(P.current.currentTime),F.current.value=Math.floor(P.current.currentTime),function(){var t=g(Math.round(P.current.currentTime));V.current.innerText="".concat(t.minutes,":").concat(t.seconds),V.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}();var n=D.current.getBoundingClientRect(),i=n.width,r=(n.height,n.x),o=n.y;if(!(r<0||o<0)&&i&&!st){var s=P.current.currentTime,a=s-tt;Math.abs(a)<10?(Q+=Math.abs(a),tt=s,ot||Q-rt*it>=0&&(rt++,at.push(tt),v&<())):(tt=s,v&<())}}function a(){st=!0}function l(){P.current.playing&&at.push(P.current.currentTime,tt),tt=P.current.currentTime,st=!1}function c(){(J=P.current.duration)<=20&&(it=J/3),P.current.addEventListener("play",t)}function u(){C()}function h(t){var e=t.target.dataset.seek?t.target.dataset.seek:t.target.value;P.current.currentTime=e,F.current.value=e,U.current.value=e}function d(t){var e=Math.round(t.offsetX/t.target.clientWidth*parseInt(t.target.getAttribute("max"),10));U.current.setAttribute("data-seek",e);var n=g(e);G.current.textContent="".concat(n.minutes,":").concat(n.seconds);var i=P.current.getBoundingClientRect();G.current.style.left="".concat(t.pageX-i.left,"px")}return N.current.addEventListener(Object(p.c)(),(function(t){t.preventDefault(),Object(p.a)()?(P.current.style.width="100%",P.current.style.height="100%"):P.current.style.cssText=""})),P.current.addEventListener("canplay",c),P.current.addEventListener("ended",e),P.current.addEventListener("seeking",a),P.current.addEventListener("seeked",l),P.current.addEventListener("loadedmetadata",i),U.current.addEventListener("mousemove",d),U.current.addEventListener("input",h),P.current.addEventListener("timeupdate",o),P.current.addEventListener("pause",u),P.current.addEventListener("volumechange",ut),function(){P.current.removeEventListener("canplay",c),P.current.removeEventListener("play",t),P.current.removeEventListener("ended",e),P.current.removeEventListener("seeking",a),P.current.removeEventListener("seeked",l),U.current.removeEventListener("mousemove",d),U.current.removeEventListener("input",h),P.current.removeEventListener("timeupdate",o),P.current.removeEventListener("pause",u),P.current.removeEventListener("loadedmetadata",i),P.current.removeEventListener("volumechange",ut),P.current.playing&&(at.push(tt,P.current.currentTime),v&<())}}),[P,f]),Object(a.useEffect)((function(){var t;if(P.current.onended=function(){R(P)},P.current.oncontextmenu=function(){return!1},(null===(t=f)||void 0===t?void 0:t.indexOf(".m3u8"))>-1)if(P.current.canPlayType("application/vnd.apple.mpegurl"))P.current.src=f;else if(h.a.isSupported()){var e=new h.a;e.loadSource(f),e.attachMedia(P.current)}}),[f]),Object(a.useEffect)((function(){P.current.playbackRate=I}),[I]);return l.a.createElement("div",{style:{position:"relative"},ref:N},l.a.createElement("div",{ref:D,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},Z?Z.login:" "),l.a.createElement("div",{className:m.a.container},l.a.createElement("div",{className:m.a["video-container"],id:"video-container"},l.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:P,autoPlay:!1}),l.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:m.a["bottom-controls"]},l.a.createElement("div",{className:m.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){P.current.paused||P.current.ended?P.current.play():P.current.pause(),ct()}},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{ref:B,href:"#play-icon"}),l.a.createElement("use",{ref:j,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:m.a.time},l.a.createElement("time",{id:"time-elapsed",ref:V},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:z},"00:00"))),l.a.createElement("div",{className:m.a["right-controls"]},l.a.createElement("div",{className:m.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){P.current.muted=!P.current.muted,P.current.muted?(X.current.setAttribute("data-volume",volume.value),X.current.value=0):X.current.value=X.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:H,href:"#volume-mute"}),l.a.createElement("use",{ref:q,href:"#volume-low"}),l.a.createElement("use",{ref:W,href:"#volume-high"}))),l.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:X,style:{display:"none"},onClick:ut})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(p.a)()?Object(p.b)():Object(p.d)(N.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:m.a["video-progress"]},l.a.createElement("progress",{ref:F,value:"0",min:"0"}),l.a.createElement("input",{className:m.a.seek,ref:U,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:m.a["seek-tooltip"],ref:G,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},kwm0: +/*! exports used: default */function(t,e,n){"use strict";n(/*! antd/es/message/style */"miYZ");var i=n(/*! antd/es/message */"tsqr"),r=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),o=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),s=n.n(o),a=n(/*! react */"q1tI"),l=n.n(a),c=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),h=n.n(u),d=n(/*! @/utils/authority */"xKgJ"),p=n(/*! @/utils/fullscreen.ts */"bntm"),f=n(/*! ./index.less?modules */"4xil"),m=n.n(f);function g(t){if(isNaN(t))return{minutes:"00",seconds:"00"};var e=new Date(1e3*t).toISOString().substr(11,8);return{minutes:e.substr(3,2),seconds:e.substr(6,2)}}function v(t,e){return t-e}function y(t){t.sort(v);for(var e=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;e.a=Object(a.forwardRef)((function(t,e){var n,o,u,f=t.src,v=t.toLog,_=t.videoId,w=t.logWatchHistory,x=t.courseId,S=void 0===x?null:x,k=t.startTime,E=t.handlePause,C=void 0===E?function(){}:E,A=t.handlePlay,T=void 0===A?function(){}:A,O=t.handlePlayEnded,R=void 0===O?function(){}:O,L=t.videoSpeed,I=void 0===L?1:L,M="flv"===(null===(o=f=null===(n=f)||void 0===n?void 0:n.replace("http://","http://"))||void 0===o||null===(u=o.split("."))||void 0===u?void 0:u.pop()),P=Object(a.useRef)(),D=Object(a.useRef)(),N=Object(a.useRef)(),j=Object(a.useRef)(),B=Object(a.useRef)(),U=Object(a.useRef)(),F=Object(a.useRef)(),z=Object(a.useRef)(),V=Object(a.useRef)(),G=Object(a.useRef)(),H=Object(a.useRef)(),W=Object(a.useRef)(),q=Object(a.useRef)(),X=Object(a.useRef)(),K=navigator.userAgent.toLowerCase().match(b),Y=K?K[0]:"pc",$=Object(a.useRef)(!1),Z=Object(d.x)(),J=0,Q=0,tt=0,et=null,nt=!1,it=20,rt=1,ot=!1,st=!1,at=[];Object(a.useImperativeHandle)(e,(function(){return{getLastUpdatedTime:function(){return P.current.currentTime},getDuration:function(){return P.current.duration}}}));var lt=Object(a.useCallback)((function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:P.current.currentTime};function i(){return o.apply(this,arguments)}function o(){return(o=Object(r.a)(s.a.mark((function e(){var i;return s.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return ot=!0,e.next=3,w(n);case 3:i=e.sent,et=i,ot=!1,t&&t();case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}et?(n.log_id=et,n.watch_duration=y(at),n.total_duration=Q):(S?(n.video_id=parseInt(_,10),n.course_id=S):n.video_id=_,n.duration=J,n.device=Y),e&&(n.ed="1"),i()}),[_,S]);function ct(){P.current.paused?(j.current.style.display="none",B.current.style.display="block"):(j.current.style.display="block",B.current.style.display="none")}function ut(){H.current.style.display="none",q.current.style.display="none",W.current.style.display="none",P.current.muted||0===P.current.volume?H.current.style.display="block":P.current.volume>0&&P.current.volume<=.5?q.current.style.display="block":W.current.style.display="block"}Object(a.useEffect)((function(){var t;i.b.destroy();var e=null;return c.a.isSupported&&M&&f&&(null===(t=f)||void 0===t?void 0:t.indexOf(".m3u8"))<0?(e=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:f,muted:!1}),P.current&&(e.attachMediaElement(P.current),e.load())):P.current.setAttribute("src",f),ut(),function(){e&&(e.unload(),e.pause(),e.destroy(),e=null)}}),[P,M,f]),Object(a.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function t(){T(),k&&!$.current&&(P.current.currentTime=k),$.current=!0,at.push(P.current.currentTime),nt||(nt=!0,v&<())}function e(){return n.apply(this,arguments)}function n(){return(n=Object(r.a)(s.a.mark((function t(){return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:ct(),at.push(P.current.currentTime),v&<((function(){et=null,tt=0,nt=!1,ot=!1,st=!1,at=[],Q=0,rt=1}),!0);case 3:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function i(){var t=Math.round(P.current.duration);U.current.setAttribute("max",t),F.current.setAttribute("max",t);var e=g(t);z.current.innerText="".concat(e.minutes,":").concat(e.seconds),z.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}function o(){var t=Math.round(P.current.duration);U.current.setAttribute("max",t),F.current.setAttribute("max",t);var e=g(t);z.current.innerText="".concat(e.minutes,":").concat(e.seconds),z.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s")),U.current.value=Math.floor(P.current.currentTime),F.current.value=Math.floor(P.current.currentTime),function(){var t=g(Math.round(P.current.currentTime));V.current.innerText="".concat(t.minutes,":").concat(t.seconds),V.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}();var n=D.current.getBoundingClientRect(),i=n.width,r=(n.height,n.x),o=n.y;if(!(r<0||o<0)&&i&&!st){var s=P.current.currentTime,a=s-tt;Math.abs(a)<10?(Q+=Math.abs(a),tt=s,ot||Q-rt*it>=0&&(rt++,at.push(tt),v&<())):(tt=s,v&<())}}function a(){st=!0}function l(){P.current.playing&&at.push(P.current.currentTime,tt),tt=P.current.currentTime,st=!1}function c(){(J=P.current.duration)<=20&&(it=J/3),P.current.addEventListener("play",t)}function u(){C()}function h(t){var e=t.target.dataset.seek?t.target.dataset.seek:t.target.value;P.current.currentTime=e,F.current.value=e,U.current.value=e}function d(t){var e=Math.round(t.offsetX/t.target.clientWidth*parseInt(t.target.getAttribute("max"),10));U.current.setAttribute("data-seek",e);var n=g(e);G.current.textContent="".concat(n.minutes,":").concat(n.seconds);var i=P.current.getBoundingClientRect();G.current.style.left="".concat(t.pageX-i.left,"px")}return N.current.addEventListener(Object(p.c)(),(function(t){t.preventDefault(),Object(p.a)()?(P.current.style.width="100%",P.current.style.height="100%"):P.current.style.cssText=""})),P.current.addEventListener("canplay",c),P.current.addEventListener("ended",e),P.current.addEventListener("seeking",a),P.current.addEventListener("seeked",l),P.current.addEventListener("loadedmetadata",i),U.current.addEventListener("mousemove",d),U.current.addEventListener("input",h),P.current.addEventListener("timeupdate",o),P.current.addEventListener("pause",u),P.current.addEventListener("volumechange",ut),function(){P.current.removeEventListener("canplay",c),P.current.removeEventListener("play",t),P.current.removeEventListener("ended",e),P.current.removeEventListener("seeking",a),P.current.removeEventListener("seeked",l),U.current.removeEventListener("mousemove",d),U.current.removeEventListener("input",h),P.current.removeEventListener("timeupdate",o),P.current.removeEventListener("pause",u),P.current.removeEventListener("loadedmetadata",i),P.current.removeEventListener("volumechange",ut),P.current.playing&&(at.push(tt,P.current.currentTime),v&<())}}),[P,f]),Object(a.useEffect)((function(){var t;if(P.current.onended=function(){R(P)},P.current.oncontextmenu=function(){return!1},(null===(t=f)||void 0===t?void 0:t.indexOf(".m3u8"))>-1)if(P.current.canPlayType("application/vnd.apple.mpegurl"))P.current.src=f;else if(h.a.isSupported()){var e=new h.a;e.loadSource(f),e.attachMedia(P.current)}}),[f]),Object(a.useEffect)((function(){P.current.playbackRate=I}),[I]);return l.a.createElement("div",{style:{position:"relative"},ref:N},l.a.createElement("div",{ref:D,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},Z?Z.login:" "),l.a.createElement("div",{className:m.a.container},l.a.createElement("div",{className:m.a["video-container"],id:"video-container"},l.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:P,autoPlay:!1}),l.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:m.a["bottom-controls"]},l.a.createElement("div",{className:m.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){P.current.paused||P.current.ended?P.current.play():P.current.pause(),ct()}},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{ref:B,href:"#play-icon"}),l.a.createElement("use",{ref:j,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:m.a.time},l.a.createElement("time",{id:"time-elapsed",ref:V},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:z},"00:00"))),l.a.createElement("div",{className:m.a["right-controls"]},l.a.createElement("div",{className:m.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){P.current.muted=!P.current.muted,P.current.muted?(X.current.setAttribute("data-volume",volume.value),X.current.value=0):X.current.value=X.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:H,href:"#volume-mute"}),l.a.createElement("use",{ref:q,href:"#volume-low"}),l.a.createElement("use",{ref:W,href:"#volume-high"}))),l.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:X,style:{display:"none"},onClick:ut})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(p.a)()?Object(p.b)():Object(p.d)(N.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:m.a["video-progress"]},l.a.createElement("progress",{ref:F,value:"0",min:"0"}),l.a.createElement("input",{className:m.a.seek,ref:U,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:m.a["seek-tooltip"],ref:G,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},kwm0: /*!****************************************************************************!*\ !*** ./src/pages/Video/Detail/components/AddVideoModal/index.less?modules ***! \****************************************************************************/ diff --git a/p__index.e13fbbb5.async.js b/p__index.e13fbbb5.async.js index 3da6a30b69..31240f43a3 100644 --- a/p__index.e13fbbb5.async.js +++ b/p__index.e13fbbb5.async.js @@ -1589,7 +1589,7 @@ PERFORMANCE OF THIS SOFTWARE. !*** ./src/components/Video/Play/index.jsx ***! \*********************************************/ /*! exports provided: default */ -/*! exports used: default */function(e,t,i){"use strict";i(/*! antd/es/message/style */"miYZ");var n=i(/*! antd/es/message */"tsqr"),r=i(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),a=i(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),s=i.n(a),o=i(/*! react */"q1tI"),l=i.n(o),c=i(/*! flv.js */"GUcZ"),u=i(/*! hls.js */"ulZh"),h=i.n(u),d=i(/*! @/utils/authority */"xKgJ"),f=i(/*! @/utils/fullscreen.ts */"bntm"),p=i(/*! ./index.less?modules */"4xil"),m=i.n(p);function g(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function v(e,t){return e-t}function y(e){e.sort(v);for(var t=0,i=0;i0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(o.forwardRef)((function(e,t){var i,a,u,p=e.src,v=e.toLog,E=e.videoId,S=e.logWatchHistory,x=e.courseId,A=void 0===x?null:x,C=e.startTime,w=e.handlePause,k=void 0===w?function(){}:w,T=e.handlePlay,_=void 0===T?function(){}:T,O=e.handlePlayEnded,I=void 0===O?function(){}:O,R=e.videoSpeed,L=void 0===R?1:R,D="flv"===(null===(a=p=null===(i=p)||void 0===i?void 0:i.replace("http://","https://"))||void 0===a||null===(u=a.split("."))||void 0===u?void 0:u.pop()),M=Object(o.useRef)(),P=Object(o.useRef)(),N=Object(o.useRef)(),B=Object(o.useRef)(),j=Object(o.useRef)(),F=Object(o.useRef)(),U=Object(o.useRef)(),z=Object(o.useRef)(),G=Object(o.useRef)(),H=Object(o.useRef)(),V=Object(o.useRef)(),K=Object(o.useRef)(),W=Object(o.useRef)(),Y=Object(o.useRef)(),Q=navigator.userAgent.toLowerCase().match(b),J=Q?Q[0]:"pc",q=Object(o.useRef)(!1),X=Object(d.x)(),Z=0,$=0,ee=0,te=null,ie=!1,ne=20,re=1,ae=!1,se=!1,oe=[];Object(o.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return M.current.currentTime},getDuration:function(){return M.current.duration}}}));var le=Object(o.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i={point:M.current.currentTime};function n(){return a.apply(this,arguments)}function a(){return(a=Object(r.a)(s.a.mark((function t(){var n;return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae=!0,t.next=3,S(i);case 3:n=t.sent,te=n,ae=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(i.log_id=te,i.watch_duration=y(oe),i.total_duration=$):(A?(i.video_id=parseInt(E,10),i.course_id=A):i.video_id=E,i.duration=Z,i.device=J),t&&(i.ed="1"),n()}),[E,A]);function ce(){M.current.paused?(B.current.style.display="none",j.current.style.display="block"):(B.current.style.display="block",j.current.style.display="none")}function ue(){V.current.style.display="none",W.current.style.display="none",K.current.style.display="none",M.current.muted||0===M.current.volume?V.current.style.display="block":M.current.volume>0&&M.current.volume<=.5?W.current.style.display="block":K.current.style.display="block"}Object(o.useEffect)((function(){var e;n.b.destroy();var t=null;return c.a.isSupported&&D&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),M.current&&(t.attachMediaElement(M.current),t.load())):M.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[M,D,p]),Object(o.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){_(),C&&!q.current&&(M.current.currentTime=C),q.current=!0,oe.push(M.current.currentTime),ie||(ie=!0,v&&le())}function t(){return i.apply(this,arguments)}function i(){return(i=Object(r.a)(s.a.mark((function e(){return s.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ce(),oe.push(M.current.currentTime),v&&le((function(){te=null,ee=0,ie=!1,ae=!1,se=!1,oe=[],$=0,re=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function n(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);z.current.innerText="".concat(t.minutes,":").concat(t.seconds),z.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function a(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);z.current.innerText="".concat(t.minutes,":").concat(t.seconds),z.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),F.current.value=Math.floor(M.current.currentTime),U.current.value=Math.floor(M.current.currentTime),function(){var e=g(Math.round(M.current.currentTime));G.current.innerText="".concat(e.minutes,":").concat(e.seconds),G.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var i=P.current.getBoundingClientRect(),n=i.width,r=(i.height,i.x),a=i.y;if(!(r<0||a<0)&&n&&!se){var s=M.current.currentTime,o=s-ee;Math.abs(o)<10?($+=Math.abs(o),ee=s,ae||$-re*ne>=0&&(re++,oe.push(ee),v&&le())):(ee=s,v&&le())}}function o(){se=!0}function l(){M.current.playing&&oe.push(M.current.currentTime,ee),ee=M.current.currentTime,se=!1}function c(){(Z=M.current.duration)<=20&&(ne=Z/3),M.current.addEventListener("play",e)}function u(){k()}function h(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;M.current.currentTime=t,U.current.value=t,F.current.value=t}function d(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));F.current.setAttribute("data-seek",t);var i=g(t);H.current.textContent="".concat(i.minutes,":").concat(i.seconds);var n=M.current.getBoundingClientRect();H.current.style.left="".concat(e.pageX-n.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(M.current.style.width="100%",M.current.style.height="100%"):M.current.style.cssText=""})),M.current.addEventListener("canplay",c),M.current.addEventListener("ended",t),M.current.addEventListener("seeking",o),M.current.addEventListener("seeked",l),M.current.addEventListener("loadedmetadata",n),F.current.addEventListener("mousemove",d),F.current.addEventListener("input",h),M.current.addEventListener("timeupdate",a),M.current.addEventListener("pause",u),M.current.addEventListener("volumechange",ue),function(){M.current.removeEventListener("canplay",c),M.current.removeEventListener("play",e),M.current.removeEventListener("ended",t),M.current.removeEventListener("seeking",o),M.current.removeEventListener("seeked",l),F.current.removeEventListener("mousemove",d),F.current.removeEventListener("input",h),M.current.removeEventListener("timeupdate",a),M.current.removeEventListener("pause",u),M.current.removeEventListener("loadedmetadata",n),M.current.removeEventListener("volumechange",ue),M.current.playing&&(oe.push(ee,M.current.currentTime),v&&le())}}),[M,p]),Object(o.useEffect)((function(){var e;if(M.current.onended=function(){I(M)},M.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(M.current.canPlayType("application/vnd.apple.mpegurl"))M.current.src=p;else if(h.a.isSupported()){var t=new h.a;t.loadSource(p),t.attachMedia(M.current)}}),[p]),Object(o.useEffect)((function(){M.current.playbackRate=L}),[L]);return l.a.createElement("div",{style:{position:"relative"},ref:N},l.a.createElement("div",{ref:P,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},X?X.login:" "),l.a.createElement("div",{className:m.a.container},l.a.createElement("div",{className:m.a["video-container"],id:"video-container"},l.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:M,autoPlay:!1}),l.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:m.a["bottom-controls"]},l.a.createElement("div",{className:m.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){M.current.paused||M.current.ended?M.current.play():M.current.pause(),ce()}},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{ref:j,href:"#play-icon"}),l.a.createElement("use",{ref:B,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:m.a.time},l.a.createElement("time",{id:"time-elapsed",ref:G},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:z},"00:00"))),l.a.createElement("div",{className:m.a["right-controls"]},l.a.createElement("div",{className:m.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){M.current.muted=!M.current.muted,M.current.muted?(Y.current.setAttribute("data-volume",volume.value),Y.current.value=0):Y.current.value=Y.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:V,href:"#volume-mute"}),l.a.createElement("use",{ref:W,href:"#volume-low"}),l.a.createElement("use",{ref:K,href:"#volume-high"}))),l.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:Y,style:{display:"none"},onClick:ue})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:m.a["video-progress"]},l.a.createElement("progress",{ref:U,value:"0",min:"0"}),l.a.createElement("input",{className:m.a.seek,ref:F,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:m.a["seek-tooltip"],ref:H,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},htaC: +/*! exports used: default */function(e,t,i){"use strict";i(/*! antd/es/message/style */"miYZ");var n=i(/*! antd/es/message */"tsqr"),r=i(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),a=i(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),s=i.n(a),o=i(/*! react */"q1tI"),l=i.n(o),c=i(/*! flv.js */"GUcZ"),u=i(/*! hls.js */"ulZh"),h=i.n(u),d=i(/*! @/utils/authority */"xKgJ"),f=i(/*! @/utils/fullscreen.ts */"bntm"),p=i(/*! ./index.less?modules */"4xil"),m=i.n(p);function g(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function v(e,t){return e-t}function y(e){e.sort(v);for(var t=0,i=0;i0&&!this.paused&&!this.ended&&this.readyState>2)}});var b=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(o.forwardRef)((function(e,t){var i,a,u,p=e.src,v=e.toLog,E=e.videoId,S=e.logWatchHistory,x=e.courseId,A=void 0===x?null:x,C=e.startTime,w=e.handlePause,k=void 0===w?function(){}:w,T=e.handlePlay,_=void 0===T?function(){}:T,O=e.handlePlayEnded,I=void 0===O?function(){}:O,R=e.videoSpeed,L=void 0===R?1:R,D="flv"===(null===(a=p=null===(i=p)||void 0===i?void 0:i.replace("http://","http://"))||void 0===a||null===(u=a.split("."))||void 0===u?void 0:u.pop()),M=Object(o.useRef)(),P=Object(o.useRef)(),N=Object(o.useRef)(),B=Object(o.useRef)(),j=Object(o.useRef)(),F=Object(o.useRef)(),U=Object(o.useRef)(),z=Object(o.useRef)(),G=Object(o.useRef)(),H=Object(o.useRef)(),V=Object(o.useRef)(),K=Object(o.useRef)(),W=Object(o.useRef)(),Y=Object(o.useRef)(),Q=navigator.userAgent.toLowerCase().match(b),J=Q?Q[0]:"pc",q=Object(o.useRef)(!1),X=Object(d.x)(),Z=0,$=0,ee=0,te=null,ie=!1,ne=20,re=1,ae=!1,se=!1,oe=[];Object(o.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return M.current.currentTime},getDuration:function(){return M.current.duration}}}));var le=Object(o.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i={point:M.current.currentTime};function n(){return a.apply(this,arguments)}function a(){return(a=Object(r.a)(s.a.mark((function t(){var n;return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae=!0,t.next=3,S(i);case 3:n=t.sent,te=n,ae=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(i.log_id=te,i.watch_duration=y(oe),i.total_duration=$):(A?(i.video_id=parseInt(E,10),i.course_id=A):i.video_id=E,i.duration=Z,i.device=J),t&&(i.ed="1"),n()}),[E,A]);function ce(){M.current.paused?(B.current.style.display="none",j.current.style.display="block"):(B.current.style.display="block",j.current.style.display="none")}function ue(){V.current.style.display="none",W.current.style.display="none",K.current.style.display="none",M.current.muted||0===M.current.volume?V.current.style.display="block":M.current.volume>0&&M.current.volume<=.5?W.current.style.display="block":K.current.style.display="block"}Object(o.useEffect)((function(){var e;n.b.destroy();var t=null;return c.a.isSupported&&D&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=c.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),M.current&&(t.attachMediaElement(M.current),t.load())):M.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[M,D,p]),Object(o.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){_(),C&&!q.current&&(M.current.currentTime=C),q.current=!0,oe.push(M.current.currentTime),ie||(ie=!0,v&&le())}function t(){return i.apply(this,arguments)}function i(){return(i=Object(r.a)(s.a.mark((function e(){return s.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ce(),oe.push(M.current.currentTime),v&&le((function(){te=null,ee=0,ie=!1,ae=!1,se=!1,oe=[],$=0,re=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function n(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);z.current.innerText="".concat(t.minutes,":").concat(t.seconds),z.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function a(){var e=Math.round(M.current.duration);F.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=g(e);z.current.innerText="".concat(t.minutes,":").concat(t.seconds),z.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),F.current.value=Math.floor(M.current.currentTime),U.current.value=Math.floor(M.current.currentTime),function(){var e=g(Math.round(M.current.currentTime));G.current.innerText="".concat(e.minutes,":").concat(e.seconds),G.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var i=P.current.getBoundingClientRect(),n=i.width,r=(i.height,i.x),a=i.y;if(!(r<0||a<0)&&n&&!se){var s=M.current.currentTime,o=s-ee;Math.abs(o)<10?($+=Math.abs(o),ee=s,ae||$-re*ne>=0&&(re++,oe.push(ee),v&&le())):(ee=s,v&&le())}}function o(){se=!0}function l(){M.current.playing&&oe.push(M.current.currentTime,ee),ee=M.current.currentTime,se=!1}function c(){(Z=M.current.duration)<=20&&(ne=Z/3),M.current.addEventListener("play",e)}function u(){k()}function h(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;M.current.currentTime=t,U.current.value=t,F.current.value=t}function d(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));F.current.setAttribute("data-seek",t);var i=g(t);H.current.textContent="".concat(i.minutes,":").concat(i.seconds);var n=M.current.getBoundingClientRect();H.current.style.left="".concat(e.pageX-n.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(M.current.style.width="100%",M.current.style.height="100%"):M.current.style.cssText=""})),M.current.addEventListener("canplay",c),M.current.addEventListener("ended",t),M.current.addEventListener("seeking",o),M.current.addEventListener("seeked",l),M.current.addEventListener("loadedmetadata",n),F.current.addEventListener("mousemove",d),F.current.addEventListener("input",h),M.current.addEventListener("timeupdate",a),M.current.addEventListener("pause",u),M.current.addEventListener("volumechange",ue),function(){M.current.removeEventListener("canplay",c),M.current.removeEventListener("play",e),M.current.removeEventListener("ended",t),M.current.removeEventListener("seeking",o),M.current.removeEventListener("seeked",l),F.current.removeEventListener("mousemove",d),F.current.removeEventListener("input",h),M.current.removeEventListener("timeupdate",a),M.current.removeEventListener("pause",u),M.current.removeEventListener("loadedmetadata",n),M.current.removeEventListener("volumechange",ue),M.current.playing&&(oe.push(ee,M.current.currentTime),v&&le())}}),[M,p]),Object(o.useEffect)((function(){var e;if(M.current.onended=function(){I(M)},M.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(M.current.canPlayType("application/vnd.apple.mpegurl"))M.current.src=p;else if(h.a.isSupported()){var t=new h.a;t.loadSource(p),t.attachMedia(M.current)}}),[p]),Object(o.useEffect)((function(){M.current.playbackRate=L}),[L]);return l.a.createElement("div",{style:{position:"relative"},ref:N},l.a.createElement("div",{ref:P,className:"".concat(m.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(m.a.animate__loop)},X?X.login:" "),l.a.createElement("div",{className:m.a.container},l.a.createElement("div",{className:m.a["video-container"],id:"video-container"},l.a.createElement("div",{className:m.a["playback-animation"],id:"playback-animation"},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{className:"hidden",href:"#play-icon"}),l.a.createElement("use",{href:"#pause"}))),l.a.createElement("video",{className:m.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:M,autoPlay:!1}),l.a.createElement("div",{className:"".concat(m.a["video-controls"]," "),id:"video-controls"},l.a.createElement("div",{className:m.a["bottom-controls"]},l.a.createElement("div",{className:m.a["left-controls"]},l.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){M.current.paused||M.current.ended?M.current.play():M.current.pause(),ce()}},l.a.createElement("svg",{className:m.a["playback-icons"]},l.a.createElement("use",{ref:j,href:"#play-icon"}),l.a.createElement("use",{ref:B,style:{display:"none"},href:"#pause"}))),l.a.createElement("div",{className:m.a.time},l.a.createElement("time",{id:"time-elapsed",ref:G},"00:00"),l.a.createElement("span",null," / "),l.a.createElement("time",{id:"duration",ref:z},"00:00"))),l.a.createElement("div",{className:m.a["right-controls"]},l.a.createElement("div",{className:m.a["volume-controls"]},l.a.createElement("button",{"data-title":"开启/关闭声音",className:m.a["volume-button"],id:"volume-button",onClick:function(){M.current.muted=!M.current.muted,M.current.muted?(Y.current.setAttribute("data-volume",volume.value),Y.current.value=0):Y.current.value=Y.current.dataset.volume}},l.a.createElement("svg",null,l.a.createElement("use",{ref:V,href:"#volume-mute"}),l.a.createElement("use",{ref:W,href:"#volume-low"}),l.a.createElement("use",{ref:K,href:"#volume-high"}))),l.a.createElement("input",{className:m.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:Y,style:{display:"none"},onClick:ue})),l.a.createElement("button",{"data-title":"全屏/退出全屏",className:m.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},l.a.createElement("svg",null,l.a.createElement("use",{href:"#fullscreen"}),l.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),l.a.createElement("div",{className:m.a["video-progress"]},l.a.createElement("progress",{ref:U,value:"0",min:"0"}),l.a.createElement("input",{className:m.a.seek,ref:F,value:"0",min:"0",type:"range",step:"1"}),l.a.createElement("div",{className:m.a["seek-tooltip"],ref:H,id:"seek-tooltip"},"00:00"))))),l.a.createElement("svg",{style:{display:"none"}},l.a.createElement("defs",null,l.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),l.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),l.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),l.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),l.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),l.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),l.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),l.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},l.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},htaC: /*!*****************************************************!*\ !*** ./src/pages/Home/OjElement/index.less?modules ***! \*****************************************************/ diff --git a/p__virtualSpaces__Lists__Video__index.bb31f5d0.async.js b/p__virtualSpaces__Lists__Video__index.bb31f5d0.async.js index 9e385886ba..92d31a026f 100644 --- a/p__virtualSpaces__Lists__Video__index.bb31f5d0.async.js +++ b/p__virtualSpaces__Lists__Video__index.bb31f5d0.async.js @@ -345,7 +345,7 @@ !*** ./src/components/Video/Play/index.jsx ***! \*********************************************/ /*! exports provided: default */ -/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),a=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),o=n.n(a),s=n(/*! react */"q1tI"),c=n.n(s),l=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),d=n.n(u),h=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),v=n.n(p);function m(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function g(e,t){return e-t}function b(e){e.sort(g);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var y=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(s.forwardRef)((function(e,t){var n,a,u,p=e.src,g=e.toLog,_=e.videoId,k=e.logWatchHistory,E=e.courseId,O=void 0===E?null:E,S=e.startTime,w=e.handlePause,C=void 0===w?function(){}:w,x=e.handlePlay,j=void 0===x?function(){}:x,A=e.handlePlayEnded,R=void 0===A?function(){}:A,T=e.videoSpeed,L=void 0===T?1:T,D="flv"===(null===(a=p=null===(n=p)||void 0===n?void 0:n.replace("http://","https://"))||void 0===a||null===(u=a.split("."))||void 0===u?void 0:u.pop()),I=Object(s.useRef)(),M=Object(s.useRef)(),N=Object(s.useRef)(),P=Object(s.useRef)(),B=Object(s.useRef)(),K=Object(s.useRef)(),U=Object(s.useRef)(),F=Object(s.useRef)(),V=Object(s.useRef)(),z=Object(s.useRef)(),H=Object(s.useRef)(),G=Object(s.useRef)(),W=Object(s.useRef)(),q=Object(s.useRef)(),X=navigator.userAgent.toLowerCase().match(y),Y=X?X[0]:"pc",J=Object(s.useRef)(!1),Q=Object(h.x)(),Z=0,$=0,ee=0,te=null,ne=!1,re=20,ie=1,ae=!1,oe=!1,se=[];Object(s.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return I.current.currentTime},getDuration:function(){return I.current.duration}}}));var ce=Object(s.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:I.current.currentTime};function r(){return a.apply(this,arguments)}function a(){return(a=Object(i.a)(o.a.mark((function t(){var r;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae=!0,t.next=3,k(n);case 3:r=t.sent,te=r,ae=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=b(se),n.total_duration=$):(O?(n.video_id=parseInt(_,10),n.course_id=O):n.video_id=_,n.duration=Z,n.device=Y),t&&(n.ed="1"),r()}),[_,O]);function le(){I.current.paused?(P.current.style.display="none",B.current.style.display="block"):(P.current.style.display="block",B.current.style.display="none")}function ue(){H.current.style.display="none",W.current.style.display="none",G.current.style.display="none",I.current.muted||0===I.current.volume?H.current.style.display="block":I.current.volume>0&&I.current.volume<=.5?W.current.style.display="block":G.current.style.display="block"}Object(s.useEffect)((function(){var e;r.b.destroy();var t=null;return l.a.isSupported&&D&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=l.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),I.current&&(t.attachMediaElement(I.current),t.load())):I.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[I,D,p]),Object(s.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){j(),S&&!J.current&&(I.current.currentTime=S),J.current=!0,se.push(I.current.currentTime),ne||(ne=!0,g&&ce())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(i.a)(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:le(),se.push(I.current.currentTime),g&&ce((function(){te=null,ee=0,ne=!1,ae=!1,oe=!1,se=[],$=0,ie=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function a(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),K.current.value=Math.floor(I.current.currentTime),U.current.value=Math.floor(I.current.currentTime),function(){var e=m(Math.round(I.current.currentTime));V.current.innerText="".concat(e.minutes,":").concat(e.seconds),V.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=M.current.getBoundingClientRect(),r=n.width,i=(n.height,n.x),a=n.y;if(!(i<0||a<0)&&r&&!oe){var o=I.current.currentTime,s=o-ee;Math.abs(s)<10?($+=Math.abs(s),ee=o,ae||$-ie*re>=0&&(ie++,se.push(ee),g&&ce())):(ee=o,g&&ce())}}function s(){oe=!0}function c(){I.current.playing&&se.push(I.current.currentTime,ee),ee=I.current.currentTime,oe=!1}function l(){(Z=I.current.duration)<=20&&(re=Z/3),I.current.addEventListener("play",e)}function u(){C()}function d(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;I.current.currentTime=t,U.current.value=t,K.current.value=t}function h(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));K.current.setAttribute("data-seek",t);var n=m(t);z.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=I.current.getBoundingClientRect();z.current.style.left="".concat(e.pageX-r.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(I.current.style.width="100%",I.current.style.height="100%"):I.current.style.cssText=""})),I.current.addEventListener("canplay",l),I.current.addEventListener("ended",t),I.current.addEventListener("seeking",s),I.current.addEventListener("seeked",c),I.current.addEventListener("loadedmetadata",r),K.current.addEventListener("mousemove",h),K.current.addEventListener("input",d),I.current.addEventListener("timeupdate",a),I.current.addEventListener("pause",u),I.current.addEventListener("volumechange",ue),function(){I.current.removeEventListener("canplay",l),I.current.removeEventListener("play",e),I.current.removeEventListener("ended",t),I.current.removeEventListener("seeking",s),I.current.removeEventListener("seeked",c),K.current.removeEventListener("mousemove",h),K.current.removeEventListener("input",d),I.current.removeEventListener("timeupdate",a),I.current.removeEventListener("pause",u),I.current.removeEventListener("loadedmetadata",r),I.current.removeEventListener("volumechange",ue),I.current.playing&&(se.push(ee,I.current.currentTime),g&&ce())}}),[I,p]),Object(s.useEffect)((function(){var e;if(I.current.onended=function(){R(I)},I.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(I.current.canPlayType("application/vnd.apple.mpegurl"))I.current.src=p;else if(d.a.isSupported()){var t=new d.a;t.loadSource(p),t.attachMedia(I.current)}}),[p]),Object(s.useEffect)((function(){I.current.playbackRate=L}),[L]);return c.a.createElement("div",{style:{position:"relative"},ref:N},c.a.createElement("div",{ref:M,className:"".concat(v.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(v.a.animate__loop)},Q?Q.login:" "),c.a.createElement("div",{className:v.a.container},c.a.createElement("div",{className:v.a["video-container"],id:"video-container"},c.a.createElement("div",{className:v.a["playback-animation"],id:"playback-animation"},c.a.createElement("svg",{className:v.a["playback-icons"]},c.a.createElement("use",{className:"hidden",href:"#play-icon"}),c.a.createElement("use",{href:"#pause"}))),c.a.createElement("video",{className:v.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:I,autoPlay:!1}),c.a.createElement("div",{className:"".concat(v.a["video-controls"]," "),id:"video-controls"},c.a.createElement("div",{className:v.a["bottom-controls"]},c.a.createElement("div",{className:v.a["left-controls"]},c.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){I.current.paused||I.current.ended?I.current.play():I.current.pause(),le()}},c.a.createElement("svg",{className:v.a["playback-icons"]},c.a.createElement("use",{ref:B,href:"#play-icon"}),c.a.createElement("use",{ref:P,style:{display:"none"},href:"#pause"}))),c.a.createElement("div",{className:v.a.time},c.a.createElement("time",{id:"time-elapsed",ref:V},"00:00"),c.a.createElement("span",null," / "),c.a.createElement("time",{id:"duration",ref:F},"00:00"))),c.a.createElement("div",{className:v.a["right-controls"]},c.a.createElement("div",{className:v.a["volume-controls"]},c.a.createElement("button",{"data-title":"开启/关闭声音",className:v.a["volume-button"],id:"volume-button",onClick:function(){I.current.muted=!I.current.muted,I.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},c.a.createElement("svg",null,c.a.createElement("use",{ref:H,href:"#volume-mute"}),c.a.createElement("use",{ref:W,href:"#volume-low"}),c.a.createElement("use",{ref:G,href:"#volume-high"}))),c.a.createElement("input",{className:v.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),c.a.createElement("button",{"data-title":"全屏/退出全屏",className:v.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},c.a.createElement("svg",null,c.a.createElement("use",{href:"#fullscreen"}),c.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),c.a.createElement("div",{className:v.a["video-progress"]},c.a.createElement("progress",{ref:U,value:"0",min:"0"}),c.a.createElement("input",{className:v.a.seek,ref:K,value:"0",min:"0",type:"range",step:"1"}),c.a.createElement("div",{className:v.a["seek-tooltip"],ref:z,id:"seek-tooltip"},"00:00"))))),c.a.createElement("svg",{style:{display:"none"}},c.a.createElement("defs",null,c.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),c.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),c.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),c.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),c.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),c.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),c.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),c.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},k3GJ: +/*! exports used: default */function(e,t,n){"use strict";n(/*! antd/es/message/style */"miYZ");var r=n(/*! antd/es/message */"tsqr"),i=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */"9og8"),a=n(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */"WmNS"),o=n.n(a),s=n(/*! react */"q1tI"),c=n.n(s),l=n(/*! flv.js */"GUcZ"),u=n(/*! hls.js */"ulZh"),d=n.n(u),h=n(/*! @/utils/authority */"xKgJ"),f=n(/*! @/utils/fullscreen.ts */"bntm"),p=n(/*! ./index.less?modules */"4xil"),v=n.n(p);function m(e){if(isNaN(e))return{minutes:"00",seconds:"00"};var t=new Date(1e3*e).toISOString().substr(11,8);return{minutes:t.substr(3,2),seconds:t.substr(6,2)}}function g(e,t){return e-t}function b(e){e.sort(g);for(var t=0,n=0;n0&&!this.paused&&!this.ended&&this.readyState>2)}});var y=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;t.a=Object(s.forwardRef)((function(e,t){var n,a,u,p=e.src,g=e.toLog,_=e.videoId,k=e.logWatchHistory,E=e.courseId,O=void 0===E?null:E,S=e.startTime,w=e.handlePause,C=void 0===w?function(){}:w,x=e.handlePlay,j=void 0===x?function(){}:x,A=e.handlePlayEnded,R=void 0===A?function(){}:A,T=e.videoSpeed,L=void 0===T?1:T,D="flv"===(null===(a=p=null===(n=p)||void 0===n?void 0:n.replace("http://","http://"))||void 0===a||null===(u=a.split("."))||void 0===u?void 0:u.pop()),I=Object(s.useRef)(),M=Object(s.useRef)(),N=Object(s.useRef)(),P=Object(s.useRef)(),B=Object(s.useRef)(),K=Object(s.useRef)(),U=Object(s.useRef)(),F=Object(s.useRef)(),V=Object(s.useRef)(),z=Object(s.useRef)(),H=Object(s.useRef)(),G=Object(s.useRef)(),W=Object(s.useRef)(),q=Object(s.useRef)(),X=navigator.userAgent.toLowerCase().match(y),Y=X?X[0]:"pc",J=Object(s.useRef)(!1),Q=Object(h.x)(),Z=0,$=0,ee=0,te=null,ne=!1,re=20,ie=1,ae=!1,oe=!1,se=[];Object(s.useImperativeHandle)(t,(function(){return{getLastUpdatedTime:function(){return I.current.currentTime},getDuration:function(){return I.current.duration}}}));var ce=Object(s.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n={point:I.current.currentTime};function r(){return a.apply(this,arguments)}function a(){return(a=Object(i.a)(o.a.mark((function t(){var r;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae=!0,t.next=3,k(n);case 3:r=t.sent,te=r,ae=!1,e&&e();case 7:case"end":return t.stop()}}),t)})))).apply(this,arguments)}te?(n.log_id=te,n.watch_duration=b(se),n.total_duration=$):(O?(n.video_id=parseInt(_,10),n.course_id=O):n.video_id=_,n.duration=Z,n.device=Y),t&&(n.ed="1"),r()}),[_,O]);function le(){I.current.paused?(P.current.style.display="none",B.current.style.display="block"):(P.current.style.display="block",B.current.style.display="none")}function ue(){H.current.style.display="none",W.current.style.display="none",G.current.style.display="none",I.current.muted||0===I.current.volume?H.current.style.display="block":I.current.volume>0&&I.current.volume<=.5?W.current.style.display="block":G.current.style.display="block"}Object(s.useEffect)((function(){var e;r.b.destroy();var t=null;return l.a.isSupported&&D&&p&&(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))<0?(t=l.a.createPlayer({type:"flv",volume:.8,cors:!0,url:p,muted:!1}),I.current&&(t.attachMediaElement(I.current),t.load())):I.current.setAttribute("src",p),ue(),function(){t&&(t.unload(),t.pause(),t.destroy(),t=null)}}),[I,D,p]),Object(s.useEffect)((function(){document.getElementById("play"),document.querySelectorAll(".playback-icons use");function e(){j(),S&&!J.current&&(I.current.currentTime=S),J.current=!0,se.push(I.current.currentTime),ne||(ne=!0,g&&ce())}function t(){return n.apply(this,arguments)}function n(){return(n=Object(i.a)(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:le(),se.push(I.current.currentTime),g&&ce((function(){te=null,ee=0,ne=!1,ae=!1,oe=!1,se=[],$=0,ie=1}),!0);case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function r(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s"))}function a(){var e=Math.round(I.current.duration);K.current.setAttribute("max",e),U.current.setAttribute("max",e);var t=m(e);F.current.innerText="".concat(t.minutes,":").concat(t.seconds),F.current.setAttribute("datetime","".concat(t.minutes,"m ").concat(t.seconds,"s")),K.current.value=Math.floor(I.current.currentTime),U.current.value=Math.floor(I.current.currentTime),function(){var e=m(Math.round(I.current.currentTime));V.current.innerText="".concat(e.minutes,":").concat(e.seconds),V.current.setAttribute("datetime","".concat(e.minutes,"m ").concat(e.seconds,"s"))}();var n=M.current.getBoundingClientRect(),r=n.width,i=(n.height,n.x),a=n.y;if(!(i<0||a<0)&&r&&!oe){var o=I.current.currentTime,s=o-ee;Math.abs(s)<10?($+=Math.abs(s),ee=o,ae||$-ie*re>=0&&(ie++,se.push(ee),g&&ce())):(ee=o,g&&ce())}}function s(){oe=!0}function c(){I.current.playing&&se.push(I.current.currentTime,ee),ee=I.current.currentTime,oe=!1}function l(){(Z=I.current.duration)<=20&&(re=Z/3),I.current.addEventListener("play",e)}function u(){C()}function d(e){var t=e.target.dataset.seek?e.target.dataset.seek:e.target.value;I.current.currentTime=t,U.current.value=t,K.current.value=t}function h(e){var t=Math.round(e.offsetX/e.target.clientWidth*parseInt(e.target.getAttribute("max"),10));K.current.setAttribute("data-seek",t);var n=m(t);z.current.textContent="".concat(n.minutes,":").concat(n.seconds);var r=I.current.getBoundingClientRect();z.current.style.left="".concat(e.pageX-r.left,"px")}return N.current.addEventListener(Object(f.c)(),(function(e){e.preventDefault(),Object(f.a)()?(I.current.style.width="100%",I.current.style.height="100%"):I.current.style.cssText=""})),I.current.addEventListener("canplay",l),I.current.addEventListener("ended",t),I.current.addEventListener("seeking",s),I.current.addEventListener("seeked",c),I.current.addEventListener("loadedmetadata",r),K.current.addEventListener("mousemove",h),K.current.addEventListener("input",d),I.current.addEventListener("timeupdate",a),I.current.addEventListener("pause",u),I.current.addEventListener("volumechange",ue),function(){I.current.removeEventListener("canplay",l),I.current.removeEventListener("play",e),I.current.removeEventListener("ended",t),I.current.removeEventListener("seeking",s),I.current.removeEventListener("seeked",c),K.current.removeEventListener("mousemove",h),K.current.removeEventListener("input",d),I.current.removeEventListener("timeupdate",a),I.current.removeEventListener("pause",u),I.current.removeEventListener("loadedmetadata",r),I.current.removeEventListener("volumechange",ue),I.current.playing&&(se.push(ee,I.current.currentTime),g&&ce())}}),[I,p]),Object(s.useEffect)((function(){var e;if(I.current.onended=function(){R(I)},I.current.oncontextmenu=function(){return!1},(null===(e=p)||void 0===e?void 0:e.indexOf(".m3u8"))>-1)if(I.current.canPlayType("application/vnd.apple.mpegurl"))I.current.src=p;else if(d.a.isSupported()){var t=new d.a;t.loadSource(p),t.attachMedia(I.current)}}),[p]),Object(s.useEffect)((function(){I.current.playbackRate=L}),[L]);return c.a.createElement("div",{style:{position:"relative"},ref:N},c.a.createElement("div",{ref:M,className:"".concat(v.a.watermark," animated_alternate animate__animated_10s animate__infinite animate__stepstart ").concat(v.a.animate__loop)},Q?Q.login:" "),c.a.createElement("div",{className:v.a.container},c.a.createElement("div",{className:v.a["video-container"],id:"video-container"},c.a.createElement("div",{className:v.a["playback-animation"],id:"playback-animation"},c.a.createElement("svg",{className:v.a["playback-icons"]},c.a.createElement("use",{className:"hidden",href:"#play-icon"}),c.a.createElement("use",{href:"#pause"}))),c.a.createElement("video",{className:v.a.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:I,autoPlay:!1}),c.a.createElement("div",{className:"".concat(v.a["video-controls"]," "),id:"video-controls"},c.a.createElement("div",{className:v.a["bottom-controls"]},c.a.createElement("div",{className:v.a["left-controls"]},c.a.createElement("button",{"data-title":"播放/暂停",id:"play",onClick:function(){I.current.paused||I.current.ended?I.current.play():I.current.pause(),le()}},c.a.createElement("svg",{className:v.a["playback-icons"]},c.a.createElement("use",{ref:B,href:"#play-icon"}),c.a.createElement("use",{ref:P,style:{display:"none"},href:"#pause"}))),c.a.createElement("div",{className:v.a.time},c.a.createElement("time",{id:"time-elapsed",ref:V},"00:00"),c.a.createElement("span",null," / "),c.a.createElement("time",{id:"duration",ref:F},"00:00"))),c.a.createElement("div",{className:v.a["right-controls"]},c.a.createElement("div",{className:v.a["volume-controls"]},c.a.createElement("button",{"data-title":"开启/关闭声音",className:v.a["volume-button"],id:"volume-button",onClick:function(){I.current.muted=!I.current.muted,I.current.muted?(q.current.setAttribute("data-volume",volume.value),q.current.value=0):q.current.value=q.current.dataset.volume}},c.a.createElement("svg",null,c.a.createElement("use",{ref:H,href:"#volume-mute"}),c.a.createElement("use",{ref:W,href:"#volume-low"}),c.a.createElement("use",{ref:G,href:"#volume-high"}))),c.a.createElement("input",{className:v.a.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:q,style:{display:"none"},onClick:ue})),c.a.createElement("button",{"data-title":"全屏/退出全屏",className:v.a["fullscreen-button"],onClick:function(){Object(f.a)()?Object(f.b)():Object(f.d)(N.current)}},c.a.createElement("svg",null,c.a.createElement("use",{href:"#fullscreen"}),c.a.createElement("use",{href:"#fullscreen-exit",className:"hidden"}))))),c.a.createElement("div",{className:v.a["video-progress"]},c.a.createElement("progress",{ref:U,value:"0",min:"0"}),c.a.createElement("input",{className:v.a.seek,ref:K,value:"0",min:"0",type:"range",step:"1"}),c.a.createElement("div",{className:v.a["seek-tooltip"],ref:z,id:"seek-tooltip"},"00:00"))))),c.a.createElement("svg",{style:{display:"none"}},c.a.createElement("defs",null,c.a.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),c.a.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),c.a.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),c.a.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),c.a.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),c.a.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),c.a.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),c.a.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},c.a.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))}))},k3GJ: /*!*******************************************************!*\ !*** ./node_modules/rc-tabs/es/index.js + 50 modules ***! \*******************************************************/