Merge branch 'dev_aliyun' of http://bdgit.educoder.net/Hjqreturn/educoder into dev_aliyun

dev_home
cxt 5 years ago
commit e484c7088d

@ -1634,6 +1634,7 @@ class ExercisesController < ApplicationController
end
end
end
Rails.logger.info("#####____________unpublish_group_______#######{unpublish_group}")
unpublish_group = unpublish_group.uniq
if unpublish_group.count > 0
course_groups = CourseGroup.by_group_ids(unpublish_group)

@ -58,81 +58,94 @@ class ModulationModal_exercise extends Component {
Inputsvals
} = this.state;
let re = /^[0-9]+.?[0-9]*$/;//判断字符串是否为数字 //判断正整数 /^[1-9]+[0-9]*]*$/
let res= /^\-[1-9][0-9]*$/; //判断字符串是负整数
if (subool === false) {
let subools=false;
let suboolss=false;
//不是总分模式
if (Inputsval === undefined || Inputsval === null || Inputsval === "") {
this.setState({
Inputsval: "",
Inputsvaltype: true,
Inputsvaltest: "请填写分数",
Inputsvaltest: "主观题成绩不能为空",
})
return
subools=true;
}
//判断主观题
if(subools===false){
var nubmer = Inputsval;
if (!re.test(nubmer)&&!res.test(nubmer)) {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
Inputsvaltest: "请输入0-100的分数",
})
subools=true;
}
var nubmer = Inputsval;
if (!re.test(nubmer)) {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
Inputsvaltest: "请输入0-100的分数",
})
return;
}
if(subools===false){
if (0 > parseFloat(Inputsval)) {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
Inputsvaltest: "成绩不能小于零",
Inputsvaltest: "主观题成绩不能小于零",
})
return;
subools=true;
} else if (parseFloat(Inputsval) > this.props.subjective_score) {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
Inputsvaltest: `成绩不能大于${this.props.subjective_score}`,
Inputsvaltest: `主观题成绩不能大于主观题总分值${this.props.subjective_score}`,
})
return;
subools=true;
}
}
//判断客观题
if (Inputsvals === undefined || Inputsvals === null || Inputsvals === "") {
this.setState({
Inputsvals: "",
Inputsvaltypes: true,
Inputsvaltests: "请填写分数",
Inputsvaltests: "客观题成绩不能为空",
})
return
suboolss=true;
}
var nubmers = Inputsvals;
if (!re.test(nubmers)) {
this.setState({
Inputsvals: "",
Inputsvaltypes: true,
Inputsvaltests: "请输入0-100的分数",
})
return;
if(suboolss===false){
var nubmers = Inputsvals;
if (!re.test(nubmers)&&!res.test(nubmers)) {
this.setState({
Inputsvals: "",
Inputsvaltypes: true,
Inputsvaltests: "请输入0-100的分数",
})
suboolss=true;
}
}
if(suboolss===false){
if (0 > parseFloat(Inputsvals)) {
this.setState({
Inputsvals: Inputsvals,
Inputsvaltypes: true,
Inputsvaltests: "请输入0-100的分数",
Inputsvaltests: "客观题成绩不能小于零",
})
return;
suboolss=true;
} else if (parseFloat(Inputsvals) > this.props.objective_score) {
this.setState({
Inputsvals: Inputsvals,
Inputsvaltypes: true,
Inputsvaltests: `成绩不能大于${this.props.objective_score}`,
Inputsvaltests: `客观题成绩不能大于客观题总分值${this.props.objective_score}`,
})
return;
suboolss=true;
}
}
if(subools===true ||suboolss===true){
return;
}
} else {
debugger
@ -143,14 +156,14 @@ class ModulationModal_exercise extends Component {
this.setState({
Inputsval: "",
Inputsvaltype: true,
Inputsvaltest: "请填写分数",
Inputsvaltest: "总成绩不能为空",
})
return
}
//判断主观题
var nubmer = Inputsval;
if (!re.test(nubmer)) {
if (!re.test(nubmer)&&!res.test(nubmer)) {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
@ -164,14 +177,14 @@ class ModulationModal_exercise extends Component {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
Inputsvaltest: "成绩不能小于零",
Inputsvaltest: "成绩不能小于零",
})
return;
} else if (parseFloat(Inputsval) > this.props.subjective_score) {
this.setState({
Inputsval: Inputsval,
Inputsvaltype: true,
Inputsvaltest: `成绩不能大于${this.props.subjective_score}`,
Inputsvaltest: `成绩不能大于总分值${this.props.subjective_score}`,
})
return;
}
@ -181,12 +194,12 @@ class ModulationModal_exercise extends Component {
this.setState({
Inputsvals: "",
Inputsvaltypes: true,
Inputsvaltests: "请填写分数",
Inputsvaltests: "总成绩不能为空",
})
return
}
var nubmers = Inputsvals;
if (!re.test(nubmers)) {
if (!re.test(nubmers)&&!res.test(nubmers)) {
this.setState({
Inputsvals: "",
Inputsvaltypes: true,
@ -199,14 +212,14 @@ class ModulationModal_exercise extends Component {
this.setState({
Inputsvals: Inputsvals,
Inputsvaltypes: true,
Inputsvaltests: "请输入0-100的分数",
Inputsvaltests: "总成绩不能小于零",
})
return;
} else if (parseFloat(Inputsvals) > this.props.objective_score) {
this.setState({
Inputsvals: Inputsvals,
Inputsvaltypes: true,
Inputsvaltests: `成绩不能大于${this.props.objective_score}`,
Inputsvaltests: `成绩不能大于总分值${this.props.objective_score}`,
})
return;
}
@ -316,7 +329,7 @@ class ModulationModal_exercise extends Component {
<div className="mexertwo" style={{
marginTop: "20px",
}}>
<p className="mexeheigth2">主观题成绩:</p>
<p className="mexeheigth2 mr10">主观题成绩:</p>
<Input
className={Inputsvaltype === true ? "borerinput myinputnumbers bor-reds" : "myinputnumbers"}
style={{
@ -335,7 +348,7 @@ class ModulationModal_exercise extends Component {
<p style={{
color: "#DD1717",
width: "77%",
marginLeft: "75px",
marginLeft: "82px",
marginTop: "10px",
}}>{Inputsvaltest}</p>
: ""
@ -362,7 +375,7 @@ class ModulationModal_exercise extends Component {
marginTop: "20px",
}}>
<p className="mexeheigth2">客观题成绩:</p>
<p className="mexeheigth2 mr10">客观题成绩:</p>
<Input
className={Inputsvaltypes === true ? "borerinput myinputnumbers bor-reds" : "myinputnumbers"}
style={{
@ -382,7 +395,7 @@ class ModulationModal_exercise extends Component {
<p style={{
color: "#DD1717",
width: "77%",
marginLeft: "75px",
marginLeft: "82px",
marginTop: "10px",
}}>{Inputsvaltests}</p>
: ""

@ -590,7 +590,31 @@ class Studentshavecompletedthelist extends Component {
</span>
)
}
},
{
title: '操作',
dataIndex: 'finalscore',
key: 'finalscore',
align: 'center',
className: "edu-txt-center font-14",
render: (text, record) => (
<span>
{
record.submitstate === "未提交"||record.commit_method===5?
<span style={{textAlign: "center", color: '#999999'}}>--</span>
:record.submitstate === "已提交"?
record.score_open===null||record.score_open===undefined?"":
record.score_open===true?
<a style={{textAlign: "center"}} className="color-blue"
target="_blank"
href={`/courses/${this.props.match.params.coursesId}/exercises/${this.props.match.params.Id}/users/${record.myid}`}>查看</a>
:""
:
<span style={{textAlign: "center", color: '#999999'}}>--</span>
}
</span>
)
},
],
columnss: [
{
@ -1477,7 +1501,7 @@ class Studentshavecompletedthelist extends Component {
}
thiss.Generatenewdata(response.data.exercise_users, response.data.current_answer_user);
thiss.Generatenewdata(response.data.exercise_users, response.data.current_answer_user,response.data.exercise_types);
}
}
//老师
@ -1503,7 +1527,7 @@ class Studentshavecompletedthelist extends Component {
}
Generatenewdata(exercise_users, current_answer_user) {
Generatenewdata(exercise_users, current_answer_user,exercise_types) {
let {page, limit} = this.state;
let datalist = [];
let datalisttwo = [];
@ -1526,7 +1550,7 @@ class Studentshavecompletedthelist extends Component {
levelscore: exercise_users[i].subjective_score === undefined ? "--" : exercise_users[i].subjective_score === null ? "--" : exercise_users[i].subjective_score === "" ? "--" : exercise_users[i].subjective_score,
efficiencyscore: exercise_users[i].score === null ? "--" : exercise_users[i].score === "" ? "--" : exercise_users[i].score,
operating: "评阅",
commit_method:exercise_users[i].commit_method
commit_method:exercise_users[i].commit_method,
})
} else {
datalist.push({
@ -1569,6 +1593,7 @@ class Studentshavecompletedthelist extends Component {
review_status: current_answer_user.review_status,
completion: current_answer_user.objective_score === undefined ? "--" : current_answer_user.objective_score === null ? "--" : current_answer_user.objective_score === "" ? "--" : current_answer_user.objective_score,
levelscore: current_answer_user.subjective_score === undefined ? "--" : current_answer_user.subjective_score === null ? "--" : current_answer_user.subjective_score === "" ? "--" : current_answer_user.subjective_score,
score_open:exercise_types.score_open,
})
@ -1716,7 +1741,7 @@ class Studentshavecompletedthelist extends Component {
loadingstate: false,
})
}
this.Generatenewdata(response.data.exercise_users, response.data.current_answer_user);
this.Generatenewdata(response.data.exercise_users, response.data.current_answer_user,response.data.exercise_types);
}).catch((error) => {
//console.log(error)
this.setState({

Loading…
Cancel
Save