diff --git a/app/models/hack_set.rb b/app/models/hack_set.rb index 2c21c3c22..fb37f398c 100644 --- a/app/models/hack_set.rb +++ b/app/models/hack_set.rb @@ -1,7 +1,7 @@ class HackSet < ApplicationRecord validates_length_of :input, maximum: 1000, message: "不能超过1000个字符" validates_length_of :output, maximum: 1000, message: "不能超过1000个字符" - validates :input, presence: { message: "测试集输入不能为空" } + #validates :input, presence: { message: "测试集输入不能为空" } validates :output, presence: { message: "测试集输出不能为空" } validates_uniqueness_of :input, scope: [:hack_id, :input], message: "多个测试集的输入不能相同" # 编程题测试集 diff --git a/public/react/scripts/build.js b/public/react/scripts/build.js index aafa2e765..f8cec6702 100644 --- a/public/react/scripts/build.js +++ b/public/react/scripts/build.js @@ -221,7 +221,7 @@ function generateNewIndexJsp() { // var result = data .replace(jsMinAllRegex, code) - .replace(flvMinAllRegex) + .replace(flvMinAllRegex,'') // .replace('/js/js_min_all.js', `${cdnHost}/react/build/js/js_min_all.js?v=${newVersion}`) // .replace('/js/js_min_all_2.js', `${cdnHost}/react/build/js/js_min_all_2.js?v=${newVersion}`) diff --git a/public/react/src/App.js b/public/react/src/App.js index 4c4908771..947cf51a5 100644 --- a/public/react/src/App.js +++ b/public/react/src/App.js @@ -807,16 +807,16 @@ class App extends Component { render={ (props) => () } /> - () } /> - () } /> - () } /> @@ -835,7 +835,7 @@ class App extends Component { (props) => () }/> - () }/> diff --git a/public/react/src/modules/developer/newOrEditTask/index.js b/public/react/src/modules/developer/newOrEditTask/index.js index 565d6af30..b95668413 100644 --- a/public/react/src/modules/developer/newOrEditTask/index.js +++ b/public/react/src/modules/developer/newOrEditTask/index.js @@ -1,7 +1,7 @@ /* * @Description: 新建或编辑任务 - * @Author: tangjiang - * @Date: 2019-11-15 16:38:34 + * @Author: tangjiang + * @Date: 2019-11-15 16:38:34 * @Last Modified by: tangjiang * @Last Modified time: 2019-11-19 23:23:41 */ @@ -20,7 +20,7 @@ import actions from '../../../redux/actions'; // import {ModalConfirm} from '../../../common/components/ModalConfirm'; const NewOrEditTask = (props) => { - const { + const { publishLoading, handlePublish, // testCases = [], @@ -41,7 +41,7 @@ const NewOrEditTask = (props) => { courseQuestions // updateTestAndValidate, } = props; - + // 表单提交 const handleSubmitForm = () => { // 改变loading状态 @@ -53,7 +53,7 @@ const NewOrEditTask = (props) => { props.handleFormSubmit(props); // 提交表单 } }; - + useEffect(() => { // 获取用户信息 getUserInfoForNew(); @@ -121,7 +121,7 @@ const NewOrEditTask = (props) => { // 清空描述信息 toStore('oj_description', ''); // props.history.push('/problems'); - props.history.push(`/question?${props.searchParams}`); + props.history.push(`/problemset?${props.searchParams}`); } // 发布 @@ -163,8 +163,8 @@ const NewOrEditTask = (props) => { onClick={handleClickCancel} style={{ background: '#666666', color: '#fff', border: 'none' }} >取消 - @@ -174,14 +174,14 @@ const NewOrEditTask = (props) => { // 发布/模拟挑战 const renderPubOrFight = () => { const pubButton = isPublish - ? () - : (); @@ -191,13 +191,13 @@ const NewOrEditTask = (props) => { ) : ( ); - + if (isPublish) { return ( {pubButton} - @@ -207,8 +207,8 @@ const NewOrEditTask = (props) => { } else { return ( - @@ -217,7 +217,7 @@ const NewOrEditTask = (props) => { ); } - + } // 渲染退出 @@ -296,7 +296,7 @@ const mapDispatchToProps = (dispatch) => ({ clearOJFormStore: () => dispatch(actions.clearOJFormStore()), // 按钮状态 changeSubmitLoadingStatus: (flag) => dispatch(actions.changeSubmitLoadingStatus(flag)), - // 发布按钮状态 + // 发布按钮状态 changePublishLoadingStatus: (flag) => dispatch(actions.changePublishLoadingStatus(flag)), // 测试用例及验证 updateTestAndValidate: (obj) => dispatch(actions.updateTestAndValidate(obj)), diff --git a/public/react/src/modules/developer/studentStudy/index.js b/public/react/src/modules/developer/studentStudy/index.js index 2af70efdf..e6a11482c 100644 --- a/public/react/src/modules/developer/studentStudy/index.js +++ b/public/react/src/modules/developer/studentStudy/index.js @@ -129,7 +129,7 @@ function StudentStudy (props) { changeShowOrHideControl(false); props.saveEditorCodeForDetail(''); // props.history.push('/problems'); - props.history.push(`/question?${searchParams}`); + props.history.push(`/problemset?${searchParams}`); } return ( diff --git a/public/react/src/modules/modals/Bottomsubmit.js b/public/react/src/modules/modals/Bottomsubmit.js index 187910cb9..22fb7c8fd 100644 --- a/public/react/src/modules/modals/Bottomsubmit.js +++ b/public/react/src/modules/modals/Bottomsubmit.js @@ -12,9 +12,13 @@ class Bottomsubmit extends Component { cannelfun = () => { // window.location.href= - if(this.props.Cohetepaperbool===true){ - this.props.setCohetepaperbool(false); - }else { + try { + if(this.props.Cohetepaperbool===true){ + this.props.setCohetepaperbool(false); + }else { + this.props.history.replace(this.props.url); + } + }catch (e) { this.props.history.replace(this.props.url); } diff --git a/public/react/src/modules/question/Paperreview.js b/public/react/src/modules/question/Paperreview.js index 425815d62..fadba71ca 100644 --- a/public/react/src/modules/question/Paperreview.js +++ b/public/react/src/modules/question/Paperreview.js @@ -236,7 +236,9 @@ class Paperreview extends Component { .then((result) => { if (result.data.status === 0) { // this.props.showNotification(`组卷成功`); - this.props.history.replace('/paperlibrary'); + // console.log(result.data.exam_id); + //本来调试卷库首页的 + this.props.history.replace('/paperlibrary/see/'+result.data.exam_id); } }).catch((error) => { //console.log(error); @@ -418,7 +420,7 @@ class Paperreview extends Component { artificialtype==="artificial"? 试题库 - 人工组卷 + 人工组卷 试卷预览 : @@ -429,7 +431,7 @@ class Paperreview extends Component { : - 试题库 + 试题库 新增试卷 } @@ -461,7 +463,8 @@ class Paperreview extends Component { this.setCohetepaperbool(bool)} - onSubmits={() => this.preservation()} url={ artificialtype==="artificial"?'/question':'/paperlibrary'}> + Cohetepaperbool={this.state.Cohetepaperbool} + onSubmits={() => this.preservation()} url={ artificialtype==="artificial"?'/problemset':'/paperlibrary'}> ) diff --git a/public/react/src/modules/question/Paperreview_item.js b/public/react/src/modules/question/Paperreview_item.js index 8f3ca4f28..a4c5e5773 100644 --- a/public/react/src/modules/question/Paperreview_item.js +++ b/public/react/src/modules/question/Paperreview_item.js @@ -463,7 +463,7 @@ class Paperreview_item extends Component { } jixuxuantioncli = () => { - this.props.history.replace("/question"); + this.props.history.replace("/problemset"); } showparagraphs = (e,name) => { diff --git a/public/react/src/modules/question/Question.js b/public/react/src/modules/question/Question.js index b7553311d..81d70bdb3 100644 --- a/public/react/src/modules/question/Question.js +++ b/public/react/src/modules/question/Question.js @@ -940,6 +940,15 @@ class Question extends Component { return (
+ { mydisplay===true? @@ -966,11 +975,7 @@ class Question extends Component { :"" } - { - visible===true? +
- :""} { modalsTypes===true? this.modalCancels()} diff --git a/public/react/src/modules/question/Questionitem_banks.js b/public/react/src/modules/question/Questionitem_banks.js index b70332269..aade5de2e 100644 --- a/public/react/src/modules/question/Questionitem_banks.js +++ b/public/react/src/modules/question/Questionitem_banks.js @@ -312,7 +312,7 @@ class Questionitem_banks extends Component { if (result.data.status == 0) { // this.props.showNotification(`新增单选题成功`); this.restricte=true; - this.props.history.replace('/question'); + this.props.history.replace('/problemset'); } }).catch((error) => { @@ -324,7 +324,7 @@ class Questionitem_banks extends Component { if (result.data.status == 0) { // this.props.showNotification(`编辑单选题成功`); this.restricte=true; - this.props.history.replace('/question'); + this.props.history.replace('/problemset'); } @@ -392,7 +392,7 @@ class Questionitem_banks extends Component { if (result.data.status == 0) { // this.props.showNotification(`新增多选题成功`); this.restricte=true; - this.props.history.replace('/question'); + this.props.history.replace('/problemset'); } @@ -406,7 +406,7 @@ class Questionitem_banks extends Component { if (result.data.status == 0) { // this.props.showNotification(`编辑多选题成功`); this.restricte=true; - this.props.history.replace('/question'); + this.props.history.replace('/problemset'); } @@ -461,7 +461,7 @@ class Questionitem_banks extends Component { if (result.data.status == 0) { // this.props.showNotification(`新增判断题成功`); this.restricte=true; - this.props.history.replace('/question'); + this.props.history.replace('/problemset'); } }).catch((error) => { @@ -474,7 +474,7 @@ class Questionitem_banks extends Component { if (result.data.status == 0) { // this.props.showNotification(`编辑判断题成功`); this.restricte=true; - this.props.history.replace('/question'); + this.props.history.replace('/problemset'); } }).catch((error) => { @@ -561,7 +561,7 @@ class Questionitem_banks extends Component {
- 试题库 + 试题库 {JSON.stringify(params) === "{}" ? "新增" : "编辑"}试题
@@ -627,7 +627,7 @@ class Questionitem_banks extends Component { "" : this.preservation()} url={'/question'}> + onSubmits={() => this.preservation()} url={'/problemset'}> }
) diff --git a/public/react/src/modules/question/component/Contentpart.js b/public/react/src/modules/question/component/Contentpart.js index 7725a0a14..b58dc9922 100644 --- a/public/react/src/modules/question/component/Contentpart.js +++ b/public/react/src/modules/question/component/Contentpart.js @@ -201,7 +201,7 @@ class Contentpart extends Component { } - this.props.history.push("/question/newitem?pages="+this.props.pages+urls); + this.props.history.push("/problemset/newitem?pages="+this.props.pages+urls); } render() { diff --git a/public/react/src/modules/question/component/Listjihe.js b/public/react/src/modules/question/component/Listjihe.js index 067de710c..855a4fbad 100644 --- a/public/react/src/modules/question/component/Listjihe.js +++ b/public/react/src/modules/question/component/Listjihe.js @@ -518,7 +518,7 @@ class Listjihe extends Component { this.props.Isitapopup&&this.props.Isitapopup==="true"? "" : - this.seturls(`/question/edit/${items.id}`)}> + this.seturls(`/problemset/edit/${items.id}`)}>

