You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
30 KiB
1 line
30 KiB
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[54492],{56501:function(e,t,n){n.d(t,{Z:function(){return w}});n(7557),n(41498);var s=n(82100),a=n.n(s),i=n(29186),r=n.n(i),c=n(13720),l=n.n(c),o=n(80619),d=n.n(o),u=n(47074),h=n.n(u),m=n(85573),x=n.n(m),p=n(59301),v=n(10249),_="codeBox___WpkVl",f=n(92310),j=n.n(f),g=n(37712),k=function(e){d()(n,e);var t=h()(n);function n(e){var s;return a()(this,n),s=t.call(this,e),x()(l()(s),"canvas",void 0),x()(l()(s),"randomNum",(function(e,t){return Math.floor(Math.random()*(t-e)+e)})),x()(l()(s),"drawPic",(function(){s.randomCode()})),x()(l()(s),"reloadPic",(function(){s.drawPic()})),x()(l()(s),"changeCode",(function(e){console.log(e.target.value,222),s.setState({value:e.target.value,showError:!1})})),x()(l()(s),"onVerify",(function(){var e;return""!==s.state.value.toLowerCase()&&s.state.value.toLowerCase()!==s.state.code.toLowerCase()||""===s.state.value.toLowerCase()?e=!0:s.state.value.toLowerCase()===s.state.code.toLowerCase()&&(e=!1),s.setState({showError:e}),e})),s.canvas=p.createRef(),s.state={value:"",code:"",codeLength:4,fontSizeMin:20,fontSizeMax:22,backgroundColorMin:240,backgroundColorMax:250,colorMin:10,colorMax:20,lineColorMin:40,lineColorMax:180,contentWidth:96,contentHeight:38,showError:!1},s}return r()(n,[{key:"componentDidMount",value:function(){this.drawPic()}},{key:"randomColor",value:function(e,t){var n=this.randomNum(e,t),s=this.randomNum(e,t),a=this.randomNum(e,t);return"rgb(".concat(n,", ").concat(s,", ").concat(a,")")}},{key:"drawText",value:function(e,t,n){e.fillStyle=this.randomColor(this.state.colorMin,this.state.colorMax);var s=this.randomNum(this.state.fontSizeMin,this.state.fontSizeMax);e.font=s+"px SimHei";var a=(this.state.contentWidth-40)/(this.state.code.length-1),i=10;n>0&&(i=10+n*a);var r=this.randomNum(this.state.fontSizeMax,this.state.contentHeight-5);s>40&&(r=40);var c=this.randomNum(-10,10);e.translate(i,r),e.rotate(c*Math.PI/180),e.fillText(t,0,0),e.rotate(-c*Math.PI/180),e.translate(-i,-r)}},{key:"drawLine",value:function(e){for(var t=0;t<1;t++)e.strokeStyle=this.randomColor(this.state.lineColorMin,this.state.lineColorMax),e.beginPath(),e.moveTo(this.randomNum(0,this.state.contentWidth),this.randomNum(0,this.state.contentHeight)),e.lineTo(this.randomNum(0,this.state.contentWidth),this.randomNum(0,this.state.contentHeight)),e.stroke()}},{key:"drawDot",value:function(e){for(var t=0;t<100;t++)e.fillStyle=this.randomColor(0,255),e.beginPath(),e.arc(this.randomNum(0,this.state.contentWidth),this.randomNum(0,this.state.contentHeight),1,0,2*Math.PI),e.fill()}},{key:"randomCode",value:function(){for(var e=this,t="",n=0;n<this.state.codeLength;n++){t+="QWERTYUPLKJHGFDSAZXCVBNMqwertyupkjhgfdsazxcvbnm1234567890"[Math.floor(57*Math.random())]}this.setState({code:t},(function(){var t=e.canvas.current.getContext("2d");t.textBaseline="bottom",t.fillStyle=e.randomColor(e.state.backgroundColorMin,e.state.backgroundColorMax),t.fillRect(0,0,e.state.contentWidth,e.state.contentHeight);for(var n=0;n<e.state.code.length;n++)e.drawText(t,e.state.code[n],n);e.drawLine(t),e.drawDot(t)}))}},{key:"render",value:function(){var e=this.props,t=e.className,n=e.width,s=void 0===n?300:n;return(0,g.jsxs)("div",{className:j()(_,t),style:{width:s},children:[(0,g.jsxs)("aside",{children:[(0,g.jsx)(v.Z,{value:this.state.value,onChange:this.changeCode,placeholder:"请输入图片中的验证码"}),this.state.showError&&(0,g.jsx)("div",{children:this.state.value?"请输入正确的验证码":"请输入验证码"})]}),(0,g.jsxs)("div",{children:[(0,g.jsx)("canvas",{onClick:this.reloadPic,ref:this.canvas,width:"100",height:"30"}),(0,g.jsx)("div",{className:"current",onClick:this.reloadPic,children:"看不清?换一张"})]})]})}}]),n}(p.Component),w=k},52557:function(e,t,n){n.r(t),n.d(t,{default:function(){return ge}});var s=n(59301),a=n(13032),i=n(61621),r=n(82242),c=n.n(r),l=n(37205),o=n.n(l),d=n(7557),u=n.n(d),h=n(41498),m=n.n(h),x=n(79800),p=n.n(x),v={flex_box_center:"flex_box_center___Oy3Ur",flex_space_between:"flex_space_between___tSEQI",flex_box_vertical_center:"flex_box_vertical_center___ub8YO",flex_box_center_end:"flex_box_center_end___MdOG3",flex_box_column:"flex_box_column___yn_xj",wrap:"wrap___j5lSK",teacherList:"teacherList___eiRwI",list:"list___xa00z",top:"top___Cgsez",tag:"tag___J4aum",name:"name___tDF5G",num:"num___pHt23",check:"check___kslxc",center:"center___FWR7i",img:"img___xWZT8",col:"col___Wszet",bottom:"bottom___ErSvm"},_=n(6848),f=n(43418),j=n(8591),g=n(1710),k=n(95237),w=n(71418),N=n(58421),C=n(57809),S=n(46906),y=n(95831),b=n(58181),Z=n(20731),P=n(17631),z=n(72226),M="wrap___Lk1KU",T="des___NrGnB",L="row____lS7x",W="list___PEHaz",I="actionBtns___eC3BF",O="state___PF2x0",E="tag0___HB3U8",B="tag1___YmXRD",F="tag2___l3QtF",H="tag3___dBINp",R=n(69142),D=n(91569),G=n(37712),q=function(e){var t,n=e.visible,i=e.data,r=void 0===i?{}:i,l=e.onSucceed,o=void 0===l?function(){}:l,d=e.onClose,h=void 0===d?function(){}:d,x=(0,a.useParams)(),v=(0,s.useState)(!0),_=p()(v,2),k=_[0],w=_[1],N=(0,s.useState)(1),C=p()(N,2),y=C[0],z=C[1],q=(0,s.useState)(0),Q=p()(q,2),Y=Q[0],U=Q[1],A=(0,s.useState)([]),J=p()(A,2),V=J[0],K=J[1],X=(0,s.useState)({page:1,per_page:20}),$=p()(X,2),ee=$[0],te=$[1];(0,s.useEffect)((function(){n&&((0,D.tu)()?(ne(ee),z(r.tabs)):w(!1))}),[n]),console.log(r,"data");var ne=function(){var e=m()(u()().mark((function e(t){var n;return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return w(!0),e.next=3,(0,b.ZP)("/api/graduations/".concat(x.id,"/student_tasks/review_list.json"),{method:"get",params:c()(c()({},t),{},{task_id:r.id})});case 3:0===(n=e.sent).status&&(K((null==n?void 0:n.data)||[]),U(null==n?void 0:n.count)),w(!1);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),se=function(){var e=m()(u()().mark((function e(t,n){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,b.ZP)("/api/graduations/".concat(x.id,"/").concat("通过"===n?"student_tasks":"student_tasks/not_pass",".json"),{method:"post",body:{id:t.id}});case 2:0===e.sent.status&&(j.ZP.success("操作成功"),ne(ee),o());case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),ae=[{title:"学生姓名",dataIndex:"name",ellipsis:!0,width:110,render:function(e,t){var n;return(0,G.jsx)("span",{children:null==t||null===(n=t.student)||void 0===n?void 0:n.name})}},{title:"学号",dataIndex:"student_id",ellipsis:!0,width:140,render:function(e,t){var n;return(0,G.jsx)("span",{children:(null==t||null===(n=t.student)||void 0===n?void 0:n.student_id)||"--"})}},{title:"专业",dataIndex:"major",ellipsis:!0,render:function(e,t){return(0,G.jsx)("span",{className:"c-grey-333",children:e})}},{title:"选题审核状态",dataIndex:"state",width:120,ellipsis:!0,render:function(e){return(0,G.jsxs)(G.Fragment,{children:[0===e&&(0,G.jsx)("div",{className:E,children:"待审核"}),1===e&&(0,G.jsx)("div",{className:B,children:"已通过"}),2===e&&(0,G.jsx)("div",{style:{color:"#E30000"},className:F,children:"已驳回"}),3===e&&(0,G.jsx)("div",{className:H,children:"已撤回"})]})}},{title:"申请时间",width:190,dataIndex:"time",render:function(e){return(0,G.jsx)("span",{style:{color:"#232B40"},children:e})}},{title:(0,G.jsx)("span",{children:"操作"}),dataIndex:"action",key:"action",align:"right",width:120,render:function(e,t){return(0,G.jsx)("span",{className:I,children:0===t.state?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)("span",{onClick:function(){return se(t,"通过")},children:"通过"}),(0,G.jsx)("span",{onClick:function(){return se(t,"驳回")},className:"ml10",children:"驳回"})]}):(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)("b",{children:"通过"}),(0,G.jsx)("b",{className:"ml10",children:"驳回"})]})})}}];return(0,G.jsx)(f.Z,{centered:!0,destroyOnClose:!0,onCancel:h,open:n,footer:null,title:(0,D.tu)()?(0,G.jsx)(S.tp,{dataSource:[{id:1,name:"课题详情"},{id:2,name:"申请记录"}],value:y,onChange:function(e){return z(e)}}):"课题详情",width:1e3,afterClose:function(){te({page:1,per_page:20})},children:(0,G.jsxs)("div",{className:M,children:[1===y&&(0,G.jsxs)("div",{className:T,children:[(0,G.jsxs)("div",{className:L,style:{alignItems:"center"},children:[(0,G.jsx)("span",{children:"课题名称"}),(0,G.jsx)("span",{style:{maxWidth:(0,D.tu)()?"100%":"769px"},title:r.name,children:r.name||"--"}),(0,D.h)()&&(0,G.jsxs)("div",{className:O,children:[0===r.state&&(0,G.jsx)("div",{className:E,children:"待审核"}),1===r.state&&(0,G.jsx)("div",{className:B,children:"已通过"}),2===r.state&&(0,G.jsx)("div",{className:F,children:"已驳回"}),3===r.state&&(0,G.jsx)("div",{className:H,children:"已撤回"})]})]}),(0,G.jsxs)("div",{className:L,children:[(0,G.jsx)("span",{children:"指导老师"}),(0,G.jsx)("span",{title:r.teacher_names,children:r.teacher_names||"--"})]}),(0,G.jsxs)("div",{className:L,children:[(0,G.jsx)("span",{children:"课题适合专业"}),(0,G.jsx)("span",{title:r.major,children:r.major||"--"})]}),(0,G.jsxs)("div",{className:L,children:[(0,G.jsx)("span",{children:"课题来源"}),(0,G.jsx)("span",{title:r.source,children:r.source||"--"})]}),(0,G.jsxs)("div",{className:L,children:[(0,G.jsx)("span",{children:"课题学科方向"}),(0,G.jsx)("span",{title:r.direction,children:r.direction||"--"})]}),(0,G.jsxs)("div",{className:L,children:[(0,G.jsx)("span",{children:"课题介绍"}),(0,G.jsx)("span",{children:r.description?(0,G.jsx)(R.Z,{value:r.description}):"--"})]}),(0,G.jsx)("div",{className:W,children:null==r||null===(t=r.attachments)||void 0===t?void 0:t.map((function(e,t){return(0,G.jsx)("div",{onClick:function(){var t;(0,Z.Nd)("","".concat(P.Z.API_SERVER).concat(null==e||null===(t=e.url)||void 0===t?void 0:t.replace("disposition=inline","")))},children:e.title})}))})]}),2===y&&(0,G.jsx)(g.Z,{dataSource:V,bordered:!1,rowKey:function(e){return e.id},columns:ae,loading:k,scroll:{y:500},size:"large",onChange:function(e,t,n){ee.page=null==e?void 0:e.current,ee.per_page=null==e?void 0:e.pageSize,te(c()({},ee)),ne(ee)},pagination:{pageSize:ee.per_page,total:Y,current:ee.page,showQuickJumper:!0,showSizeChanger:!0,hideOnSinglePage:!Y,size:"default",pageSizeOptions:["10","20","50","100","200"],showTotal:Z.rU}}),(0,G.jsx)("div",{style:{height:"20px"}})]})})},Q=n(42086),Y=n(56501),U=(0,a.connect)((function(e){return{graduations:e.graduations}}))((function(e){var t,n=e.graduations,r=(e.dispatch,(0,a.useParams)()),l=(0,a.useSearchParams)(),d=p()(l,1)[0],h=(0,s.useState)(1),x=p()(h,2),M=x[0],T=x[1],L=(0,s.useState)(!1),W=p()(L,2),I=W[0],O=W[1],E=(0,s.useState)(0),B=p()(E,2),F=B[0],H=B[1],R=(0,s.useState)(0),D=p()(R,2),U=D[0],A=D[1],J=(0,s.useState)([]),V=p()(J,2),K=V[0],X=V[1],$=(0,s.useState)([]),ee=p()($,2),te=ee[0],ne=ee[1],se=(0,s.useState)({}),ae=p()(se,2),ie=ae[0],re=ae[1],ce=(0,s.useState)({}),le=p()(ce,2),oe=le[0],de=le[1],ue=(0,s.useState)(!0),he=p()(ue,2),me=he[0],xe=he[1],pe=(0,s.useState)(!1),ve=p()(pe,2),_e=ve[0],fe=ve[1],je=n.menus,ge=(0,s.useRef)(null),ke=null!=d&&d.get("state")?Number(null==d?void 0:d.get("state")):"",we=je.find((function(e){return"student_selection"===e.clazz}))||{},Ne=je.find((function(e){return"student_selection"===e.clazz}))||1,Ce=(0,s.useState)({keyword:"",status:ke,page:1,per_page:20}),Se=p()(Ce,2),ye=Se[0],be=Se[1];(0,s.useEffect)((function(){Ze(ye)}),[M]);var Ze=function(){var e=m()(u()().mark((function e(t){var n;return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return O(!0),e.next=3,(0,b.ZP)("/api/graduations/".concat(null==r?void 0:r.id,"/").concat(1===M?"graduation_tasks":"student_tasks/student_list",".json"),{method:"get",params:t});case 3:0===(n=e.sent).status&&(X((null==n?void 0:n.data)||[]),H(null==n?void 0:n.count),A((null==n?void 0:n.total_count)||0)),O(!1);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),Pe=[{title:"学生姓名",dataIndex:"name",ellipsis:!0,width:100,render:function(e,t){return(0,G.jsx)(_.Z,{placement:"topLeft",title:e,children:(0,G.jsx)("span",{children:e||"--"})})}},{title:"学号",ellipsis:!0,width:100,dataIndex:"student_id",render:function(e){return(0,G.jsx)(_.Z,{placement:"topLeft",title:e,children:(0,G.jsx)("span",{children:e||"--"})})}},{title:"专业",dataIndex:"major",ellipsis:!0,width:110,render:function(e){return(0,G.jsx)(_.Z,{placement:"topLeft",title:e,children:(0,G.jsx)("span",{className:"c-grey-666",children:e||"--"})})}},{title:"课题名称",ellipsis:!0,dataIndex:"graduation_tasks",render:function(e){return(0,G.jsx)(_.Z,{placement:"topLeft",title:e,children:(0,G.jsx)("span",{children:e||"--"})})}},{title:"指导老师",dataIndex:"teacher",ellipsis:!0,width:110,render:function(e){return(0,G.jsx)(_.Z,{placement:"topLeft",title:e,children:(0,G.jsx)("span",{children:e||"--"})})}},{title:"双选状态",dataIndex:"status",width:90,render:function(e){return(0,G.jsxs)(G.Fragment,{children:[0===e&&(0,G.jsx)("div",{style:{color:"#E30000"},children:"未达成双选"}),1===e&&(0,G.jsx)("div",{children:"达成双选"})]})}},{title:"操作",dataIndex:"action",align:"right",width:90,render:function(e,t){return(0,G.jsx)("span",{onClick:m()(u()().mark((function e(){var n;return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return xe(!0),fe(2),e.next=4,(0,b.ZP)("/api/graduations/".concat(null==r?void 0:r.id,"/graduation_tasks.json"),{method:"get",params:{per_page:1e3,status:0,page:1}});case 4:0===(n=e.sent).status&&(0===t.status?ne(null==n?void 0:n.data):ne([{id:t.task_id,name:t.graduation_tasks}].concat(o()(null==n?void 0:n.data)))),xe(!1),de(c()(c()({},t),{},{save_task_id:t.task_id}));case 8:case"end":return e.stop()}}),e)}))),className:"current font14 c-light-primary",children:0===t.status?"分配课题":"变更课题"})}}],ze=function(){var e=m()(u()().mark((function e(t,n){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.stopPropagation(),f.Z.confirm({centered:!0,title:"提示",icon:null,content:"确认取消双选?取消双选后学生需要重新进行选题,且学生在原课题提交的文档将被清空且无法恢复。",okText:"确认",cancelText:"取消",onOk:function(){var e=m()(u()().mark((function e(){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,b.ZP)("/api/graduations/".concat(r.id,"/student_tasks/").concat(n.ger_id,".json"),{method:"delete"});case 2:0===e.sent.status&&(j.ZP.success("操作成功"),Ze(ye));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();return(0,G.jsxs)("div",{className:v.wrap,children:[(0,G.jsx)(y.Z,{style:{marginBottom:12},title:"学生选题",status:null==we?void 0:we.status,startAt:null==we?void 0:we.start_at,endAt:null==we?void 0:we.end_at}),(0,G.jsx)(S.YG,{value:M,tabBarExtraContent:(0,Z.QB)(null==we?void 0:we.next_start_at)&&(0,G.jsxs)(S.op,{onClick:function(){fe(3)},children:[(0,G.jsx)("i",{className:"iconfont icon-anquanshezhi font14 mr5"}),"学生选题设置"]}),dataSource:[{id:1,name:"选题列表"},{id:2,name:"学生列表"}],onChange:function(e){e!==M&&(ye.page=1,ye.keyword="",ye.status="",X([]),H(0),T(e))}}),!!U&&(0,G.jsxs)(k.Z,{align:"middle",justify:"space-between",style:{margin:"6px 0 14px 0"},children:[(0,G.jsx)(S.qp,{title:"双选状态",className:"mt20",value:ye.status,onChange:function(e){ye.status=e,ye.page=1,be(ye),Ze(ye)},dataSource:[{id:"",name:"全部"},{id:1,name:"达成双选"},{id:0,name:"未达成双选"}],titleWidth:56}),(0,G.jsx)(S.t7,{style:{width:329},placeholder:1===M?"请输入课题名称/指导老师进行搜索":"请输入课题名称/学生姓名/学号进行搜索",value:ye.keyword,onChange:function(e){ye.keyword=e,ye.page=1,be(ye),Ze(ye)}})]}),(0,G.jsx)(w.Z,{spinning:I,children:K.length?2===M?(0,G.jsx)(g.Z,{columns:Pe,dataSource:K,pagination:!1,className:"mb30",style:{minHeight:500}}):(0,G.jsx)("div",{className:v.teacherList,children:K.map((function(e){var t,n,s,a,i,r,l;return(0,G.jsxs)("div",{onClick:function(){re(c()(c()({},e),{},{tabs:1})),fe(1)},className:v.list,children:[(0,G.jsxs)("div",{className:v.top,children:[0===e.status&&(0,G.jsx)("div",{className:v.tag,children:"未达成双选"}),1===e.status&&(0,G.jsx)("div",{className:v.tag,style:{borderColor:"#D6F7EF",color:"#01795D"},children:"达成双选"}),(0,G.jsx)(_.Z,{title:e.name,children:(0,G.jsx)("div",{className:v.name,children:e.name})}),0===e.status&&!(null==e||!e.wait_review_count)&&(0,G.jsx)("div",{className:v.num,children:(null==e?void 0:e.wait_review_count)>99?"99+":null==e?void 0:e.wait_review_count}),(0,G.jsxs)("div",{className:v.check,onClick:function(t){t.stopPropagation(),re(c()(c()({},e),{},{tabs:2})),fe(1)},children:[(0,G.jsx)("i",{className:"iconfont icon-HISTORY font14 mr5"}),"查看选题申请"]})]}),1===e.status&&(0,G.jsxs)("div",{className:v.center,children:[(0,G.jsx)("img",{className:v.img,src:P.Z.IMG_SERVER+"/images/"+(null==e||null===(t=e.passed_student)||void 0===t?void 0:t.image_url)}),(0,G.jsxs)("div",{className:v.col,children:[(0,G.jsx)("div",{className:"c-black",title:null==e||null===(n=e.passed_student)||void 0===n?void 0:n.name,children:(0,Z.Pq)(null==e||null===(s=e.passed_student)||void 0===s?void 0:s.name,6)}),(0,G.jsx)("div",{className:"c-black",children:(null==e||null===(a=e.passed_student)||void 0===a?void 0:a.student_id)||"--"})]}),(0,G.jsxs)("div",{className:v.col,children:[(0,G.jsx)("div",{children:"专业"}),(0,G.jsx)("div",{style:{maxWidth:112},title:null==e||null===(i=e.passed_student)||void 0===i?void 0:i.major,className:"c-grey-666 multi-llipsis1e",children:(null==e||null===(r=e.passed_student)||void 0===r?void 0:r.major)||"--"})]}),(0,G.jsxs)("div",{className:v.col,children:[(0,G.jsx)("div",{children:"申请时间"}),(0,G.jsx)("div",{className:"c-black",children:(null==e||null===(l=e.passed_student)||void 0===l?void 0:l.passed_time)||"--"})]}),(0,G.jsxs)("div",{className:v.col,children:[(0,G.jsx)("div",{children:"选题审核状态"}),(0,G.jsx)("div",{className:"c-grey-333",children:null==e?void 0:e.state_name})]}),(0,G.jsx)(S.op,{onClick:function(t){return ze(t,e)},style:{marginLeft:"auto"},children:"取消双选"})]}),(0,G.jsxs)("div",{className:v.bottom,children:[(0,G.jsxs)("div",{className:"mr30",children:[(0,G.jsx)("div",{children:"指导老师"}),(0,G.jsx)("div",{style:{maxWidth:70},title:null==e?void 0:e.teacher_names,children:(null==e?void 0:e.teacher_names)||"--"})]}),(0,G.jsxs)("div",{className:"mr30",children:[(0,G.jsx)("div",{children:"课题来源"}),(0,G.jsx)("div",{style:{maxWidth:100},title:null==e?void 0:e.source,children:(null==e?void 0:e.source)||"--"})]}),(0,G.jsxs)("div",{children:[(0,G.jsx)("div",{children:"学科方向"}),(0,G.jsx)("div",{style:{maxWidth:180},title:null==e?void 0:e.direction,children:(null==e?void 0:e.direction)||"--"})]})]})]},e.id)}))}):(0,G.jsx)(z.Z,{customText:!U&&(1===M?(0,G.jsxs)("span",{children:["暂无选题,请先完成",(0,G.jsx)(a.Link,{to:"/graduations/".concat(r.id,"/topics"),children:"课题录入"})]}):(0,G.jsxs)("span",{children:["暂无学生,点击去",(0,G.jsx)(a.Link,{to:"/graduations/".concat(r.id,"/students"),children:"邀请学生"}),"加入毕设"]}))})}),(0,G.jsx)(N.Z,{current:ye.page,showQuickJumper:!0,showSizeChanger:!0,hideOnSinglePage:!F,pageSize:ye.per_page,className:"mb30",pageSizeOptions:["10","20","50","100","200"],total:F,showTotal:Z.rU,onChange:function(e,t){ye.page=e,ye.per_page=t,be(ye),Ze(ye)}}),(0,G.jsx)(q,{data:ie,visible:1===_e,onClose:function(){fe(!1)},onSucceed:function(){Ze(ye)}}),(0,G.jsx)(f.Z,{centered:!0,destroyOnClose:!0,onCancel:function(){return fe(!1)},open:2===_e,title:0===oe.status?"分配课题":"变更课题",width:520,afterClose:function(){de({})},onOk:function(){var e=function(){var e=m()(u()().mark((function e(){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,b.ZP)("/api/graduations/".concat(r.id,"/student_tasks/give_task.json"),{method:"post",body:{task_id:oe.task_id,student_id:oe.id}});case 2:0===e.sent.status&&(j.ZP.success("操作成功"),Ze(ye),fe(!1));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();oe.task_id===oe.save_task_id||1!==oe.status?e():f.Z.confirm({centered:!0,okText:"确定",icon:null,cancelText:"取消",title:"变更课题",content:(0,G.jsxs)("div",{children:[(0,G.jsx)("p",{children:"该操作无法撤销。确认为该学生变更课题?变更后学生在原课题提交的文档将清空且无法恢复。"}),(0,G.jsx)("div",{children:"请输入验证码后确认变更"}),(0,G.jsx)(Y.Z,{ref:function(e){return ge.current=e}})]}),onOk:e})},children:(0,G.jsx)("div",{className:v.modal,children:(0,G.jsxs)(i.Z,{loading:me,children:[(0,G.jsx)("div",{className:"mb10",children:"课题"}),(0,G.jsx)(C.default,{showSearch:!0,size:"large",placeholder:"请选择课题",optionFilterProp:"children",value:oe.task_id,onChange:function(e){de(c()(c()({},oe),{},{task_id:e}))},style:{width:"100%"},children:te.map((function(e){return(0,G.jsx)(C.default.Option,{value:e.id,children:e.name},e.id)}))})]})})}),(0,G.jsx)(Q.Z,{visible:3===_e,data:c()(c()({},we),{},{disabled_time:null==je||null===(t=je[Ne-1])||void 0===t?void 0:t.end_at}),onClose:function(){return fe(!1)},onSuccess:function(){fe(!1)}})]})})),A="wrap___Cl57w",J="tip___sGVnl",V="listWrap___OYoyC",K="list___rT4Q_",X="left___b7Ykx",$="state___ZiQzs",ee="tag0___M6FYN",te="tag1___Sg8yD",ne="tag2___iT8lP",se="tag3___jqhO2",ae="name___BNDAZ",ie="info___pKNSG",re="time___jyND5",ce="right___XT6Gh",le="btn___vKu7W",oe="wrap___CkyzG",de="listWrap___d0chX",ue="list___S7Zml",he="top___FxvYM",me="box___kpIeL",xe="name___MGi0J",pe="des___VqXEd",ve="check___tTb0k",_e="bottom____2Rzh",fe=function(e){var t=e.visible,n=e.onSucceed,i=void 0===n?function(){}:n,r=e.onClose,l=void 0===r?function(){}:r,o=e.onListClick,d=(0,a.useParams)(),h=(0,s.useState)(!0),x=p()(h,2),v=x[0],g=x[1],k=(0,s.useState)(0),C=p()(k,2),y=C[0],P=C[1],M=(0,s.useState)([]),T=p()(M,2),L=T[0],W=T[1],I={keyword:"",page:1,per_page:20,status:0},O=(0,s.useState)(c()({},I)),E=p()(O,2),B=E[0],F=E[1];(0,s.useEffect)((function(){t&&H(B)}),[t]);var H=function(){var e=m()(u()().mark((function e(t){var n;return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return g(!0),e.next=3,(0,b.ZP)("/api/graduations/".concat(d.id,"/graduation_tasks.json"),{method:"get",params:t});case 3:0===(n=e.sent).status&&(W((null==n?void 0:n.data)||[]),P(null==n?void 0:n.count)),g(!1);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),D=function(){var e=m()(u()().mark((function e(t,n){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.stopPropagation(),f.Z.confirm({centered:!0,title:"提示",icon:null,content:"确认加入该课题?",okText:"确认",cancelText:"取消",onOk:function(){var e=m()(u()().mark((function e(){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,b.ZP)("/api/graduations/".concat(d.id,"/student_tasks/").concat(n,".json"),{method:"put"});case 2:0===e.sent.status&&(j.ZP.success("申请成功"),i());case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();return(0,G.jsx)(f.Z,{centered:!0,destroyOnClose:!0,onCancel:l,open:t,footer:null,title:"学生选题",width:1e3,afterClose:function(){F(c()({},I))},children:(0,G.jsxs)("div",{className:oe,children:[(0,G.jsx)(S.t7,{style:{width:329},placeholder:"请输入课题名称/指导老师进行搜索",value:B.keyword,onChange:function(e){B.keyword=e,B.page=1,F(B),H(B)},className:"mb20"}),(0,G.jsx)("div",{className:de,children:(0,G.jsx)(w.Z,{spinning:v,children:L.length?L.map((function(e){return(0,G.jsxs)("div",{onClick:function(){o(e)},className:ue,children:[(0,G.jsxs)("div",{className:he,children:[(0,G.jsxs)("div",{className:me,children:[(0,G.jsx)(_.Z,{title:e.name,children:(0,G.jsx)("div",{className:xe,children:e.name})}),(0,G.jsx)("div",{className:pe,children:(0,G.jsx)(R.Z,{showTextOnly:!0,showLines:2,value:e.description||""})})]}),(0,G.jsx)("div",{className:ve,children:(0,G.jsx)(S.op,{onClick:function(t){return D(t,e.id)},children:"申请该课题"})})]}),(0,G.jsxs)("div",{className:_e,children:[(0,G.jsxs)("div",{className:"mr30",children:[(0,G.jsx)("div",{children:"指导老师"}),(0,G.jsx)("div",{title:null==e?void 0:e.teacher_names,style:{maxWidth:70},children:(null==e?void 0:e.teacher_names)||"--"})]}),(0,G.jsxs)("div",{className:"mr30",children:[(0,G.jsx)("div",{children:"课题来源"}),(0,G.jsx)("div",{title:null==e?void 0:e.source,style:{maxWidth:100},children:(null==e?void 0:e.source)||"--"})]}),(0,G.jsxs)("div",{className:"mr30",children:[(0,G.jsx)("div",{children:"学科方向"}),(0,G.jsx)("div",{title:null==e?void 0:e.direction,style:{maxWidth:180},children:(null==e?void 0:e.direction)||"--"})]}),(0,G.jsxs)("div",{children:[(0,G.jsx)("div",{children:"适用专业"}),(0,G.jsx)("div",{title:null==e?void 0:e.major,style:{maxWidth:140},children:(null==e?void 0:e.major)||"--"})]})]})]},e.id)})):(0,G.jsx)(z.Z,{loading:v})})}),(0,G.jsx)(N.Z,{current:B.page,hideOnSinglePage:!y,showQuickJumper:!0,className:"mb20",showSizeChanger:!0,pageSize:B.per_page,pageSizeOptions:["10","20","50","100","200"],total:y,showTotal:Z.rU,onChange:function(e,t){B.page=e,B.per_page=t,F(B),H(B)}})]})})},je=(0,a.connect)((function(e){return{graduations:e.graduations}}))((function(e){var t=e.graduations,n=(e.dispatch,(0,a.useParams)()),i=(0,a.useSearchParams)(),r=p()(i,1)[0],l=(0,s.useState)(!1),o=p()(l,2),d=o[0],h=o[1],x=(0,s.useState)(0),v=p()(x,2),g=v[0],C=v[1],P=(0,s.useState)(0),M=p()(P,2),T=M[0],L=M[1],W=(0,s.useState)([]),I=p()(W,2),O=I[0],E=I[1],B=(0,s.useState)({}),F=p()(B,2),H=F[0],R=F[1],D=(0,s.useState)(!1),Q=p()(D,2),Y=Q[0],U=Q[1],oe=(0,s.useState)(!1),de=p()(oe,2),ue=de[0],he=de[1],me=null!=r&&r.get("state")?Number(null==r?void 0:r.get("state")):"",xe=(0,s.useState)({keyword:"",state:me,page:1,per_page:20}),pe=p()(xe,2),ve=pe[0],_e=pe[1],je=t.menus.find((function(e){return"student_selection"===e.clazz}))||{};(0,s.useEffect)((function(){ge(ve)}),[]);var ge=function(){var e=m()(u()().mark((function e(t){var s;return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return h(!0),e.next=3,(0,b.ZP)("/api/graduations/".concat(null==n?void 0:n.id,"/student_tasks/checked_list.json"),{method:"get",params:t});case 3:0===(s=e.sent).status&&(E((null==s?void 0:s.data)||[]),C(null==s?void 0:s.count),L(null==s?void 0:s.total_count)),h(!1);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),ke=function(){var e=m()(u()().mark((function e(t,s){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.stopPropagation(),f.Z.confirm({centered:!0,title:"提示",icon:null,content:0===s.state?"确认撤回该课题申请?":"确认取消双选?取消后需要重新进行选题",okText:"确认",cancelText:"取消",onOk:function(){var e=m()(u()().mark((function e(){return u()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,b.ZP)("/api/graduations/".concat(n.id,"/student_tasks/").concat(s.id,".json"),{method:"delete"});case 2:0===e.sent.status&&(j.ZP.success("操作成功"),ge(ve));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),we=!!O.length;return(0,G.jsxs)("div",{className:A,children:[2===(null==je?void 0:je.status)&&(0,G.jsxs)("div",{className:J,children:[(0,G.jsx)("i",{style:{paddingTop:2},className:"iconfont icon-weixiada font12 mr5"}),(0,G.jsx)("span",{children:"选题阶段已结束,若要变更课题需联系管理员手动进行变更"})]}),(0,G.jsx)(y.Z,{style:{marginBottom:12},title:"学生选题",status:null==je?void 0:je.status,startAt:null==je?void 0:je.start_at,endAt:null==je?void 0:je.end_at}),!!T&&(0,G.jsxs)(k.Z,{align:"middle",justify:"space-between",children:[(0,G.jsx)(S.qp,{title:"审核状态",className:"mt20",value:ve.state,onChange:function(e){ve.state=e,ve.page=1,_e(ve),ge(ve)},dataSource:[{id:"",name:"全部"},{id:0,name:"待审核"},{id:1,name:"已通过"},{id:2,name:"已驳回"},{id:3,name:"已撤回"}],titleWidth:56}),2!==(null==je?void 0:je.status)&&(0,G.jsx)(S.op,{onClick:function(){return he(!0)},children:"点击选题"})]}),(0,G.jsx)(w.Z,{spinning:d,children:we?(0,G.jsx)("div",{className:V,children:O.map((function(e){return(0,G.jsxs)("div",{onClick:function(){U(!0),R(c()({},e))},className:K,children:[(0,G.jsxs)("div",{className:X,children:[(0,G.jsxs)("div",{className:$,children:[0===e.state&&(0,G.jsx)("div",{className:ee,children:"待审核"}),1===e.state&&(0,G.jsx)("div",{className:te,children:"已通过"}),2===e.state&&(0,G.jsx)("div",{className:ne,children:"已驳回"}),3===e.state&&(0,G.jsx)("div",{className:se,children:"已撤回"}),(0,G.jsx)(_.Z,{title:e.name,children:(0,G.jsx)("div",{className:ae,children:e.name})})]}),(0,G.jsxs)("div",{className:ie,children:[(0,G.jsxs)("span",{children:["指导老师",(0,G.jsx)("span",{title:e.teacher_names,children:(0,Z.Pq)(e.teacher_names,9)})]}),(0,G.jsxs)("span",{children:["课题来源",(0,G.jsx)("span",{title:e.source,children:(0,Z.Pq)(e.source,9)})]}),(0,G.jsxs)("span",{children:["学科方向",(0,G.jsx)("span",{title:e.direction,children:(0,Z.Pq)(e.direction,9)})]})]}),(0,G.jsxs)("div",{className:re,children:["申请时间 ",e.time]})]}),[0,1].includes(null==je?void 0:je.status)&&(0,G.jsxs)("div",{className:ce,children:[0===e.state&&(0,G.jsx)("div",{onClick:function(t){return ke(t,e)},className:le,children:"撤回申请"}),1===e.state&&(0,G.jsx)("div",{onClick:function(t){return ke(t,e)},className:le,children:"取消双选"})]})]},e.id)}))}):(0,G.jsx)(z.Z,{loading:d,ButtonTwo:2!==(null==je?void 0:je.status)&&!T&&(0,G.jsx)(S.op,{onClick:function(){return he(!0)},children:"点击选题"})})}),(0,G.jsx)(N.Z,{current:ve.page,hideOnSinglePage:!g,showSizeChanger:!0,showQuickJumper:!0,className:"mb20",pageSizeOptions:["10","20","50","100","200"],total:g,pageSize:ve.per_page,showTotal:Z.rU,onChange:function(e,t){ve.page=e,ve.per_page=t,_e(ve),ge(ve)}}),(0,G.jsx)(fe,{onClose:function(){return he(!1)},visible:ue,onListClick:function(e){R(c()({},e)),U(!0)},onSucceed:function(){ge(ve),he(!1)}}),(0,G.jsx)(q,{data:H,visible:Y,onClose:function(){return U(!1)},onSucceed:function(){}})]})})),ge=(0,a.connect)((function(e){return{loading:e.loading,graduations:e.graduations}}))((function(e){e.graduations,e.dispatch;var t=e.loading;return(0,G.jsx)(i.Z,{style:{margin:"20px 0 0 45px"},loading:t.effects["graduations/getGraduationsDetails"],children:(0,D.tu)()?(0,G.jsx)(U,{}):(0,G.jsx)(je,{})})}))}}]); |