diff --git a/packages/examination/src/views/exam-online/compoents/ExamEditPage.tsx b/packages/examination/src/views/exam-online/compoents/ExamEditPage.tsx index 94fea14..d943dec 100644 --- a/packages/examination/src/views/exam-online/compoents/ExamEditPage.tsx +++ b/packages/examination/src/views/exam-online/compoents/ExamEditPage.tsx @@ -1,6 +1,6 @@ import React, { useRef, useEffect, useState } from 'react'; // @ts-ignore -import { Form, Input, Select, DatePicker, Space, ColProps, Button, Cascader, DefaultOptionType, Rule } from 'antd'; +import {Form, Input, Select, DatePicker, Space, ColProps, Button, Cascader, DefaultOptionType, Rule, Modal} from 'antd'; import type { FormProps, FormInstance } from 'antd'; import ESBreadcrumbComponent from './ESBreadcrumbComponent'; // 引入面包屑组件 import { withRouter, RouteComponentProps } from 'react-router-dom'; // 引入 withRouter 和 RouteComponentProps @@ -136,7 +136,16 @@ const ExamBasicInfoForm: React.FC = (props) => { const handleSubmit = () => { if (formRef.current) { formRef.current.validateFields().then((values) => { - onFinish(values); + const text = isEdit ? '修改' : '新增'; + Modal.confirm({ + title: `确认${text}`, + content: `是否${text}考试?`, + onOk: () => { + onFinish(values); + }, + onCancel: () => { + }, + }); }).catch((errorInfo) => { console.log('表单验证失败:', errorInfo); }); diff --git a/packages/examination/src/views/exam-online/compoents/ExamListPage.tsx b/packages/examination/src/views/exam-online/compoents/ExamListPage.tsx index fd0b076..9d76a12 100644 --- a/packages/examination/src/views/exam-online/compoents/ExamListPage.tsx +++ b/packages/examination/src/views/exam-online/compoents/ExamListPage.tsx @@ -241,17 +241,9 @@ const ExamListPage = ({ history }: { history: any }) => { // 编辑 const handleEdit = (examId: number) => { - Modal.confirm({ - title: `确认修改`, - content: `是否修改试卷?`, - onOk: () => { - history.push({ - pathname: '/exam-edit', - state: { examId }, - }); - }, - onCancel: () => { - }, + history.push({ + pathname: '/exam-edit', + state: { examId }, }); }; diff --git a/packages/examination/src/views/examPaper/examPaperAdd.tsx b/packages/examination/src/views/examPaper/examPaperAdd.tsx index ee8ea9c..ebf37b3 100644 --- a/packages/examination/src/views/examPaper/examPaperAdd.tsx +++ b/packages/examination/src/views/examPaper/examPaperAdd.tsx @@ -332,23 +332,39 @@ class ExamPaperAdd extends Component { questionIds }; if (isEdit === 'true') { - const res = await editExamPaper(data); - const success = res["success"]; - if (success) { - message.success('试卷更新成功'); - this.props.history.push('/examPaperList'); - } else { - message.error('试卷更新失败'); - } + Modal.confirm({ + title: `确认修改`, + content: `是否修改试卷?`, + onOk: async () => { + const res = await editExamPaper(data); + const success = res["success"]; + if (success) { + message.success('试卷更新成功'); + this.props.history.push('/examPaperList'); + } else { + message.error('试卷更新失败'); + } + }, + onCancel: () => { + }, + }); } else { - const res = await addExamPaper(data); - const success = res["success"]; - if (success) { - message.success('试卷保存成功'); - this.props.history.push('/examPaperList'); - } else { - message.error('试卷保存失败'); - } + Modal.confirm({ + title: `确认保存`, + content: `是否保存试卷?`, + onOk: async () => { + const res = await addExamPaper(data); + const success = res["success"]; + if (success) { + message.success('试卷保存成功'); + this.props.history.push('/examPaperList'); + } else { + message.error('试卷保存失败'); + } + }, + onCancel: () => { + }, + }); } } catch (error) { } diff --git a/packages/examination/src/views/examPaper/examPaperList.tsx b/packages/examination/src/views/examPaper/examPaperList.tsx index 6c9044e..4a3c0db 100644 --- a/packages/examination/src/views/examPaper/examPaperList.tsx +++ b/packages/examination/src/views/examPaper/examPaperList.tsx @@ -323,20 +323,12 @@ class ExamPaperList extends Component { width: 200, render: (record: any) => [ { - Modal.confirm({ - title: `确认修改`, - content: `是否修改试卷?`, - onOk: () => { - this.props.history.push({ - pathname: '/examPaperAdd', - state: { - id: String(record.id), - isEdit: "true" - } - }); - }, - onCancel: () => { - }, + this.props.history.push({ + pathname: '/examPaperAdd', + state: { + id: String(record.id), + isEdit: "true" + } }); }}>编辑, { diff --git a/packages/examination/src/views/question/questionAdd.tsx b/packages/examination/src/views/question/questionAdd.tsx index 920b6e9..136835d 100644 --- a/packages/examination/src/views/question/questionAdd.tsx +++ b/packages/examination/src/views/question/questionAdd.tsx @@ -1,9 +1,10 @@ import React, { Component } from "react"; -import { Form, Input, Button, Radio, Checkbox, Select, message } from "antd"; +import {Form, Input, Button, Radio, Checkbox, Select, message, Modal} from "antd"; import { dictionary } from "api/dict/index"; import { addQuestion, findIndustry } from "api/question"; import { CloseCircleOutlined } from '@ant-design/icons'; import * as XLSX from "xlsx"; +import {addExamPaper} from "../../api/examPaper"; const { Option } = Select; @@ -136,37 +137,44 @@ class QuestionAdd extends Component { this.formRef.current.validateFields().then((values: any) => { const questions: any = []; const { formIds } = this.state; + Modal.confirm({ + title: `确认保存`, + content: `是否保存试题?`, + onOk: async () => { + formIds.forEach((formId) => { + let answer = values[`answer_${formId}`]; + if (Array.isArray(answer)) { + answer.sort(); + answer = answer.join(","); + } - formIds.forEach((formId) => { - let answer = values[`answer_${formId}`]; - if (Array.isArray(answer)) { - answer.sort(); - answer = answer.join(","); - } + questions.push({ + questionTypes: values[`questionTypes_${formId}`], + industryId: values[`industryId_${formId}`], + serviceTypeId: values[`serviceTypeId_${formId}`], + questionContent: values[`questionContent_${formId}`], + optionA: values[`optionA_${formId}`], + optionB: values[`optionB_${formId}`], + optionC: values[`optionC_${formId}`], + optionD: values[`optionD_${formId}`], + answer: answer + }); + }); - questions.push({ - questionTypes: values[`questionTypes_${formId}`], - industryId: values[`industryId_${formId}`], - serviceTypeId: values[`serviceTypeId_${formId}`], - questionContent: values[`questionContent_${formId}`], - optionA: values[`optionA_${formId}`], - optionB: values[`optionB_${formId}`], - optionC: values[`optionC_${formId}`], - optionD: values[`optionD_${formId}`], - answer: answer - }); - }); - - addQuestion(questions).then((res) => { - const success = res["success"]; - if (success) { - message.success(`新增成功`); - this.props.history.push("/questionList"); - } else { - message.error("新增试题失败,请稍后重试"); - } - }).catch(() => { - message.error("新增试题时发生错误,请检查"); + addQuestion(questions).then((res) => { + const success = res["success"]; + if (success) { + message.success(`新增成功`); + this.props.history.push("/questionList"); + } else { + message.error("新增试题失败,请稍后重试"); + } + }).catch(() => { + message.error("新增试题时发生错误,请检查"); + }); + }, + onCancel: () => { + }, }); }); }; diff --git a/packages/examination/src/views/question/questionEdit.tsx b/packages/examination/src/views/question/questionEdit.tsx index 04c0e3b..b7c838d 100644 --- a/packages/examination/src/views/question/questionEdit.tsx +++ b/packages/examination/src/views/question/questionEdit.tsx @@ -1,5 +1,5 @@ import React, { Component } from'react'; -import { Form, Input, Button, Radio, Checkbox, Select, message } from 'antd'; +import { Form, Input, Button, Radio, Checkbox, Select, message, Modal } from 'antd'; import { dictionary } from "api/dict/index"; import { findIndustry, getQuestionDetail, editQuestion } from 'api/question'; import TextArea from "antd/es/input/TextArea"; @@ -91,16 +91,23 @@ class QuestionEdit extends Component { values.answer.sort(); values.answer = values.answer.join(','); } - editQuestion(values).then((res) => { - const success = res['success']; - if (success) { - message.success('修改成功'); - this.props.history.push('/questionList'); - } else { - message.error('修改失败,请稍后重试'); - } - }).catch(() => { - message.error('修改时发生错误,请检查'); + Modal.confirm({ + title: `确认修改`, + content: `是否修改试题?`, + onOk: () => { + editQuestion(values).then((res) => { + const success = res['success']; + if (success) { + message.success('修改成功'); + this.props.history.push('/questionList'); + } else { + message.error('修改失败,请稍后重试'); + } + }).catch(() => { + message.error('修改时发生错误,请检查'); + }); + }, + onCancel: () => {}, }); }); }; diff --git a/packages/examination/src/views/question/questionList.tsx b/packages/examination/src/views/question/questionList.tsx index bca78dc..517f4b4 100644 --- a/packages/examination/src/views/question/questionList.tsx +++ b/packages/examination/src/views/question/questionList.tsx @@ -266,17 +266,9 @@ class QuestionList extends Component { this.handleDeleteQuestion(record.id); }}>删除, { - Modal.confirm({ - title: `确认修改`, - content: `是否修改试题?`, - onOk: () => { - this.props.history.push({ - pathname: '/questionEdit', - state: { id: record.id } - }); - }, - onCancel: () => { - }, + this.props.history.push({ + pathname: '/questionEdit', + state: { id: record.id } }); }}>修正 ]