hjm 5 years ago
commit 19aa198e48

@ -151,7 +151,6 @@ class AccessoryModal extends Component{
}).then((result)=>{
if(result.data.status===0){
debugger
this.props.Cancel()
this.props.setupdate()
@ -199,7 +198,6 @@ class AccessoryModal extends Component{
}).then((result)=>{
if(result.data.status===0){
debugger
this.props.Cancel()
this.props.setupdate()

@ -175,7 +175,6 @@ class Selectsetting extends Component{
}
savecouseShixunModal=()=>{
debugger
let {fileList,is_public,unified_setting,description,datatime,course_groups}=this.state;
let newfileList=[];

@ -2192,7 +2192,6 @@ class Studentshavecompletedthelist extends Component {
}
funtaskstatustwo = (checkedValues, data) => {
debugger
// console.log(checkedValues);
if (JSON.stringify(checkedValues) === "[]") {
// console.log(checkedValues);

@ -211,7 +211,6 @@ class studentsList extends Component{
}
onCheckAllChange = (e, item, index) => {
const that = this;
debugger;
const checkAllArray = that.state.checkAllArray.slice(0)
checkAllArray[index] = !checkAllArray[index]
that.setState({checkAllArray})

@ -48,6 +48,7 @@ class PollDetailTabForthRules extends Component{
selectedCourse:[],
flagPageEdit:this.props.flagPageEdit
}
}
componentDidUpdate(prevProps) {
if (JSON.stringify(this.props.rules) != JSON.stringify(prevProps.rules) ) {

@ -67,6 +67,7 @@ class Listofworks extends Component {
order: "update_time",
b_order:"desc",
search: null,
allow_late:false,
task_status: [],
course_group_info: [],
teacherdata: undefined,
@ -220,7 +221,7 @@ class Listofworks extends Component {
<span>
{
record.efficiencyscore&& record.efficiencyscore=== "--"?(
record.submitstate==="按时提交"?
this.state.allow_late&&this.state.allow_late===false?
<Tooltip placement="bottom" title={<div>
<div>作业截止时系统根据学生在课堂成员中的效率表现自动评分</div>
</div>}>
@ -229,7 +230,7 @@ class Listofworks extends Component {
</span>
</Tooltip>
:
record.submitstate==="延时提交"?
this.state.allow_late&&this.state.allow_late===true?
<Tooltip placement="bottom" title={<div>
<div>补交结束时系统根据学生在课堂成员中的效率表现自动评分</div>
</div>}>
@ -472,7 +473,7 @@ class Listofworks extends Component {
<span>
{
record.efficiencyscore&& record.efficiencyscore=== "--"?(
record.submitstate==="按时提交"?
this.state.allow_late&&this.state.allow_late===false?
<Tooltip placement="bottom" title={<div>
<div>作业截止时系统根据学生在课堂成员中的效率表现自动评分</div>
</div>}>
@ -481,7 +482,7 @@ class Listofworks extends Component {
</span>
</Tooltip>
:
record.submitstate==="延时提交"?
this.state.allow_late&&this.state.allow_late===true?
<Tooltip placement="bottom" title={<div>
<div>补交结束时系统根据学生在课堂成员中的效率表现自动评分</div>
</div>}>
@ -653,6 +654,7 @@ class Listofworks extends Component {
this.setState({
teacherdata: result.data,
task_status: result.data.task_status,
allow_late:result.data.allow_late,
course_group_info: result.data.course_group_info,
loadingstate: false,
jobsettingsdata: result,
@ -713,6 +715,7 @@ class Listofworks extends Component {
course_group_info: result.data.course_group_info,
loadingstate: false,
jobsettingsdata: result,
allow_late:result.data.allow_late,
publish_immediately: result.data.publish_immediately,
work_efficiency: result.data.work_efficiency,
end_immediately: result.data.end_immediately,
@ -1322,6 +1325,10 @@ class Listofworks extends Component {
axios.get(url).then((response) => {
this.props.showNotification(`${response.data.message}`);
this.setState({
loadingstate: true
})
this.Startsorting(this.state.order, this.state.course_groupyslstwo, this.state.checkedValuesineinfo, this.state.searchtext, 1, this.state.limit);
}).catch((error) => {
console.log(error)
});
@ -1340,10 +1347,18 @@ class Listofworks extends Component {
course_group: this.state.checkedValuesineinfo,
search: this.state.searchtext,
}
}).then((response) => {
},{responseType: 'blob'}).then((response) => {
console.log("1342");
console.log(response);
var blob = new Blob([response.data])
var downloadElement = document.createElement('a');
var href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = '实习报告.pdf'; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象
}).catch((error) => {
console.log(error)
});
@ -1359,10 +1374,18 @@ class Listofworks extends Component {
group_id: this.state.checkedValuesineinfo,
search: this.state.searchtext,
}
}).then((response) => {
},{responseType: 'blob'}).then((response) => {
console.log("1306");
console.log(response);
var blob = new Blob([response.data])
var downloadElement = document.createElement('a');
var href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = '课堂学生成绩.xlsx'; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象
}).catch((error) => {
console.log(error)
});
@ -1458,7 +1481,7 @@ class Listofworks extends Component {
</p>
</div>
<div className="educontent mb30">
<p className=" fl color-black summaryname">
<p className=" fl color-black summaryname" style={{heigth:"33px"}}>
{teacherdata === undefined ? "" : teacherdata.homework_name}
</p>
<CoursesListType

@ -855,7 +855,7 @@ class Listofworksstudentone extends Component {
</p>
</div>
<div className="educontent mb30" style={{width: "1250px"}}>
<p className=" fl color-black summaryname">
<p className=" fl color-black summaryname" style={{heigth:"33px"}}>
{teacherdata === undefined ? "" : teacherdata.homework_name}
</p>
<CoursesListType
@ -1009,7 +1009,7 @@ class Listofworksstudentone extends Component {
</p>
</div>
<div className="educontent mb30">
<p className=" fl color-black summaryname">
<p className=" fl color-black summaryname" style={{heigth:"33px"}}>
{jobsettingsdata === undefined ? "" : jobsettingsdata.data.homework_name}
</p>
<CoursesListType

@ -571,7 +571,7 @@ class ShixunStudentWork extends Component {
</p>
</div>
<div className="educontent mb30">
<p className=" fl color-black summaryname">
<p className=" fl color-black summaryname" style={{heigth:"33px"}}>
{data&&data.homework_name}
</p>
<CoursesListType
@ -659,7 +659,7 @@ class ShixunStudentWork extends Component {
{data&&data?
<div>
<ul className="clearfix" style={{padding: '20px 40px 10px 40px'}}>
<ul className="clearfix" style={{padding: '20px 16px 10px'}}>
<li className="clearfix ">
<span className="fl mr10 color-grey-8 ">查重时间{data&&data.last_review_time}</span>
@ -715,7 +715,7 @@ class ShixunStudentWork extends Component {
</ul>
<div id="graduation_work_list" style={{padding: '0px 40px 10px 40px'}}>
<div id="graduation_work_list" style={{padding: '0px 16px 10px'}}>
<div className="clearfix">
<span className="fl color-grey-6 font-12">
@ -755,11 +755,12 @@ class ShixunStudentWork extends Component {
{datalist === undefined ? "" : <Table
dataSource={datalist}
columns={columns}
pagination={{ //分页
pagination={ datalist.length<11?false:{ //分页
total: datalist.length===0?0:data&&data.all_reviews_count, //数据总数量
pageSize: 10, //显示几条一页
current:page,
}}
onChange={this.TablePagination}
/>}
</div>

@ -358,7 +358,7 @@ class ShixunhomeWorkItem extends Component{
`
}
</style>
{this.props.isAdmin?<div className={this.props.isClassManagement?"homepagePostSetting homepagePostSettingname":"homepagePostSetting homepagePostSettingbox"} style={{"right":"-2px","top":"44px","display":"block"}}>
{this.props.isAdmin?<div className={this.props.isAdminOrTeacher()?"homepagePostSetting homepagePostSettingname":"homepagePostSetting homepagePostSettingbox"} style={{"right":"-2px","top":"44px","display":"block"}}>
<a className="btn colorblue font-16" href={"/shixuns/"+discussMessage.shixun_identifier+"/challenges"} target={"_blank"}>实训详情</a>
{this.props.isAdminOrTeacher()?<a onClick={()=>this.editname(discussMessage.name,discussMessage.homework_id)} className={"btn colorblue ml20 font-16"}>重命名</a>:""}
<WordsBtn className="btn colorblue ml20 font-16" to={`/courses/${this.props.match.params.coursesId}/${this.state.shixuntypes}/${discussMessage.homework_id}/settings`} > 设置</WordsBtn>

@ -31,7 +31,9 @@ class ShixunWorkModal extends Component{
response.data.group_list.map((item,key)=>{
newgroup_list.push(item)
})
if( response.data.ungroup_list!== undefined || response.data.ungroup_list !== null){
if(response.data.ungroup_list===undefined){
}else{
newgroup_list.push(response.data.ungroup_list)
}
this.setState({
@ -255,31 +257,10 @@ class ShixunWorkModal extends Component{
<Checkbox.Group style={{ width: '100%' }} onChange={this.shixunhomeworkedit} value={group_ids}>
{
group_list===undefined?course_groups.ungroup_list.work_count===0?"":
<div className="clearfix edu-txt-center lineh-40 bor-bottom-greyE">
<li className="fl task-hide" style={{width: '240px'}}>
<Checkbox
className="fl task-hide edu-txt-left"
name="shixun_homework[]"
value={course_groups.ungroup_list.id}
>
<label style={{"textAlign": "left", "color": "#05101A"}}
className="task-hide color-grey-name" title="frerere">{course_groups.ungroup_list.name}</label>
</Checkbox>
</li>
<li className="fl" style={{width: '100px'}}>
{course_groups.ungroup_list.work_count}
</li>
<li className="fl" style={{width: '160px'}}>
{course_groups.ungroup_list.last_review_time}
</li>
</div>
:
group_list&&group_list.length===0?"":group_list[0]===undefined?"":group_list.map((item,key)=>{
group_list===undefined?"":
group_list&&group_list.length===0?"":group_list.map((item,key)=>{
return(
item.work_count===0?"":<div className="clearfix edu-txt-center lineh-40 bor-bottom-greyE" key={key}>
<div className="clearfix edu-txt-center lineh-40 bor-bottom-greyE" key={key}>
<li className="fl task-hide" style={{width: '240px'}}>
<Checkbox
className="fl task-hide edu-txt-left"
@ -319,3 +300,27 @@ class ShixunWorkModal extends Component{
}
}
export default ShixunWorkModal;
// course_groups.ungroup_list.work_count===0?"":
//
// <div className="clearfix edu-txt-center lineh-40 bor-bottom-greyE">
// <li className="fl task-hide" style={{width: '240px'}}>
// <Checkbox
// className="fl task-hide edu-txt-left"
// name="shixun_homework[]"
// value={course_groups.ungroup_list.id}
// >
// <label style={{"textAlign": "left", "color": "#05101A"}}
// className="task-hide color-grey-name" title="frerere">{course_groups.ungroup_list.name}</label>
// </Checkbox>
// </li>
// <li className="fl" style={{width: '100px'}}>
// {course_groups.ungroup_list.work_count}
// </li>
// <li className="fl" style={{width: '160px'}}>
// {course_groups.ungroup_list.last_review_time}
// </li>
// </div>
//
// :

@ -162,28 +162,33 @@ class Trainingjobsetting extends Component {
})
}else {
for(var i=0;i<result.data.group_settings.length;i++) {
array.push({
if(result.data.group_settings[i].publish_time === null &&result.data.group_settings[i].end_time === null){
}else {
array.push({
course_group_id: result.data.group_settings[i].group_id,
course_group_name: result.data.group_settings[i].group_name,
publish_time: result.data.group_settings[i].publish_time,
end_time: result.data.group_settings[i].end_time,
publish_flag: "",
end_flag: "",
class_flag: "",
course_search: "",
open: false
})
}
}
}
for(var i=0;i<result.data.group_settings.length;i++){
arrays.push({
course_group_id:result.data.group_settings[i].group_id,
course_group_name:result.data.group_settings[i].group_name,
publish_time:result.data.group_settings[i].publish_time,
end_time:result.data.group_settings[i].end_time,
publish_flag:"",
end_flag:"",
class_flag:"",
course_search:"",
open:false
course_choosed:0,
})
}
}
for(var i=0;i<result.data.group_settings.length;i++){
arrays.push({
course_group_id:result.data.group_settings[i].group_id,
course_group_name:result.data.group_settings[i].group_name,
publish_time:result.data.group_settings[i].publish_time,
end_time:result.data.group_settings[i].end_time,
course_choosed:0,
})
if(result.data.group_settings[i].group_id instanceof Array ) {
rulesdatas.push({
@ -741,8 +746,10 @@ class Trainingjobsetting extends Component {
//占比分
if(challenge_settingsdata.length>0){
var Proportion=100;
var oushution=0;
//获取占用分后的值
Proportion=Proportion-latedeductiontwos;
oushution=Proportion;
var srorelength=0;
//计算选中用户
for (var k=0;k<challenge_settingsdata.length;k++){
@ -762,10 +769,17 @@ class Trainingjobsetting extends Component {
//计算平均值
Proportion= Proportion/srorelength;
var intkk=0;
if(srbool==true){
var intkks=0;
if(srbool==true){
// 奇数
var exams = Math.round(Proportion)
var intk = srorelength*exams;
intkk=100 - intk;
intkk=oushution - intk;
}else {
// 偶数
var examsy = Math.round(Proportion)
intkks=oushution - (examsy*srorelength);
}
var mact=0;
@ -774,8 +788,13 @@ class Trainingjobsetting extends Component {
for (var i=0;i<challenge_settingsdata.length;i++){
if(challenge_settingsdata[i].checked === true) {
if(srbool===false){
challenge_settingsdata[i].challenge_score = Math.round(Proportion);
mact=mact+1;
if(mact===srorelength){
challenge_settingsdata[i].challenge_score = Math.round(Proportion)+intkks;
}else {
challenge_settingsdata[i].challenge_score = Math.round(Proportion);
}
}else{
mact=mact+1;
if(mact===srorelength){
@ -1468,6 +1487,13 @@ class Trainingjobsetting extends Component {
starttimes:undefined,
})
}
cancelBox=()=>{
this.setState({
modalsType: false,
modalsTopval: "",
loadtype: false,
})
}
//编辑
editSetting = () => {
try {
@ -1540,7 +1566,8 @@ class Trainingjobsetting extends Component {
handclass: undefined,
unit_e_tip: "",
})
this.refs.targetElementTrainingjobsetting.scrollIntoView()
this.refs.targetElementTrainingjobsetting.scrollIntoView();
this.getTrainingjobsetting();
}
rulesCheckInfo=(rules)=>{
@ -1580,6 +1607,38 @@ class Trainingjobsetting extends Component {
showmodel:false
})
}
// 导出实习报告批量
internshipreport = () => {
console.log("internshipreport");
var homeworkid = this.props.match.params.homeworkid;
let url = "/zip/shixun_report";
axios.get((url),{
params: {
homework_common_id: homeworkid,
}
}).then((response) => {
console.log("1593");
console.log(response);
}).catch((error) => {
console.log(error)
});
}
// 课堂学生成绩的导出下载
Classstudentachievement = () => {
console.log("Classstudentachievement");
const course_id = this.props.match.params.coursesId;
let url = "/courses/" + course_id + "/export_member_scores_excel.xlsx";
axios.get(url).then((response) => {
console.log("1607");
console.log(response);
}).catch((error) => {
console.log(error)
});
}
render() {
@ -1656,7 +1715,7 @@ class Trainingjobsetting extends Component {
</div>
<div className="educontent mb30">
<p className=" fl color-black summaryname mt5">
<p className=" fl color-black summaryname mt5" style={{heigth:"33px"}}>
{jobsettingsdata === undefined ? "" : jobsettingsdata.data.homework_name}
</p>
@ -1698,10 +1757,35 @@ class Trainingjobsetting extends Component {
{/*<Link className="ml30" to={`/courses/${this.state.props.match.params.coursesId}/shixun_homeworks/${this.state.props.match.params.homeworkid}/shixun_work_report`}>*/}
{/*<a className="color-blue">查看实训报告</a>*/}
{/*</Link>*/}
{this.props.isAdmin() ? <a
className="fr color-blue font-16"
href={`/api/homework_commons/${this.props.match.params.coursesId}/works_list.xlsx`}
>导出</a> : ""}
<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;
}
a:hover {
color:#1A0B00 !important;
}
`}</style>
{this.props.isAdmin() ? <li className="li_line drop_down fr color-blue font-16 mr8 mt20" style={{"padding": "0 20px"}}>
导出<i className="iconfont icon-xiajiantou font-12 ml2"></i>
<ul className="drop_down_menu" style={{"right": "-0px", "left": "unset", "height": "auto"}}>
<li><a onClick={()=>this.internshipreport()}>实训报告</a>
</li>
<li><a onClick={()=>this.Classstudentachievement()}>学生成绩</a>
</li>
</ul>
</li>: ""}
{this.props.isAdmin() ?jobsettingsdata&&jobsettingsdata.data.end_immediately===true?
<a className="fr color-blue font-16" onClick={this.homeworkends}>立即截止</a> : "": ""}
{this.props.isAdmin() ?jobsettingsdata&&jobsettingsdata.data.publish_immediately===true?
@ -1997,7 +2081,7 @@ class Trainingjobsetting extends Component {
提交
</Button>
{/*<a className="defalutSubmitbtn fl mr20">提交</a>*/}
<a className="defalutCancelbtn fl" onClick={this.cancelEdit}>取消</a>
<a className="defalutCancelbtn fl" onClick={()=>this.cancelEdit()}>取消</a>
</div>
: ""
}

@ -412,7 +412,7 @@ class Workquestionandanswer extends Component {
</p>
</div>
<div className="educontent mb30">
<p className=" fl color-black summaryname">
<p className=" fl color-black summaryname" style={{heigth:"33px"}}>
{jobsettingsdata === undefined ? "" : jobsettingsdata.data.homework_name}
</p>
<CoursesListType

@ -227,7 +227,6 @@ class Trialapplication extends Component {
postregistered = () => {
//提交按钮
debugger
if (this.state.user_phone_binded === false) {
if (this.state.Phonenumberisnotcobool === false) {

Loading…
Cancel
Save