|
|
|
@ -1,7 +1,7 @@
|
|
|
|
|
import React,{Component} from "React";
|
|
|
|
|
import { Form, Select, Input, Button,Checkbox,Upload,Icon,message,Modal,Pagination, Table, Divider, Tag,Tooltip} from "antd";
|
|
|
|
|
import {Link} from 'react-router-dom';
|
|
|
|
|
import { getImageUrl,WordsBtn } from 'educoder';
|
|
|
|
|
import { getImageUrl , NoneData } from 'educoder';
|
|
|
|
|
import axios from 'axios';
|
|
|
|
|
import moment from 'moment';
|
|
|
|
|
import HomeworkModal from "../../coursesPublic/HomeworkModal";
|
|
|
|
@ -13,6 +13,7 @@ import AllocationModal from "../../coursesPublic/AllocationModal";
|
|
|
|
|
import Associationmodel from '../../coursesPublic/Associationmodel';
|
|
|
|
|
import AccessoryModal from "../../coursesPublic/AccessoryModal";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const CheckboxGroup = Checkbox.Group;
|
|
|
|
|
const Search = Input.Search;
|
|
|
|
|
const qs = require('qs');
|
|
|
|
@ -54,8 +55,18 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
componentDidMount(){
|
|
|
|
|
let tab = this.props.tab;
|
|
|
|
|
this.props.setTab && this.props.setTab(tab);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let{teacher_comment,task_status,course_group,cross_comment,order,b_order,search}=this.state;
|
|
|
|
|
this.seacthdata(teacher_comment,task_status,course_group,cross_comment,order,b_order,search,this.state.page);
|
|
|
|
|
|
|
|
|
|
try{
|
|
|
|
|
this.props.triggerRef(this)
|
|
|
|
|
}catch(e){
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
goback=()=>{
|
|
|
|
@ -837,36 +848,22 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
<div>
|
|
|
|
|
{this.props.isAdmin()?operation.map((tag,key) => {
|
|
|
|
|
return(
|
|
|
|
|
<div key={key}>
|
|
|
|
|
{/*<Tooltip placement="bottom" title={tag.name==="分配"?"指定该作品的交叉评阅人":tag.name==="调分"?<pre>调整学生最终成绩<br/>*/}
|
|
|
|
|
{/*其它历史评分将全部失效</pre>:""}>*/}
|
|
|
|
|
|
|
|
|
|
{/*{tag.name==="评阅"?tag.status===0?"--":<a style={{color:'#4CACFF'}} href={"/courses/"+courseId+"/graduation_tasks/"+tag.id+"/appraise"} >*/}
|
|
|
|
|
{/*{tag.name}*/}
|
|
|
|
|
{/*</a>*/}
|
|
|
|
|
{/*:*/}
|
|
|
|
|
{/*<a style={{color:tag.name==="调分"?"#000":'#4CACFF'}}*/}
|
|
|
|
|
{/*onClick={tag.name==="调分"?()=>this.showModulationtype(tag.id):tag.name==="分配"?()=>this.showAllocationModal(tag.id):""}>*/}
|
|
|
|
|
{/*{tag.status===0?"":tag.name}*/}
|
|
|
|
|
{/*</a>*/}
|
|
|
|
|
{/*}*/}
|
|
|
|
|
|
|
|
|
|
{/*</Tooltip>*/}
|
|
|
|
|
<Tooltip placement="bottom" title={tag.name==="分配"?"指定该作品的交叉评阅人":tag.name==="调分"?<pre>调整学生最终成绩<br/>
|
|
|
|
|
其它历史评分将全部失效</pre>:""}>
|
|
|
|
|
|
|
|
|
|
{tag.name==="评阅"?<a style={{color:'#4CACFF'}} href={"/courses/"+courseId+"/graduation_tasks/"+tag.id+"/appraise"} >
|
|
|
|
|
<React.Fragment>
|
|
|
|
|
{
|
|
|
|
|
tag.name &&
|
|
|
|
|
<Tooltip key={key} placement="bottom" title={tag.name==="分配"?"指定该作品的交叉评阅人":tag.name==="调分"?<pre>调整学生最终成绩<br/>其它历史评分将全部失效</pre>:""}>
|
|
|
|
|
{tag.name==="评阅"?<a style={{color:'#4CACFF',padding:"0px 5px"}} href={"/courses/"+courseId+"/graduation_tasks/"+tag.id+"/appraise"} >
|
|
|
|
|
{tag.name}
|
|
|
|
|
</a>
|
|
|
|
|
:
|
|
|
|
|
<a style={{color:tag.name==="调分"?"#000":'#4CACFF'}}
|
|
|
|
|
<a style={{color:tag.name==="调分"?"#000":'#4CACFF',padding:"0px 5px"}}
|
|
|
|
|
onClick={tag.name==="调分"?()=>this.showModulationtype(tag.id):tag.name==="分配"?()=>this.showAllocationModal(tag.id):""}>
|
|
|
|
|
{tag.name}
|
|
|
|
|
</a>
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
</Tooltip>
|
|
|
|
|
</div>
|
|
|
|
|
}
|
|
|
|
|
</React.Fragment>
|
|
|
|
|
)
|
|
|
|
|
}):""}
|
|
|
|
|
{
|
|
|
|
@ -963,9 +960,6 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
}
|
|
|
|
|
.linbox{
|
|
|
|
|
height: 26px;
|
|
|
|
|
}
|
|
|
|
|
.ant-table-tbody>tr>td, .ant-table-thead>tr>th{
|
|
|
|
|
padding: 16px 10px
|
|
|
|
|
}
|
|
|
|
@ -1090,12 +1084,12 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
{ taskslistdata && taskslistdata?
|
|
|
|
|
{ taskslistdata && taskslistdata ?
|
|
|
|
|
// 教师列表
|
|
|
|
|
this.props.isAdmin()?
|
|
|
|
|
this.props.isAdmin() ?
|
|
|
|
|
<div className="stud-class-set">
|
|
|
|
|
<div className="clearfix edu-back-white" >
|
|
|
|
|
<ul className="clearfix" style={{padding:'20px 40px 10px 40px'}}>
|
|
|
|
|
<ul className="clearfix" style={{padding:'20px 30px 10px 30px'}}>
|
|
|
|
|
|
|
|
|
|
<li className="clearfix">
|
|
|
|
|
<span className="fl mr10 color-grey-8">教师评阅:</span>
|
|
|
|
@ -1114,7 +1108,7 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
)
|
|
|
|
|
})}
|
|
|
|
|
</CheckboxGroup>
|
|
|
|
|
<div className="fr mr5 search-new" style={{marginBottom:'1px'}}>
|
|
|
|
|
<div className="fr mr5 search-new" style={{marginBottom:'1px',marginRight:"0px"}}>
|
|
|
|
|
<Search
|
|
|
|
|
placeholder="请输入姓名或学号搜索"
|
|
|
|
|
id="subject_search_input"
|
|
|
|
@ -1197,23 +1191,21 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<div id="graduation_work_list" style={{padding:'0px 40px 10px 40px'}}>
|
|
|
|
|
<div id="graduation_work_list" style={{padding:'0px 30px 10px 30px'}}>
|
|
|
|
|
<style>
|
|
|
|
|
{
|
|
|
|
|
`
|
|
|
|
|
{`
|
|
|
|
|
.edu-menu-lists li:hover {
|
|
|
|
|
background: #f0f0f0 !important;
|
|
|
|
|
}
|
|
|
|
|
.edu-menu-lists li:hover a{
|
|
|
|
|
color: #666 !important;
|
|
|
|
|
}
|
|
|
|
|
`
|
|
|
|
|
}
|
|
|
|
|
`}
|
|
|
|
|
</style>
|
|
|
|
|
<div className="clearfix">
|
|
|
|
|
{this.props.isAdmin()===true?<span className="fl color-grey-6 font-12">
|
|
|
|
|
<span className="color-orange-tip">{taskslistdata&&taskslistdata.work_count}</span>
|
|
|
|
|
个检索结果({taskslistdata&&taskslistdata.work_count} 学生) </span>:""}
|
|
|
|
|
个检索结果({taskslistdata&&taskslistdata.work_count} 学生)</span>:""}
|
|
|
|
|
{this.props.isAdmin()===true?<div className="fr color-grey-6 edu-menu-panel">
|
|
|
|
|
<p>
|
|
|
|
|
<a data-remote="true" class="color-grey-6 font-12">
|
|
|
|
@ -1252,23 +1244,17 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
JSON.stringify(data)==="[]" ?
|
|
|
|
|
|
|
|
|
|
<div id="forum_list" className="forum_table">
|
|
|
|
|
<div className="mh650 edu-back-white">
|
|
|
|
|
<div className="edu-tab-con-box clearfix edu-txt-center">
|
|
|
|
|
<img className="edu-nodata-img mb20" src={getImageUrl("images/educoder/nodata.png")}/>
|
|
|
|
|
<p className="edu-nodata-p mb30">暂时还没有相关数据哦!</p>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
<NoneData></NoneData>
|
|
|
|
|
:
|
|
|
|
|
<div className={"justify break_full_word new_li edu-back-white"} style={{minHeight: "480px"}}>
|
|
|
|
|
<style>{`
|
|
|
|
|
<style>
|
|
|
|
|
{`
|
|
|
|
|
.ant-spin-nested-loading > div > .ant-spin .ant-spin-dot {
|
|
|
|
|
top: 72%;}
|
|
|
|
|
top: 72%;
|
|
|
|
|
}
|
|
|
|
|
`}</style>
|
|
|
|
|
}
|
|
|
|
|
`}
|
|
|
|
|
</style>
|
|
|
|
|
<div className="edu-table edu-back-white ">
|
|
|
|
|
{data===undefined?"":<Table
|
|
|
|
|
dataSource={data}
|
|
|
|
@ -1297,70 +1283,16 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
</div>
|
|
|
|
|
: ""
|
|
|
|
|
}
|
|
|
|
|
</div>:
|
|
|
|
|
</div>
|
|
|
|
|
:
|
|
|
|
|
// 学生列表
|
|
|
|
|
this.props.isStudent()||this.props.isNotMember()?
|
|
|
|
|
<div className="newMain clearfix">
|
|
|
|
|
<div className={"educontent mb20"}>
|
|
|
|
|
|
|
|
|
|
<p className="clearfix mt10">
|
|
|
|
|
<WordsBtn style="grey" className="fl"> <Link to={"/courses/"+courseId+"/graduation_tasks/"+taskslistdata.graduation_id}>{taskslistdata.course_name}</Link></WordsBtn>
|
|
|
|
|
<span className="color-grey-9 fl ml3 mr3">></span>
|
|
|
|
|
<WordsBtn style="grey" className="fl"> <Link to={"/courses/"+courseId+"/graduation_tasks/"+taskslistdata.graduation_id}className="color-grey-6">{taskslistdata.graduation_name}</Link></WordsBtn>
|
|
|
|
|
<span className="color-grey-9 fl ml3 mr3">></span>
|
|
|
|
|
<span>任务详情</span>
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<div style={{ width:'100%',height:'75px'}} >
|
|
|
|
|
<p className=" fl color-black mt25 summaryname"> <Link to={"/courses/"+courseId+"/graduation_tasks/"+category_id} className="color-grey-6">{taskslistdata.task_name}</Link></p>
|
|
|
|
|
<CoursesListType
|
|
|
|
|
typelist={taskslistdata.task_status}
|
|
|
|
|
typesylename={"mt22"}
|
|
|
|
|
/>
|
|
|
|
|
<a className="color-grey-6 fr font-16 ml30 mt10 mr20" onClick={this.goback}>返回</a>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div className="stud-class-set bor-bottom-greyE">
|
|
|
|
|
<div className="mt10 clearfix edu-back-white poll_list pl20">
|
|
|
|
|
|
|
|
|
|
<Link className="active" to={"/courses/"+courseId+"/graduation_tasks/"+category_id+"/"+task_Id+"/list"}>任务列表</Link>
|
|
|
|
|
<Link to={"/courses/"+courseId+"/graduation_tasks/"+category_id+"/"+task_Id+"/questions"}>毕设描述</Link>
|
|
|
|
|
<Link style={{paddingLeft:'38px'}}
|
|
|
|
|
to={"/courses/"+courseId+"/graduation_tasks/"+category_id+"/"+task_Id+"/setting"}>设置</Link>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{taskslistdata.work_status===undefined||taskslistdata.work_status===null||taskslistdata.work_status.length===0?"":taskslistdata.work_status.map((item,key)=>{
|
|
|
|
|
return(
|
|
|
|
|
<span key={key}>
|
|
|
|
|
{item==="提交作品"?<a className={"fr color-blue font-16"} href={"/courses/"+this.props.match.params.coursesId+"/graduation_tasks/"+category_id+"/"+task_Id+"/works/new"}>提交作品</a>:""}
|
|
|
|
|
{item==="补交作品"?<a className={"fr color-blue font-16"} href={"/courses/"+this.props.match.params.coursesId+"/graduation_tasks/"+category_id+"/"+task_Id+"/works/new"}>补交作品</a>:""}
|
|
|
|
|
{item==="修改作品"?<a className={"fr color-blue font-16"} href={"/courses/"+this.props.match.params.coursesId+"/graduation_tasks/"+category_id+"/"+taskslistdata.work_id+"/works/edit"}>修改作品</a>:""}
|
|
|
|
|
{item==="查看作品"?<a className={"fr color-blue font-16"} href={"/courses/"+this.props.match.params.coursesId+"/graduation_tasks/"+category_id+"/"+taskslistdata.work_id+"/works/edit"}>查看作品</a> :""}
|
|
|
|
|
{item==="创建项目"?<a className={"fr color-blue font-16"} href={'/projects/new'} target="_blank">创建项目</a>:""}
|
|
|
|
|
{item==="关联项目"?<a className={"fr color-blue font-16"} onClick={this.AssociationItems}>关联项目</a>:""}
|
|
|
|
|
{item==="取消关联"?<a className={"fr color-blue font-16"} onClick={this.cannelAssociation}>取消关联</a>:""}
|
|
|
|
|
{item==="补交附件"?<a className={"fr color-blue font-16"} onClick={this.handaccessory}>补交附件</a>:""}
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
|
|
)
|
|
|
|
|
})}
|
|
|
|
|
|
|
|
|
|
{/*<a className={"fr color-blue font-16"} onClick={this.handaccessory}>补交附件</a>*/}
|
|
|
|
|
{/*<a className={"fr color-blue font-16"} href={"/courses/"+courseId+"/graduation/graduation_tasks/"+task_Id+"/edit"}>编辑任务</a>*/}
|
|
|
|
|
{/*<a className={"fr color-blue font-16"}>立即截止</a>*/}
|
|
|
|
|
{/*<a className={"fr color-blue font-16"}>导出作品附件</a>*/}
|
|
|
|
|
{/*<a className={"fr color-blue font-16"}>导出成绩</a>*/}
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div className="stud-class-set ">
|
|
|
|
|
|
|
|
|
|
<div className="clearfix edu-back-white" >
|
|
|
|
|
|
|
|
|
|
{this.props.isNotMember()?<ul className="clearfix" style={{padding:'20px 40px 10px 40px'}}>
|
|
|
|
|
{this.props.isNotMember()?<ul className="clearfix" style={{padding:'20px 30px 10px 30px'}}>
|
|
|
|
|
|
|
|
|
|
<li className="clearfix">
|
|
|
|
|
<span className="fl mr10 color-grey-8">教师评阅:</span>
|
|
|
|
@ -1463,7 +1395,6 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div id="graduation_work_list" style={{ padding: '18px 40px 10px',height: '56px'}}>
|
|
|
|
|
|
|
|
|
|
{this.props.isAdmin()===true?
|
|
|
|
|
<div className="clearfix">
|
|
|
|
|
<span className="fl color-grey-6 font-12">
|
|
|
|
@ -1485,8 +1416,6 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
:""}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{this.props.isStudent()===true?
|
|
|
|
|
<div className="clearfix">
|
|
|
|
|
<span className="mr15 color-grey9">
|
|
|
|
@ -1504,12 +1433,7 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
</Tooltip>}
|
|
|
|
|
</div>
|
|
|
|
|
:""}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
JSON.stringify(data) === "[]" ?
|
|
|
|
|
|
|
|
|
@ -1561,12 +1485,6 @@ class GraduationTaskssettinglist extends Component{
|
|
|
|
|
: ""
|
|
|
|
|
}
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
:""
|
|
|
|
|
:""}
|
|
|
|
|
|
|
|
|
|