编辑 diff --git a/public/react/src/modules/question/component/SiderBars.js b/public/react/src/modules/question/component/SiderBars.js index e6cee7761..724ae7f79 100644 --- a/public/react/src/modules/question/component/SiderBars.js +++ b/public/react/src/modules/question/component/SiderBars.js @@ -117,7 +117,7 @@ class SiderBars extends Component { {this.props.mygetHelmetapi&&this.props.mygetHelmetapi.main_site===true?

{ - mypath&&mypath==="/question"&&swsilan===true? + mypath&&mypath==="/problemset"&&swsilan===true?
this.props.showDrawer()} > diff --git a/public/react/src/modules/question/questioncss/questioncom.css b/public/react/src/modules/question/questioncss/questioncom.css index a0c791190..d5ac90d12 100644 --- a/public/react/src/modules/question/questioncss/questioncom.css +++ b/public/react/src/modules/question/questioncss/questioncom.css @@ -419,10 +419,10 @@ color: #4CACFF; } .xiaoshou{ - cursor:pointer; + cursor:pointer !important; } .xiaoshout{ - cursor:default; + cursor:default !important; } .mt40{ margin-top: 40px; @@ -1129,7 +1129,7 @@ .typeGreen{ color:#15DB7A; border:1px solid #15DB7A; -} +} .typeBlue{ color:#0CB9F1; border:1px solid #0CB9F1; @@ -1137,8 +1137,8 @@ .typeRed{ color:#FF5555; border:1px solid #FF5555; -} +} .typeYellow{ color:#FFB538; border:1px solid #FFB538; -} \ No newline at end of file +} diff --git a/public/react/src/modules/testpaper/component/Contentpart.js b/public/react/src/modules/testpaper/component/Contentpart.js index 5148e00ca..f5c0a5cb4 100644 --- a/public/react/src/modules/testpaper/component/Contentpart.js +++ b/public/react/src/modules/testpaper/component/Contentpart.js @@ -73,7 +73,7 @@ class Contentpart extends Component { } //跳转人工组卷 Mantegeneration=()=>{ - this.props.history.push('/question'); + this.props.history.push('/problemset'); } @@ -368,18 +368,24 @@ class Contentpart extends Component { :"" } diff --git a/public/react/src/modules/testpaper/component/Paperlibraryseeid_item.js b/public/react/src/modules/testpaper/component/Paperlibraryseeid_item.js index 06298299f..58959d745 100644 --- a/public/react/src/modules/testpaper/component/Paperlibraryseeid_item.js +++ b/public/react/src/modules/testpaper/component/Paperlibraryseeid_item.js @@ -286,7 +286,7 @@ class Paperreview_item extends Component { } jixuxuantioncli = () => { - this.props.history.replace("/question"); + this.props.history.replace("/problemset"); } showparagraphs = (e,name) => { diff --git a/public/react/src/modules/testpaper/component/Paperlibraryseeid_itemss.js b/public/react/src/modules/testpaper/component/Paperlibraryseeid_itemss.js index 754a45560..2cdc60623 100644 --- a/public/react/src/modules/testpaper/component/Paperlibraryseeid_itemss.js +++ b/public/react/src/modules/testpaper/component/Paperlibraryseeid_itemss.js @@ -361,7 +361,7 @@ class Paperlibraryseeid_itemss extends Component { } jixuxuantioncli = () => { - this.props.history.replace("/question"); + this.props.history.replace("/problemset"); } showparagraphs = (e,name) => { diff --git a/public/react/src/modules/testpaper/component/Seeoagertits.js b/public/react/src/modules/testpaper/component/Seeoagertits.js index a983bd67e..573655a63 100644 --- a/public/react/src/modules/testpaper/component/Seeoagertits.js +++ b/public/react/src/modules/testpaper/component/Seeoagertits.js @@ -26,7 +26,7 @@ class Seeoagertit extends Component { onChange=(e)=> { } jixuxuantioncli = () => { - this.props.history.replace("/question"); + this.props.history.replace("/problemset"); } render() { diff --git a/public/react/src/modules/testpaper/testioncss/testioncss.css b/public/react/src/modules/testpaper/testioncss/testioncss.css index 56c2e36c0..8c9597ed0 100644 --- a/public/react/src/modules/testpaper/testioncss/testioncss.css +++ b/public/react/src/modules/testpaper/testioncss/testioncss.css @@ -400,13 +400,13 @@ color: #4CACFF; } .xiaoshou{ - cursor:pointer; + cursor:pointer !important; } .xiaoshout{ - cursor:default; + cursor:default !important; } .shubiao{ - cursor:default; + cursor:default !important; } .mt40{ margin-top: 40px; diff --git a/public/react/src/modules/tpm/TPMIndexHOC.js b/public/react/src/modules/tpm/TPMIndexHOC.js index 9ba60c27a..a5da90e2c 100644 --- a/public/react/src/modules/tpm/TPMIndexHOC.js +++ b/public/react/src/modules/tpm/TPMIndexHOC.js @@ -769,7 +769,7 @@ export function TPMIndexHOC(WrappedComponent) { {...this.dialogObj} />:""} { - mypath&&mypath==="/question"? + mypath&&mypath==="/problemset"? "" : { // console.log(path); // props.history.push(`/myproblems/${identifier}`); props.history.push({ - pathname: `/myproblems/${identifier}?${searchParams}`, + pathname: `/myproblems/${identifier}.json?${searchParams}`, }); } } @@ -90,7 +90,7 @@ export const getUserProgramDetail = (identifier, type) => { type: types.SAVE_USE_TEST_CASE_VALUE, payload: data.test_case || {} }); - // 代码是否更新 + // 代码是否更新 let _modify_code = false; if (data.hack) { _modify_code = data.hack.modify_code; @@ -145,7 +145,7 @@ export const saveUserCodeForInterval = (identifier, code) => { /** * @description 保存或更新之前先更新代码 - * @param {*} identifier + * @param {*} identifier * @param {*} inputValue 输入值: 自定义 | 系统返回的 * @param {*} type 测评类型 debug | submit */ @@ -157,7 +157,7 @@ export const updateCode = (identifier, inputValue, type) => { fetchUpdateCode(identifier, { code: Base64.encode(userCode) }).then(res => { - // 是否更新了代码, 目的是当代码没有更新时不调用更新代码接口,目录没有实现 + // 是否更新了代码, 目的是当代码没有更新时不调用更新代码接口,目录没有实现 // TODO 需要优化 if (res.data.status === 401) { dispatch({ // 改变 loading 值 @@ -187,7 +187,7 @@ export const codeEvaluate = (dispatch, identifier, type, time_limit, hackStatus, let count = 1; /** * @param {*} excuteTime 执行时间 - * @param {*} finalTime 总时间 + * @param {*} finalTime 总时间 * @param {*} count 执行次数 * @param {*} timer 定时器 */ @@ -199,7 +199,7 @@ export const codeEvaluate = (dispatch, identifier, type, time_limit, hackStatus, if (+status === 0 || (excuteTime / 1000) > (finalTime + 1)) { clearInterval(timer); // 清除定时器 timer = null; - let returnData = null; + let returnData = null; if (status === 1) { // 结果没有返回 returnData = { error_line: -1, @@ -221,7 +221,7 @@ export const codeEvaluate = (dispatch, identifier, type, time_limit, hackStatus, payload: { type, data: returnData - } + } }); if (!type || type === 'debug') { dispatch({ // 改变 loading 值 @@ -287,13 +287,13 @@ export const codeEvaluate = (dispatch, identifier, type, time_limit, hackStatus, /** * @description 调试代码 - * @param {*} identifier + * @param {*} identifier * @param {*} inputValue 输入值: 自定义 | 系统返回的 * @param {*} type 测评类型 debug | submit */ export const debuggerCode = (identifier,value, type) => { return (dispatch, getState) => { - // 调用之前 先保存 code + // 调用之前 先保存 code // TODO // console.log(identifier, value); const { hack } = getState().ojForUserReducer; @@ -398,7 +398,7 @@ export const changeUserCodeTab = (key) => { /** * @description 用户提交代码, 先调用保存代码接口,再调提交接口,成功后调用调试接口 - * @param {*} identifier + * @param {*} identifier */ export const submitUserCode = (identifier, inputValue, type) => { return (dispatch, getState) => { @@ -430,7 +430,7 @@ export const submitUserCode = (identifier, inputValue, type) => { fetchUpdateCode(identifier, { code: userCode }).then(res => { - // 是否更新了代码, 目的是当代码没有更新时不调用更新代码接口,目录没有实现 + // 是否更新了代码, 目的是当代码没有更新时不调用更新代码接口,目录没有实现 // TODO 需要优化 if (res.data.status === 401) { dispatch({ @@ -495,7 +495,7 @@ export const saveOpacityType = (type) => { type: types.CLICK_OPERATE_TYPE, payload: type } -} +} export const clearOjForUserReducer = () => {