|
|
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[12076],{249:function(e,t,n){n.r(t),n.d(t,{default:function(){return oe}});var s=n(7557),i=n.n(s),a=n(82242),o=n.n(a),l=n(41498),c=n.n(l),r=n(79800),u=n.n(r),d=n(39647),m=n.n(d),p=n(59301),_=n(49389),x=n(78241),f=n(95237),h=n(8591),g=n(73755),v=n(6848),j=n(58421),b=n(43418),y=n(10249),N=n(3113),S="wrap___S3lx0",w="countWrap___tpXul",C="close___qwPuO",k="description___YHwxX",E="bottomText___oqcZk",F="CompetitionsList___mwIel",Z="CompetitionsListzhezhao___OiSIi",I="shadow___iTRBk",$="divimg___vS_gS",B="commonTextBox___THI9L",D="havetext___c1f2m",z="Finishedtext___chFiq",O="Comingtext___h6fHO",P="info___v5RHL",T="bonus___lrFm4",M="rmb___Q8E6y",L="applyInfo___ck29q",H="task_hide___mAsn0",R="Unpublishedtext___D9LjX",X="scoremodal___OiQdF",q="title___fAx3h",G="content___MbGbI",Q="bottom___cOeks",A="yes___lMqJj",Y="no___j6M_d",J="baseFormItem___iTGaw",W="jsinput___Hg3Qu",U=n(94171),V=n(940),K=n(91689),ee=n(92866),te=n(83287),ne=n(7338),se=n(37712),ie=["competitions","globalSetting","loading","dispatch","user"],ae=[{id:"mine",name:"我管理的",color:"#DB780F",border:"1px solid #FDDBB7"},{id:"join",name:"我参与的",color:"#4237E7",border:"1px solid #B6B1FF"}],oe=(0,_.connect)((function(e){var t=e.competitions,n=e.loading,s=e.globalSetting,i=e.user;return{competitions:t,globalSetting:s,loading:n.models.competitions,user:i}}))((function(e){e.competitions,e.globalSetting,e.loading,e.dispatch;var t=e.user,n=(m()(e,ie),(0,_.useParams)().identifier,(0,p.useState)({category:"mine",keyword:"",page:1,per_page:20})),s=u()(n,2),a=s[0],l=s[1],r=(0,p.useState)({}),d=u()(r,2),oe=d[0],le=d[1],ce=(0,p.useState)(!1),re=u()(ce,2),ue=re[0],de=re[1],me=x.Z.useForm(),pe=u()(me,1)[0],_e=(0,p.useState)(!1),xe=u()(_e,2),fe=xe[0],he=xe[1];function ge(){return ve.apply(this,arguments)}function ve(){return(ve=c()(i()().mark((function e(){var t;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,U.ZP)("/api/competitions.json",{method:"get",params:o()({},a)});case 2:t=e.sent,le(t);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}(0,p.useEffect)((function(){ge()}),[]);return(0,se.jsxs)("div",{className:S,children:[(0,se.jsx)(V.YG,{value:a.category,onChange:function(e){a.category=e,l(o()({},a)),ge()},tabBarExtraContent:(0,se.jsxs)(f.Z,{align:"middle",children:[(0,se.jsx)(V.op,{className:"mr20",onClick:function(){var e,n;(0,ne.eB)()||null!==(e=t.userInfo)&&void 0!==e&&e.professional_certification&&null!==(n=t.userInfo)&&void 0!==n&&n.is_teacher?de(!0):h.ZP.info("当前仅支持已职业认证的教师可创建")},children:(0,se.jsxs)(f.Z,{align:"middle",children:[(0,se.jsx)("img",{src:ee.FX}),(0,se.jsx)("span",{className:"ml5",children:"创建竞赛"})]})}),(0,se.jsx)(V.t7,{style:{width:303},placeholder:"请输入竞赛名称进行搜索",value:a.keyword,onChange:function(e){a.keyword=e,l(o()({},a)),ge()}})]}),dataSource:ae}),(0,se.jsx)(g.Z,{itemLayout:"vertical",size:"middle",style:{marginTop:20},dataSource:null==oe?void 0:oe.competitions,renderItem:function(e,n){return(0,se.jsxs)("div",{className:F,children:["nearly_published"===e.competition_status?1==e.permission.editable?"":(0,se.jsx)("div",{className:Z,children:"即将发布 敬请期待"}):"",(0,se.jsxs)(g.Z.Item,{onClick:function(){return function(e){if(e.external_url){var n;(0,te.xg)("".concat(e.external_url)+"?login="+(null==t||null===(n=t.userInfo)||void 0===n?void 0:n.login)+"&websiteName=educoder")}else{if(null!=e&&e.is_new)return void(e.permission.editable?(0,te.xg)("/competitions/detail/".concat(e.identifier,"?type=4")):(0,te.xg)("/competitions/detail/".concat(e.identifier)));("ended"===e.competition_status||"progressing"===e.competition_status||"unpublish"===e.competition_status||"nearly_published"===e.competition_status&&1==e.permission.editable)&&(0,te.xg)("/competitions/".concat(e.identifier))}}(e)},className:I,style:{display:"flex",padding:20},children:[(0,se.jsx)(g.Z.Item.Meta,{style:{marginBottom:"0px",width:"80%"},avatar:(0,se.jsx)("img",{className:$,src:e&&e.image?"".concat(K.Z.IMG_SERVER)+e.image:ee.I2}),title:(0,se.jsxs)("p",{style:{alignItems:"center",display:"flex",marginBottom:7,paddingRight:20},children:[(0,se.jsx)(v.Z,{getPopupContainer:function(e){return e.parentNode},title:(0,se.jsxs)("span",{children:[e.name,e.sub_title?"——".concat(e.sub_title):""]}),children:(0,se.jsxs)("a",{className:H,children:[e.name,e.sub_title?"——".concat(e.sub_title):""]})}),e.competition_status&&"nearly_published"===e.competition_status?(0,se.jsx)("span",{className:"".concat(B," ").concat(O),children:"即将发布"}):"",e.competition_status&&"preparing"===e.competition_status?(0,se.jsx)("span",{style:{color:"#DB780F",border:"1px solid #FDDBB7"},className:"".concat(B," ").concat(z),children:"待审核"}):"",e.competition_status&&"not_passed"===e.competition_status?(0,se.jsx)("span",{style:{color:"#E30000",border:"1px solid #FFC7C7"},className:"".concat(B," ").concat(z),children:"被驳回"}):"",e.competition_status&&"review"===e.competition_status?(0,se.jsx)("span",{style:{color:"#4237E7",border:"1px solid #B6B1FF"},className:"".concat(B," ").concat(z),children:"审核中"}):"",e.competition_status&&"progressing"===e.competition_status?(0,se.jsx)("span",{style:{color:"#00B187",border:"1px solid #B1F0E1"},className:"".concat(B," ").concat(D),children:"进行中"}):"",e.competition_status&&"ended"===e.competition_status?(0,se.jsx)("span",{className:"".concat(B," ").concat(z),children:"已结束"}):"",e.competition_status&&"unpublish"===e.competition_status?(0,se.jsx)("span",{className:"".concat(B," ").concat(z),children:"未发布"}):""]}),description:(0,se.jsxs)("div",{className:k,children:[(0,se.jsx)(v.Z,{getPopupContainer:function(e){return e.parentNode},title:(0,se.jsx)("span",{children:e.description?e.description:"暂无简介~"}),children:(0,se.jsx)("div",{className:"multi_ellipsis1 inline-block",style:{fontSize:"14px",color:"#333333"},children:e.description?e.description:"暂无简介~"})}),(0,se.jsxs)("div",{className:E,children:[(0,se.jsxs)("div",{style:{margin:"14px 0"},children:["竞赛时间: ",e.start_time,"~",e.end_time]}),(0,se.jsxs)("div",{children:[(0,se.jsxs)("span",{children:["报名截止时间:",e&&e.enroll_end_time?e.enroll_end_time:"暂无"]}),(0,se.jsxs)("span",{style:{marginLeft:"20px"},children:["浏览数:",e&&e.visits_count?e.visits_count:"暂无"]})]})]})]})}),(0,se.jsxs)("div",{style:{flexShrink:0,width:"20%",alignItems:"flex-end",display:"flex",flexDirection:"column",justifyContent:"space-around"},children:[(0,se.jsxs)("div",{className:P,children:[(0,se.jsxs)("div",{className:T,style:{visibility:e&&e.bonus?"visible":"hidden"},children:[(0,se.jsx)("span",{className:M,children:"¥"}),parseInt(e.bonus).toLocaleString()]}),e.member_count?(0,se.jsxs)("div",{className:L,children:["已报名:","nearly_published"===e.competition_status?"0":e.member_count]}):""]}),e&&"ended"===e.competition_status?(0,se.jsx)("span",{className:R,children:"已结束"}):null,e&&"nearly_published"===e.competition_status?(0,se.jsx)("span",{className:R,children:"未发布"}):null,e&&"nearly_published"!==e.competition_status&&e.enroll_end&&"ended"!==e.competition_status?(0,se.jsx)("span",{className:R,children:"报名截止"}):null]})]},n)]})}}),(0,se.jsx)("div",{className:w,children:(0,se.jsx)(j.Z,{showQuickJumper:!0,showSizeChanger:!0,pageSizeOptions:["10","15","50","100","200"],total:null==oe?void 0:oe.count,onChange:function(e,t){a.page=e,a.per_page=t,l(o()({},a)),ge()},pageSize:a.per_page,hideOnSinglePage:!(null!=oe&&oe.count),current:a.page})}),(0,se.jsxs)(b.Z,{title:!1,footer:!1,open:ue,width:610,className:X,closable:!1,centered:!0,onCancel:function(){return de(!1)},children:[(0,se.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,se.jsx)("div",{className:q,children:"创建竞赛"}),(0,se.jsx)("span",{onClick:function(){return de(!1)},style:{cursor:"pointer"},className:C,children:"X"})]}),(0,se.jsx)("div",{className:G,children:(0,se.jsx)(x.Z,{form:pe,layout:"vertical",onFinish:function(){var e=c()(i()().mark((function e(t){var n;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return he(!0),e.next=3,(0,U.ZP)("/api/competitions.json",{method:"post",body:o()({},t)});case 3:n=e.sent,he(!1),0===(null==n?void 0:n.status)&&(h.ZP.info("创建成功"),_.history.push("/competitions/detail/".concat(null==n?void 0:n.identifier,"?type=4")));case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),children:(0,se.jsx)(x.Z.Item,{label:"竞赛名称",name:"name",className:W,rules:[{required:!0,validator:function(e,t){var n;return(null==t||null===(n=t.replaceAll(" ",""))||void 0===n?void 0:n.length)>0?Promise.resolve():Promise.reject("请填写竞赛名称")}}],children:(0,se.jsx)(y.Z,{maxLength:60,className:J,showCount:!0})})})}),(0,se.jsxs)("div",{className:Q,children:[(0,se.jsx)(N.ZP,{className:Y,onClick:function(){de(!1)},children:"取消"}),(0,se.jsx)(N.ZP,{loading:fe,className:A,onClick:function(){pe.submit()},children:"创建竞赛"})]})]})]})}))},31797:function(e,t,n){n.d(t,{Z:function(){return b}});var s=n(59301),i=n(56762),a=n(92343),o=n(92310),l=n.n(o),c=n(36355),r=n(61621);var u=e=>{const{value:t,formatter:n,precision:i,decimalSeparator:a,groupSeparator:o="",prefixCls:l}=e;let c;if("function"==typeof n)c=n(t);else{const e=String(t),n=e.match(/^(-?)(\d*)(\.(\d+))?$/);if(n&&"-"!==e){const e=n[1];let t=n[2]||"0",r=n[4]||"";t=t.replace(/\B(?=(\d{3})+(?!\d))/g,o),"number"==typeof i&&(r=r.padEnd(i,"0").slice(0,i>0?i:0)),r&&(r=`${a}${r}`),c=[s.createElement("span",{key:"int",className:`${l}-content-value-int`},e,t),r&&s.createElement("span",{key:"decimal",className:`${l}-content-value-decimal`},r)]}else c=e}return s.createElement("span",{className:`${l}-content-value`},c)},d=n(17313),m=n(83116),p=n(37613);const _=e=>{const{componentCls:t,marginXXS:n,padding:s,colorTextDescription:i,titleFontSize:a,colorTextHeading:o,contentFontSize:l,fontFamily:c}=e;return{[`${t}`]:Object.assign(Object.assign({},(0,d.Wf)(e)),{[`${t}-title`]:{marginBottom:n,color:i,fontSize:a},[`${t}-skeleton`]:{paddingTop:s},[`${t}-content`]:{color:o,fontSize:l,fontFamily:c,[`${t}-content-value`]:{display:"inline-block",direction:"ltr"},[`${t}-content-prefix, ${t}-content-suffix`]:{display:"inline-block"},[`${t}-content-prefix`]:{marginInlineEnd:n},[`${t}-content-suffix`]:{marginInlineStart:n}}})}};var x=(0,m.Z)("Statistic",(e=>{const t=(0,p.TS)(e,{});return[_(t)]}),(e=>{const{fontSizeHeading3:t,fontSize:n}=e;return{titleFontSize:n,contentFontSize:t}}));var f=e=>{const{prefixCls:t,className:n,rootClassName:i,style:a,valueStyle:o,value:d=0,title:m,valueRender:p,prefix:_,suffix:f,loading:h=!1,onMouseEnter:g,onMouseLeave:v,decimalSeparator:j=".",groupSeparator:b=","}=e,{getPrefixCls:y,direction:N,statistic:S}=s.useContext(c.E_),w=y("statistic",t),[C,k]=x(w),E=s.createElement(u,Object.assign({decimalSeparator:j,groupSeparator:b,prefixCls:w},e,{value:d})),F=l()(w,{[`${w}-rtl`]:"rtl"===N},null==S?void 0:S.className,n,i,k);return C(s.createElement("div",{className:F,style:Object.assign(Object.assign({},null==S?void 0:S.style),a),onMouseEnter:g,onMouseLeave:v},m&&s.createElement("div",{className:`${w}-title`},m),s.createElement(r.Z,{paragraph:!1,loading:h,className:`${w}-skeleton`},s.createElement("div",{style:o,className:`${w}-content`},_&&s.createElement("span",{className:`${w}-content-prefix`},_),p?p(E):E,f&&s.createElement("span",{className:`${w}-content-suffix`},f)))))};const h=[["Y",31536e6],["M",2592e6],["D",864e5],["H",36e5],["m",6e4],["s",1e3],["S",1]];function g(e,t){const{format:n=""}=t,s=new Date(e).getTime(),i=Date.now();return function(e,t){let n=e;const s=/\[[^\]]*]/g,i=(t.match(s)||[]).map((e=>e.slice(1,-1))),a=t.replace(s,"[]"),o=h.reduce(((e,t)=>{let[s,i]=t;if(e.includes(s)){const t=Math.floor(n/i);return n-=t*i,e.replace(new RegExp(`${s}+`,"g"),(e=>{const n=e.length;return t.toString().padStart(n,"0")}))}return e}),a);let l=0;return o.replace(s,(()=>{const e=i[l];return l+=1,e}))}(Math.max(s-i,0),n)}const v=e=>{const{value:t,format:n="HH:mm:ss",onChange:o,onFinish:l}=e,c=(0,i.Z)(),r=s.useRef(null),u=()=>{const e=function(e){return new Date(e).getTime()}(t);e>=Date.now()&&(r.current=setInterval((()=>{c(),null==o||o(e-Date.now()),e<Date.now()&&(null==l||l(),r.current&&(clearInterval(r.current),r.current=null))}),33.333333333333336))};s.useEffect((()=>(u(),()=>{r.current&&(clearInterval(r.current),r.current=null)})),[t]);return s.createElement(f,Object.assign({},e,{valueRender:e=>(0,a.Tm)(e,{title:void 0}),formatter:(e,t)=>g(e,Object.assign(Object.assign({},t),{format:n}))}))};var j=s.memo(v);f.Countdown=j;var b=f}}]); |