dev_new_shixunsrepository
杨树明 5 years ago
commit a8e1c48e53

@ -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

@ -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"

@ -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}`;
}

@ -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';

@ -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 ? <a className={"fr color-blue font-16 mr20"} onClick={() => { this.publish()} }>立即发布</a> : "" : "" }
{ this.props.isAdmin() && questionslist.cross_comment ? <a className={"fr color-blue font-16"} onClick={this.openAcross}>交叉评阅设置</a> : "" }
{ this.props.isAdmin() ? <a className={"fr color-blue font-16"} href={"/courses/"+courseId+"/graduation_tasks/"+task_Id+"/edit"}>编辑任务</a> : "" }
{/*{ this.props.user&&this.props.user.admin===true || this.props.user&&this.props.user.business===true ? <a className={"fr color-blue font-16"} onClick={()=>this.CodeReview()}>代码评测</a> : "" }*/}
</div>
</div>
<Switch {...this.props}>
{/*//毕设任务列表*/}
<Route exact path="/courses/:coursesId/graduation_tasks/:category_id/detail/:task_Id/list"
render={
(props) => (<GraduationTaskslist {...this.props} {...props} {...this.state} {...commom} triggerRef={this.bindRef} setend_time={(time)=>this.setend_time(time)} tab={`list`}/>)
(props) => (<GraduationTaskslist getsonar={(teacher_comment,task_status,course_group,cross_comment,search)=>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`}/>)
}
></Route>

@ -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)
}
/// 确认是否下载

@ -139,7 +139,7 @@ class Contentpart extends Component {
}
.ant-popover-inner-content {
.xaxisreverseorder .ant-popover-inner-content {
padding:0px !important;
}

@ -109,11 +109,6 @@ class Contentpart extends Component {
top: 348px !important;
}
.ant-popover-inner-content {
padding:0px !important;
}
`
}
</style>

@ -1033,23 +1033,23 @@ submittojoinclass=(value)=>{
top: 63px !important;
}
.ant-popover-inner-content {
.questionbanks .ant-popover-inner-content {
padding:0px !important;
}
`
}
</style>
<li className={`pr `}>
<Popover placement="bottom" content={contents} trigger="click" >
<div className=" sortinxdirection mr10">
<div style={{
color:"#fff"
}}>
题库
</div>
</div>
</Popover>
</li>
{/*<li className={`pr questionbanks`}>*/}
{/* <Popover placement="bottom" content={contents} trigger="click" >*/}
{/* <div className=" sortinxdirection mr10">*/}
{/* <div style={{*/}
{/* color:"#fff"*/}
{/* }}>*/}
{/* 题库*/}
{/* </div>*/}
{/* </div>*/}
{/* </Popover>*/}
{/*</li>*/}
<li
style={{display: this.props.Headertop === undefined ? 'none' : this.props.Headertop.auth === null ? 'none' : 'block'}}

@ -465,6 +465,7 @@ class TPMBanner extends Component {
modalsMidval:"• 我们将在1-2个工作日内完成审核",
ModalCancel: this.eopenpublicupdatadata,
ModalSave: this.eopenpublicupdatadata,
Loadtype:true,
modalstyles:"848282"
})
}

Loading…
Cancel
Save