import React, { Component } from 'react'; import { SnackbarHOC } from 'educoder'; import {Link} from 'react-router-dom'; import {BrowserRouter as Router,Route,Switch} from 'react-router-dom'; import Loadable from 'react-loadable'; import Loading from '../../../Loading'; import { CNotificationHOC } from '../common/CNotificationHOC' import { RouteHOC } from './common' import locale from 'antd/lib/date-picker/locale/zh_CN'; import { WordsBtn, MarkdownToHtml, trigger, queryString, downloadFile } from 'educoder'; import axios from 'axios'; import Modals from '../../modals/Modals'; import CoursesListType from '../coursesPublic/CoursesListType'; import AccessoryModal from "../coursesPublic/AccessoryModal"; import PublishRightnow from './PublishRightnow' import '../css/Courses.css' import CBreadcrumb from '../common/CBreadcrumb' import DownloadMessageysl from "../../modals/DownloadMessageysl"; import { Spin } from 'antd' //引入对应跳转的组件 //新建分组/普通作业 const NewWork = Loadable({ loader: () => import('./NewWork'), loading:Loading, }) const CommonWorkSetting = Loadable({ loader: () => import('./CommonWorkSetting'), loading:Loading, }) const CommonWorkList = Loadable({ loader: () => import('./CommonWorkList'), loading:Loading, }) const CommonWorkQuestion = Loadable({ loader: () => import('./CommonWorkQuestion'), loading:Loading, }) const CommonWorkAnswer = Loadable({ loader: () => import('./CommonWorkAnswer'), loading:Loading, }) const CommonWorkAppraise = Loadable({ loader: () => import('./CommonWorkAppraise'), loading:Loading, }) const CommonWorkPost = Loadable({ loader: () => import('./CommonWorkPost'), loading:Loading, }) const CommonWork = Loadable({ loader: () => import('./commonWork'), loading:Loading, }) class CommonWorkDetailIndex extends Component{ constructor(props) { super(props) this.publishModal = React.createRef(); this.endModal = React.createRef(); this.state = { DownloadType:false, DownloadMessageval:undefined, donwloading:false, } } initWorkDetailCommonState = (data) => { this.setState({ ...data }) } goback = () => { let workId=this.props.match.params.workId; if ( window.location.pathname.indexOf('appraise') == -1) { let category_id= this.state.category.category_id; this.props.toListPage(this.props.match.params, category_id) } else { this.props.toWorkListPage(this.props.match.params, workId) } } // 补交附件 Cancelvisible=()=>{ this.setState({ accessoryVisible:false }) } addAccessory=()=>{ this.setState({ accessoryVisible:true }) } setupdate = () => { } doWhenSuccess = () => { trigger('commonwork_fetch_all') } /// 确认是否下载 confirmysl(url){ axios.get(url+ '&export=true').then((response) => { if(response===undefined){ return } if(response.data.status&&response.data.status===-1){ }else if(response.data.status&&response.data.status===-2){ if(response.data.message === "100"){ // 已超出文件导出的上限数量(100 ),建议: this.setState({ DownloadType:true, DownloadMessageval:100 }) }else { //因附件资料超过500M this.setState({ DownloadType:true, DownloadMessageval:500 }) } }else { this.props.showNotification(`正在下载中`); this.setState({ donwloading: true }) downloadFile({ url: url, successCallback: (url) => { this.setState({ donwloading: false }) console.log('successCallback') }, failCallback: (responseHtml, url) => { this.setState({ donwloading: false }) console.log('failCallback') } }) // window.open("/api"+url, '_blank'); } }).catch((error) => { console.log(error) }); } Downloadcal=()=>{ this.setState({ DownloadType:false, DownloadMessageval:undefined }) } bindRef = ref => { this.child = ref }; render() { let {course_name, homework_name, homework_status, noTab , view_answer, author_name, category, work_id , end_immediately, publish_immediately, work_statuses, accessoryVisible } =this.state; const { current_user } = this.props let courseId=this.props.match.params.coursesId; let category_id= category && category.category_id; let category_name= category && category.category_name; let workId=this.props.match.params.workId; const studentWorkId = this.props.match.params.studentWorkId const isGroup = this.props.isGroup() const moduleName = !isGroup? "普通作业":"分组作业"; const moduleEngName = this.props.getModuleName() const childModuleName = this.state.moduleName const commonHandler = { initWorkDetailCommonState: this.initWorkDetailCommonState } const isAdmin = this.props.isAdmin() let exportParams = {} const isListModule = childModuleName == '作品列表'; // 是列表页 let params = {} if (isListModule) { // TODO if(this.child!=undefined) { params = this.child._getRequestParams() !== undefined ? this.child._getRequestParams() : {}; } } // console.log("普通作业176176176"); // console.log(params); let exportUrl = `/homework_commons/${workId}/works_list.zip?${queryString.stringify(params)}` let exportResultUrl = `/homework_commons/${workId}/works_list.xlsx?${queryString.stringify(params)}` return (
{current_user && }
36 ? homework_name : ''}`} style={{height: 'auto'}} > {homework_name} {/* {homework_name} */} {category && 返回} {this.state.update_atta && {this.state.accessoryVisible===true? :""} 补交附件 }
{ noTab !== true &&
this.setState({moduleName: '作品列表'})} className={`${isListModule ? 'active' : '' } `} to={`/courses/${courseId}/${moduleEngName}/${workId}/list`}>作品列表 this.setState({moduleName: '作业问答'})} className={`${childModuleName == '作业问答' ? 'active' : '' } `} to={`/courses/${courseId}/${moduleEngName}/${workId}/question`}>作业问答 {view_answer == true && this.setState({moduleName: '参考答案'})} className={`${childModuleName == '参考答案' ? 'active' : '' } `} to={`/courses/${courseId}/${moduleEngName}/${workId}/answer`}>参考答案} this.setState({moduleName: '设置'})} className={`${childModuleName == '设置' ? 'active' : '' } `} style={{paddingLeft:'38px'}} to={`/courses/${courseId}/${moduleEngName}/${workId}/setting`}>设置 {/* { this.props.tabRightComponents } */} {this.props.isAdmin()?
  • 导出
  • :""} {/* {isAdmin && 导出作品附件} {isAdmin && 导出成绩} */} {/*导出*/} {end_immediately && { this.endModal.current.open() } }>立即截止} {publish_immediately && { this.publishModal.current.open() } } >立即发布} {/*项目在线质量检测*/} {isAdmin && this.props.toEditPage(this.props.match.params, workId)}>编辑作业} {work_statuses && work_statuses.indexOf('提交作品') != -1 && { this.props.toWorkPostPage(this.props.match.params)}} >提交作品} { work_statuses && work_statuses.indexOf('补交作品') != -1 && { this.props.toWorkPostPage(this.props.match.params, null, true, work_id)}}> 补交作品 } {work_statuses && work_statuses.indexOf('修改作品') != -1 && { this.props.toWorkPostPage(this.props.match.params, null, true, work_id)}} >修改作品} {work_statuses && work_statuses.indexOf('补交附件') != -1 && 补交附件 }
    } {/* 内容区 */} {/* --------------------------------------------------------------------- */} {/* 作业设置 */} {/* http://localhost:3007/courses/1309/homework/9300/setting */} () } > {/* 作品列表 */} () } > {/* 作业问答 */} () } > () } > () } > {/* 作品列表 */} () } > {/* 作业问答 */} () } > () } >
    ) } } export default ( CommonWorkDetailIndex) ;