diff --git a/public/react/src/modules/question/NewMyShixunModel.js b/public/react/src/modules/question/NewMyShixunModel.js index f525fcf0c..7c3bfc707 100644 --- a/public/react/src/modules/question/NewMyShixunModel.js +++ b/public/react/src/modules/question/NewMyShixunModel.js @@ -9,6 +9,7 @@ import QuestionModals from "./component/QuestionModals"; import Contentpart from "./component/Contentpart"; import './questioncss/questioncom.css'; import Bottomsubmit from "../modals/Bottomsubmit"; +import QuestionModalys from "./component/QuestionModalys"; //exam_id 试卷的id class NewMyShixunModel extends Component { @@ -56,15 +57,28 @@ class NewMyShixunModel extends Component { oj_status: null, isVisible: false, selectionbools: false, + chakanjiexiboolindex: "无", } } + + chakanjiexibool = (index) => { + if (this.state.chakanjiexiboolindex === index) { + this.setState({ + chakanjiexiboolindex: "无", + }) + return + } + this.setState({ + chakanjiexiboolindex: index, + }) + } setdiscipline_id = (discipline_id) => { this.setState({ discipline_id: discipline_id, sub_discipline_id: null, tag_discipline_id: null, - keywords: "", + keyword: "", page: 1, per_page: 10, oj_status: null @@ -76,7 +90,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: this.state.page, per_page: 10, oj_status: null, @@ -90,7 +104,7 @@ class NewMyShixunModel extends Component { this.setState({ sub_discipline_id: sub_discipline_id, tag_discipline_id: null, - keywords: "", + keyword: "", page: 1, per_page: 10, oj_status: null @@ -102,7 +116,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: 1, per_page: 10, oj_status: null, @@ -114,7 +128,7 @@ class NewMyShixunModel extends Component { settag_discipline_id = (tag_discipline_id) => { this.setState({ tag_discipline_id: tag_discipline_id, - keywords: "", + keyword: "", page: 1, per_page: 10, oj_status: null @@ -126,7 +140,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: 1, per_page: 10, oj_status: null, @@ -347,7 +361,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: pageNumber, per_page: 10, oj_status: this.state.oj_status, @@ -455,7 +469,7 @@ class NewMyShixunModel extends Component { visiblemys: false, page: 1, per_page: 10, - keywords: "", + keyword: "", oj_status: null }) @@ -466,11 +480,11 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: 1, per_page: 10, oj_status: null, - item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), }; this.getdata(data); @@ -482,7 +496,7 @@ class NewMyShixunModel extends Component { visiblemyss: false, page: 1, per_page: 10, - keywords: "", + keyword: "", oj_status: null }) @@ -495,9 +509,9 @@ class NewMyShixunModel extends Component { item_type: item_type, page: 1, per_page: 10, - keywords: null, + keyword: null, oj_status: null, - item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), }; this.getdata(data); @@ -516,6 +530,19 @@ class NewMyShixunModel extends Component { } } + showmodelsInaudit = (e) => { + this.setState({ + modalsTypeInaudit: true, + titilesm: "公开申请已提交,请等待管理员的审核", + titiless: "我们将在1-2个工作日内完成审核", + }) + }; + modalsTypeInauditbool = () => { + this.setState({ + modalsTypeInaudit: false, + }) + } + handleVisibleChanges = (boll) => { if (this.state.visiblemys === true) { @@ -533,13 +560,13 @@ class NewMyShixunModel extends Component { setdatafunsval = (e) => { this.setState({ - keywords: e.target.value + keyword: e.target.value }) } setdatafuns = (value) => { this.setState({ - keywords: value, + keyword: value, }) var data = { discipline_id: this.state.discipline_id, @@ -548,7 +575,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: value, + keyword: value, page: this.state.page, per_page: 10, oj_status: this.state.oj_status, @@ -573,7 +600,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), @@ -599,7 +626,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), @@ -667,7 +694,7 @@ class NewMyShixunModel extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), @@ -687,18 +714,168 @@ class NewMyShixunModel extends Component { let url = ""; if (this.props.exam_id === undefined) { url = `/item_baskets/${id}.json`; + axios.delete(url) + .then((result) => { + if (result.data.status == 0) { + // this.props.showNotification(`撤销成功`); + var data = { + discipline_id: this.state.discipline_id, + sub_discipline_id: this.state.sub_discipline_id, + tag_discipline_id: this.state.tag_discipline_id, + public: this.state.defaultActiveKey, + difficulty: this.state.difficulty, + item_type: this.state.item_type, + keyword: this.state.keywords, + page: this.state.page, + per_page: 10, + exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + }; + this.getdatasy(data); + this.getbasket_listdata(); + } + }).catch((error) => { + ////console.log(error); + }) } else { - url = `/examination_banks/${id}/revoke_item.json`; + url = `/examination_banks/${this.props.exam_id}/revoke_item.json`; + axios.delete(url, { + data: { + item_id: id === undefined ? "" : parseInt(id), + } + }) + .then((result) => { + if (result.data.status == 0) { + // this.props.showNotification(`撤销成功`); + var data = { + discipline_id: this.state.discipline_id, + sub_discipline_id: this.state.sub_discipline_id, + tag_discipline_id: this.state.tag_discipline_id, + public: this.state.defaultActiveKey, + difficulty: this.state.difficulty, + item_type: this.state.item_type, + keyword: this.state.keywords, + page: this.state.page, + per_page: 10, + exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + }; + this.getdatasy(data); + this.getbasket_listdata(); + } + }).catch((error) => { + ////console.log(error); + }) + } + // 撤销 + getitem_basketss = (id) => { + let url = ""; + if (this.props.exam_id === undefined) { + url = `/item_baskets/${id}.json`; + } else { + url = `/examination_banks/${id}/revoke_item.json`; + } + + axios.delete(url, { + data: { + item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + } + }) + .then((result) => { + if (result.data.status == 0) { + // this.props.showNotification(`撤销成功`); + var data = { + discipline_id: this.state.discipline_id, + sub_discipline_id: this.state.sub_discipline_id, + tag_discipline_id: this.state.tag_discipline_id, + public: this.state.defaultActiveKey, + difficulty: this.state.difficulty, + item_type: this.state.item_type, + keyword: this.state.keywords, + page: this.state.page, + per_page: 10, + item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + }; + this.getdatasy(data); + this.getbasket_listdata(); + } + }) + .then((result) => { + if (result.data.status == 0) { + // this.props.showNotification(`撤销成功`); + var data = { + discipline_id: this.state.discipline_id, + sub_discipline_id: this.state.sub_discipline_id, + tag_discipline_id: this.state.tag_discipline_id, + public: this.state.defaultActiveKey, + difficulty: this.state.difficulty, + item_type: this.state.item_type, + keywords: this.state.keywords, + page: this.state.page, + per_page: 10, + exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + }; + this.getdatasy(data); + this.getbasket_listdata(); + } + }).catch((error) => { + ////console.log(error); + }) + } + + + } + //全选试题库 + selectallquestionsonthispage = () => { + var item_idsdata = []; + + var arr = this.state.Contentdata.items; + for (let data of arr) { + if (data.item_type === "PROGRAM") { + //编程题 + if (data.choosed === true) { + + } else { + //未选用 + if (data.program_attr.status === 1) { + //已发布 + item_idsdata.push(data.id); + } + + } + + } else { + //不是编程题 + if (data.choosed === true) { + + } else { + //未选用 + item_idsdata.push(data.id); + } + } + } + const data = { + item_ids: item_idsdata, + item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + } + this.getitem_baskets(data); + this.setState({ + selectallquestionsonthispages: true, + }) + } + + //全选的状态 - axios.delete(url, { + //删除大题型 + Deletebigquestiontype = (item_type) => { + const url = `/item_baskets/delete_item_type.json`; + axios.delete((url), { data: { - item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + item_type: item_type } }) - .then((result) => { - if (result.data.status == 0) { - // this.props.showNotification(`撤销成功`); + .then((response) => { + if (response.data.status == 0) { + // this.props.showNotification('删除成功'); var data = { discipline_id: this.state.discipline_id, sub_discipline_id: this.state.sub_discipline_id, @@ -711,164 +888,85 @@ class NewMyShixunModel extends Component { per_page: 10, item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), }; - this.getdatasy(data); - this.getbasket_listdata(); - } - }) - .then((result) => { - if (result.data.status == 0) { - // this.props.showNotification(`撤销成功`); - var data = { - discipline_id: this.state.discipline_id, - sub_discipline_id: this.state.sub_discipline_id, - tag_discipline_id: this.state.tag_discipline_id, - public: this.state.defaultActiveKey, - difficulty: this.state.difficulty, - item_type: this.state.item_type, - keywords: this.state.keywords, - page: this.state.page, - per_page: 10, - exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), - }; - this.getdatasy(data); + this.getdata(data); this.getbasket_listdata(); } - }).catch((error) => { - ////console.log(error); }) + var data = { + discipline_id: this.state.discipline_id, + sub_discipline_id: this.state.sub_discipline_id, + tag_discipline_id: this.state.tag_discipline_id, + public: this.state.defaultActiveKey, + difficulty: this.state.difficulty, + item_type: this.state.item_type, + keyword: this.state.keywords, + page: this.state.page, + per_page: 10, + oj_status: oj_status, + exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + }; + this.getdata(data); } -} -//全选试题库 -selectallquestionsonthispage = () => { - var item_idsdata = []; - - var arr = this.state.Contentdata.items; - for (let data of arr) { - if (data.item_type === "PROGRAM") { - //编程题 - if (data.choosed === true) { + render() { + let { + page, per_page, items_count, Headertop, visible, placement, modalsType, modalsTypes, basket_list, + completion_questions_count, judgement_questions_count, multiple_questions_count, practical_questions_count, + program_questions_count, single_questions_count, subjective_questions_count, selectionbools, + modalsTypeInaudit + } = this.state; - } else { - //未选用 - if (data.program_attr.status === 1) { - //已发布 - item_idsdata.push(data.id); - } - - } + this.props.history.replace("/paperreview"); - } else { - //不是编程题 - if (data.choosed === true) { - - } else { - //未选用 - item_idsdata.push(data.id); - } - } - - } - const data = { - item_ids: item_idsdata, - item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), } - this.getitem_baskets(data); - this.setState({ - selectallquestionsonthispages: true, - }) -} -//全选的状态 - -//删除大题型 -Deletebigquestiontype = (item_type) => { - const url = `/item_baskets/delete_item_type.json`; - axios.delete((url), { - data: { - item_type: item_type - } - }) - .then((response) => { - if (response.data.status == 0) { - // this.props.showNotification('删除成功'); - var data = { - discipline_id: this.state.discipline_id, - sub_discipline_id: this.state.sub_discipline_id, - tag_discipline_id: this.state.tag_discipline_id, - public: this.state.defaultActiveKey, - difficulty: this.state.difficulty, - item_type: this.state.item_type, - keywords: this.state.keywords, - page: this.state.page, - per_page: 10, - item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), - }; - this.getdata(data); - this.getbasket_listdata(); - } + setoj_status = (oj_status) => { + //编程题发布未发布 + this.setState({ + selectallquestionsonthispages: false, + difficulty: null, + oj_status: oj_status }) - .catch(function (error) { - ////console.log(error); - }); - -} - - -//跳转 -gotopaperreview = () => { - - this.props.history.replace("/paperreview"); - -} - -setoj_status = (oj_status) => { - //编程题发布未发布 - this.setState({ - selectallquestionsonthispages: false, - difficulty: null, - oj_status: oj_status - }) - var data = { - discipline_id: this.state.discipline_id, - sub_discipline_id: this.state.sub_discipline_id, - tag_discipline_id: this.state.tag_discipline_id, - public: this.state.defaultActiveKey, - difficulty: this.state.difficulty, - item_type: this.state.item_type, - keywords: this.state.keywords, - page: this.state.page, - per_page: 10, - oj_status: oj_status, - item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), - }; - this.getdata(data); -} + var data = { + discipline_id: this.state.discipline_id, + sub_discipline_id: this.state.sub_discipline_id, + tag_discipline_id: this.state.tag_discipline_id, + public: this.state.defaultActiveKey, + difficulty: this.state.difficulty, + item_type: this.state.item_type, + keywords: this.state.keywords, + page: this.state.page, + per_page: 10, + oj_status: oj_status, + item_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id), + }; + this.getdata(data); + } -render() { - let { - page, per_page, items_count, Headertop, visible, placement, modalsType, modalsTypes, basket_list, - completion_questions_count, judgement_questions_count, multiple_questions_count, practical_questions_count, - program_questions_count, single_questions_count, subjective_questions_count, selectionbools - } = this.state; + render() { + let { + page, per_page, items_count, Headertop, visible, placement, modalsType, modalsTypes, basket_list, + completion_questions_count, judgement_questions_count, multiple_questions_count, practical_questions_count, + program_questions_count, single_questions_count, subjective_questions_count, selectionbools + } = this.state; - const Datacount = completion_questions_count + judgement_questions_count - + multiple_questions_count + practical_questions_count - + program_questions_count - + single_questions_count - + subjective_questions_count; + const Datacount = completion_questions_count + judgement_questions_count + + multiple_questions_count + practical_questions_count + + program_questions_count + + single_questions_count + + subjective_questions_count; - return ( -
+ return ( +
- { - visible === true ? - - : "" - } - { - visible === true ? -
- : ""} - { - modalsTypes === true ? - this.modalCancels()} - setDownloads={(e) => this.setDownloads(e)}> - : "" - } - { - modalsType === true ? - this.modalCancel()} - setDownload={() => this.setDownload()}> - : "" - } - - {/*顶部*/} - - this.setdifficulty(e)} - setitem_types={(e) => this.setitem_types(e)} - setdiscipline_id={(e) => this.setdiscipline_id(e)} - setsub_discipline_id={(e) => this.setsub_discipline_id(e)} - settag_discipline_id={(e) => this.settag_discipline_id(e)} - /> - {/*头部*/} - this.getitem_basketss(id)} - selectallquestionsonthispage={() => this.selectallquestionsonthispage()} - getitem_baskets={(e) => this.getitem_baskets(e)} - setdatafuns={(e) => this.setdatafuns(e)} - setdatafunsval={(e) => this.setdatafunsval(e)} - handleVisibleChanges={(e) => this.handleVisibleChanges(e)} - handleVisibleChange={(e) => this.handleVisibleChange(e)} - showmodels={(e) => this.showmodels(e)} - showmodelysl={(e) => this.showmodelysl(e)} - callback={(e) => this.callback(e)} - setoj_status={(e) => this.setoj_status(e)}> - - { - items_count && items_count > 10 ? -
- -
- :
- -
- } + } + + : "" + } + { + visible === true ? +
+ : ""} + { + modalsTypes === true ? + this.modalCancels()} + setDownloads={(e) => this.setDownloads(e)}> + : "" + } + { + modalsType === true ? + this.modalCancel()} + setDownload={() => this.setDownload()}> + : "" + } + { + modalsTypeInaudit === true ? + this.modalsTypeInauditbool()} + setDownload={() => this.modalsTypeInauditbool()}> + : "" + } + {/*顶部*/} + + this.setdifficulty(e)} + setitem_types={(e) => this.setitem_types(e)} + setdiscipline_id={(e) => this.setdiscipline_id(e)} + setsub_discipline_id={(e) => this.setsub_discipline_id(e)} + settag_discipline_id={(e) => this.settag_discipline_id(e)} + /> + {/*头部*/} + this.chakanjiexibool(e)} + getitem_basketss={(id) => this.getitem_basketss(id)} + selectallquestionsonthispage={() => this.selectallquestionsonthispage()} + getitem_baskets={(e) => this.getitem_baskets(e)} + setdatafuns={(e) => this.setdatafuns(e)} + setdatafunsval={(e) => this.setdatafunsval(e)} + handleVisibleChanges={(e) => this.handleVisibleChanges(e)} + handleVisibleChange={(e) => this.handleVisibleChange(e)} + showmodels={(e) => this.showmodels(e)} + showmodelysl={(e) => this.showmodelysl(e)} + callback={(e) => this.callback(e)} + setoj_status={(e) => this.setoj_status(e)} + showmodelsInaudit={(e) => this.showmodelsInaudit(e)} + + > + + { + items_count && items_count > 10 ? +
+ +
+ :
+ +
+ } - this.props.setnewmyshixunmodelbool(false)} - onSubmits={() => this.props.setnewmyshixunmodelbool(false)} url={'/paperlibrary'}> -
- ) + this.props.setnewmyshixunmodelbool(false)} + onSubmits={() => this.props.setnewmyshixunmodelbool(false)} url={'/paperlibrary'}> +
+ ) -} + } } diff --git a/public/react/src/modules/question/Paperreview_single.js b/public/react/src/modules/question/Paperreview_single.js index 5f0dd8b38..978dd4d69 100644 --- a/public/react/src/modules/question/Paperreview_single.js +++ b/public/react/src/modules/question/Paperreview_single.js @@ -14,6 +14,7 @@ const tagArray = [ ] //单选题 +//Paperlibraryseeid_items.js Listjihe.js class Paperreview_single extends Component { constructor(props) { super(props); @@ -155,10 +156,16 @@ class Paperreview_single extends Component {
- + { + itemssname === null || itemssname === undefined ? + "" + : + + } +
@@ -192,10 +199,16 @@ class Paperreview_single extends Component { objectsingle && objectsingle.program_attr && objectsingle.program_attr.description ?

- + { + itemsnamesy === null || itemsnamesy === undefined ? + "" + : + + } +

: ""} diff --git a/public/react/src/modules/question/Question.js b/public/react/src/modules/question/Question.js index ca3ff8684..e4f48faae 100644 --- a/public/react/src/modules/question/Question.js +++ b/public/react/src/modules/question/Question.js @@ -10,6 +10,7 @@ import TPMIndexHOC from "../tpm/TPMIndexHOC"; import NoneData from './component/NoneData'; import './questioncss/questioncom.css'; import SiderBars from "../question/component/SiderBars"; +import QuestionModalys from "./component/QuestionModalys"; class Question extends Component { constructor(props) { @@ -22,6 +23,7 @@ class Question extends Component { visible: false, placement: 'right', modalsType: false, + modalsTypeInaudit: false, modalsTypes: false, titilesm: "在平台审核后,所有成员均可使用试题", titiless: "是否设置为公开?", @@ -82,7 +84,7 @@ class Question extends Component { discipline_id: discipline_id, sub_discipline_id: null, tag_discipline_id: null, - keywords: "", + keyword: "", page: 1, per_page: 10, oj_status: null @@ -94,7 +96,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: this.state.page, per_page: 10, oj_status: null @@ -107,7 +109,7 @@ class Question extends Component { this.setState({ sub_discipline_id: sub_discipline_id, tag_discipline_id: null, - keywords: "", + keyword: "", page: 1, per_page: 10, oj_status: null @@ -119,7 +121,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: 1, per_page: 10, oj_status: null @@ -130,7 +132,7 @@ class Question extends Component { settag_discipline_id = (tag_discipline_id) => { this.setState({ tag_discipline_id: tag_discipline_id, - keywords: "", + keyword: "", page: 1, per_page: 10, oj_status: null @@ -142,7 +144,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: 1, per_page: 10, oj_status: null @@ -205,12 +207,19 @@ class Question extends Component { } //刷新加载 - getdata = (data) => { + getdata = (data, bool) => { const url = `/item_banks.json`; - this.setState({ - booljupyterurls: true, - selectionbools: false, - }) + if (bool) { + this.setState({ + selectionbools: false, + }) + } else { + this.setState({ + booljupyterurls: true, + selectionbools: false, + }) + } + axios.get((url), { params: data }).then((response) => { setTimeout(() => { this.setState({ @@ -327,7 +336,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: pageNumber, per_page: 10, oj_status: this.state.oj_status @@ -381,6 +390,16 @@ class Question extends Component { timuid: id }) }; + + showmodelsInaudit = (e) => { + this.setState({ + modalsTypeInaudit: true, + titilesm: "公开申请已提交,请等待管理员的审核", + titiless: "我们将在1-2个工作日内完成审核", + }) + }; + + showmodelysl = (id) => { this.setState({ modalsType: true, @@ -390,7 +409,11 @@ class Question extends Component { timuid: id }) }; - + modalsTypeInauditbool = () => { + this.setState({ + modalsTypeInaudit: false, + }) + } modalCancel = () => { this.setState({ @@ -435,7 +458,7 @@ class Question extends Component { visiblemys: false, page: 1, per_page: 10, - keywords: "", + keyword: "", oj_status: null }) @@ -446,7 +469,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: difficulty, item_type: this.state.item_type, - keywords: null, + keyword: null, page: 1, per_page: 10, oj_status: null @@ -461,7 +484,7 @@ class Question extends Component { visiblemyss: false, page: 1, per_page: 10, - keywords: "", + keyword: "", oj_status: null }) @@ -474,7 +497,7 @@ class Question extends Component { item_type: item_type, page: 1, per_page: 10, - keywords: null, + keyword: null, oj_status: null }; @@ -511,13 +534,13 @@ class Question extends Component { setdatafunsval = (e) => { this.setState({ - keywords: e.target.value + keyword: e.target.value }) } setdatafuns = (value) => { this.setState({ - keywords: value, + keyword: value, }) var data = { discipline_id: this.state.discipline_id, @@ -526,7 +549,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: value, + keyword: value, page: this.state.page, per_page: 10, oj_status: this.state.oj_status @@ -550,11 +573,11 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; - this.getdata(data); + this.getdata(data, true); } }) .catch(function (error) { @@ -575,11 +598,11 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; - this.getdata(data); + this.getdata(data, true); } }).catch((error) => { ////console.log(error); @@ -635,7 +658,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; @@ -665,7 +688,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; @@ -735,7 +758,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; @@ -771,7 +794,7 @@ class Question extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: this.state.item_type, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, oj_status: oj_status @@ -786,7 +809,8 @@ class Question extends Component { let { page, per_page, items_count, Headertop, visible, placement, modalsType, modalsTypes, basket_list, completion_questions_count, judgement_questions_count, multiple_questions_count, practical_questions_count, - program_questions_count, single_questions_count, subjective_questions_count, selectionbools + program_questions_count, single_questions_count, subjective_questions_count, selectionbools, + modalsTypeInaudit } = this.state; const Datacount = completion_questions_count + judgement_questions_count @@ -846,6 +870,12 @@ class Question extends Component { setDownload={() => this.setDownload()}> : "" } + { + modalsTypeInaudit === true ? + this.modalsTypeInauditbool()} + setDownload={() => this.modalsTypeInauditbool()}> + : "" + } @@ -901,6 +931,9 @@ class Question extends Component { /> {/*头部*/} this.chakanjiexibool(e)} getitem_basketss={(id) => this.getitem_basketss(id)} selectallquestionsonthispage={() => this.selectallquestionsonthispage()} getitem_baskets={(e) => this.getitem_baskets(e)} @@ -911,7 +944,9 @@ class Question extends Component { showmodels={(e) => this.showmodels(e)} showmodelysl={(e) => this.showmodelysl(e)} callback={(e) => this.callback(e)} - setoj_status={(e) => this.setoj_status(e)}> + setoj_status={(e) => this.setoj_status(e)} + showmodelsInaudit={(e) => this.showmodelsInaudit(e)} + > { items_count && items_count > 10 ? diff --git a/public/react/src/modules/question/Questionitem_banks.js b/public/react/src/modules/question/Questionitem_banks.js index 2da18a42c..b574ce3a1 100644 --- a/public/react/src/modules/question/Questionitem_banks.js +++ b/public/react/src/modules/question/Questionitem_banks.js @@ -455,7 +455,7 @@ class Questionitem_banks extends Component { sub_discipline_id: Getdatasdata[3].rbkc[1], tag_discipline_id: myrbkc, }); - this.props.history.replace('/problems/new'); + window.open("/problems/new"); } diff --git a/public/react/src/modules/question/component/Contentpart.js b/public/react/src/modules/question/component/Contentpart.js index 6311fe172..f640a54a6 100644 --- a/public/react/src/modules/question/component/Contentpart.js +++ b/public/react/src/modules/question/component/Contentpart.js @@ -319,7 +319,9 @@ class Contentpart extends Component { getitem_basketss={(id) => this.props.getitem_basketss(id)} getitem_baskets={(e) => this.props.getitem_baskets(e)} showmodels={(e) => this.props.showmodels(e)} - showmodelysl={(e) => this.props.showmodelysl(e)}> + showmodelysl={(e) => this.props.showmodelysl(e)} + showmodelsInaudit={(e) => this.props.showmodelsInaudit(e)} + > ) diff --git a/public/react/src/modules/question/component/Headplugselections.js b/public/react/src/modules/question/component/Headplugselections.js index 643729ec1..b3da84054 100644 --- a/public/react/src/modules/question/component/Headplugselections.js +++ b/public/react/src/modules/question/component/Headplugselections.js @@ -231,11 +231,16 @@ class Headplugselections extends Component { { disciplinesdata&&disciplinesdata.map((item,key)=>{ return( - trigger.parentNode} overlay={overlaymenu(item.sub_disciplines,item.id)} key={key} placement={item.id<4?"bottomRight":item.id>=8?"bottomLeft":"bottomCenter"}> + item.sub_disciplines.length>0? + trigger.parentNode} overlay={ overlaymenu(item.sub_disciplines,item.id)} key={key} placement={item.id<4?"bottomRight":item.id>=8?"bottomLeft":"bottomCenter"}> +
  • this.shixunsearchAll(item.id)}> + {item.name} +
  • +
    + :
  • this.shixunsearchAll(item.id)}> {item.name}
  • -
    ) }) } diff --git a/public/react/src/modules/question/component/Itembankstop.js b/public/react/src/modules/question/component/Itembankstop.js index 2a1893058..a28d1a661 100644 --- a/public/react/src/modules/question/component/Itembankstop.js +++ b/public/react/src/modules/question/component/Itembankstop.js @@ -1,6 +1,6 @@ -import React, {Component} from "react"; -import {Link, NavLink} from 'react-router-dom'; -import {WordsBtn, ActionBtn, SnackbarHOC, getImageUrl} from 'educoder'; +import React, { Component } from "react"; +import { Link, NavLink } from 'react-router-dom'; +import { WordsBtn, ActionBtn, SnackbarHOC, getImageUrl } from 'educoder'; import axios from 'axios'; import { notification, @@ -13,12 +13,12 @@ import { Input, Select, Cascader, - Col, Row, InputNumber, DatePicker, AutoComplete, Button, Tag,Tooltip + Col, Row, InputNumber, DatePicker, AutoComplete, Button, Tag, Tooltip } from "antd"; import './../questioncss/questioncom.css'; import Newknledpots from './Newknledpots' const InputGroup = Input.Group; -const {Option} = Select; +const { Option } = Select; const queryString = require('query-string'); const options = [ @@ -53,18 +53,18 @@ class Itembankstop extends Component { rbtx: undefined, rbkc: undefined, knowledgepoints: [], - knowledgepoints2:[], + knowledgepoints2: [], options: [], - NewknTypedel:false, - boolred:false, - boolnews:false, - + NewknTypedel: false, + boolred: false, + boolnews: false, + sub_disciplineslength: 1, } } - setboolred=(bool)=>{ + setboolred = (bool) => { this.setState({ - boolred:bool + boolred: bool }) } @@ -75,17 +75,17 @@ class Itembankstop extends Component { const params = this.props && this.props.match && this.props.match.params; if (JSON.stringify(params) === "{}") { // "新增" - this.setState({ - boolnews:false, + this.setState({ + boolnews: false, }) } else { - if(params){ - if( params.id){ + if (params) { + if (params.id) { this.setState({ - boolnews:true, + boolnews: true, }) } - } + } } @@ -104,46 +104,46 @@ class Itembankstop extends Component { const parsed = queryString.parse(this.props.location.search); //console.log(parsed); try { - if(JSON.stringify(parsed)==={}||JSON.stringify(parsed)==="{}"){ + if (JSON.stringify(parsed) === {} || JSON.stringify(parsed) === "{}") { - }else { - if(parsed.discipline_id){ - if(parsed.sub_discipline_id){ + } else { + if (parsed.discipline_id) { + if (parsed.sub_discipline_id) { this.setState({ - rbkc:[parseInt(parsed.discipline_id),parseInt(parsed.sub_discipline_id)] + rbkc: [parseInt(parsed.discipline_id), parseInt(parsed.sub_discipline_id)] }) this.props.form.setFieldsValue({ - rbkc: [parseInt(parsed.discipline_id),parseInt(parsed.sub_discipline_id)], + rbkc: [parseInt(parsed.discipline_id), parseInt(parsed.sub_discipline_id)], }); - this.getdatasmyss(parseInt(parsed.discipline_id),parseInt(parsed.sub_discipline_id)); + this.getdatasmyss(parseInt(parsed.discipline_id), parseInt(parsed.sub_discipline_id)); } } - if(parsed.item_type){ + if (parsed.item_type) { this.setState({ - rbtx:parsed.item_type, + rbtx: parsed.item_type, }) this.props.form.setFieldsValue({ - rbtx:parsed.item_type, + rbtx: parsed.item_type, }); this.props.setitem_type(parsed.item_type); } - if(parsed.difficulty){ + if (parsed.difficulty) { this.setState({ - rbnd:parsed.difficulty, + rbnd: parsed.difficulty, }) this.props.form.setFieldsValue({ - rbnd:parsed.difficulty, + rbnd: parsed.difficulty, }); } } - }catch (e) { + } catch (e) { } } @@ -155,10 +155,10 @@ class Itembankstop extends Component { options: this.props.disciplmy }) } - if(prevProps.disciplinesdata!== this.props.disciplinesdata){ + if (prevProps.disciplinesdata !== this.props.disciplinesdata) { //console.log("新增开始加载了") try { - if(this.props.item_banksedit.discipline &&this.props.item_banksedit.sub_discipline){ + if (this.props.item_banksedit.discipline && this.props.item_banksedit.sub_discipline) { const didata = this.props.disciplinesdata; const knowledgepointsdata = []; for (var i = 0; i < didata.length; i++) { @@ -177,14 +177,14 @@ class Itembankstop extends Component { } } } - const _result =[]; + const _result = []; knowledgepointsdata.filter(item => { if (this.props.item_banksedit.tag_disciplines.findIndex(t => t.id === item.id) === -1) { _result.push(item); } }); this.setState({ - knowledgepoints:knowledgepointsdata, + knowledgepoints: knowledgepointsdata, knowledgepoints2: _result, }) } @@ -192,24 +192,24 @@ class Itembankstop extends Component { try { const parsed = queryString.parse(this.props.location.search); - if(JSON.stringify(parsed)==={}||JSON.stringify(parsed)==="{}"){ + if (JSON.stringify(parsed) === {} || JSON.stringify(parsed) === "{}") { - }else { - if(parsed.discipline_id){ - if(parsed.sub_discipline_id){ + } else { + if (parsed.discipline_id) { + if (parsed.sub_discipline_id) { this.setState({ - rbkc:[parseInt(parsed.discipline_id),parseInt(parsed.sub_discipline_id)] + rbkc: [parseInt(parsed.discipline_id), parseInt(parsed.sub_discipline_id)] }) this.props.form.setFieldsValue({ - rbkc: [parseInt(parsed.discipline_id),parseInt(parsed.sub_discipline_id)], + rbkc: [parseInt(parsed.discipline_id), parseInt(parsed.sub_discipline_id)], }); - this.getdatasmyss(parseInt(parsed.discipline_id),parseInt(parsed.sub_discipline_id)); + this.getdatasmyss(parseInt(parsed.discipline_id), parseInt(parsed.sub_discipline_id)); } } } - }catch (e) { + } catch (e) { } - }catch (e) { + } catch (e) { } } //编辑的时候 @@ -225,8 +225,8 @@ class Itembankstop extends Component { } try { //初始化课程 - this.handdisciplinesChange(this.props.item_banksedit.discipline,this.props.item_banksedit.sub_discipline); - }catch (e) { + this.handdisciplinesChange(this.props.item_banksedit.discipline, this.props.item_banksedit.sub_discipline); + } catch (e) { } this.getdatasmys(); @@ -234,10 +234,10 @@ class Itembankstop extends Component { } - getdatasmys=()=>{ - if(this.props.disciplinesdata){ + getdatasmys = () => { + if (this.props.disciplinesdata) { try { - if(this.props.item_banksedit.discipline &&this.props.item_banksedit.sub_discipline){ + if (this.props.item_banksedit.discipline && this.props.item_banksedit.sub_discipline) { var didata = this.props.disciplinesdata; var knowledgepointsdata = []; for (var i = 0; i < didata.length; i++) { @@ -256,7 +256,7 @@ class Itembankstop extends Component { } } } - var _result =[]; + var _result = []; knowledgepointsdata.filter(item => { if (this.props.item_banksedit.tag_disciplines.findIndex(t => t.id === item.id) === -1) { _result.push(item); @@ -265,20 +265,20 @@ class Itembankstop extends Component { this.setState({ - knowledgepoints:knowledgepointsdata, + knowledgepoints: knowledgepointsdata, knowledgepoints2: _result, }) - }else{ + } else { } - }catch (e) { + } catch (e) { } } } - getdatasmyss=(id,ids)=>{ - if(this.props.disciplinesdata){ + getdatasmyss = (id, ids) => { + if (this.props.disciplinesdata) { try { - if(id &&ids){ + if (id && ids) { var didata = this.props.disciplinesdata; var knowledgepointsdata = []; for (var i = 0; i < didata.length; i++) { @@ -301,22 +301,22 @@ class Itembankstop extends Component { this.setState({ - knowledgepoints:knowledgepointsdata, + knowledgepoints: knowledgepointsdata, knowledgepoints2: knowledgepointsdata, }) - }else{ + } else { } - }catch (e) { + } catch (e) { } } } - handdisciplinesChange =(name,title)=>{ - this.setState({ - rbkc:[name.id,title.id] + handdisciplinesChange = (name, title) => { + this.setState({ + rbkc: [name.id, title.id] }) this.props.form.setFieldsValue({ - rbkc: [name.id,title.id], + rbkc: [name.id, title.id], }); @@ -327,14 +327,14 @@ class Itembankstop extends Component { handletag_disciplinesChange = (data) => { //是否选中的知识点 try { - var sju=data[data.length-1].name; + var sju = data[data.length - 1].name; this.setState({ - Knowpoints:data, + Knowpoints: data, }) this.props.form.setFieldsValue({ rbzsd: sju, }); - }catch (e) { + } catch (e) { } @@ -389,7 +389,7 @@ class Itembankstop extends Component { //////console.log("难度塞选"); //////console.log(value); this.props.form.setFieldsValue({ - rbnd: value+ "", + rbnd: value + "", }); this.setState({ rbnd: value + "", @@ -412,7 +412,7 @@ class Itembankstop extends Component { //课程 //////console.log("课程"); //////console.log(value); - if(this.state.Knowpoints.length>4){ + if (this.state.Knowpoints.length > 4) { this.props.showNotification(`知识点最多选择5个`); return } @@ -429,8 +429,8 @@ class Itembankstop extends Component { } } - const _result =[]; - this.state.knowledgepoints.filter(item => { + const _result = []; + this.state.knowledgepoints.filter(item => { if (this.state.Knowpoints.findIndex(t => t.id === item.id) === -1) { // //console.log("guonue"); // //console.log(item); @@ -456,22 +456,29 @@ class Itembankstop extends Component { rbkc: value, }); this.setState({ - rbkc:value, + rbkc: value, }) // //console.log("handleFormzhishidian"); // //console.log(this.props.disciplinesdata); const didata = this.props.disciplinesdata; const knowledgepointsdata = []; - + var sub_disciplineslength = 0; for (var i = 0; i < didata.length; i++) { //方向 if (value[0] === didata[i].id) { const fxdidata = didata[i].sub_disciplines; + try { + sub_disciplineslength = fxdidata.length; + } catch (e) { + + } for (var j = 0; j < fxdidata.length; j++) { //课程 if (value[1] === fxdidata[j].id) { + const zsddata = fxdidata[j].tag_disciplines; + for (var k = 0; k < zsddata.length; k++) { //知识点 knowledgepointsdata.push(zsddata[k]); @@ -490,7 +497,8 @@ class Itembankstop extends Component { this.setState({ Knowpoints: [], knowledgepoints: knowledgepointsdata, - knowledgepoints2:knowledgepointsdata, + knowledgepoints2: knowledgepointsdata, + sub_disciplineslength: sub_disciplineslength, }) this.props.form.setFieldsValue({ @@ -521,8 +529,8 @@ class Itembankstop extends Component { var tmp = this.state.Knowpoints; for (var i = 0; i < tmp.length; i++) { - if (i ===index) { - tmp.splice(i,1); + if (i === index) { + tmp.splice(i, 1); } } @@ -530,7 +538,7 @@ class Itembankstop extends Component { rbzsd: this.state.Knowpoints, }); - const _result =[]; + const _result = []; this.state.knowledgepoints.filter(item => { if (this.state.Knowpoints.findIndex(t => t.id === item.id) === -1) { _result.push(item); @@ -538,7 +546,7 @@ class Itembankstop extends Component { }); this.setState({ Knowpoints: this.state.Knowpoints, - knowledgepoints2:_result, + knowledgepoints2: _result, }) if (this.state.Knowpoints.length === 0) { this.setState({ @@ -558,27 +566,32 @@ class Itembankstop extends Component { } - NewknTypedeldel=(bool)=>{ - if(this.state.rbkc===undefined || this.state.rbkc===null || this.state.rbkc===""){ + NewknTypedeldel = (bool) => { + + if (this.state.rbkc === undefined || this.state.rbkc === null || this.state.rbkc === "") { this.props.showNotification(`请选择课程方向`); return; } + // if(this.state.sub_disciplineslength===undefined || this.state.sub_disciplineslength===null || this.state.sub_disciplineslength===0){ + // this.props.showNotification(`无二级课程时没有新建入口`); + // return; + // } this.setState({ - NewknTypedel:bool + NewknTypedel: bool }) } - NewknTypedeltyoedel=(value)=>{ - var knowledgepointmys= this.state.knowledgepoints; - var konwbool=null; - for(let myda of knowledgepointmys) { - if(myda.name===value){ - konwbool="yes" - break; - } + NewknTypedeltyoedel = (value) => { + var knowledgepointmys = this.state.knowledgepoints; + var konwbool = null; + for (let myda of knowledgepointmys) { + if (myda.name === value) { + konwbool = "yes" + break; + } } - if(konwbool!=null){ + if (konwbool != null) { this.props.showNotification(`重复的知识点`); this.setboolred(true); return @@ -586,35 +599,35 @@ class Itembankstop extends Component { - if(value===null||value===""){ + if (value === null || value === "") { this.props.showNotification(`请输入知识点`); this.setboolred(true); return } - if(value.length===0){ + if (value.length === 0) { this.props.showNotification(`请输入知识点`); this.setboolred(true); return } - var data={ - name:value, - sub_discipline_id:this.state.rbkc[1] - } - const url="/tag_disciplines.json"; - axios.post(url,data) + var data = { + name: value, + sub_discipline_id: this.state.rbkc[1] + } + const url = "/tag_disciplines.json"; + axios.post(url, data) .then((result) => { if (result.data.status === 0) { // this.props.showNotification(`新增知识点成功!`); - var leydata={ + var leydata = { id: result.data.tag_discipline_id, - name:value, + name: value, } - if(this.state.Knowpoints.length>=5){ + if (this.state.Knowpoints.length >= 5) { this.state.knowledgepoints.push(leydata); - const _result =[]; + const _result = []; this.state.knowledgepoints.filter(item => { if (this.state.Knowpoints.findIndex(t => t.id === item.id) === -1) { _result.push(item); @@ -623,13 +636,13 @@ class Itembankstop extends Component { this.setState({ Knowpoints: this.state.Knowpoints, - knowledgepoints: this.state.knowledgepoints, + knowledgepoints: this.state.knowledgepoints, knowledgepoints2: _result, }) - }else{ + } else { this.state.Knowpoints.push(leydata); this.state.knowledgepoints.push(leydata); - const _result =[]; + const _result = []; this.state.knowledgepoints.filter(item => { if (this.state.Knowpoints.findIndex(t => t.id === item.id) === -1) { _result.push(item); @@ -637,25 +650,25 @@ class Itembankstop extends Component { }); this.setState({ Knowpoints: this.state.Knowpoints, - knowledgepoints: this.state.knowledgepoints, + knowledgepoints: this.state.knowledgepoints, knowledgepoints2: _result, }) } } }).catch((error) => { - ////console.log(error); - }) + ////console.log(error); + }) this.setState({ - NewknTypedel:false + NewknTypedel: false }) } render() { - let {page, options,NewknTypedel,knowledgepoints,knowledgepoints2,Knowpoints} = this.state; - const {getFieldDecorator} = this.props.form; + let { page, options, NewknTypedel, knowledgepoints, knowledgepoints2, Knowpoints } = this.state; + const { getFieldDecorator } = this.props.form; // //console.log("this.state.rbkc"); // //console.log(this.state.rbkc); @@ -696,30 +709,31 @@ class Itembankstop extends Component {
    { - NewknTypedel? + NewknTypedel ? this.setboolred(bool)} - NewknTypedeldel={(bool)=>this.NewknTypedeldel(bool)} - NewknTypedeltyoedel={(value)=>this.NewknTypedeltyoedel(value)} + boolred={this.state.boolred} + setboolred={(bool) => this.setboolred(bool)} + NewknTypedeldel={(bool) => this.NewknTypedeldel(bool)} + NewknTypedeltyoedel={(value) => this.NewknTypedeltyoedel(value)} > - :"" + : "" }
    - - {getFieldDecorator("rbkc", - {initialValue: this.state.rbkc, - rules: [{required: true, message: '请选择课程'}], - } - )( + + {getFieldDecorator("rbkc", + { + initialValue: this.state.rbkc, + rules: [{ required: true, message: '请选择课程' }], + } + )( <<<<<<< HEAD <<<<<<< HEAD - @@ -729,17 +743,20 @@ class Itembankstop extends Component { >>>>>> 1036126... 合并 - placeholder="请选择..."/> + placeholder="请选择..." /> - )} - + )} +
    - - {getFieldDecorator("rbzsd" - )( -
    + { + this.state.sub_disciplineslength === null || this.state.sub_disciplineslength === undefined || this.state.sub_disciplineslength === 0 ? "" : + + {getFieldDecorator("rbzsd" + )( +
    +<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD ======= @@ -747,62 +764,77 @@ class Itembankstop extends Component { >>>>>>> df308ab... 合并 ======= >>>>>>> 1036126... 合并 - - + +======= + +>>>>>>> f439a4a... 调整 - this.NewknTypedeldel(true)}/> + this.NewknTypedeldel(true)} /> -
    - )} -
    - { - this.state.Knowpoints===undefined||this.state.Knowpoints===null?"": - this.state.Knowpoints.length>0? -
    - {this.state.Knowpoints === undefined ? "" : this.state.Knowpoints.map((object, index) => { - return ( -
    -

    {object.name}

    - this.deletesobject(object, index)} src={getImageUrl("images/educoder/bzucha.png")}/> +
    + ) + } + -
    - ) - })} -
    - : - "" } +{ + this.state.Knowpoints === undefined || this.state.Knowpoints === null ? "" : + this.state.Knowpoints.length > 0 ? +
    + {this.state.Knowpoints === undefined ? "" : this.state.Knowpoints.map((object, index) => { + return ( +
    +

    {object.name}

    + + this.deletesobject(object, index)} src={getImageUrl("images/educoder/bzucha.png")} /> + +
    + ) + })} +
    + : + "" +} + - - {getFieldDecorator("rbtx", - {initialValue: this.state.rbtx, - rules: [{required: true, message: '请选择题型'}], - } - )( + + {getFieldDecorator("rbtx", + { + initialValue: this.state.rbtx, + rules: [{ required: true, message: '请选择题型' }], + } + )( <<<<<<< HEAD <<<<<<< HEAD - >>>>>> 1036126... 合并 - placeholder="请选择..."> - - - - + placeholder="请选择..."> + + + + <<<<<<< HEAD ======= >>>>>>> 1036126... 合并 - + )} - + - -
    - - {getFieldDecorator('rbnd', - {initialValue: this.state.rbnd, - rules: [{required: true, message: '请选择难度'}], - } - )( - - 简单 - 适中 - 困难 - , - )} - -
    - -
    - + } + +
    + + {getFieldDecorator('rbnd', + { + initialValue: this.state.rbnd, + rules: [{ required: true, message: '请选择难度' }], + } + )( + + 简单 + 适中 + 困难 + , + )} + +
    + +
    + ) } @@ -901,5 +934,5 @@ class Itembankstop extends Component { } -const Itembankstops = Form.create({name: 'Itembankstops'})(Itembankstop); +const Itembankstops = Form.create({ name: 'Itembankstops' })(Itembankstop); export default Itembankstops; diff --git a/public/react/src/modules/question/component/Listjihe.js b/public/react/src/modules/question/component/Listjihe.js index 5c27d3acf..9acb98dce 100644 --- a/public/react/src/modules/question/component/Listjihe.js +++ b/public/react/src/modules/question/component/Listjihe.js @@ -17,6 +17,7 @@ const tagArrays = [ 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' ] +//Paperreview_single.js Paperlibraryseeid_items.js class Listjihe extends Component { constructor(props) { super(props); @@ -162,7 +163,10 @@ class Listjihe extends Component { } catch (e) { analysisnames = items && items.analysis; } + console.log(items.name); + console.log(itemsnamesy); + console.log(analysisnames); return (
    @@ -189,6 +193,140 @@ class Listjihe extends Component { this.props.listjihe }.
    + { + items.item_type === "PROGRAM" ? + +
    +
    + : +
    + {items === undefined || items === null || items === "" ? "" : + items.name === undefined || items.name === null || items.name === "" ? + "" + : + items.name.length > 0 ? + itemssname === null || itemssname === undefined ? "" : + + : "" + } +
    + } + + + {/*内容*/} +
    + {items.item_type === "JUDGMENT" ? +

    + { + items === undefined || items === null ? "" : items.choices.map((object, index) => { + return ( +

    + + {object.choice_text} + +

    + ) + }) + } +

    : + items.item_type === "PROGRAM" ? +

    +

    + { + items && items.program_attr && items.program_attr.description ? +

    + { + itemsnamesy === null || itemsnamesy === undefined ? + "" + : + + } +

    + : "" + } + + + +

    +

    + : +

    + { + items === undefined || items === null ? "" : items.choices.map((object, index) => { + var string = "" + try { + string = JSON.parse(object.choice_text); + } catch (e) { + string = object.choice_text; + } + return ( +

    +

    {tagArray[index]}

    +

    + {object ? + object.choice_text === undefined || object.choice_text === null || object.choice_text === "" ? + + "" + : + object.choice_text.length > 0 ? + + : "" + + + : + "" + } +

    +

    + ) + }) + } +

    + } +
    + + +
    +

    难度:{items.difficulty === 1 ? "简单" : items.difficulty === 2 ? "适中" : items.difficulty === 3 ? "困难" : ""} +

    +

    题型:{items.item_type === "SINGLE" ? "单选题" : items.item_type === "MULTIPLE" ? "多选题" : items.item_type === "JUDGMENT" ? "判断题" : items.item_type === "PROGRAM" ? "编程题" : ""} +

    +
    + {/*更新时间*/} +
    +
    +

    更新时间:{items.update_time}

    + { + this.props.defaultActiveKey === "0" || this.props.defaultActiveKey === 0 ? + "" + : +

    创建者:{items.author.name}

    + } + { + items.item_type === "PROGRAM" ? +

    编程语言:{items.program_attr.language}

    + : "" + } + { + items.item_type === "PROGRAM" ? + items.program_attr.status === 0 ? +

    未发布

    + : "" + : "" + } +
    { items.choosed === true ? @@ -198,10 +336,13 @@ class Listjihe extends Component { : items.item_type === "PROGRAM" ? items.program_attr.status === 0 ? -

    - - 选用 -

    + +

    + + 选用 +

    +
    + :

    this.Selectingpracticaltraining(items.id)}> @@ -222,35 +363,56 @@ class Listjihe extends Component {

    { items.item_type === "PROGRAM" ? - -

    - - 编辑 -

    -
    + this.props.Isitapopup && this.props.Isitapopup === "true" ? + "" + : + +

    + + 编辑 +

    +
    : - -

    - - 编辑 -

    -
    + this.props.Isitapopup && this.props.Isitapopup === "true" ? + "" + : + +

    + + 编辑 +

    +
    } { items.public === false ? items.item_type === "PROGRAM" ? - items.program_attr.status === 0 ? - "" - : + ( + items.program_attr.status === 0 ? + "" + : + items.apply === false ? +

    this.props.showmodels(items.id)}> + + 公开 +

    + : + ( + items.public == true ? + "" + : +

    this.props.showmodelsInaudit(e)}> + + 公开审核中 +

    + ) + ) + : items.apply === false ?

    this.props.showmodels(items.id)}> 公开

    - : -

    this.props.showmodels(items.id)}> - - 公开 -

    + : + "" : "" } @@ -275,24 +437,33 @@ class Listjihe extends Component {
    -
    +
    { - items.item_type === "SINGLE" || items.item_type === "MULTIPLE" ? + items.item_type === "SINGLE" ?

    -

    - : -

    + : items.item_type === "MULTIPLE" ? +

    + +

    + : +

    +

    }
    -

    {items ? @@ -301,11 +472,12 @@ class Listjihe extends Component { "" : items.analysis.length > 0 ? - + analysisnames === null || analysisnames === undefined ? "" : + : "" : diff --git a/public/react/src/modules/question/component/Newknledpots.js b/public/react/src/modules/question/component/Newknledpots.js index 36dd88e10..b299654af 100644 --- a/public/react/src/modules/question/component/Newknledpots.js +++ b/public/react/src/modules/question/component/Newknledpots.js @@ -12,7 +12,15 @@ class PaperDeletModel extends Component { newkntypeinput:"" } } + isNull=( str )=>{ + if ( str == "" ) return true; + var regu = "^[ ]+$"; + var re = new RegExp(regu); + //为空或纯空格为 true    有值为false + console.log(re.test(str)) + return re.test(str); + } handleChange=(e)=>{ // this.setState({ @@ -20,6 +28,10 @@ class PaperDeletModel extends Component { // }) // //console.log(e.target.value); // //console.log(e.target.value.length); + if(this.isNull(e.target.value)===true){ + this.props.showNotification('不能输入空格'); + return + } this.setState({ newkntypeinput: e.target.value }) @@ -60,7 +72,7 @@ class PaperDeletModel extends Component { >

    - +
    this.props.NewknTypedeldel(false)}>取消 diff --git a/public/react/src/modules/question/component/QuestionModalys.js b/public/react/src/modules/question/component/QuestionModalys.js new file mode 100644 index 000000000..29482e464 --- /dev/null +++ b/public/react/src/modules/question/component/QuestionModalys.js @@ -0,0 +1,42 @@ +import React, { Component } from 'react'; +import {getImageUrl} from 'educoder'; +import { Modal} from 'antd'; +import axios from 'axios'; +import './../questioncss/questioncom.css' +//立即申请试用 +class QuestionModalys extends Component { + + constructor(props) { + super(props); + this.state={ + + } + } + + + render() { + + return( + +
    +

    {this.props.titilesm}

    +

    {this.props.titiless}

    + +
    +
    + ) + } +} + +export default QuestionModalys; diff --git a/public/react/src/modules/question/comthetestpaper/Comthetestpaperst.js b/public/react/src/modules/question/comthetestpaper/Comthetestpaperst.js index d239b22f9..7696151f9 100644 --- a/public/react/src/modules/question/comthetestpaper/Comthetestpaperst.js +++ b/public/react/src/modules/question/comthetestpaper/Comthetestpaperst.js @@ -41,7 +41,7 @@ const options = [ ], }, ]; -//Itembankstop 题库的 +//Itembankstop Intelligentcomponents 题库的 class Comthetestpaperst extends Component { constructor(props) { super(props); @@ -56,6 +56,7 @@ class Comthetestpaperst extends Component { options: [], NewknTypedel: false, boolred: false, + sub_disciplineslength: 1, } } setboolred = (bool) => { @@ -413,11 +414,16 @@ class Comthetestpaperst extends Component { const didata = this.props.disciplinesdata; const knowledgepointsdata = []; - + var sub_disciplineslength = 0; for (var i = 0; i < didata.length; i++) { //方向 if (value[0] === didata[i].id) { const fxdidata = didata[i].sub_disciplines; + try { + sub_disciplineslength = fxdidata.length; + } catch (e) { + + } for (var j = 0; j < fxdidata.length; j++) { //课程 if (value[1] === fxdidata[j].id) { @@ -441,6 +447,7 @@ class Comthetestpaperst extends Component { Knowpoints: [], knowledgepoints: knowledgepointsdata, knowledgepoints2: knowledgepointsdata, + sub_disciplineslength: sub_disciplineslength, }) this.props.form.setFieldsValue({ @@ -687,34 +694,39 @@ class Comthetestpaperst extends Component {
    -
    - - {getFieldDecorator("rbzsd" - )( -
    - - - + { + this.state.sub_disciplineslength === null || this.state.sub_disciplineslength === undefined || this.state.sub_disciplineslength === 0 ? "" : +
    + + {getFieldDecorator("rbzsd" + )( +
    + + + - this.NewknTypedeldel(true)} /> + this.NewknTypedeldel(true)} /> -
    - )} -
    -
    + +
    + )} +
    +
    + } + { this.state.Knowpoints === undefined || this.state.Knowpoints === null ? "" : this.state.Knowpoints.length > 0 ? diff --git a/public/react/src/modules/question/comthetestpaper/Intelligentcomponents.js b/public/react/src/modules/question/comthetestpaper/Intelligentcomponents.js index 64d57e452..19b08899e 100644 --- a/public/react/src/modules/question/comthetestpaper/Intelligentcomponents.js +++ b/public/react/src/modules/question/comthetestpaper/Intelligentcomponents.js @@ -20,7 +20,9 @@ import Newknledpots from '../component/Newknledpots'; import Ldanxuan from './lntlligentpone'; const InputGroup = Input.Group; const {Option} = Select; -//Itembankstop Comthetestpaperst 题库的 +// Comthetestpaperst 题库的 +// Itembankstop 题库的 + class Intelligentcomponents extends Component { constructor(props) { super(props); @@ -35,7 +37,8 @@ class Intelligentcomponents extends Component { options: [], NewknTypedel:false, boolred:false, - rbly:"1" + rbly:"1", + sub_disciplineslength:1, } } setboolred=(bool)=>{ @@ -310,11 +313,16 @@ class Intelligentcomponents extends Component { const didata = this.props.disciplinesdata; const knowledgepointsdata = []; - + var sub_disciplineslength=0; for (var i = 0; i < didata.length; i++) { //方向 if (value[0] === didata[i].id) { const fxdidata = didata[i].sub_disciplines; + try { + sub_disciplineslength=fxdidata.length; + }catch (e) { + + } for (var j = 0; j < fxdidata.length; j++) { //课程 if (value[1] === fxdidata[j].id) { @@ -597,34 +605,38 @@ class Intelligentcomponents extends Component {
    -
    - - {getFieldDecorator("rbzsd" - )( -
    - - - - - - - this.NewknTypedeldel(true)}/> - - + { + this.state.sub_disciplineslength === null || this.state.sub_disciplineslength === undefined || this.state.sub_disciplineslength === 0 ? "" : +
    + + {getFieldDecorator("rbzsd" + )( +
    + + + + + + + this.NewknTypedeldel(true)}/> + + + +
    + )} +
    +
    + } -
    - )} -
    -
    { this.state.Knowpoints===undefined||this.state.Knowpoints===null?"": this.state.Knowpoints.length>0? diff --git a/public/react/src/modules/question/questioncss/questioncom.css b/public/react/src/modules/question/questioncss/questioncom.css index ab86a16b9..9f148bfb1 100644 --- a/public/react/src/modules/question/questioncss/questioncom.css +++ b/public/react/src/modules/question/questioncss/questioncom.css @@ -992,17 +992,30 @@ cursor: no-drop } -.shitilang { - height: 40px; - background: #606060; - color: #FFFFFF; - position: absolute; - top: -2px; +.mr15 { + margin-right: 15px; +} + +.ant-modal-mask { + z-index: 6000 !important; +} + +.ant-modal-wrap { + z-index: 6000 !important; +} + +.fangdatwo { + background: #fefefe; + background-color: #fefefe; + height: 100%; + overflow-y: scroll !important; width: 100%; + position: fixed; + top: 0px; + bottom: 0px; left: 0px; - font-size: 14px; - text-align: center; - line-height: 40px; + z-index: 5000; + right: 0px; } .xiaoshoums:hover { diff --git a/public/react/src/modules/testpaper/Testpaperlibrary.js b/public/react/src/modules/testpaper/Testpaperlibrary.js index 0d2501e92..edd7ee337 100644 --- a/public/react/src/modules/testpaper/Testpaperlibrary.js +++ b/public/react/src/modules/testpaper/Testpaperlibrary.js @@ -21,7 +21,7 @@ class Testpaperlibrary extends Component { public: null, difficulty: null, item_type: null, - keywords: null, + keyword: null, page: 1, per_page: 10, booljupyterurls: false, @@ -81,7 +81,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: this.state.tag_discipline_id, public: this.state.defaultActiveKey, difficulty: this.state.difficulty, - keywords: null, + keyword: null, per_page: 10, } this.getdata(data); @@ -89,14 +89,14 @@ class Testpaperlibrary extends Component { setdatafunsval = (e) => { this.setState({ - keywords: e.target.value + keyword: e.target.value }) } setdatafuns = (value) => { this.setState({ - keywords: value, + keyword: value, }) var data = { page: this.state.page, @@ -105,7 +105,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: this.state.tag_discipline_id, public: this.state.defaultActiveKey, difficulty: this.state.difficulty, - keywords: value, + keyword: value, per_page: 10, } this.getdata(data); @@ -114,7 +114,7 @@ class Testpaperlibrary extends Component { this.setState({ defaultActiveKey: key, difficulty: null, - keywords: null, + keyword: null, page: 1, }) var data = { @@ -124,7 +124,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: this.state.tag_discipline_id, public: key, difficulty: null, - keywords: null, + keyword: null, per_page: 10, } this.getdata(data); @@ -170,7 +170,7 @@ class Testpaperlibrary extends Component { discipline_id: discipline_id, sub_discipline_id: null, tag_discipline_id: null, - keywords: null, + keyword: null, page: 1, per_page: 10, }) @@ -180,7 +180,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: null, public: this.state.defaultActiveKey, difficulty: this.props.difficulty, - keywords: null, + keyword: null, page: 1, per_page: 10, }; @@ -191,7 +191,7 @@ class Testpaperlibrary extends Component { this.setState({ sub_discipline_id: sub_discipline_id, tag_discipline_id: null, - keywords: null, + keyword: null, page: 1, per_page: 10, }) @@ -201,7 +201,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: null, public: this.state.defaultActiveKey, difficulty: this.state.difficulty, - keywords: null, + keyword: null, page: 1, per_page: 10, }; @@ -211,7 +211,7 @@ class Testpaperlibrary extends Component { settag_discipline_id = (tag_discipline_id) => { this.setState({ tag_discipline_id: tag_discipline_id, - keywords: null, + keyword: null, page: 1, per_page: 10, }) @@ -221,7 +221,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: tag_discipline_id, public: this.state.defaultActiveKey, difficulty: this.state.difficulty, - keywords: null, + keyword: null, page: 1, per_page: 10, }; @@ -277,7 +277,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: this.state.tag_discipline_id, public: this.state.defaultActiveKey, difficulty: this.state.difficulty, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; @@ -303,7 +303,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: this.state.tag_discipline_id, public: this.state.defaultActiveKey, difficulty: this.state.difficulty, - keywords: this.state.keywords, + keyword: this.state.keywords, page: this.state.page, per_page: 10, }; @@ -318,7 +318,7 @@ class Testpaperlibrary extends Component { showmodels = (id) => { this.setState({ modalsType: true, - titilesm: "设为公开后,所有成员均可使用试卷", + titilesm: "在平台审核后,所有成员均可使用试题", titiless: "是否设置为公开?", titbool: true, timuid: id @@ -346,7 +346,7 @@ class Testpaperlibrary extends Component { this.setState({ difficulty: difficulty, visiblemys: false, - keywords: "", + keyword: "", page: 1, per_page: 10, }) @@ -357,7 +357,7 @@ class Testpaperlibrary extends Component { tag_discipline_id: this.state.tag_discipline_id, public: this.state.defaultActiveKey, difficulty: difficulty, - keywords: null, + keyword: null, page: 1, per_page: 10, }; @@ -372,7 +372,7 @@ class Testpaperlibrary extends Component { this.setState({ item_type: item_type, visiblemyss: false, - keywords: null, + keyword: null, page: 1, per_page: 10, }) @@ -384,7 +384,7 @@ class Testpaperlibrary extends Component { public: this.state.defaultActiveKey, difficulty: this.state.difficulty, item_type: item_type, - keywords: "", + keyword: "", page: 1, per_page: 10, }; diff --git a/public/react/src/modules/testpaper/component/Listjihe.js b/public/react/src/modules/testpaper/component/Listjihe.js index 53fc7181a..db08b97f3 100644 --- a/public/react/src/modules/testpaper/component/Listjihe.js +++ b/public/react/src/modules/testpaper/component/Listjihe.js @@ -80,7 +80,7 @@ class Listjihe extends Component {
    -

    this.gotoseesj(items.id)}>{names}

    +
    this.gotoseesj(items.id)}>

    {names}

    试题数:{question_counts}

    总分:{total_scores}

    @@ -92,9 +92,15 @@ class Listjihe extends Component { 更新时间:{update_times}

    -

    - 使用次数:{quotess} -

    + { + quotess===null||quotess===undefined||quotess===0? + "" + : +

    + 使用次数:{quotess} +

    + } + { defaultActiveKey===1||defaultActiveKey==="1"?

    diff --git a/public/react/src/modules/testpaper/component/Paperlibraryseeid_items.js b/public/react/src/modules/testpaper/component/Paperlibraryseeid_items.js index 87686b68d..d4a78fed0 100644 --- a/public/react/src/modules/testpaper/component/Paperlibraryseeid_items.js +++ b/public/react/src/modules/testpaper/component/Paperlibraryseeid_items.js @@ -14,6 +14,7 @@ const tagArray = [ ] //单选题 +//Paperreview_single.js Listjihe.js class Paperlibraryseeid_items extends Component { constructor(props) { super(props); @@ -153,10 +154,16 @@ class Paperlibraryseeid_items extends Component {

    - + { + itemssname===null || itemssname===undefined? + "" + : + + } +
    @@ -189,10 +196,16 @@ class Paperlibraryseeid_items extends Component { objectsingle && objectsingle.program_attr && objectsingle.program_attr.description ?

    - + /> + } +

    : ""} diff --git a/public/react/src/modules/testpaper/testioncss/testioncss.css b/public/react/src/modules/testpaper/testioncss/testioncss.css index 2025779ab..0426c119c 100644 --- a/public/react/src/modules/testpaper/testioncss/testioncss.css +++ b/public/react/src/modules/testpaper/testioncss/testioncss.css @@ -927,3 +927,10 @@ color:rgba(51,51,51,1); line-height:19px; } +.maxnamewidth100s{ + max-width: 774px; + overflow:hidden; + text-overflow:ellipsis; + white-space:nowrap; + cursor: default; +} diff --git a/public/react/src/modules/tpm/NewHeader.js b/public/react/src/modules/tpm/NewHeader.js index e6a2e76e1..fc63555af 100644 --- a/public/react/src/modules/tpm/NewHeader.js +++ b/public/react/src/modules/tpm/NewHeader.js @@ -784,10 +784,9 @@ class NewHeader extends Component { width: '93px', height: '80px', }}> -

    试题库

    -

    -

    试卷库

    +

    试题库

    +

    试卷库

    ); return ( @@ -795,7 +794,7 @@ class NewHeader extends Component {
    - {/*
  • */} - {/* */} - {/*
    */} - {/*
    */} - {/* 题库*/} - {/*
    */} - {/*
    */} - {/*
    */} - {/*
  • */} +
  • + +
    +
    + 题库 +
    +
    +
    +
  • { ` - .posi - searchs{ - opacity: 1; + .posi-searchs{ + opacity: 1; position: absolute; top: -2px; background: #fff;