dev_tj
杨树明 5 years ago
parent 74f44671f5
commit 308833ea64

@ -1,5 +1,5 @@
import React,{ Component } from "react"; import React,{ Component } from "react";
import { ConditionToolTip } from 'educoder' import { ConditionToolTip,getRandomNumber } from 'educoder'
class AttachmentsList extends Component{ class AttachmentsList extends Component{
constructor(props){ constructor(props){
@ -17,7 +17,7 @@ class AttachmentsList extends Component{
<i className="font-14 color-green iconfont icon-fujian mr8"></i> <i className="font-14 color-green iconfont icon-fujian mr8"></i>
</a> </a>
<ConditionToolTip title={item.title} condition={item.title && item.title.length > 30 }> <ConditionToolTip title={item.title} condition={item.title && item.title.length > 30 }>
<a href={item.url} className="mr12 fl task-hide" length="58" target={ item.is_pdf && item.is_pdf == true ? "_blank" : "_self" } style={{"maxWidth":"432px"}}>{item.title}</a> <a href={item.url+getRandomNumber()} className="mr12 fl task-hide" length="58" target={ item.is_pdf && item.is_pdf == true ? "_blank" : "_self" } style={{"maxWidth":"432px"}}>{item.title}</a>
</ConditionToolTip> </ConditionToolTip>
<span className="color-grey mt2 color-grey-6 font-12">{item.filesize}</span> <span className="color-grey mt2 color-grey-6 font-12">{item.filesize}</span>
</p> </p>

@ -1,6 +1,6 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import {Button,Layout,Tabs,Icon, Card, Avatar, Row, Col ,Table,Badge} from 'antd'; import {Button,Layout,Tabs,Icon, Card, Avatar, Row, Col ,Table,Badge} from 'antd';
import {markdownToHTML,getImageUrl} from 'educoder'; import {markdownToHTML,getImageUrl,getRandomNumber} from 'educoder';
import axios from 'axios'; import axios from 'axios';
const { Content } = Layout; const { Content } = Layout;
@ -69,7 +69,7 @@ class CompetitionContents extends Component{
const operations = <div> const operations = <div>
<Button className={"fr"} type="primary" ghost onClick={()=>this.props.Competitionedit()}>编辑</Button> <Button className={"fr"} type="primary" ghost onClick={()=>this.props.Competitionedit()}>编辑</Button>
<Button className={"fr mr20"} type="primary" ghost> <Button className={"fr mr20"} type="primary" ghost>
<a onClick={()=>this.derivefun(`/competitions/${this.props.match.params.identifier}/charts.xlsx`)}>导出</a> <a onClick={()=>this.derivefun(`/competitions/${this.props.match.params.identifier}/charts.xlsx?${getRandomNumber(true)}`)}>导出</a>
</Button> </Button>
</div> </div>
const columns = [ const columns = [

@ -1,5 +1,5 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import { SnackbarHOC } from 'educoder'; import { getRandomNumber } from 'educoder';
import {Link} from 'react-router-dom'; import {Link} from 'react-router-dom';
import {BrowserRouter as Router,Route,Switch} from 'react-router-dom'; import {BrowserRouter as Router,Route,Switch} from 'react-router-dom';
import Loadable from 'react-loadable'; import Loadable from 'react-loadable';
@ -219,8 +219,8 @@ class CommonWorkDetailIndex extends Component{
} }
// console.log("普通作业176176176"); // console.log("普通作业176176176");
// console.log(params); // console.log(params);
let exportUrl = `/homework_commons/${workId}/works_list.zip?${queryString.stringify(params)}` let exportUrl = `/homework_commons/${workId}/works_list.zip?${queryString.stringify(params)}${params?"&"+getRandomNumber(true):getRandomNumber(true)}`
let exportResultUrl = `/homework_commons/${workId}/works_list.xlsx?${queryString.stringify(params)}` let exportResultUrl = `/homework_commons/${workId}/works_list.xlsx?${queryString.stringify(params)}${params?"&"+getRandomNumber(true):getRandomNumber(true)}`
document.title=course_name === undefined ? "" : course_name; document.title=course_name === undefined ? "" : course_name;
return ( return (
<div> <div>

@ -1,7 +1,7 @@
import React,{Component} from "react"; import React,{Component} from "react";
import { Form, Select, Input, Button,Checkbox,Icon,message,Modal, Table, Divider, Tag,DatePicker,Radio,Tooltip} from "antd"; import { Form, Select, Input, Button,Checkbox,Icon,message,Modal, Table, Divider, Tag,DatePicker,Radio,Tooltip} from "antd";
import {Link} from 'react-router-dom'; import {Link} from 'react-router-dom';
import { WordsBtn, MarkdownToHtml } from 'educoder'; import { WordsBtn, getRandomNumber } from 'educoder';
import axios from 'axios'; import axios from 'axios';
import PublishRightnow from '../PublishRightnow' import PublishRightnow from '../PublishRightnow'
import AccessoryModal from "../../coursesPublic/AccessoryModal"; import AccessoryModal from "../../coursesPublic/AccessoryModal";
@ -44,7 +44,7 @@ class TabRightComponents extends Component{
} }
/// 确认是否下载 /// 确认是否下载
confirmysl(url){ confirmysl(url){
axios.get(url + '?export=true' ).then((response) => { axios.get(url + '&export=true' ).then((response) => {
if(response.data.status&&response.data.status===-1){ if(response.data.status&&response.data.status===-1){
}else if(response.data.status&&response.data.status===-2){ }else if(response.data.status&&response.data.status===-2){
@ -108,8 +108,8 @@ class TabRightComponents extends Component{
const isAdmin = this.props.isAdmin() const isAdmin = this.props.isAdmin()
const isSuperAdmin = this.props.isSuperAdmin() const isSuperAdmin = this.props.isSuperAdmin()
let exportUrl = `/api/homework_commons/${workId}/works_list.zip` let exportUrl = `/api/homework_commons/${workId}/works_list.zip${getRandomNumber()}`
const exportResultUrl = `/api/homework_commons/${workId}/works_list.xlsx` const exportResultUrl = `/api/homework_commons/${workId}/works_list.xlsx${getRandomNumber()}`
return( return(
<React.Fragment> <React.Fragment>

@ -1,6 +1,6 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import {Button,Layout,Tabs,Icon, Card, Avatar, Row, Col ,Table,Badge} from 'antd'; import {Button,Layout,Tabs,Icon, Card, Avatar, Row, Col ,Table,Badge} from 'antd';
import {markdownToHTML,getImageUrl} from 'educoder'; import {markdownToHTML,getImageUrl,getRandomNumber} from 'educoder';
import axios from 'axios'; import axios from 'axios';
const { Content } = Layout; const { Content } = Layout;
@ -69,7 +69,7 @@ class CompetitionContents extends Component{
const operations = <div> const operations = <div>
<Button className={"fr"} type="primary" ghost onClick={()=>this.props.Competitionedit()}>编辑</Button> <Button className={"fr"} type="primary" ghost onClick={()=>this.props.Competitionedit()}>编辑</Button>
<Button className={"fr mr20"} type="primary" ghost> <Button className={"fr mr20"} type="primary" ghost>
<a onClick={()=>this.derivefun(`/competitions/${this.props.match.params.identifier}/charts.xlsx`)}>导出</a> <a onClick={()=>this.derivefun(`/competitions/${this.props.match.params.identifier}/charts.xlsx?${getRandomNumber(true)}`)}>导出</a>
</Button> </Button>
</div> </div>
const columns = [ const columns = [

@ -1,7 +1,7 @@
import React,{ Component } from "react"; import React,{ Component } from "react";
import {Checkbox,Input,Table, Pagination,Menu,Spin} from "antd"; import {Checkbox,Input,Table, Pagination,Menu,Spin} from "antd";
import {Link,NavLink} from 'react-router-dom'; import {Link,NavLink} from 'react-router-dom';
import { WordsBtn ,ActionBtn,queryString,getRandomcode} from 'educoder'; import { WordsBtn ,getRandomNumber,queryString,getRandomcode} from 'educoder';
import CoursesListType from '../coursesPublic/CoursesListType'; import CoursesListType from '../coursesPublic/CoursesListType';
import '../css/members.css'; import '../css/members.css';
import '../css/busyWork.css'; import '../css/busyWork.css';
@ -177,7 +177,7 @@ class Testpapersettinghomepage extends Component{
} }
console.log("170"); console.log("170");
console.log(params); console.log(params);
const urll=url+`?${queryString.stringify(params)}`; const urll=url+`?${queryString.stringify(params)}${params?"&"+getRandomNumber(true):getRandomNumber(true)}`;
axios.get(urll+ '&export=true').then((response) => { axios.get(urll+ '&export=true').then((response) => {
if(response===undefined){ if(response===undefined){
return return

@ -1,5 +1,5 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import {getRandomNumber,queryString} from 'educoder'; import {getRandomNumber} from 'educoder';
import {Link} from 'react-router-dom'; import {Link} from 'react-router-dom';
import {Tooltip,Menu} from 'antd'; import {Tooltip,Menu} from 'antd';
import Loadable from 'react-loadable'; import Loadable from 'react-loadable';
@ -519,8 +519,8 @@ class GraduationTaskDetail extends Component{
{this.props.isAdmin()? <li className="li_line drop_down fr color-blue font-16 mt20" style={{"paddingLeft":"0px"}}> {this.props.isAdmin()? <li className="li_line drop_down fr color-blue font-16 mt20" style={{"paddingLeft":"0px"}}>
导出<i className="iconfont icon-xiajiantou font-12 ml2"></i> 导出<i className="iconfont icon-xiajiantou font-12 ml2"></i>
<ul className="drop_down_menu" style={{"right":"-34px","left":"unset","height":"auto"}}> <ul className="drop_down_menu" style={{"right":"-34px","left":"unset","height":"auto"}}>
<li><a onClick={()=>this.child.confirmysl("/graduation_tasks/"+task_Id+"/tasks_list.xlsx")} className="color-dark">导出成绩</a></li> <li><a onClick={()=>this.child.confirmysl(`/graduation_tasks/"+task_Id+"/tasks_list.xlsx${getRandomNumber()}`)} className="color-dark">导出成绩</a></li>
<li><a onClick={()=>this.child.confirmysl("/graduation_tasks/"+task_Id+"/tasks_list.zip")} className="color-dark">导出作品附件</a></li> <li><a onClick={()=>this.child.confirmysl(`/graduation_tasks/"+task_Id+"/tasks_list.zip${getRandomNumber()}`)} className="color-dark">导出作品附件</a></li>
</ul> </ul>
</li>:""} </li>:""}
{questionslist.work_status===undefined||questionslist.work_status===null||questionslist.work_status.length===0?"":questionslist.work_status.map((item,key)=>{ {questionslist.work_status===undefined||questionslist.work_status===null||questionslist.work_status.length===0?"":questionslist.work_status.map((item,key)=>{

@ -873,7 +873,7 @@ class GraduationTaskssettingapp extends Component{
confirmysl(url){ confirmysl(url){
debugger; debugger;
console.log(3); console.log(3);
axios.get(url + '?export=true' ).then((response) => { axios.get(url + '&export=true' ).then((response) => {
if(response === undefined){ if(response === undefined){
return return
} }

@ -735,7 +735,7 @@ class GraduationTaskssettinglist extends Component{
b_order:b_order, b_order:b_order,
search:search, search:search,
} }
axios.get(url + '?export=true',{ axios.get(url + '&export=true',{
params params
}).then((response) => { }).then((response) => {
if(response === undefined){ if(response === undefined){

@ -217,7 +217,7 @@ class GraduationTasksquestions extends Component{
confirmysl(url){ confirmysl(url){
debugger; debugger;
console.log(2); console.log(2);
axios.get(url + '?export=true').then((response) => { axios.get(url + '&export=true').then((response) => {
if(response === undefined){ if(response === undefined){
return return
} }

@ -4,7 +4,7 @@ import {Checkbox, Menu, Pagination,Spin} from "antd";
import Titlesearchsection from '../../common/titleSearch/TitleSearchSection' import Titlesearchsection from '../../common/titleSearch/TitleSearchSection'
import DownloadMessageysl from "../../../modals/DownloadMessageysl"; import DownloadMessageysl from "../../../modals/DownloadMessageysl";
import { WordsBtn ,getRandomcode} from 'educoder' import { WordsBtn ,getRandomcode,getRandomNumber} from 'educoder'
import NoneData from '../../coursesPublic/NoneData' import NoneData from '../../coursesPublic/NoneData'
import Modals from "../../../modals/Modals" import Modals from "../../../modals/Modals"
import axios from 'axios' import axios from 'axios'
@ -335,7 +335,7 @@ onBoardsNew=()=>{
} }
/// 确认是否下载 /// 确认是否下载
confirmysl(url){ confirmysl(url){
axios.get(url + '?export=true').then((response) => { axios.get(url + '&export=true').then((response) => {
if(response.data.status&&response.data.status===-1){ if(response.data.status&&response.data.status===-1){
}else if(response.data.status&&response.data.status===-2){ }else if(response.data.status&&response.data.status===-2){
@ -416,7 +416,7 @@ onBoardsNew=()=>{
(<React.Fragment> (<React.Fragment>
{/* 参考普通作业 - 题库选用 */} {/* 参考普通作业 - 题库选用 */}
{/* <WordsBtn style="blue" className="mr30" onClick={()=>this.useFromBank()}>题库选用</WordsBtn> 正式版没有,先隐藏*/} {/* <WordsBtn style="blue" className="mr30" onClick={()=>this.useFromBank()}>题库选用</WordsBtn> 正式版没有,先隐藏*/}
< a className={"fl color-blue mr30 font-16"} onClick={(url)=>this.confirmysl(`/courses/${this.props.match.params.coursesId}/graduation_topics/export.xlsx`)}>导出</a> < a className={"fl color-blue mr30 font-16"} onClick={(url)=>this.confirmysl(`/courses/${this.props.match.params.coursesId}/graduation_topics/export.xlsx?${getRandomNumber(true)}`)}>导出</a>
{/*<p className="fl"><UseBank {...this.props} {...this.state} object_type={"gtopic"} useBankSuccess={this.useBankSuccess}></UseBank></p> 题库选用*/} {/*<p className="fl"><UseBank {...this.props} {...this.state} object_type={"gtopic"} useBankSuccess={this.useBankSuccess}></UseBank></p> 题库选用*/}
<WordsBtn style="blue" className="font-16" onClick={()=>this.onBoardsNew()}>新建</WordsBtn> <WordsBtn style="blue" className="font-16" onClick={()=>this.onBoardsNew()}>新建</WordsBtn>
</React.Fragment>):"" </React.Fragment>):""

@ -1,6 +1,6 @@
import React, {Component} from "react"; import React, {Component} from "react";
import { WordsBtn,on, off, trigger,markdownToHTML,getImageUrl} from 'educoder'; import { WordsBtn,on, off, trigger,markdownToHTML,getRandomNumber} from 'educoder';
import { import {
Button, Button,
Checkbox, Checkbox,
@ -23,7 +23,8 @@ class GroupPackage extends Component {
} }
} }
DownloadOpenPdf=(type,url)=>{ DownloadOpenPdf=(type,url)=>{
type===true?window.open(url):window.location.href=url; let newurl=url+getRandomNumber();
type===true?window.open(newurl):window.location.href=newurl;
} }
componentDidMount() { componentDidMount() {
console.log("Groupjobquesanswer"); console.log("Groupjobquesanswer");

@ -14,7 +14,7 @@ import CourseLayoutcomponent from '../common/CourseLayoutComponent'
import Titlesearchsection from '../common/titleSearch/TitleSearchSection' import Titlesearchsection from '../common/titleSearch/TitleSearchSection'
import ColorCountText from '../common/titleSearch/ColorCountText' import ColorCountText from '../common/titleSearch/ColorCountText'
import { WordsBtn, trigger, on, off, getUrl, downloadFile , sortDirections, NoneData } from 'educoder' import { WordsBtn, trigger, on, off, getUrl, downloadFile , getRandomNumber, NoneData } from 'educoder'
import Modals from "../../modals/Modals"; import Modals from "../../modals/Modals";
import DownloadMessageysl from "../../modals/DownloadMessageysl"; import DownloadMessageysl from "../../modals/DownloadMessageysl";
@ -83,7 +83,7 @@ function CourseGroupList(props) {
} }
const confirmysl = (url) => { const confirmysl = (url) => {
axios.get(url + 'export=true').then((response) => { axios.get(url + '&export=true').then((response) => {
if(response === undefined){ if(response === undefined){
return return
} }
@ -121,9 +121,9 @@ function CourseGroupList(props) {
const course_groups = listRes.course_groups const course_groups = listRes.course_groups
const current_group_id = listRes.current_group_id const current_group_id = listRes.current_group_id
let exportUrl = `/courses/${courseId}/export_member_scores_excel.xlsx?`; //总成绩 let exportUrl = `/courses/${courseId}/export_member_scores_excel.xlsx?${getRandomNumber(true)}`; //总成绩
let exportUrltwo = `/courses/${courseId}/export_couser_info.xlsx?`; //课堂信息 let exportUrltwo = `/courses/${courseId}/export_couser_info.xlsx?${getRandomNumber(true)}`; //课堂信息
let exportUrlthree = `/courses/${courseId}/export_member_act_score.xlsx?`; //活跃度 let exportUrlthree = `/courses/${courseId}/export_member_act_score.xlsx?${getRandomNumber(true)}`; //活跃度
return ( return (
<React.Fragment> <React.Fragment>
<DownloadMessageysl <DownloadMessageysl

@ -7,7 +7,7 @@ import CourseLayoutcomponent from '../common/CourseLayoutComponent'
import Titlesearchsection from '../common/titleSearch/TitleSearchSection' import Titlesearchsection from '../common/titleSearch/TitleSearchSection'
import ColorCountText from '../common/titleSearch/ColorCountText' import ColorCountText from '../common/titleSearch/ColorCountText'
import { WordsBtn, trigger, on, off, getUrl, downloadFile , sortDirections } from 'educoder' import { WordsBtn, trigger, on, off, getUrl, getRandomNumber , sortDirections } from 'educoder'
import Modals from "../../modals/Modals"; import Modals from "../../modals/Modals";
import axios from 'axios' import axios from 'axios'
import _ from 'lodash' import _ from 'lodash'
@ -669,9 +669,9 @@ class studentsList extends Component{
const { course_group_name, invite_code } = this.state; const { course_group_name, invite_code } = this.state;
const courseId = this.props.match.params.coursesId const courseId = this.props.match.params.coursesId
let exportUrl = `/courses/${courseId}/export_member_scores_excel.xlsx?`; //总成绩 let exportUrl = `/courses/${courseId}/export_member_scores_excel.xlsx?${getRandomNumber(true)}`; //总成绩
let exportUrltwo = `/courses/${courseId}/export_couser_info.xlsx?`; //课堂信息 let exportUrltwo = `/courses/${courseId}/export_couser_info.xlsx?${getRandomNumber(true)}`; //课堂信息
let exportUrlthree = `/courses/${courseId}/export_member_act_score.xlsx?`; //活跃度 let exportUrlthree = `/courses/${courseId}/export_member_act_score.xlsx?${getRandomNumber(true)}`; //活跃度
const params = {} const params = {}
if (course_group_id) { if (course_group_id) {
@ -685,7 +685,7 @@ class studentsList extends Component{
} }
let paramsString = '' let paramsString = ''
for (let key in params) { for (let key in params) {
paramsString += `${key}=${params[key]}&` paramsString += `&${key}=${params[key]}&`
} }
exportUrl += paramsString; exportUrl += paramsString;
exportUrltwo+=paramsString; exportUrltwo+=paramsString;

@ -3,7 +3,7 @@ import {Menu} from "antd";
import CoursesListType from '../coursesPublic/CoursesListType'; import CoursesListType from '../coursesPublic/CoursesListType';
import { WordsBtn } from 'educoder' import { WordsBtn,getRandomNumber } from 'educoder'
import PollTabFirst from './PollDetailTabFirst' import PollTabFirst from './PollDetailTabFirst'
import PollTabSecond from './PollDetailTabSecond' import PollTabSecond from './PollDetailTabSecond'
import PollTabThird from './PollDetailTabThird' import PollTabThird from './PollDetailTabThird'
@ -112,7 +112,7 @@ class PollDetailIndex extends Component{
/// 确认是否下载 /// 确认是否下载
confirmysl(url){ confirmysl(url){
axios.get(url + '?export=true' ).then((response) => { axios.get(url + '&export=true' ).then((response) => {
if(response.data.status&&response.data.status===-1){ if(response.data.status&&response.data.status===-1){
}else if(response.data.status&&response.data.status===-2){ }else if(response.data.status&&response.data.status===-2){
@ -239,7 +239,7 @@ class PollDetailIndex extends Component{
</li> </li>
:"" :""
} */} } */}
<a className="fl color-blue font-16" onClick={(url)=>this.confirmysl("/polls/"+this.props.match.params.pollId+"/commit_result.xlsx")} href="javascript:void(0);">导出统计</a> <a className="fl color-blue font-16" onClick={(url)=>this.confirmysl(`/polls/${this.props.match.params.pollId}/commit_result.xlsx?${getRandomNumber(true)}`)} href="javascript:void(0);">导出统计</a>
</span> </span>
} }
{ {

@ -1,6 +1,6 @@
import React, {Component} from "react"; import React, {Component} from "react";
import CoursesListType from '../coursesPublic/CoursesListType'; import CoursesListType from '../coursesPublic/CoursesListType';
import {WordsBtn, publicSearchs, sortDirections} from 'educoder'; import {getRandomNumber, publicSearchs, sortDirections} from 'educoder';
import { import {
Form, Form,
Select, Select,
@ -3383,12 +3383,12 @@ class Listofworksstudentone extends Component {
daochushixunbaogao = () => { daochushixunbaogao = () => {
let url = `/zip/shixun_report?homework_common_id=${this.props.match.params.homeworkid}&work_status=${this.state.course_groupyslstwo === undefined || this.state.course_groupyslstwo === null ? "" : this.state.course_groupyslstwo}&course_group=${this.state.checkedValuesineinfo === undefined || this.state.checkedValuesineinfo === null ? "" : this.state.checkedValuesineinfo}&search=${this.state.searchtext === undefined || this.state.searchtext === null ? "" : this.state.searchtext}` let url = `/zip/shixun_report${getRandomNumber()}homework_common_id=${this.props.match.params.homeworkid}&work_status=${this.state.course_groupyslstwo === undefined || this.state.course_groupyslstwo === null ? "" : this.state.course_groupyslstwo}&course_group=${this.state.checkedValuesineinfo === undefined || this.state.checkedValuesineinfo === null ? "" : this.state.checkedValuesineinfo}&search=${this.state.searchtext === undefined || this.state.searchtext === null ? "" : this.state.searchtext}`
this.confirmysl(url); this.confirmysl(url);
} }
daochuzuoye = () => { daochuzuoye = () => {
let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx?course_group=${this.state.checkedValuesineinfo === undefined || this.state.checkedValuesineinfo === null ? "" : this.state.checkedValuesineinfo}&work_status=${this.state.course_groupyslstwo === undefined || this.state.course_groupyslstwo === null ? "" : this.state.course_groupyslstwo}&search=${this.state.searchtext === undefined || this.state.searchtext === null ? "" : this.state.searchtext}` let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx${getRandomNumber()}course_group=${this.state.checkedValuesineinfo === undefined || this.state.checkedValuesineinfo === null ? "" : this.state.checkedValuesineinfo}&work_status=${this.state.course_groupyslstwo === undefined || this.state.course_groupyslstwo === null ? "" : this.state.course_groupyslstwo}&search=${this.state.searchtext === undefined || this.state.searchtext === null ? "" : this.state.searchtext}`
this.confirmysl(url); this.confirmysl(url);
} }

@ -1,6 +1,6 @@
import React, {Component} from "react"; import React, {Component} from "react";
import CoursesListType from '../coursesPublic/CoursesListType'; import CoursesListType from '../coursesPublic/CoursesListType';
import {WordsBtn, getRandomcode, sortDirections} from 'educoder'; import {getRandomNumber, getRandomcode, sortDirections} from 'educoder';
import ShixunWorkModal from './Shixunworkdetails/ShixunWorkModal'; import ShixunWorkModal from './Shixunworkdetails/ShixunWorkModal';
import HomeworkModal from "../coursesPublic/HomeworkModal"; import HomeworkModal from "../coursesPublic/HomeworkModal";
import OneSelfOrderModal from "../coursesPublic/OneSelfOrderModal"; import OneSelfOrderModal from "../coursesPublic/OneSelfOrderModal";
@ -594,12 +594,12 @@ class ShixunStudentWork extends Component {
} }
daochuzuoye =() =>{ daochuzuoye =() =>{
let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx`; let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx${getRandomNumber()}`;
this.confirmysl(url); this.confirmysl(url);
} }
confirmysl(url){ confirmysl(url){
axios.get(url + '?export=true').then((response) => { axios.get(url + '&export=true').then((response) => {
if(response === undefined){ if(response === undefined){
return return
} }

@ -1,7 +1,7 @@
import React, {Component} from "react"; import React, {Component} from "react";
import CoursesListType from '../coursesPublic/CoursesListType'; import CoursesListType from '../coursesPublic/CoursesListType';
import HomeworkModal from "../coursesPublic/HomeworkModal"; import HomeworkModal from "../coursesPublic/HomeworkModal";
import {WordsBtn, getRandomcode, handleDateString, getImageUrl} from 'educoder'; import {getRandomNumber, getRandomcode, handleDateString, getImageUrl} from 'educoder';
import PollDetailTabForthRules from '../poll/PollDetailTabForthRules'; import PollDetailTabForthRules from '../poll/PollDetailTabForthRules';
import ShixunWorkModal from './Shixunworkdetails/ShixunWorkModal'; import ShixunWorkModal from './Shixunworkdetails/ShixunWorkModal';
import { import {
@ -2252,12 +2252,12 @@ class Trainingjobsetting extends Component {
daochushixunbaogao = () => { daochushixunbaogao = () => {
let url = `/zip/shixun_report?homework_common_id=${this.props.match.params.homeworkid}`; let url = `/zip/shixun_report?homework_common_id=${this.props.match.params.homeworkid}`;
this.confirmysl(url, url + '&export=true'); this.confirmysl(url, url + `&export=true${getRandomNumber(true)}`);
} }
daochuzuoye = () => { daochuzuoye = () => {
let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx`; let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx`;
this.confirmysl(url, url + '?export=true'); this.confirmysl(url, url + `?export=true&${getRandomNumber(true)}`);
} }
confirmysl(url, urlWithExport) { confirmysl(url, urlWithExport) {

@ -1,6 +1,6 @@
import React, {Component} from "react"; import React, {Component} from "react";
import CoursesListType from '../coursesPublic/CoursesListType'; import CoursesListType from '../coursesPublic/CoursesListType';
import {WordsBtn, getRandomcode, markdownToHTML} from 'educoder'; import {getRandomNumber, getRandomcode, markdownToHTML} from 'educoder';
import { import {
Form, Form,
Select, Select,
@ -381,12 +381,12 @@ class Workquestionandanswer extends Component {
daochushixunbaogao=()=>{ daochushixunbaogao=()=>{
let url =`/zip/shixun_report?homework_common_id=${this.props.match.params.homeworkid}`; let url =`/zip/shixun_report?homework_common_id=${this.props.match.params.homeworkid}`;
this.confirmysl(url, url + '&export=true'); this.confirmysl(url, url + `&export=true${getRandomNumber(true)}`);
} }
daochuzuoye =() =>{ daochuzuoye =() =>{
let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx`; let url = `/homework_commons/${this.props.match.params.homeworkid}/works_list.xlsx`;
this.confirmysl(url, url + '?export=true'); this.confirmysl(url, url + `?export=true&${getRandomNumber(true)}`);
} }
confirmysl(url, urlWithExport){ confirmysl(url, urlWithExport){

@ -1,6 +1,7 @@
import React from 'react'; import React from 'react';
import PropTypes from "prop-types"; import PropTypes from "prop-types";
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import {getRandomNumber} from 'educoder';
import { Spin, Button, Input, Divider, Icon, Tooltip, Form, message, Modal } from 'antd'; import { Spin, Button, Input, Divider, Icon, Tooltip, Form, message, Modal } from 'antd';
import axios from 'axios'; import axios from 'axios';
import _ from 'lodash' import _ from 'lodash'
@ -233,7 +234,7 @@ class GraduationRequirement extends React.Component {
<Link to="/forums/3530" target="_blank" className="link ml10">查看详情</Link> <Link to="/forums/3530" target="_blank" className="link ml10">查看详情</Link>
</div> </div>
</div> </div>
<a href={`/api/ec_years/${this.props.yearId}/ec_graduation_requirements.xlsx`} target="_blank" className="ant-btn ant-btn-primary color-white">导出毕业要求</a> <a href={`/api/ec_years/${this.props.yearId}/ec_graduation_requirements.xlsx${getRandomNumber()}`} target="_blank" className="ant-btn ant-btn-primary color-white">导出毕业要求</a>
</div> </div>
<Divider/> <Divider/>

@ -1,7 +1,7 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import classNames from 'classnames' import classNames from 'classnames'
import {getRandomNumber} from 'educoder';
import axios from 'axios'; import axios from 'axios';
import { Table, Divider, Tag, Checkbox, InputNumber, Spin, Icon } from 'antd'; import { Table, Divider, Tag, Checkbox, InputNumber, Spin, Icon } from 'antd';
@ -140,7 +140,7 @@ class RequirementVsObjective extends Component {
</p> </p>
</li> </li>
<a href={`/api/ec_years/${this.props.yearId}/requirement_support_objectives.xlsx`} target="_blank" <a href={`/api/ec_years/${this.props.yearId}/requirement_support_objectives.xlsx${getRandomNumber()}`} target="_blank"
className="ant-btn ant-btn-primary color-white fr mt20">导出矩阵</a> className="ant-btn ant-btn-primary color-white fr mt20">导出矩阵</a>
</ul> </ul>
<div className="padding20-30" style={{ background: '#fff' }}> <div className="padding20-30" style={{ background: '#fff' }}>

@ -1,7 +1,7 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import classNames from 'classnames' import classNames from 'classnames'
import {getRandomNumber} from 'educoder'
import axios from 'axios'; import axios from 'axios';
import { Table, Divider, Tag, Checkbox, InputNumber, Spin, Icon } from 'antd'; import { Table, Divider, Tag, Checkbox, InputNumber, Spin, Icon } from 'antd';
@ -109,7 +109,7 @@ class RequirementVsObjective extends Component {
</p> </p>
</li> </li>
<a href={`/api/ec_years/${this.props.yearId}/subitem_support_standards.xlsx`} target="_blank" <a href={`/api/ec_years/${this.props.yearId}/subitem_support_standards.xlsx${getRandomNumber()}`} target="_blank"
className="ant-btn ant-btn-primary color-white fr mt20">导出矩阵</a> className="ant-btn ant-btn-primary color-white fr mt20">导出矩阵</a>
</ul> </ul>
<div className="padding20-30" style={{ background: '#fff' }}> <div className="padding20-30" style={{ background: '#fff' }}>

@ -2,6 +2,7 @@ import React from 'react';
import PropTypes from "prop-types"; import PropTypes from "prop-types";
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { Spin, Button, Input, Divider, Icon, Tooltip, Form, message } from 'antd'; import { Spin, Button, Input, Divider, Icon, Tooltip, Form, message } from 'antd';
import {getRandomNumber} from 'educoder';
import axios from 'axios'; import axios from 'axios';
import './index.scss'; import './index.scss';
@ -157,7 +158,7 @@ class TrainingObjective extends React.Component {
<Link to="/forums/3529" target="_blank" className="link ml10">查看详情</Link> <Link to="/forums/3529" target="_blank" className="link ml10">查看详情</Link>
</div> </div>
</div> </div>
<a href={`/api/ec_years/${this.props.yearId}/ec_training_objectives.xlsx`} target="_blank" className="ant-btn ant-btn-primary color-white">导出培养目标</a> <a href={`/api/ec_years/${this.props.yearId}/ec_training_objectives.xlsx${getRandomNumber()}`} target="_blank" className="ant-btn ant-btn-primary color-white">导出培养目标</a>
</div> </div>
<Divider/> <Divider/>

@ -1,6 +1,8 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import classNames from 'classnames' import classNames from 'classnames';
import {getRandomNumber} from 'educoder';
import axios from 'axios'; import axios from 'axios';
@ -687,7 +689,7 @@ class GraduatesRequirement extends Component {
<a href="javascript:void(0)" <a href="javascript:void(0)"
class="white-btn edu-orangeback-btn fr mr10" class="white-btn edu-orangeback-btn fr mr10"
href={`/api/ec_years/${this.state.ec_year_id}/reach_evaluation.xlsx`} href={`/api/ec_years/${this.state.ec_year_id}/reach_evaluation.xlsx${getRandomNumber()}`}
>导出</a> >导出</a>
{/* /ec_major_schools/3/academic_years/5/export_reach_requirements_data.xls {/* /ec_major_schools/3/academic_years/5/export_reach_requirements_data.xls
let major_school_id =this.props.match.params.major_school_id; let major_school_id =this.props.match.params.major_school_id;

@ -1,23 +1,13 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import classNames from 'classnames'
import axios from 'axios'; import {getRandomNumber} from 'educoder';
import { TPMIndexHOC } from '../../tpm/TPMIndexHOC';
import { SnackbarHOC } from 'educoder'
import { message,Modal,Spin,Icon} from 'antd';
import 'antd/dist/antd.css'; import 'antd/dist/antd.css';
import EcTitleCourseEvaluations from '../ecTitle/ecTitle'
import '../css/ecCourseSupports.css'; import '../css/ecCourseSupports.css';
import '../css/ecCourseEvaluations.css'; import '../css/ecCourseEvaluations.css';
import { import {
BrowserRouter as Router,
Route, Route,
Switch Switch
} from 'react-router-dom'; } from 'react-router-dom';
@ -223,7 +213,7 @@ class Curriculum extends Component {
titine===5? titine===5?
<span> <span>
<span className={ismanager===false?"none":""} style={{top: "26px"}}> <span className={ismanager===false?"none":""} style={{top: "26px"}}>
<a className="white-btn edu-blueback-btn fr mb10 mr10 mt9" target="_blank" href={`/ec_courses/${ec_course_id}/course_targets.xlsx`}>导出评价详情</a> <a className="white-btn edu-blueback-btn fr mb10 mr10 mt9" target="_blank" href={`/ec_courses/${ec_course_id}/course_targets.xlsx${getRandomNumber()}`}>导出评价详情</a>
</span> </span>
<span className={ismanager===false?"none":"right newrightcalculatebuttons fr mb10 mr20 "} <span className={ismanager===false?"none":"right newrightcalculatebuttons fr mb10 mr20 "}
onClick={()=>this.newrightcalculatebuttonysl(this.child)}>计算</span> onClick={()=>this.newrightcalculatebuttonysl(this.child)}>计算</span>

Loading…
Cancel
Save