diff --git a/app/controllers/graduation_tasks_controller.rb b/app/controllers/graduation_tasks_controller.rb index 117989247..38860d34c 100644 --- a/app/controllers/graduation_tasks_controller.rb +++ b/app/controllers/graduation_tasks_controller.rb @@ -225,7 +225,7 @@ class GraduationTasksController < ApplicationController } attachment = work.attachments.last if attachment - o[:downloadUrl] = "https://#{edu_setting('host_name')}/"+download_url(attachment) + o[:downloadUrl] = "#{edu_setting('host_name')}"+download_url(attachment) end o diff --git a/public/react/src/AppConfig.js b/public/react/src/AppConfig.js index 196855518..a18e395dd 100644 --- a/public/react/src/AppConfig.js +++ b/public/react/src/AppConfig.js @@ -40,7 +40,7 @@ if (isDev) { // 超管 // debugType="admin"; // 老师 -//ebugType="teacher"; +//debugType="teacher"; // 学生 //debugType="student"; @@ -82,7 +82,7 @@ export function initAxiosInterceptors(props) { // proxy = "https://testeduplus2.educoder.net" //proxy="http://47.96.87.25:48080" proxy="https://pre-newweb.educoder.net" - proxy="https://test-newweb.educoder.net" + // proxy="https://test-newweb.educoder.net" proxy="https://test-jupyterweb.educoder.net" //proxy="http://192.168.2.63:3001" @@ -126,7 +126,7 @@ export function initAxiosInterceptors(props) { let timestamp = Date.parse(new Date())/1000; if (window.location.port === "3007") { // let timestamp=railsgettimes(proxy); - // console.log(timestamp) + // console.log(timestamp) railsgettimes(`${proxy}/api/main/first_stamp.json`); let newopens=md5(opens+timestamp) config.url = `${proxy}${url}`; diff --git a/public/react/src/common/UrlTool.js b/public/react/src/common/UrlTool.js index aeab8e1c4..dbcd5db82 100644 --- a/public/react/src/common/UrlTool.js +++ b/public/react/src/common/UrlTool.js @@ -100,11 +100,13 @@ export function getUploadActionUrl(path, goTest) { let anewopens=md5(newopens+newtimestamp); return `${getUrl()}/api/attachments.json${isDev ? `?debug=${window._debugType || 'admin'}&randomcode=${newtimestamp}&client_key=${anewopens}` : `?randomcode=${newtimestamp}&client_key=${anewopens}`}`; } + export function getUploadActionUrltwo(id) { Railsgettimes() let anewopens=md5(newopens+newtimestamp); return `${getUrlmys()}/api/shixuns/${id}/upload_data_sets.json${isDev ? `?debug=${window._debugType || 'admin'}&randomcode=${newtimestamp}&client_key=${anewopens}` : `?randomcode=${newtimestamp}&client_key=${anewopens}`}` } + export function getUploadActionUrlthree() { Railsgettimes() let anewopens=md5(newopens+newtimestamp); @@ -124,6 +126,12 @@ export function getUploadActionUrlOfAuth(id) { return `${getUrl()}/api/users/accounts/${id}/auth_attachment.json${isDev ? `?debug=${window._debugType || 'admin'}&randomcode=${newtimestamp}&client_key=${anewopens}` : `?randomcode=${newtimestamp}&client_key=${anewopens}`}` } +export function getRandomNumber(type) { + Railsgettimes() + let anewopens=md5(newopens+newtimestamp); + return type===true?`randomcode=${newtimestamp}&client_key=${anewopens}`:`?randomcode=${newtimestamp}&client_key=${anewopens}` +} + export function test(path) { return `${path}`; } diff --git a/public/react/src/common/educoder.js b/public/react/src/common/educoder.js index fbeec4a80..80a517086 100644 --- a/public/react/src/common/educoder.js +++ b/public/react/src/common/educoder.js @@ -2,9 +2,9 @@ // export { default as OrderStateUtil } from '../routes/Order/components/OrderStateUtil'; -export { getImageUrl as getImageUrl, getUrl as getUrl, getRandomcode as getRandomcode,getUrlmys as getUrlmys, getUrl2 as getUrl2, setImagesUrl as setImagesUrl,publicSearchs as publicSearchs - , getupload_git_file as getupload_git_file,getUploadActionUrl as getUploadActionUrl,getUploadActionUrltwo as getUploadActionUrltwo ,getUploadActionUrlthree as getUploadActionUrlthree, getUploadActionUrlOfAuth as getUploadActionUrlOfAuth - , getTaskUrlById as getTaskUrlById, TEST_HOST ,htmlEncode as htmlEncode } from './UrlTool'; +export { getImageUrl as getImageUrl, getRandomNumber as getRandomNumber,getUrl as getUrl, publicSearchs as publicSearchs,getRandomcode as getRandomcode,getUrlmys as getUrlmys, getUrl2 as getUrl2, setImagesUrl as setImagesUrl + , getUploadActionUrl as getUploadActionUrl,getUploadActionUrltwo as getUploadActionUrltwo ,getUploadActionUrlthree as getUploadActionUrlthree, getUploadActionUrlOfAuth as getUploadActionUrlOfAuth + , getTaskUrlById as getTaskUrlById, TEST_HOST ,htmlEncode as htmlEncode ,getupload_git_file as getupload_git_file,} from './UrlTool'; export { default as queryString } from './UrlTool2'; export { SnackbarHOC as SnackbarHOC } from './SnackbarHOC'; diff --git a/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js b/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js index e07f3d249..43f651527 100644 --- a/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js +++ b/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js @@ -1,5 +1,5 @@ import React, { Component } from 'react'; - +import {getRandomNumber,queryString} from 'educoder'; import {Link} from 'react-router-dom'; import {Tooltip,Menu} from 'antd'; import Loadable from 'react-loadable'; @@ -62,7 +62,8 @@ class GraduationTaskDetail extends Component{ ModalCancel:undefined, ModalSave:undefined, acrossVisible:undefined, - OneSelftype:false + OneSelftype:false, + taskdatas:undefined } } componentDidMount(){ @@ -249,11 +250,13 @@ class GraduationTaskDetail extends Component{ visibles:true }) } + Cancel=()=>{ this.setState({ visibles:false }) } + // 取消关联 cannelAssociation=()=>{ this.setState({ @@ -263,6 +266,7 @@ class GraduationTaskDetail extends Component{ ModalSave:this.savetassociton }) } + savetassociton=()=>{ this.cannerassocition(); let {questionslist}=this.state; @@ -277,6 +281,7 @@ class GraduationTaskDetail extends Component{ }) } + cannerassocition=()=>{ this.setState({ Modalstype:false, @@ -287,6 +292,7 @@ class GraduationTaskDetail extends Component{ visibles:false }) } + // 补交附件 handaccessory=()=>{ // let {taskslistdata}=this.state; @@ -299,14 +305,40 @@ class GraduationTaskDetail extends Component{ avisible:true }) } + Cancelvisible=()=>{ this.setState({ avisible:false }) } + CodeReview=()=>{ + this.props.showNotification("正在导出中..."); + const task_Id = this.props.match.params.task_Id; + window.open(`/api/graduation_tasks/${task_Id}/sonar? + ${this.state.taskdatas.teacher_comment===undefined||this.state.taskdatas.teacher_comment===null?"":"teacher_comment="+this.state.taskdatas.teacher_comment} + ${this.state.taskdatas.task_status===undefined||this.state.taskdatas.task_status===null?"":"&task_status="+this.state.taskdatas.task_status} + ${this.state.taskdatas.course_group===undefined||this.state.taskdatas.course_group===null?"":"&course_group="+this.state.taskdatas.course_group} + ${this.state.taskdatas.cross_comment===undefined||this.state.taskdatas.cross_comment===null?"":"&cross_comment="+this.state.taskdatas.cross_comment} + ${this.state.taskdatas.search===undefined||this.state.taskdatas.search===null?"":"&search="+this.state.taskdatas.search+"&"}${getRandomNumber(true)}`) + + } + + getsonars=(teacher_comment,task_status,course_group,cross_comment,search)=>{ + let data={ + teacher_comment:teacher_comment, + task_status:task_status, + course_group:course_group, + cross_comment:cross_comment, + search:search + } + this.setState({ + taskdatas:data + }) + } bindRef = ref => { this.child = ref } ; + render(){ let courseId=this.props.match.params.coursesId; @@ -512,13 +544,15 @@ class GraduationTaskDetail extends Component{ { this.props.isAdmin() ? questionslist.status===0 ? { this.publish()} }>立即发布 : "" : "" } { this.props.isAdmin() && questionslist.cross_comment ? 交叉评阅设置 : "" } { this.props.isAdmin() ? 编辑任务 : "" } + {/*{ this.props.user&&this.props.user.admin===true || this.props.user&&this.props.user.business===true ? this.CodeReview()}>代码评测 : "" }*/} + {/*//毕设任务列表*/} (this.setend_time(time)} tab={`list`}/>) + (props) => (this.getsonars(teacher_comment,task_status,course_group,cross_comment,search)}{...this.props} {...props} {...this.state} {...commom} triggerRef={this.bindRef} setend_time={(time)=>this.setend_time(time)} tab={`list`}/>) } > diff --git a/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettinglist.js b/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettinglist.js index 21b378635..24c69ab85 100644 --- a/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettinglist.js +++ b/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettinglist.js @@ -62,6 +62,8 @@ class GraduationTaskssettinglist extends Component{ let{teacher_comment,task_status,course_group,cross_comment,order,b_order,search}=this.state; this.seacthdata(teacher_comment,task_status,course_group,cross_comment,order,b_order,search,this.state.page); + this.props.getsonar(teacher_comment, task_status, course_group, cross_comment, search) + try{ this.props.triggerRef(this) }catch(e){ @@ -88,6 +90,8 @@ class GraduationTaskssettinglist extends Component{ }) let {teacher_comment, task_status, course_group, cross_comment, order, b_order, search} = this.state; this.seacthdata(teacher_comment, task_status, course_group, cross_comment, order, b_order, search,this.state.page); + + this.props.getsonar(teacher_comment, task_status, course_group, cross_comment, search) } seacthdata=(teacher_comment,task_status,course_group,cross_comment,order,b_order,search,pages)=>{ @@ -244,8 +248,10 @@ class GraduationTaskssettinglist extends Component{ if(list.length===key){ this.seacthdata(undefined, task_status, course_group, cross_comment, order, b_order, search,this.state.page); + this.props.getsonar(undefined, task_status, course_group, cross_comment, search) }else{ this.seacthdata(list[0], task_status, course_group, cross_comment, order, b_order, search,this.state.page); + this.props.getsonar(list[0], task_status, course_group, cross_comment, search) } @@ -262,7 +268,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate:true }) this.seacthdata(teacher_comment, task_status, course_group, e.target.value===undefined||e.target.value===false?"":e.target.value, order, b_order, search,this.state.page); - + this.props.getsonar(teacher_comment, task_status, course_group, e.target.value===undefined||e.target.value===false?"":e.target.value, search) } inputSearchValue=(e)=>{ @@ -287,7 +293,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate:true }) this.seacthdata(teacher_comment, task_status, course_group, cross_comment, order, b_order, search,this.state.page); - + this.props.getsonar(teacher_comment, task_status, course_group, cross_comment, search) } funorder = (value, newb_order) => { @@ -299,7 +305,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate: true }) this.seacthdata(teacher_comment, task_status, course_group, cross_comment, value, newb_order, search,this.state.page); - + this.props.getsonar(teacher_comment, task_status, course_group, cross_comment, search) } @@ -320,6 +326,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate:true }) this.seacthdata(teacher_comment, null, course_group, cross_comment, order, b_order, search,this.state.page); + this.props.getsonar(teacher_comment, null, course_group, cross_comment, search) } // else if(checkedValues.length ===key){ // // 全部抖选中 自然就是查找全部 就是空 @@ -336,7 +343,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate:true }) this.seacthdata(teacher_comment, checkedValues===key?undefined:checkedValues, course_group, cross_comment, order, b_order, search,this.state.page); - + this.props.getsonar(teacher_comment, checkedValues===key?undefined:checkedValues, course_group, cross_comment, search) } @@ -355,6 +362,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate:true }) this.seacthdata(teacher_comment, task_status, null, cross_comment, order, b_order, search,this.state.page); + this.props.getsonar(teacher_comment,task_status, null, cross_comment, search) } // else if(checkedValues.length ===key){ // // 全部抖选中 自然就是查找全部 就是空 @@ -372,6 +380,7 @@ class GraduationTaskssettinglist extends Component{ loadingstate:true }) this.seacthdata(teacher_comment, task_status, checkedValues===key?undefined:checkedValues, cross_comment, order, b_order, search,this.state.page); + this.props.getsonar(teacher_comment,task_status, checkedValues===key?undefined:checkedValues, cross_comment, search) } @@ -564,6 +573,7 @@ class GraduationTaskssettinglist extends Component{ // console.log(result) if(result.data.status===0){ this.seacthdata(teacher_comment,task_status,course_group,cross_comment,order,b_order,search,this.state.page); + this.props.getsonar(teacher_comment,task_status, course_group, cross_comment, search) this.props.showNotification(result.data.message); this.cancelmodel(); this.setState({ @@ -681,7 +691,7 @@ class GraduationTaskssettinglist extends Component{ }) let{teacher_comment,task_status,course_group,cross_comment,order,b_order,search}=this.state; this.seacthdata(teacher_comment,task_status,course_group,cross_comment,order,b_order,search,pageNumber); - + this.props.getsonar(teacher_comment,task_status, course_group, cross_comment, search) } /// 确认是否下载 diff --git a/public/react/src/modules/question/component/Contentpart.js b/public/react/src/modules/question/component/Contentpart.js index ee5b49e6b..607b8f596 100644 --- a/public/react/src/modules/question/component/Contentpart.js +++ b/public/react/src/modules/question/component/Contentpart.js @@ -139,7 +139,7 @@ class Contentpart extends Component { } - .ant-popover-inner-content { + .xaxisreverseorder .ant-popover-inner-content { padding:0px !important; } diff --git a/public/react/src/modules/testpaper/component/Contentpart.js b/public/react/src/modules/testpaper/component/Contentpart.js index e69f1b0b5..1a7c90740 100644 --- a/public/react/src/modules/testpaper/component/Contentpart.js +++ b/public/react/src/modules/testpaper/component/Contentpart.js @@ -103,17 +103,12 @@ class Contentpart extends Component { } .sortinxdirection .ant-input-lg { - height: 41px;} + height: 41px;} .sortinxdirection .ant-popover{ top: 348px !important; } - - .ant-popover-inner-content { - padding:0px !important; - } - ` } diff --git a/public/react/src/modules/tpm/NewHeader.js b/public/react/src/modules/tpm/NewHeader.js index 0e4ea3073..64787c72b 100644 --- a/public/react/src/modules/tpm/NewHeader.js +++ b/public/react/src/modules/tpm/NewHeader.js @@ -1033,23 +1033,23 @@ submittojoinclass=(value)=>{ top: 63px !important; } - .ant-popover-inner-content { + .questionbanks .ant-popover-inner-content { padding:0px !important; } ` } -
  • - -
    -
    - 题库 -
    -
    -
    -
  • + {/*
  • */} + {/* */} + {/*
    */} + {/*
    */} + {/* 题库*/} + {/*
    */} + {/*
    */} + {/*
    */} + {/*
  • */}