Commit bb4a363c by yuananting

fix及格线统一整数

parent ab61605c
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @Author: yuananting * @Author: yuananting
* @Date: 2021-03-27 16:15:13 * @Date: 2021-03-27 16:15:13
* @LastEditors: yuananting * @LastEditors: yuananting
* @LastEditTime: 2021-04-13 15:12:49 * @LastEditTime: 2021-04-13 21:28:33
* @Description: 助学工具-新建/复制/编辑试卷 * @Description: 助学工具-新建/复制/编辑试卷
* @Copyrigh: © 2020 杭州杰竞科技有限公司 版权所有 * @Copyrigh: © 2020 杭州杰竞科技有限公司 版权所有
*/ */
...@@ -71,6 +71,7 @@ class OperatePaper extends Component { ...@@ -71,6 +71,7 @@ class OperatePaper extends Component {
currentNav: "", currentNav: "",
currentCategoryPapers: [], currentCategoryPapers: [],
loading: false, loading: false,
check: false,
}; };
} }
...@@ -293,16 +294,29 @@ class OperatePaper extends Component { ...@@ -293,16 +294,29 @@ class OperatePaper extends Component {
return result; return result;
}; };
validatePaperName = (paperName) => {
if (this.state.check && !paperName) {
return "请输入试卷名称";
}
if (this.checkExist(paperName)) {
return "该试卷名称已存在";
}
};
// 保存试卷 // 保存试卷
savePaper = async () => { savePaper = async () => {
try { this.setState({ check: true });
await this.formRef.current.validateFields();
const { selectQuestionList, formData, currentOperate } = this.state; const { selectQuestionList, formData, currentOperate } = this.state;
const categoryId = getParameterByName("categoryId"); const categoryId = getParameterByName("categoryId");
let questionList = []; let questionList = [];
if (!formData.passRate || !formData.paperName) {
return;
}
if (selectQuestionList.length === 0) { if (selectQuestionList.length === 0) {
return message.warning("请选择题目"); return message.warning("请选择题目");
} }
selectQuestionList.forEach((item, index) => { selectQuestionList.forEach((item, index) => {
questionList.push({ questionList.push({
categoryId: item.categoryId, categoryId: item.categoryId,
...@@ -383,9 +397,6 @@ class OperatePaper extends Component { ...@@ -383,9 +397,6 @@ class OperatePaper extends Component {
} }
} }
); );
} catch (e) {
console.log(e);
}
}; };
// 预览试卷 // 预览试卷
...@@ -621,6 +632,7 @@ class OperatePaper extends Component { ...@@ -621,6 +632,7 @@ class OperatePaper extends Component {
currentNav, currentNav,
formData, formData,
loading, loading,
check,
} = this.state; } = this.state;
const { const {
singleChoiceCnt, singleChoiceCnt,
...@@ -639,7 +651,6 @@ class OperatePaper extends Component { ...@@ -639,7 +651,6 @@ class OperatePaper extends Component {
questionCnt, questionCnt,
totalScore, totalScore,
} = formData; } = formData;
const _that = this;
return ( return (
<div className="page operate-paper-page"> <div className="page operate-paper-page">
...@@ -654,21 +665,10 @@ class OperatePaper extends Component { ...@@ -654,21 +665,10 @@ class OperatePaper extends Component {
name="paperName" name="paperName"
label="试卷名称:" label="试卷名称:"
required required
rules={[ validateStatus={
{ this.validatePaperName(paperName) ? "error" : ""
required: true,
message: "请输入试卷名称",
},
({ getFieldValue }) => ({
validator(_, value) {
if (_that.checkExist(value)) {
return Promise.reject("该试卷名称已存在");
} else {
return Promise.resolve();
} }
}, help={this.validatePaperName(paperName)}
}),
]}
> >
<Input <Input
value={paperName} value={paperName}
...@@ -687,24 +687,15 @@ class OperatePaper extends Component { ...@@ -687,24 +687,15 @@ class OperatePaper extends Component {
/> />
</Form.Item> </Form.Item>
<Form.Item label="及格线:" required>
<div>
<Form.Item <Form.Item
noStyle
initialValue={60}
name="passRate" name="passRate"
rules={[ label="及格线:"
({ getFieldValue }) => ({ required
validator(_, value) { validateStatus={check && !passRate ? "error" : ""}
if (!value) { help={check && !passRate && "请输入及格线"}
return Promise.reject("请输入及格线");
} else {
return Promise.resolve();
}
},
}),
]}
> >
<div>
<InputNumber <InputNumber
min={1} min={1}
max={100} max={100}
...@@ -714,18 +705,18 @@ class OperatePaper extends Component { ...@@ -714,18 +705,18 @@ class OperatePaper extends Component {
{ {
formData: { formData: {
...formData, ...formData,
passRate: value, passRate: parseInt(value) || undefined,
}, },
}, },
() => this.setFormData(selectQuestionList) () => this.setFormData(selectQuestionList)
); );
}} }}
/> />{" "}
</Form.Item>{" "}
% %
<span className="score-info"> <span className="score-info">
总分({totalScore})*及格线({passRate || 0}%)=及格分数( 总分({Number(totalScore) || 0})*及格线({Number(passRate) || 0}
{passScore} %)=及格分数(
{Number(passScore) || 0}
</span> </span>
</div> </div>
</Form.Item> </Form.Item>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment