From 28680d29b8173cefcef860902e39ba6714878dba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Sat, 7 Mar 2020 19:28:50 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/modules/question/NewMyShixunModel.js | 55 ++++++++++++++----- public/react/src/modules/question/Question.js | 49 +++++++++++++---- .../modules/question/component/Contentpart.js | 4 +- 3 files changed, 81 insertions(+), 27 deletions(-) diff --git a/public/react/src/modules/question/NewMyShixunModel.js b/public/react/src/modules/question/NewMyShixunModel.js index ea486e28b..588cceeeb 100644 --- a/public/react/src/modules/question/NewMyShixunModel.js +++ b/public/react/src/modules/question/NewMyShixunModel.js @@ -13,6 +13,7 @@ import QuestionModalys from "./component/QuestionModalys"; //exam_id 试卷的id var Undoclickable=true; +var myGrandtotal=false; class NewMyShixunModel extends Component { constructor(props) { super(props); @@ -57,8 +58,9 @@ class NewMyShixunModel extends Component { selectallquestionsonthispages: false, oj_status: null, isVisible: false, - selectionbools: false, - chakanjiexiboolindex: "无", + selectionbools:false, + chakanjiexiboolindex:"无", + } } @@ -357,18 +359,22 @@ class NewMyShixunModel extends Component { } //计算 - getdataslen = (arr) => { - var contes = 0; - for (let data of arr) { - if (data.item_type === "PROGRAM") { + getdataslen=(arr)=>{ + myGrandtotal=false; + let contes=0; + let Grandtotal=0; + for(let data of arr) { + if(data.item_type==="PROGRAM"){ //编程题 if (data.choosed === true) { } else { //未选用 - if (data.program_attr.status === 1) { - //已发布 - contes = contes + 1; + if(data.program_attr.status===1){ + //已发布1 未发布0 + contes=contes+1; + }else { + Grandtotal=Grandtotal+1; } } @@ -390,11 +396,28 @@ class NewMyShixunModel extends Component { selectionbools: false, selectallquestionsonthispages: false, }) - } else { - this.setState({ - selectionbools: true, - selectallquestionsonthispages: true, - }) + } + else { + try { + if(arr.length===Grandtotal){ + myGrandtotal=true; + this.setState({ + selectionbools:false, + selectallquestionsonthispages:false, + }) + }else{ + this.setState({ + selectionbools:true, + selectallquestionsonthispages:true, + }) + } + }catch (e) { + this.setState({ + selectionbools:true, + selectallquestionsonthispages:true, + }) + } + } } @@ -861,6 +884,10 @@ class NewMyShixunModel extends Component { } //全选试题库 selectallquestionsonthispage=(bool)=>{ + if(myGrandtotal===true){ + this.props.showNotification(`本页全部试题未发布,不能选择`); + return + } var item_idsdata=[]; var arr = this.state.Contentdata.items; diff --git a/public/react/src/modules/question/Question.js b/public/react/src/modules/question/Question.js index e0b93fb93..4a87a885a 100644 --- a/public/react/src/modules/question/Question.js +++ b/public/react/src/modules/question/Question.js @@ -14,6 +14,7 @@ import QuestionModalys from "./component/QuestionModalys"; import Certifiedprofessional from "../modals/Certifiedprofessional"; var Undoclickable=true; +var myGrandtotal=false; class Question extends Component { constructor(props) { super(props); @@ -294,18 +295,22 @@ class Question extends Component { } //计算 - getdataslen = (arr) => { - var contes = 0; - for (let data of arr) { - if (data.item_type === "PROGRAM") { + getdataslen=(arr)=>{ + myGrandtotal=false; + let contes=0; + let Grandtotal=0; + for(let data of arr) { + if(data.item_type==="PROGRAM"){ //编程题 if (data.choosed === true) { } else { //未选用 - if (data.program_attr.status === 1) { - //已发布 - contes = contes + 1; + if(data.program_attr.status===1){ + //已发布1 未发布0 + contes=contes+1; + }else{ + Grandtotal=Grandtotal+1; } } @@ -328,10 +333,26 @@ class Question extends Component { selectallquestionsonthispages: false, }) } else { - this.setState({ - selectionbools: true, - selectallquestionsonthispages: true, - }) + try { + if(arr.length===Grandtotal){ + myGrandtotal=true; + this.setState({ + selectionbools:false, + selectallquestionsonthispages:false, + }) + }else{ + this.setState({ + selectionbools:true, + selectallquestionsonthispages:true, + }) + } + }catch (e) { + this.setState({ + selectionbools:true, + selectallquestionsonthispages:true, + }) + } + } } @@ -761,6 +782,12 @@ class Question extends Component { } //全选试题库 selectallquestionsonthispage=(bool)=>{ + if(myGrandtotal===true){ + this.props.showNotification(`本页全部试题未发布,不能选择`); + return + } + + var item_idsdata=[]; var arr = this.state.Contentdata.items; diff --git a/public/react/src/modules/question/component/Contentpart.js b/public/react/src/modules/question/component/Contentpart.js index f62b4e9dd..676fc771d 100644 --- a/public/react/src/modules/question/component/Contentpart.js +++ b/public/react/src/modules/question/component/Contentpart.js @@ -441,12 +441,12 @@ class Contentpart extends Component {
{ defaultActiveKey===1||defaultActiveKey==="1"? - this.props.selectallquestionsonthispage(bool)} > + this.props.selectallquestionsonthispage(bool)} > :"" } { defaultActiveKey===0||defaultActiveKey==="0"? - this.props.selectallquestionsonthispage(bool)}> + this.props.selectallquestionsonthispage(bool)}> :"" }