issues25489
杨树明 6 years ago
parent 8e77fa4813
commit d29ce33ca5

@ -4,8 +4,7 @@ import {WordsBtn, ActionBtn} from 'educoder';
import axios from 'axios'; import axios from 'axios';
import { import {
notification, notification,
Spin, Spin
Tabs
} from "antd"; } from "antd";
import '../css/members.css'; import '../css/members.css';
import "../common/formCommon.css"; import "../common/formCommon.css";
@ -23,9 +22,6 @@ import Startshixuntask from "../coursesPublic/Startshixuntask";
import TPMMDEditor from "../../tpm/challengesnew/TPMMDEditor"; import TPMMDEditor from "../../tpm/challengesnew/TPMMDEditor";
import DownloadMessageysl from "../../modals/DownloadMessageysl"; import DownloadMessageysl from "../../modals/DownloadMessageysl";
import Modals from "../../modals/Modals"; import Modals from "../../modals/Modals";
const { TabPane } = Tabs;
class ShixunHomeworkPage extends Component { class ShixunHomeworkPage extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
@ -121,12 +117,12 @@ class ShixunHomeworkPage extends Component {
/// 重做的确认 /// 重做的确认
ModalSaves=()=>{ ModalSaves=()=>{
this.setState({ this.setState({
ModalsType:false, ModalsType:false,
Modalstopval:"" Modalstopval:""
}); });
if(this.state.teacherdatapage){ if(this.state.teacherdatapage){
this.resetshixunCombat(this.state.teacherdatapage.myshixun_identifier); this.resetshixunCombat(this.state.teacherdatapage.myshixun_identifier);
} }
try { try {
console.log("this.child"); console.log("this.child");
@ -153,29 +149,29 @@ class ShixunHomeworkPage extends Component {
} }
//重置按钮 //重置按钮
resetshixunCombat=(id)=>{ resetshixunCombat=(id)=>{
this.setState({ this.setState({
mylistisSpin:true, mylistisSpin:true,
})
let zrl=`/myshixuns/${id}/reset_my_game.json`;
axios.get(zrl).then((response) => {
// window.location.href = "/shixuns/" + response.data.shixun_identifier + "/challenges";
this.setState({
mylistisSpin:false,
})
this.child.Isupdatass();
this.props.showNotification("已清空本实训的学习记录\n" +
"\n" +
"请点击“开启挑战”重做实训作业");
}).catch((error) => {
this.setState({
mylistisSpin:false,
}) })
let zrl=`/myshixuns/${id}/reset_my_game.json`; console.log(error)
axios.get(zrl).then((response) => { });
// window.location.href = "/shixuns/" + response.data.shixun_identifier + "/challenges";
this.setState({
mylistisSpin:false,
})
this.child.Isupdatass();
this.props.showNotification("已清空本实训的学习记录\n" +
"\n" +
"请点击“开启挑战”重做实训作业");
}).catch((error) => {
this.setState({
mylistisSpin:false,
})
console.log(error)
});
} }
bindRef = ref => { this.child = ref } bindRef = ref => { this.child = ref }
///////////////教师截止 ///////////////教师截止
//编辑作业 //编辑作业
Showupdateinstructionsboolfalse (bool) { Showupdateinstructionsboolfalse (bool) {
this.setState({ this.setState({
Showupdateinstructions:bool Showupdateinstructions:bool
@ -187,105 +183,19 @@ class ShixunHomeworkPage extends Component {
Showupdateinstructions:true Showupdateinstructions:true
}) })
} }
gotohome=()=>{ gotohome=()=>{
// console.log(this.props) // console.log(this.props)
let {jobsettingsdatapage}=this.state let {jobsettingsdatapage}=this.state
this.props.history.replace(`/courses/${this.props.match.params.coursesId}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.main === 1 ? "shixun_homeworks" :"shixun_homework"}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.category_id === undefined ? "" : jobsettingsdatapage.data.category.category_id}`); this.props.history.replace(`/courses/${this.props.match.params.coursesId}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.main === 1 ? "shixun_homeworks" :"shixun_homework"}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.category_id === undefined ? "" : jobsettingsdatapage.data.category.category_id}`);
} }
callback=(key)=>{
this.setState({
tab: key,
})
}
render() { render() {
let {tab, teacherdatapage, jobsettingsdatapage} = this.state; let {tab, teacherdatapage, jobsettingsdatapage} = this.state;
const isAdmin = this.props.isAdmin(); const isAdmin = this.props.isAdmin();
// console.log(119) // console.log(119)
// console.log(jobsettingsdatapage); // console.log(jobsettingsdatapage);
document.title=jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.course_name; document.title=jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.course_name;
const operations = <div>
{/*<style>{`*/}
{/*.drop_down_menu li a {*/}
{/*padding: 0px;*/}
{/*font-size: 14px;*/}
{/*}*/}
{/*.drop_down_menu {*/}
{/*width: 93px;*/}
{/*}*/}
{/*.drop_down_menu li {*/}
{/*overflow: visible;*/}
{/*width: 93px;*/}
{/*}*/}
{/*.drop_down_menu, .drop_down_normal {*/}
{/*padding-top: 10px;*/}
{/*padding-bottom: 8px;*/}
{/*}*/}
{/*`}</style>*/}
{this.props.isAdmin() ?
<li className="li_line drop_down fr color-blue font-16 ml50">
导出<i className="iconfont icon-xiajiantou font-12 ml2"></i>
<ul className="drop_down_menu" style={{"right": "-0px", "left": "unset", "height": "auto"}}>
{/*<li><a*/}
{/* onClick={(child,i) => this.confirmysl(this.child,1)}>实训报告</a>*/}
{/*</li>*/}
<li><a
onClick={(child,i) => this.confirmysl(this.child,2)}>学生成绩</a>
</li>
</ul>
</li> : ""}
{this.props.isAdmin() ?
teacherdatapage && teacherdatapage.end_immediately === true ?
<a className="fr color-blue font-16 ml50" onClick={(child)=>this.homeworkendss(this.child)}>立即截止</a>
: ""
: ""}
{this.props.isAdmin() ?
teacherdatapage && teacherdatapage.publish_immediately === true ?
<a className="fr color-blue font-16 ml50" onClick={(child)=>this.homeworkstarts(this.child)}>立即发布</a>
: ""
: ""}
{this.props.isAdmin() ?
teacherdatapage && teacherdatapage.code_review === true ?
<a className="fr color-blue font-16 ml50" onClick={(child)=>this.workshowmodels(this.child)}>代码查重</a>
: "" : ""}
{
parseInt(tab)===1?
this.props.isAdmin() ?
<a className="fr color-blue font-16 ml50" onClick={()=>this.edenwork()}>编辑作业</a>
:""
:""
}
{this.state.view_report === true ? <Link className="fr color-blue font-16 ml50" target={"_blank"}
to={`/courses/${this.props.match.params.coursesId}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.main === 1 ? "shixun_homeworks" :"shixun_homework"}/${teacherdatapage&&teacherdatapage.work_id}/shixun_work_report`}>
查看实训报告
</Link> : ""}
{
teacherdatapage === undefined ? ""
: teacherdatapage.commit_des === null || teacherdatapage.commit_des === undefined ? "" :
<a className="fr color-blue font-16 ml50"
href={`/courses/${this.props.match.params.coursesId}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.main === 1 ? "shixun_homeworks" :"shixun_homework"}/${teacherdatapage === undefined ? "" : teacherdatapage.id}/commitsummary/${this.props.match.params.homeworkid}`}>{teacherdatapage.commit_des}</a>
}
{teacherdatapage === undefined ? "" : <Startshixuntask
{...this.props}
data={teacherdatapage}
/>}
{this.props.isStudent() ?
(
teacherdatapage&&teacherdatapage.redo_work===true?
<a className="fr color-blue font-16 ml50" onClick={()=>this.Modalcancelss()}>重做</a>
:""
)
: "" }
</div>;
return ( return (
<div className="newMain clearfix "> <div className="newMain clearfix ">
<Modals <Modals
@ -314,112 +224,138 @@ class ShixunHomeworkPage extends Component {
</div> </div>
} }
<div className="educontent mb20"> <div className="educontent mb20">
<p className=" fl color-black summaryname" style={{heigth: "33px"}}> <p className=" fl color-black summaryname" style={{heigth: "33px"}}>
{teacherdatapage === undefined ? "" : teacherdatapage.homework_name} {teacherdatapage === undefined ? "" : teacherdatapage.homework_name}
</p> </p>
<CoursesListType <CoursesListType
typelist={teacherdatapage === undefined ? [""] : teacherdatapage.homework_status} typelist={teacherdatapage === undefined ? [""] : teacherdatapage.homework_status}
/> />
<a className="color-grey-9 fr font-16 summaryname ml20 mr20" onClick={()=>this.gotohome()}>返回</a> <a className="color-grey-9 fr font-16 summaryname ml20 mr20" onClick={()=>this.gotohome()}>返回</a>
<a className="color-grey-9 fr font-16 mr20" <a className="color-grey-9 fr font-16 mr20"
href={`/shixuns/${teacherdatapage === undefined ? "" : teacherdatapage.shixun_identifier}/challenges`} href={`/shixuns/${teacherdatapage === undefined ? "" : teacherdatapage.shixun_identifier}/challenges`}
target={"_blank"}>实训详情</a> target={"_blank"}>实训详情</a>
</div>
</div>
{/*<div className="edu-back-white ">*/} <div className="edu-back-white ">
{/*<div className="stud-class-set bor-bottom-greyE ">*/} <div className="stud-class-set bor-bottom-greyE ">
{/*/!*<div className=" clearfix edu-back-white poll_list">*!/*/} <div className=" clearfix edu-back-white poll_list">
{/*/!**!/*/} <a className={parseInt(tab) === 0 ? "active" : ""} onClick={(e) => this.ChangeTab(0)}>作品列表</a>
{/*/!*<a className={parseInt(tab) === 0 ? "active" : ""} onClick={(e) => this.ChangeTab(0)}>作品列表</a>*!/*/} <a className={parseInt(tab) === 1 ? "active" : ""} onClick={(e) => this.ChangeTab(1)}>作业描述</a>
{/*/!*<a className={parseInt(tab) === 1 ? "active" : ""} onClick={(e) => this.ChangeTab(1)}>作业描述</a>*!/*/} {this.props.isAdmin() ?
{/*/!*{this.props.isAdmin() ?*!/*/} this.state.code_review === true || jobsettingsdatapage === undefined ? [""] : jobsettingsdatapage.data.homework_status[0] === "未发布" ? "" :
{/*/!*this.state.code_review === true || jobsettingsdatapage === undefined ? [""] : jobsettingsdatapage.data.homework_status[0] === "未发布" ? "" :*!/*/} <a
{/*/!*<a*!/*/} className={parseInt(tab) === 2 ? "active" : ""}
{/*/!*className={parseInt(tab) === 2 ? "active" : ""}*!/*/} onClick={(e) => this.ChangeTab(2)}>
{/*/!*onClick={(e) => this.ChangeTab(2)}>*!/*/} 代码查重</a> : ""}
{/*/!*代码查重</a> : ""}*!/*/} {parseInt(tab) === 3?
{/*/!*{parseInt(tab) === 3?*!/*/} <style>{this.props.isAdmin()?
{/*/!*<style>{this.props.isAdmin()?*!/*/} `
{/*/!*`*!/*/} .poll_list a.active:after {
{/*/!*.poll_list a.active:after {*!/*/} content: '';
{/*/!*content: '';*!/*/} width: 57px;
{/*/!*width: 57px;*!/*/} left: 10px;
{/*/!*left: 10px;*!/*/} bottom: 0px;
{/*/!*bottom: 0px;*!/*/} height: 2px;
{/*/!*height: 2px;*!/*/} background-color: #4CACFF;
{/*/!*background-color: #4CACFF;*!/*/} position: absolute;
{/*/!*position: absolute;*!/*/} }
{/*/!*}*!/*/} `:""
{/*/!*`:""*!/*/} }</style>
{/*/!*}</style>*!/*/} :""}
{/*/!*:""}*!/*/}
<a className={parseInt(tab) === 3 ? "active" : ""}
{/*/!*<a className={parseInt(tab) === 3 ? "active" : ""}*!/*/} onClick={(e) => this.ChangeTab(3)}
{/*/!*onClick={(e) => this.ChangeTab(3)}*!/*/} >{this.props.isAdmin()?"设置":"得分规则"}</a>
{/*>{this.props.isAdmin()?"设置":"得分规则"}</a>*/} {/*{this.props.isAdmin() ? <a*/}
{/*/!*{this.props.isAdmin() ? <a*!/*/} {/* className="fr color-blue font-16"*/}
{/*/!* className="fr color-blue font-16"*!/*/} {/* href={`/api/homework_commons/${this.props.match.params.coursesId}/works_list.xlsx`}*/}
{/*/!* href={`/api/homework_commons/${this.props.match.params.coursesId}/works_list.xlsx`}*!/*/} {/*>导出</a> : ""}*/}
{/*/!*>导出</a> : ""}*!/*/} <style>{`
{/**/} .drop_down_menu li a {
padding: 0px;
{/**/} font-size: 14px;
{/**/} }
{/*</div>*/} .drop_down_menu {
{/*</div>*/} width: 93px;
{/*</div>*/} }
.drop_down_menu li {
<style> overflow: visible;
{ width: 93px;
` }
.ant-tabs-bar{ .drop_down_menu, .drop_down_normal {
margin:0px; padding-top: 10px;
} padding-bottom: 8px;
.ant-tabs-nav .ant-tabs-tab{ }
display: inline-block;
padding: 20px; `}</style>
font-size: 18px; {this.props.isAdmin() ?
text-align: center; <li className="li_line drop_down fr color-blue font-16 mr8 mt20" style={{"padding": "0 20px"}}>
position: relative; 导出<i className="iconfont icon-xiajiantou font-12 ml2"></i>
color: #05101a; <ul className="drop_down_menu" style={{"right": "-0px", "left": "unset", "height": "auto"}}>
} {/*<li><a*/}
.ant-tabs-nav-wrap{ {/* onClick={(child,i) => this.confirmysl(this.child,1)}>实训报告</a>*/}
background-color: #FFF; {/*</li>*/}
} <li><a
.ant-tabs-nav-container{ onClick={(child,i) => this.confirmysl(this.child,2)}>学生成绩</a>
border-bottom: 1px solid #ebedf0; </li>
}
.ant-tabs-nav-container{ </ul>
background-color: #FFF; </li> : ""}
} {this.props.isAdmin() ?
.ant-tabs-extra-content{ teacherdatapage && teacherdatapage.end_immediately === true ?
margin-top: 10px; <a className="fr color-blue font-16" onClick={(child)=>this.homeworkendss(this.child)}>立即截止</a>
margin-right: 20px; : ""
} : ""}
.ant-tabs-top-bar{ {this.props.isAdmin() ?
background-color: #FFF; teacherdatapage && teacherdatapage.publish_immediately === true ?
} <a className="fr color-blue font-16" onClick={(child)=>this.homeworkstarts(this.child)}>立即发布</a>
` : ""
} : ""}
</style> {this.props.isAdmin() ?
<Tabs defaultActiveKey="1" animated={false} onChange={this.ChangeTab} tabBarExtraContent={operations}> teacherdatapage && teacherdatapage.code_review === true ?
<TabPane tab="作品列表" key="1"> <a className="fr color-blue font-16" onClick={(child)=>this.workshowmodels(this.child)}>代码查重</a>
<Listofworksstudentone triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)}></Listofworksstudentone> : "" : ""}
</TabPane> {
<TabPane tab="作业描述" key="2"> parseInt(tab)===1?
<Workquestionandanswer triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)} Showupdateinstructionsboolfalse={(i)=>this.Showupdateinstructionsboolfalse(i)}></Workquestionandanswer> this.props.isAdmin() ?
</TabPane> <a className="fr color-blue font-16" onClick={()=>this.edenwork()}>编辑作业</a>
<TabPane tab="代码查重" key="3"> :""
<ShixunStudentWork triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)}></ShixunStudentWork> :""
</TabPane> }
<TabPane tab={this.props.isAdmin()?"设置":"得分规则"} key="4">
<Trainingjobsetting triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)}></Trainingjobsetting>
</TabPane> {this.state.view_report === true ? <Link className="fr color-blue font-16" target={"_blank"}
</Tabs> to={`/courses/${this.props.match.params.coursesId}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.main === 1 ? "shixun_homeworks" :"shixun_homework"}/${teacherdatapage&&teacherdatapage.work_id}/shixun_work_report`}>
查看实训报告
</Spin> </Link> : ""}
{
teacherdatapage === undefined ? ""
: teacherdatapage.commit_des === null || teacherdatapage.commit_des === undefined ? "" :
<a className="fr color-blue font-16"
href={`/courses/${this.props.match.params.coursesId}/${jobsettingsdatapage === undefined ? "" : jobsettingsdatapage.data.category.main === 1 ? "shixun_homeworks" :"shixun_homework"}/${teacherdatapage === undefined ? "" : teacherdatapage.id}/commitsummary/${this.props.match.params.homeworkid}`}>{teacherdatapage.commit_des}</a>
}
{teacherdatapage === undefined ? "" : <Startshixuntask
{...this.props}
data={teacherdatapage}
/>}
{this.props.isStudent() ?
(
teacherdatapage&&teacherdatapage.redo_work===true?
<a className="fr color-blue font-16" onClick={()=>this.Modalcancelss()}>重做</a>
:""
)
: "" }
</div>
</div>
</div>
{parseInt(tab) === 0 ?<Listofworksstudentone triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)}></Listofworksstudentone>:""}
{parseInt(tab) === 1 ?<Workquestionandanswer triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)} Showupdateinstructionsboolfalse={(i)=>this.Showupdateinstructionsboolfalse(i)}></Workquestionandanswer>:""}
{parseInt(tab) === 2 ?<ShixunStudentWork triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)}></ShixunStudentWork>:""}
{parseInt(tab) === 3 ?<Trainingjobsetting triggerRef={this.bindRef} {...this.props} {...this.state} Getdataback={(jobsettingsdata, teacherdata) => this.Getdataback(jobsettingsdata, teacherdata)}></Trainingjobsetting>:""}
</Spin>
</div> </div>
</div> </div>
) )

Loading…
Cancel
Save