+
{
banksMenu &&
{
- return ()
- }
- }>
+ render={
+ (props) => {
+ return ()
+ }
+ }>
diff --git a/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js b/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js
index 3330f9389..2ade4f9c0 100644
--- a/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js
+++ b/public/react/src/modules/courses/graduation/tasks/GraduationTaskDetail.js
@@ -1,10 +1,10 @@
import React, { Component } from 'react';
-import {getRandomNumber} from 'educoder';
-import {Link} from 'react-router-dom';
-import {Tooltip,Menu} from 'antd';
-import Loadable from 'react-loadable';
+import { getRandomNumber } from 'educoder';
+import { Link } from 'react-router-dom';
+import { Tooltip, Menu } from 'antd';
+import { Loadable } from 'educoder';
import Loading from '../../../../Loading';
-import {BrowserRouter as Router,Route,Switch} from 'react-router-dom';
+import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import axios from 'axios';
import OneSelfOrderModal from "../../coursesPublic/OneSelfOrderModal";
import HomeworkModal from "../../coursesPublic/HomeworkModal";
@@ -20,81 +20,81 @@ import Modals from '../../../modals/Modals';
//毕设描述
-const GraduationTasksquestions= Loadable({
+const GraduationTasksquestions = Loadable({
loader: () => import('./GraduationTaskssettingquestions'),
loading: Loading,
})
//毕设任务设置
-const GraduationTaskssetting=Loadable({
+const GraduationTaskssetting = Loadable({
loader: () => import('./GraduationTaskssetting'),
loading: Loading,
})
//毕设任务列表
-const GraduationTaskslist=Loadable({
+const GraduationTaskslist = Loadable({
loader: () => import('./GraduationTaskssettinglist'),
loading: Loading,
})
-class GraduationTaskDetail extends Component{
- constructor(props){
+class GraduationTaskDetail extends Component {
+ constructor(props) {
super(props);
- this.state={
- modalname:undefined,
- visible:false,
- Topval:undefined,
- starttime:undefined,
- starttimes:undefined,
- typs:undefined,
- endtime:undefined,
- Cancelname:undefined,
- Savesname:undefined,
- Cancel:undefined,
- Saves:undefined,
- Topvalright:undefined,
- Botvalleft:undefined,
- course_groupslist:undefined,
- course_groups:undefined,
- questionslist:undefined,
- tab:"list",
- visibles:undefined,
- Modalstype:undefined,
- Modalstopval:undefined,
- ModalCancel:undefined,
- ModalSave:undefined,
- acrossVisible:undefined,
- OneSelftype:false,
- taskdatas:undefined
+ this.state = {
+ modalname: undefined,
+ visible: false,
+ Topval: undefined,
+ starttime: undefined,
+ starttimes: undefined,
+ typs: undefined,
+ endtime: undefined,
+ Cancelname: undefined,
+ Savesname: undefined,
+ Cancel: undefined,
+ Saves: undefined,
+ Topvalright: undefined,
+ Botvalleft: undefined,
+ course_groupslist: undefined,
+ course_groups: undefined,
+ questionslist: undefined,
+ tab: "list",
+ visibles: undefined,
+ Modalstype: undefined,
+ Modalstopval: undefined,
+ ModalCancel: undefined,
+ ModalSave: undefined,
+ acrossVisible: undefined,
+ OneSelftype: false,
+ taskdatas: undefined
}
}
- componentDidMount(){
+ componentDidMount() {
this.getdatas()
}
- getdatas=()=>{
+ getdatas = () => {
const task_Id = this.props.match.params.task_Id;
- let url="/graduation_tasks/"+task_Id+".json";
+ let url = "/graduation_tasks/" + task_Id + ".json";
- axios.get(url).then((result)=>{
- if(result.status===200){
+ axios.get(url).then((result) => {
+ if (result.status === 200) {
this.setState({
- questionslist:result.data
+ questionslist: result.data
})
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error)
})
}
// 交叉评阅设置弹框
- openAcross=()=>{
+ openAcross = () => {
this.setState({
- acrossVisible:true
+ acrossVisible: true
})
}
- closeAcross=()=>{
+ closeAcross = () => {
this.setState({
- acrossVisible:false
+ acrossVisible: false
})
this.getdatas()
}
@@ -102,7 +102,7 @@ class GraduationTaskDetail extends Component{
//返回
- goback=()=>{
+ goback = () => {
// let courseId=this.props.match.params.coursesId;
// let category_id=this.props.match.params.category_id;
// window.location.href="/courses/"+courseId+"/graduation_tasks/"+category_id;
@@ -117,48 +117,48 @@ class GraduationTaskDetail extends Component{
this.props.history.replace(`/courses/${this.state.questionslist.course_id}/graduation_tasks/${this.state.questionslist.graduation_id}`);
}
- setend_time=(time)=>{
+ setend_time = (time) => {
this.setState({
- starttimesend:time===undefined||time===null||time===""?undefined:time,
+ starttimesend: time === undefined || time === null || time === "" ? undefined : time,
})
}
//立即发布
- publish=()=>{
- let {questionslist}=this.state;
- let starttime= this.props.getNowFormatDates(1,1);
- let endtime=this.props.getNowFormatDates(2,1);
- console.log(this.bindRef.end_time)
+ publish = () => {
+ let { questionslist } = this.state;
+ let starttime = this.props.getNowFormatDates(1, 1);
+ let endtime = this.props.getNowFormatDates(2, 1);
+ console.log(this.bindRef.end_time)
this.setState({
- modalname:"立即发布",
+ modalname: "立即发布",
// visible:true,
- OneSelftype:true,
- Topval:"学生将立即收到毕设任务",
+ OneSelftype: true,
+ Topval: "学生将立即收到毕设任务",
// Botvalleft:"点击修改",
// Botval:`本操作只对"未发布"的分班有效`,
- starttime:moment(moment(new Date())).format("YYYY-MM-DD HH:mm") ,
- starttimes:questionslist.end_time,
- staytime:this.props.getNowFormatDates(1),
- typs:"start",
- endtime:endtime,
- Cancelname:"暂不发布",
- Savesname:"立即发布",
- Cancel:this.cancelmodel,
- Saves:this.homepublish,
+ starttime: moment(moment(new Date())).format("YYYY-MM-DD HH:mm"),
+ starttimes: questionslist.end_time,
+ staytime: this.props.getNowFormatDates(1),
+ typs: "start",
+ endtime: endtime,
+ Cancelname: "暂不发布",
+ Savesname: "立即发布",
+ Cancel: this.cancelmodel,
+ Saves: this.homepublish,
})
}
// 确定立即发布
- homepublish=(ids,endtime)=>{
+ homepublish = (ids, endtime) => {
this.cancelmodel();
- let task_Id=this.props.match.params.task_Id;
+ let task_Id = this.props.match.params.task_Id;
const cid = this.props.match.params.coursesId;
// let url = `/courses/${cid}/graduation_tasks/publish_task.json`;
- let url="/courses/"+cid+"/graduation_tasks/publish_task.json"
- axios.post(url,{
- task_ids:[task_Id],
+ let url = "/courses/" + cid + "/graduation_tasks/publish_task.json"
+ axios.post(url, {
+ task_ids: [task_Id],
group_ids: this.state.course_groupslist,
- end_time:endtime,
- }).then((response)=>{
+ end_time: endtime,
+ }).then((response) => {
if (response.data.status == 0) {
this.getdatas()
this.props.showNotification(response.data.message);
@@ -167,45 +167,45 @@ class GraduationTaskDetail extends Component{
// Modalstopval:response.data.message,
// ModalSave:this.cancelmodel,
// Loadtype:true,
- course_groupslist:[],
- checkAllValue:false
+ course_groupslist: [],
+ checkAllValue: false
})
}
- }).catch((error)=>{
+ }).catch((error) => {
})
}
// 刷新
- resetList=()=>{
+ resetList = () => {
this.getdatas();
this.child && this.child.searchValue();
}
// 立即截止
- end=()=>{
+ end = () => {
// this.homeworkstart()
this.setState({
- modalname:"立即截止",
- visible:true,
- Topval:"学生将不能再提交作品",
+ modalname: "立即截止",
+ visible: true,
+ Topval: "学生将不能再提交作品",
// Botvalleft:"暂不截止",
// Botval:`本操作只对"提交中"的作业有效`,
- Cancelname:"暂不截止",
- Savesname:"立即截止",
- Cancel:this.cancelmodel,
- Saves:this.coursetaskend,
- typs:"end",
+ Cancelname: "暂不截止",
+ Savesname: "立即截止",
+ Cancel: this.cancelmodel,
+ Saves: this.coursetaskend,
+ typs: "end",
})
}
- coursetaskend=()=>{
+ coursetaskend = () => {
const coursesId = this.props.match.params.coursesId;
const task_Id = this.props.match.params.task_Id;
let url = `/courses/${coursesId}/graduation_tasks/end_task.json`;
- axios.post(url,{
- task_ids:[task_Id],
+ axios.post(url, {
+ task_ids: [task_Id],
group_ids: this.state.course_groupslist,
- }).then((response)=>{
+ }).then((response) => {
if (response.data.status == 0) {
this.props.showNotification(response.data.message);
this.cancelmodel();
@@ -213,88 +213,88 @@ class GraduationTaskDetail extends Component{
this.child && this.child.reInit();
}
- }).catch((error)=>{
+ }).catch((error) => {
})
}
// 取消
- cancelmodel=()=>{
+ cancelmodel = () => {
this.setState({
- Modalstype:false,
- Loadtype:false,
- visible:false,
- OneSelftype:false,
- Modulationtype:false,
- Allocationtype:false,
- Modalstopval:"",
- ModalCancel:"",
- ModalSave:"",
+ Modalstype: false,
+ Loadtype: false,
+ visible: false,
+ OneSelftype: false,
+ Modulationtype: false,
+ Allocationtype: false,
+ Modalstopval: "",
+ ModalCancel: "",
+ ModalSave: "",
})
}
- getcourse_groupslist=(id)=>{
+ getcourse_groupslist = (id) => {
this.setState({
- course_groupslist:id
+ course_groupslist: id
})
}
- setTab = (tab) =>{
+ setTab = (tab) => {
this.setState({
tab
})
}
// 关联项目
- AssociationItems=()=>{
+ AssociationItems = () => {
this.setState({
- visibles:true
+ visibles: true
})
}
- Cancel=()=>{
+ Cancel = () => {
this.setState({
- visibles:false
+ visibles: false
})
}
// 取消关联
- cannelAssociation=()=>{
+ cannelAssociation = () => {
this.setState({
- Modalstype:true,
- Modalstopval:"确定要取消该项目关联?",
- ModalCancel:this.cannerassocition,
- ModalSave:this.savetassociton
+ Modalstype: true,
+ Modalstopval: "确定要取消该项目关联?",
+ ModalCancel: this.cannerassocition,
+ ModalSave: this.savetassociton
})
}
- savetassociton=()=>{
+ savetassociton = () => {
this.cannerassocition();
- let {questionslist}=this.state;
- let url = "/graduation_tasks/"+questionslist.task_id+"/graduation_works/cancel_relate_project.json";
+ let { questionslist } = this.state;
+ let url = "/graduation_tasks/" + questionslist.task_id + "/graduation_works/cancel_relate_project.json";
console.log(url)
- axios.get(url).then((result)=>{
- if(result.data.status===0){
+ axios.get(url).then((result) => {
+ if (result.data.status === 0) {
this.resetList();
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error)
})
}
- cannerassocition=()=>{
+ cannerassocition = () => {
this.setState({
- Modalstype:false,
- Modalstopval:"",
- ModalCancel:"",
- ModalSave:"",
- loadtype:false,
- visibles:false
+ Modalstype: false,
+ Modalstopval: "",
+ ModalCancel: "",
+ ModalSave: "",
+ loadtype: false,
+ visibles: false
})
}
// 补交附件
- handaccessory=()=>{
+ handaccessory = () => {
// let {taskslistdata}=this.state;
// let courseId=this.props.match.params.coursesId;
//
@@ -302,55 +302,55 @@ class GraduationTaskDetail extends Component{
//
// window.location.href=url;
this.setState({
- avisible:true
+ avisible: true
})
}
- Cancelvisible=()=>{
+ Cancelvisible = () => {
this.setState({
- avisible:false
+ avisible: false
})
}
- CodeReview=()=>{
- let newgetRandomNumber=getRandomNumber(true);
+ CodeReview = () => {
+ let newgetRandomNumber = getRandomNumber(true);
console.log(newgetRandomNumber)
this.props.showNotification("正在导出中...");
- if(newgetRandomNumber){
- 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+"&"}${newgetRandomNumber}`)
+ if (newgetRandomNumber) {
+ 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 + "&"}${newgetRandomNumber}`)
}
}
- 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
+ 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
+ taskdatas: data
})
}
- bindRef = ref => { this.child = ref } ;
+ bindRef = ref => { this.child = ref };
- render(){
+ render() {
- let courseId=this.props.match.params.coursesId;
- let category_id=this.props.match.params.category_id;
- let task_Id=this.props.match.params.task_Id;
+ let courseId = this.props.match.params.coursesId;
+ let category_id = this.props.match.params.category_id;
+ let task_Id = this.props.match.params.task_Id;
let {
- questionslist ,
- tab ,
- visibles ,
+ questionslist,
+ tab,
+ visibles,
Modalstype,
Modalstopval,
ModalCancel,
@@ -359,12 +359,12 @@ class GraduationTaskDetail extends Component{
} = this.state
const commom = {
- setTab:this.setTab,
- getdatas:this.getdatas
+ setTab: this.setTab,
+ getdatas: this.getdatas
}
- return(
+ return (
{
questionslist &&
@@ -388,7 +388,7 @@ class GraduationTaskDetail extends Component{
modaltype={this.state.modaltype}
getcourse_groupslist={(id) => this.getcourse_groupslist(id)}
/>
- {this.state.OneSelftype==true?
:""}
+ /> : ""}
{/*关联项目*/}
- {visibles===true?
+ {visibles === true ?
this.Cancel()}
- taskid={ questionslist && questionslist.task_id }
+ Cancel={() => this.Cancel()}
+ taskid={questionslist && questionslist.task_id}
funlist={this.resetList}
/>
- :""}
+ : ""}
- {this.state.avisible===true?:""}
+ /> : ""}
{/*提示*/}
}
@@ -481,16 +481,16 @@ class GraduationTaskDetail extends Component{
-
任务列表
-
毕设描述
-
设置
+
任务列表
+
毕设描述
+
设置
{/*
导出成绩*/}
{/*{this.props.isAdmin()?
导出成绩:""}*/}
{/*{this.props.isAdmin()?
导出作品附件:""}*/}
- {this.props.isAdmin()?
+ {this.props.isAdmin() ?
导出
- :""}
- {questionslist.work_status===undefined||questionslist.work_status===null||questionslist.work_status.length===0?"":questionslist.work_status.map((item,key)=>{
- return(
+ : ""}
+ {questionslist.work_status === undefined || questionslist.work_status === null || questionslist.work_status.length === 0 ? "" : questionslist.work_status.map((item, key) => {
+ return (
- {item==="提交作品"?提交作品:""}
- {item==="补交作品"?补交作品:""}
- {item==="修改作品"?修改作品:""}
- {item==="查看作品"?查看作品 :""}
- {item==="创建项目"?创建项目:""}
- {item==="关联项目"?关联项目:""}
- {item==="取消关联"?取消关联:""}
- {item==="补交附件"?补交附件:""}
-
+ {item === "提交作品" ?
提交作品 : ""}
+ {item === "补交作品" ?
补交作品 : ""}
+ {item === "修改作品" ?
修改作品 : ""}
+ {item === "查看作品" ?
查看作品 : ""}
+ {item === "创建项目" ?
创建项目 : ""}
+ {item === "关联项目" ?
关联项目 : ""}
+ {item === "取消关联" ?
取消关联 : ""}
+ {item === "补交附件" ?
补交附件 : ""}
+
)
})}
{/*
项目在线质量检测*/}
- { this.props.isAdmin() ? questionslist.status===1 ?
{ this.end()} }>立即截止 : "" : "" }
- { 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.props.isAdmin() ? questionslist.status === 1 ?
{ this.end() }}>立即截止 : "" : ""}
+ {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.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`}/>)
- }
+ render={
+ (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`} />)
+ }
>
(this.setend_time(time)} tab={`setting`}/>)
- }
+ render={
+ (props) => ( this.setend_time(time)} tab={`setting`} />)
+ }
>
(this.setend_time(time)} tab={`questions`}/>)
- }>
+ render={
+ (props) => ( this.setend_time(time)} tab={`questions`} />)
+ }>
@@ -579,4 +579,4 @@ class GraduationTaskDetail extends Component{
}
}
// CNotificationHOC() ( SnackbarHOC() ( TPMIndexHOC))
-export default (GraduationTaskDetail) ;
\ No newline at end of file
+export default (GraduationTaskDetail);
\ No newline at end of file
diff --git a/public/react/src/modules/courses/groupjobbank/GroupjobbankPage.js b/public/react/src/modules/courses/groupjobbank/GroupjobbankPage.js
index 873c4c1e6..881049803 100644
--- a/public/react/src/modules/courses/groupjobbank/GroupjobbankPage.js
+++ b/public/react/src/modules/courses/groupjobbank/GroupjobbankPage.js
@@ -1,10 +1,10 @@
-import React, {Component} from "react";
-import {BrowserRouter as Router,Route,Switch,Link, NavLin} from 'react-router-dom';
-import {WordsBtn, ActionBtn,getImageUrl} from 'educoder';
-import { Input,Checkbox,Table, Pagination, Modal,Menu, Tooltip,Spin,Button,Form } from "antd";
+import React, { Component } from "react";
+import { BrowserRouter as Router, Route, Switch, Link, NavLin } from 'react-router-dom';
+import { WordsBtn, ActionBtn, getImageUrl } from 'educoder';
+import { Input, Checkbox, Table, Pagination, Modal, Menu, Tooltip, Spin, Button, Form } from "antd";
import axios from 'axios';
import BanksMenu from '../../user/usersInfo/banks/banksMenu'
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../../Loading';
import '../css/members.css';
import "../common/formCommon.css";
@@ -28,11 +28,11 @@ class GroupjobbankPage extends Component {
// this.answerMdRef = React.createRef();
this.state = {
tab: ["0"],
- workid:1,
- isSpin:false,
- datas:[],
- visible:false,
- banksMenu:undefined
+ workid: 1,
+ isSpin: false,
+ datas: [],
+ visible: false,
+ banksMenu: undefined
}
}
@@ -41,82 +41,82 @@ class GroupjobbankPage extends Component {
}
- getonedata=()=>{
- if( this.props.match.params.workid){
+ getonedata = () => {
+ if (this.props.match.params.workid) {
this.setState({
- workid: this.props.match.params.workid,
+ workid: this.props.match.params.workid,
})
}
this.getdata(this.props.match.params.workid);
};
//获取数据的地方
- getdata=(workid)=>{
- var workids= workid;
- if(workids){
+ getdata = (workid) => {
+ var workids = workid;
+ if (workids) {
- }else{
- workids=this.state.workid;
+ } else {
+ workids = this.state.workid;
}
this.setState({
- isSpin:true,
+ isSpin: true,
})
let url = `/homework_banks/${workids}.json`;
//
axios.get(url).then((response) => {
- if(response){
- if(response.data){
+ if (response) {
+ if (response.data) {
this.setState({
- datas:response.data,
+ datas: response.data,
})
try {
- const crumbData={
- title:response && response.data && response.data.name,
- is_public:response && response.data && response.data.is_public,
- crumbArray:[
- {content:'详情'}
+ const crumbData = {
+ title: response && response.data && response.data.name,
+ is_public: response && response.data && response.data.is_public,
+ crumbArray: [
+ { content: '详情' }
]
};
- const menuData={
- tab:'0',//tab选中的index
- menuArray:[//tab以及tab路由
- {to:`/banks/group/${workids}/${this.props.match.params.type}?tab=0`,content:'内容详情'},
- {to:`/banks/group/${workids}/${this.props.match.params.type}/answer?tab=1`,content:'参考答案'}
+ const menuData = {
+ tab: '0',//tab选中的index
+ menuArray: [//tab以及tab路由
+ { to: `/banks/group/${workids}/${this.props.match.params.type}?tab=0`, content: '内容详情' },
+ { to: `/banks/group/${workids}/${this.props.match.params.type}/answer?tab=1`, content: '参考答案' }
],
- category:'group',//毕设选题
- tos:`/banks/group/${workids}/edit/${this.props.match.params.type}?tab=0`,
- id:workids,
- is_public:response && response.data && response.data.is_public,
- type:this.props.match.params.type,
- authorize:response && response.data && response.data.authorize,
+ category: 'group',//毕设选题
+ tos: `/banks/group/${workids}/edit/${this.props.match.params.type}?tab=0`,
+ id: workids,
+ is_public: response && response.data && response.data.is_public,
+ type: this.props.match.params.type,
+ authorize: response && response.data && response.data.authorize,
}
this.setState({
- banksMenu:menuData
+ banksMenu: menuData
})
- this.props.initPublic(crumbData,response.data);
- }catch (e) {
+ this.props.initPublic(crumbData, response.data);
+ } catch (e) {
}
- }else {
+ } else {
this.setState({
- datas:[],
+ datas: [],
})
}
- }else {
+ } else {
this.setState({
- datas:[],
+ datas: [],
})
}
this.setState({
- isSpin:false,
+ isSpin: false,
})
}).catch((error) => {
console.log(error)
this.setState({
- datas:[],
- isSpin:false,
+ datas: [],
+ isSpin: false,
})
});
};
@@ -128,41 +128,41 @@ class GroupjobbankPage extends Component {
// }
render() {
- let {tab,datas,visible} = this.state;
+ let { tab, datas, visible } = this.state;
- let{
+ let {
banksMenu
- }=this.state
+ } = this.state
//
// const common={
// initPublic:this.initPublic,
// }
return (
-
- {
- banksMenu &&
-
- }
-
- {
- return ()
- }
- }>
- {
- return ()
- }
- }>
-
-
+
+ {
+ banksMenu &&
+
+ }
+
+ {
+ return ()
+ }
+ }>
+ {
+ return ()
+ }
+ }>
+
+
)
}
diff --git a/public/react/src/modules/courses/polldepoly/Index.js b/public/react/src/modules/courses/polldepoly/Index.js
index 7aea0c429..d75429366 100644
--- a/public/react/src/modules/courses/polldepoly/Index.js
+++ b/public/react/src/modules/courses/polldepoly/Index.js
@@ -1,7 +1,7 @@
import React, { Component } from 'react';
import { SnackbarHOC } from 'educoder';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../../Loading';
import TPMIndexHOC from '../../tpm/TPMIndexHOC';
diff --git a/public/react/src/modules/courses/questionbank/Generaljobbankdetails.js b/public/react/src/modules/courses/questionbank/Generaljobbankdetails.js
index 7aef5f743..7f3b95fc7 100644
--- a/public/react/src/modules/courses/questionbank/Generaljobbankdetails.js
+++ b/public/react/src/modules/courses/questionbank/Generaljobbankdetails.js
@@ -1,10 +1,10 @@
-import React, {Component} from "react";
-import {BrowserRouter as Router,Route,Switch,Link, NavLin} from 'react-router-dom';
-import {WordsBtn, ActionBtn,getImageUrl} from 'educoder';
-import { Input,Checkbox,Table, Pagination, Modal,Menu, Tooltip,Spin,Button,Form } from "antd";
+import React, { Component } from "react";
+import { BrowserRouter as Router, Route, Switch, Link, NavLin } from 'react-router-dom';
+import { WordsBtn, ActionBtn, getImageUrl } from 'educoder';
+import { Input, Checkbox, Table, Pagination, Modal, Menu, Tooltip, Spin, Button, Form } from "antd";
import axios from 'axios';
import BanksMenu from '../../user/usersInfo/banks/banksMenu'
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../../Loading';
import '../css/members.css';
import "../common/formCommon.css";
@@ -22,102 +22,102 @@ const Generaljobanswer = Loadable({
loading: Loading,
});
class Generaljobbankdetails extends Component {
- //普通作业内容详情
+ //普通作业内容详情
constructor(props) {
super(props);
// this.answerMdRef = React.createRef();
this.state = {
tab: ["0"],
- workid:1,
- isSpin:false,
- datas:[],
- visible:false,
- banksMenu:undefined
+ workid: 1,
+ isSpin: false,
+ datas: [],
+ visible: false,
+ banksMenu: undefined
}
}
componentDidMount() {
- this.getonedata();
+ this.getonedata();
}
- getonedata=()=>{
- if( this.props.match.params.workid){
+ getonedata = () => {
+ if (this.props.match.params.workid) {
this.setState({
- workid: this.props.match.params.workid,
+ workid: this.props.match.params.workid,
})
}
this.getdata(this.props.match.params.workid);
};
//获取数据的地方
- getdata=(workid)=>{
- var workids= workid;
- if(workids){
+ getdata = (workid) => {
+ var workids = workid;
+ if (workids) {
- }else{
- workids=this.state.workid;
+ } else {
+ workids = this.state.workid;
}
this.setState({
- isSpin:true,
+ isSpin: true,
})
let url = `/homework_banks/${workids}.json`;
//
axios.get(url).then((response) => {
- if(response){
- if(response.data){
+ if (response) {
+ if (response.data) {
this.setState({
- datas:response.data,
+ datas: response.data,
})
try {
- const crumbData={
- title:response && response.data && response.data.name,
- is_public:response && response.data && response.data.is_public,
- crumbArray:[
- {content:'详情'}
+ const crumbData = {
+ title: response && response.data && response.data.name,
+ is_public: response && response.data && response.data.is_public,
+ crumbArray: [
+ { content: '详情' }
]
};
- const menuData={
- tab:'0',//tab选中的index
- menuArray:[//tab以及tab路由
- {to:`/banks/normal/${workids}/${this.props.match.params.type}?tab=0`,content:'内容详情'},
- {to:`/banks/normal/${workids}/${this.props.match.params.type}/answer?tab=1`,content:'参考答案'}
+ const menuData = {
+ tab: '0',//tab选中的index
+ menuArray: [//tab以及tab路由
+ { to: `/banks/normal/${workids}/${this.props.match.params.type}?tab=0`, content: '内容详情' },
+ { to: `/banks/normal/${workids}/${this.props.match.params.type}/answer?tab=1`, content: '参考答案' }
],
- category:'normal',//毕设选题
- tos:`/banks/normal/${workids}/edit/${this.props.match.params.type}?tab=0`,
- id:workids,
- is_public:response && response.data && response.data.is_public,
- type:this.props.match.params.type,
- authorize:response && response.data && response.data.authorize,
+ category: 'normal',//毕设选题
+ tos: `/banks/normal/${workids}/edit/${this.props.match.params.type}?tab=0`,
+ id: workids,
+ is_public: response && response.data && response.data.is_public,
+ type: this.props.match.params.type,
+ authorize: response && response.data && response.data.authorize,
}
this.setState({
- banksMenu:menuData
- })
- this.props.initPublic(crumbData,response.data);
- }catch (e) {
+ banksMenu: menuData
+ })
+ this.props.initPublic(crumbData, response.data);
+ } catch (e) {
}
- }else {
+ } else {
this.setState({
- datas:[],
+ datas: [],
})
}
- }else {
+ } else {
this.setState({
- datas:[],
+ datas: [],
})
}
this.setState({
- isSpin:false,
+ isSpin: false,
})
}).catch((error) => {
console.log(error)
this.setState({
- datas:[],
- isSpin:false,
+ datas: [],
+ isSpin: false,
})
});
};
@@ -129,40 +129,40 @@ class Generaljobbankdetails extends Component {
// }
render() {
- let {tab,datas,visible} = this.state;
+ let { tab, datas, visible } = this.state;
- let{
+ let {
banksMenu
- }=this.state
+ } = this.state
return (
-
-
- {
- banksMenu &&
-
- }
-
- {
- return ()
- }
- }>
- {
- return ()
- }
- }>
+
+
+ {
+ banksMenu &&
+
+ }
+
+ {
+ return ()
+ }
+ }>
+ {
+ return ()
+ }
+ }>
-
-
-
+
+
+
)
}
}
diff --git a/public/react/src/modules/courses/studentWork/CommitSummaryIndex.js b/public/react/src/modules/courses/studentWork/CommitSummaryIndex.js
index 3dd371d7a..c8d0f6c74 100644
--- a/public/react/src/modules/courses/studentWork/CommitSummaryIndex.js
+++ b/public/react/src/modules/courses/studentWork/CommitSummaryIndex.js
@@ -1,7 +1,7 @@
import React, { Component } from 'react';
import { SnackbarHOC } from 'educoder';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../../Loading';
import TPMIndexHOC from '../../tpm/TPMIndexHOC';
diff --git a/public/react/src/modules/ecs/EcSetting/index.js b/public/react/src/modules/ecs/EcSetting/index.js
index 1a96aa4d1..c572e62f4 100644
--- a/public/react/src/modules/ecs/EcSetting/index.js
+++ b/public/react/src/modules/ecs/EcSetting/index.js
@@ -6,7 +6,7 @@ import axios from 'axios';
import './index.less';
import CustomLoadable from "../../../CustomLoadable";
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from "../../../Loading";
const { Step } = Steps;
const steps = ["培养目标", "毕业要求", "培养目标VS毕业要求", "毕业要求VS通用标准", "学生", "课程体系", "课程体系VS毕业要求", "达成度评价结果"];
diff --git a/public/react/src/modules/ecs/curriculum/Curriculum.js b/public/react/src/modules/ecs/curriculum/Curriculum.js
index 7d7504074..7d681af8d 100644
--- a/public/react/src/modules/ecs/curriculum/Curriculum.js
+++ b/public/react/src/modules/ecs/curriculum/Curriculum.js
@@ -1,6 +1,6 @@
import React, { Component } from 'react';
-import {getRandomNumber} from 'educoder';
+import { getRandomNumber } from 'educoder';
import 'antd/dist/antd.css';
@@ -11,22 +11,22 @@ import {
Route,
Switch
} from 'react-router-dom';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from "../../../Loading";
const $ = window.$;
const Curriculumtwo = Loadable({
loader: () => import('./Curriculumtwo'),
loading: Loading,
})
-const EcCourseEvaluationsbottom =Loadable({
+const EcCourseEvaluationsbottom = Loadable({
loader: () => import('../subroute/ecCourseEvaluations/EcCourseEvaluationsbottom'),
loading: Loading,
});
-const EcCompletionCalculation =Loadable({
+const EcCompletionCalculation = Loadable({
loader: () => import('../subroute/ecCompletion_calculation/EcCompletionCalculation'),
loading: Loading,
});
-const EcCourseSupportSetting =Loadable({
+const EcCourseSupportSetting = Loadable({
loader: () => import('../subroute/ecCourseSupportSetting/index'),
loading: Loading,
});
@@ -35,24 +35,24 @@ class Curriculum extends Component {
//课程体系
constructor(props) {
super(props)
- this.state= {
- classcalue:5,
- newec_course_idbottom:"",
- course_name:undefined,
- course_url:"a",
- ecmanager:true,
- titine:1,
- }
+ this.state = {
+ classcalue: 5,
+ newec_course_idbottom: "",
+ course_name: undefined,
+ course_url: "a",
+ ecmanager: true,
+ titine: 1,
}
+ }
- componentWillMount(){
+ componentWillMount() {
// window.document.title = '课程达成评价结果';
}
- componentDidMount(){
+ componentDidMount() {
console.log("Curriculum");
console.log(this.props);
}
- sync_course_data=()=>{
+ sync_course_data = () => {
// this.setState({listSpin:true})
// let ec_course_id=this.props.match.params.ec_course_id;
// let Url ='/ec_course_achievement_methods/sync_course_data';
@@ -90,167 +90,169 @@ class Curriculum extends Component {
// console.log("调用了子对象1");
this.child = ref
};
- newrightcalculatebuttonysl=(child)=>{
+ newrightcalculatebuttonysl = (child) => {
// console.log("调用了子对象2");
// console.log(child);
child.newrightcalculatebutton();
}
- onAclick=(i)=>{
+ onAclick = (i) => {
console.log("onAclick");
console.log(i);
- if(i===1){
- this.props.history.push(this.props.match.url+"/ec_course_support_setting/1");
- }else if(i===2){
- this.props.history.push(this.props.match.url+"/ec_course_reach_setting/2");
- }else if(i===3){
- this.props.history.push(this.props.match.url+"/score_level/3");
- }else if(i===4){
- this.props.history.push(this.props.match.url+"/evaluation_methods/4");
- }else{
- this.props.history.push(this.props.match.url+"/competition_calculation_info/5");
+ if (i === 1) {
+ this.props.history.push(this.props.match.url + "/ec_course_support_setting/1");
+ } else if (i === 2) {
+ this.props.history.push(this.props.match.url + "/ec_course_reach_setting/2");
+ } else if (i === 3) {
+ this.props.history.push(this.props.match.url + "/score_level/3");
+ } else if (i === 4) {
+ this.props.history.push(this.props.match.url + "/evaluation_methods/4");
+ } else {
+ this.props.history.push(this.props.match.url + "/competition_calculation_info/5");
}
this.setState({
- titine:i,
+ titine: i,
})
};
- Ontitine=(s)=>{
+ Ontitine = (s) => {
console.log("CurriculumCurriculum");
console.log(s);
- if(s==="ec_course_support_setting"){
+ if (s === "ec_course_support_setting") {
this.setState({
- titine:1,
+ titine: 1,
})
- }else if(s==="ec_course_reach_setting"){
+ } else if (s === "ec_course_reach_setting") {
this.setState({
- titine:2,
+ titine: 2,
})
- }else if(s==="score_level"){
+ } else if (s === "score_level") {
this.setState({
- titine:3,
+ titine: 3,
})
- }else if(s==="evaluation_methods"){
+ } else if (s === "evaluation_methods") {
this.setState({
- titine:4,
+ titine: 4,
})
- }else if(s==="competition_calculation_info"){
+ } else if (s === "competition_calculation_info") {
this.setState({
- titine:5,
+ titine: 5,
})
}
};
- associatedclass=()=>{
+ associatedclass = () => {
};
- deleteassociatedclass=()=>{
+ deleteassociatedclass = () => {
}
render() {
- let {newec_course_idbottom,titine,classcalue,course_name,course_url,ecmanager,Spintype,calculatesetype,ec_course_id,course_total_scoreaverage,ec_course_targets_count,schooldata,ecComponentState,course_total_score,total_rate_data,ec_course_targets,graduation_list,target_list,target_score,evaluate_result,morelisttype,titlemessage,completiontype,completionlist,ismanager} = this.state;
- // console.log("Curriculum");
- // console.log(this.props);
+ let { newec_course_idbottom, titine, classcalue, course_name, course_url, ecmanager, Spintype, calculatesetype, ec_course_id, course_total_scoreaverage, ec_course_targets_count, schooldata, ecComponentState, course_total_score, total_rate_data, ec_course_targets, graduation_list, target_list, target_score, evaluate_result, morelisttype, titlemessage, completiontype, completionlist, ismanager } = this.state;
+ // console.log("Curriculum");
+ // console.log(this.props);
// console.log(titine);
return (
-
-
+
+
-
+
-
+
+ {/*Curriculumtwo 测试用*/}
+ {/*课程目标*/}
+ ( this.Ontitine(i)} />)}>
+ {/*课程考核方式与数据来源*/}
+ ( this.Ontitine(i)} />)}>
+ {/*成绩等级设置*/}
+ ( this.Ontitine(i)} />)}>
+ {/*4课程目标评价方法*/}
+ ( this.Ontitine(i)} />)}>
+ {/*5课程达成评价结果*/}
+ ( this.Ontitine(i)} triggerRef={this.bindRef} />)}>
+
-
- {/*Curriculumtwo 测试用*/}
- {/*课程目标*/}
- (this.Ontitine(i)} />) }>
- {/*课程考核方式与数据来源*/}
- (this.Ontitine(i)}/>) }>
- {/*成绩等级设置*/}
- (this.Ontitine(i)}/>) }>
- {/*4课程目标评价方法*/ }
- (this.Ontitine(i)}/>) }>
- {/*5课程达成评价结果*/}
- (this.Ontitine(i)} triggerRef={this.bindRef}/>) }>
-
-
)
}
diff --git a/public/react/src/modules/message/js/Messagerouting.js b/public/react/src/modules/message/js/Messagerouting.js
index ce3287922..1a81240cb 100644
--- a/public/react/src/modules/message/js/Messagerouting.js
+++ b/public/react/src/modules/message/js/Messagerouting.js
@@ -5,7 +5,7 @@ import axios from 'axios';
import "../css/messagemy.css"
import { Route, Switch } from "react-router-dom";
import Loading from '../../../Loading'
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
// MessagSub 消息自路由
// MessagePrivate 私信
diff --git a/public/react/src/modules/moop_cases/index.js b/public/react/src/modules/moop_cases/index.js
index 3aef241ad..7845b2455 100644
--- a/public/react/src/modules/moop_cases/index.js
+++ b/public/react/src/modules/moop_cases/index.js
@@ -9,7 +9,7 @@ import CNotificationHOC from '../courses/common/CNotificationHOC'
import { Route, Switch } from 'react-router-dom';
import Loading from '../../Loading';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import axios from 'axios';
diff --git a/public/react/src/modules/page/component/TPICodeMirror.js b/public/react/src/modules/page/component/TPICodeMirror.js
index 41a4cf193..5c00bdab2 100644
--- a/public/react/src/modules/page/component/TPICodeMirror.js
+++ b/public/react/src/modules/page/component/TPICodeMirror.js
@@ -216,7 +216,6 @@ class TPICodeMirror extends Component {
onCodeModeChange = (value) => {
toStore('cmCodeMode', value);
this.setState({ cmCodeMode: value });
- window.monaco.editor.setTheme(value);
}
render() {
diff --git a/public/react/src/modules/paths/Index.js b/public/react/src/modules/paths/Index.js
index f4d7782bd..a6733a7c0 100644
--- a/public/react/src/modules/paths/Index.js
+++ b/public/react/src/modules/paths/Index.js
@@ -4,7 +4,7 @@ import { SnackbarHOC, CNotificationHOC } from 'educoder';
import { Route, Switch } from 'react-router-dom';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../Loading';
import TPMIndexHOC from '../tpm/TPMIndexHOC';
diff --git a/public/react/src/modules/projectPackages/ProjectPackageIndex.js b/public/react/src/modules/projectPackages/ProjectPackageIndex.js
index bcd5ce89e..86e2153e7 100644
--- a/public/react/src/modules/projectPackages/ProjectPackageIndex.js
+++ b/public/react/src/modules/projectPackages/ProjectPackageIndex.js
@@ -6,7 +6,7 @@ import { BrowserRouter as Router, Route, Link, Switch } from "react-router-dom";
import Loading from '../../Loading'
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import TPMIndexHOC from '../tpm/TPMIndexHOC'
import { SnackbarHOC } from 'educoder'
diff --git a/public/react/src/modules/topic_bank/Topic_bank.js b/public/react/src/modules/topic_bank/Topic_bank.js
index 549da4262..279afc64a 100644
--- a/public/react/src/modules/topic_bank/Topic_bank.js
+++ b/public/react/src/modules/topic_bank/Topic_bank.js
@@ -1,7 +1,7 @@
import React, { Component } from 'react';
import { Route, Switch } from "react-router-dom";
import Loading from '../../Loading'
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import TPMIndexHOC from '../tpm/TPMIndexHOC'
import { SnackbarHOC } from 'educoder'
diff --git a/public/react/src/modules/tpm/Audit_situationComponent.js b/public/react/src/modules/tpm/Audit_situationComponent.js
index 3739cd6db..d81856b03 100644
--- a/public/react/src/modules/tpm/Audit_situationComponent.js
+++ b/public/react/src/modules/tpm/Audit_situationComponent.js
@@ -1,6 +1,5 @@
import React, { Component } from 'react';
-import { Redirect } from 'react-router';
-import { List,Typography,Tag,Modal,Radio} from 'antd';
+import { List, Tag, Modal, Radio } from 'antd';
import TPMRightSection from './component/TPMRightSection';
import TPMNav from './component/TPMNav';
@@ -10,8 +9,8 @@ class Audit_situationComponent extends Component {
constructor(props) {
super(props)
this.state = {
- datas:undefined,
- value:undefined,
+ datas: undefined,
+ value: undefined,
}
}
@@ -21,82 +20,82 @@ class Audit_situationComponent extends Component {
}
- getdatas=()=>{
+ getdatas = () => {
- let url=`/shixuns/${this.props.match.params.shixunId}/review_newest_record.json`;
+ let url = `/shixuns/${this.props.match.params.shixunId}/review_newest_record.json`;
axios.get(url).then((response) => {
- if(response.data===undefined||JSON.stringify(response.data) == "{}"||response.data===null){
+ if (response.data === undefined || JSON.stringify(response.data) == "{}" || response.data === null) {
this.setState({
- datas:[
+ datas: [
{
name: '内容审核情况',
- id:"Content",
+ id: "Content",
},
{
name: '性能审核情况',
- id:"Performance",
+ id: "Performance",
},
]
})
- }else{
- let newlist=[]
- if(response.data.content_info!=undefined&&response.data.perference_info===undefined){
- let arr=[
+ } else {
+ let newlist = []
+ if (response.data.content_info != undefined && response.data.perference_info === undefined) {
+ let arr = [
{
name: '内容审核情况',
- id:"Content",
- status:response.data.content_info.status,
- username:response.data.content_info.username,
- time:response.data.content_info.time,
+ id: "Content",
+ status: response.data.content_info.status,
+ username: response.data.content_info.username,
+ time: response.data.content_info.time,
},
{
name: '性能审核情况',
- id:"Performance",
+ id: "Performance",
},
]
- newlist=arr
+ newlist = arr
}
- if(response.data.content_info===undefined&&response.data.perference_info!=undefined){
- let arr=[
+ if (response.data.content_info === undefined && response.data.perference_info != undefined) {
+ let arr = [
{
name: '内容审核情况',
- id:"Content",
+ id: "Content",
},
{
name: '性能审核情况',
- id:"Performance",
- status:response.data.perference_info.status,
- username:response.data.perference_info.username,
- time:response.data.perference_info.time,
+ id: "Performance",
+ status: response.data.perference_info.status,
+ username: response.data.perference_info.username,
+ time: response.data.perference_info.time,
},
]
- newlist=arr
+ newlist = arr
}
- if(response.data.content_info!=undefined&&response.data.perference_info!=undefined){
- let arr=[
- {
- name: '内容审核情况',
- id:"Content",
- status:response.data.content_info.status,
- username:response.data.content_info.username,
- time:response.data.content_info.time,
- },
- {
- name: '性能审核情况',
- id:"Performance",
- status:response.data.perference_info.status,
- username:response.data.perference_info.username,
- time:response.data.perference_info.time,
- },
- ]
- newlist=arr
+ if (response.data.content_info != undefined && response.data.perference_info != undefined) {
+ let arr = [
+ {
+ name: '内容审核情况',
+ id: "Content",
+ status: response.data.content_info.status,
+ username: response.data.content_info.username,
+ time: response.data.content_info.time,
+ },
+ {
+ name: '性能审核情况',
+ id: "Performance",
+ status: response.data.perference_info.status,
+ username: response.data.perference_info.username,
+ time: response.data.perference_info.time,
+ },
+ ]
+ newlist = arr
}
this.setState({
- datas:newlist
+ datas: newlist
})
}
@@ -105,22 +104,22 @@ class Audit_situationComponent extends Component {
});
}
- showModal = (id,status) => {
+ showModal = (id, status) => {
debugger
this.setState({
visible: true,
- editid:id,
- value:status
+ editid: id,
+ value: status
});
};
- handleOk=(id,editid)=>{
+ handleOk = (id, editid) => {
let url = `/shixuns/${this.props.match.params.shixunId}/review_shixun.json`;
axios.post(url, {
- status: id===undefined?1:id,
+ status: id === undefined ? 1 : id,
review_type: editid,
}).then((response) => {
- if(response.data.status===0){
+ if (response.data.status === 0) {
this.props.showNotification(response.data.message);
this.setState({
visible: false,
@@ -144,14 +143,14 @@ class Audit_situationComponent extends Component {
});
};
render() {
- const { tpmLoading, shixun, user, match } = this.props;
- let {value,editid,datas}=this.state;
+ const { tpmLoading, shixun, user, match } = this.props;
+ let { value, editid, datas } = this.state;
- console.log(this.props)
+ console.log(this.props)
return (
- {this.state.visible===true?
- :""}
+ : ""}
- { tpmLoading ? :
-
-
-
-
-
-
-
-
- {this.props.identity >2||this.props.identity===undefined?"":
(
- this.showModal(item.id,item.status)} key={key}>
-
- ,
- ]}
- >
-
- {item.name}
- {item.status===undefined?"":item.status===1?已完成:未完成}
-
}
- description={
-
- {item.time===undefined?"":审核时间: {item.time}}
- {item.username===undefined?"":审核人: {item.username}}
-
- }
- />
-
- )}
- />}
-
-
+ {tpmLoading ?
:
+
+
+
+
+
+
+
+
+ {this.props.identity > 2 || this.props.identity === undefined ? "" :
(
+ this.showModal(item.id, item.status)} key={key}>
+
+ ,
+ ]}
+ >
+
+ {item.name}
+ {item.status === undefined ? "" : item.status === 1 ? 已完成 : 未完成}
+
}
+ description={
+
+ {item.time === undefined ? "" : 审核时间: {item.time}}
+ {item.username === undefined ? "" : 审核人: {item.username}}
+
+ }
+ />
+
+ )}
+ />}
-
-
-
+
+
+
+
+
}
);
diff --git a/public/react/src/modules/tpm/TPMCollaboratorsContainer.js b/public/react/src/modules/tpm/TPMCollaboratorsContainer.js
index 61b9bd2ec..a26e94c61 100644
--- a/public/react/src/modules/tpm/TPMCollaboratorsContainer.js
+++ b/public/react/src/modules/tpm/TPMCollaboratorsContainer.js
@@ -1,12 +1,6 @@
import React, { Component } from 'react';
-import { Redirect } from 'react-router';
-
-import PropTypes from 'prop-types';
-
import TPMCollaborators from './TPMCollaborators'
-import axios from 'axios';
-
class TPMChallengeContainer extends Component {
constructor(props) {
super(props)
@@ -14,34 +8,25 @@ class TPMChallengeContainer extends Component {
}
}
- componentWillReceiveProps(newProps, newContext) {
- }
-
- componentDidMount() {
- // this.props.showShixun();
- }
-
-
-
- render() {
- const { tpmLoading } = this.props;
- const user = this.props.current_user;
- return (
-
- { tpmLoading ? :
+ render() {
+ const { tpmLoading } = this.props;
+ const user = this.props.current_user;
+ return (
+
+ {tpmLoading ? :
- }
-
- );
- }
+ }
+
+ );
+ }
}
export default TPMChallengeContainer;
diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index 3515d99de..8a05ea38b 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -1,21 +1,20 @@
-import React, {Component} from 'react';
-import {Redirect} from 'react-router';
-import {List, Typography, Tag, Modal, Radio, Checkbox, Table,message, Pagination,Upload,Button} from 'antd';
-import { NoneData } from 'educoder'
+import React, { Component } from 'react';
+import { Modal, Checkbox, Table, message, Pagination, Upload, Button } from 'antd';
+import { NoneData } from 'educoder'
import TPMRightSection from './component/TPMRightSection';
import TPMNav from './component/TPMNav';
import axios from 'axios';
import './tpmmodel/tpmmodel.css'
-import {getUploadActionUrltwo,appendFileSizeToUploadFileAll} from 'educoder';
+import { getUploadActionUrltwo, appendFileSizeToUploadFileAll } from 'educoder';
import moment from 'moment';
import Tpmdatasetmodel from "./tpmmodel/Tpmdatasetmodel";
const confirm = Modal.confirm;
function clearSlct() {
- if("getSelection" in window){
+ if ("getSelection" in window) {
window.getSelection().removeAllRanges();
- }else{
+ } else {
document.selection.empty();
};
}
@@ -23,12 +22,12 @@ function jsCopy(s) {
clearSlct();
const copyEle = document.getElementById(s);
copyEle.select();
- const copyStatus=document.execCommand("Copy");
+ const copyStatus = document.execCommand("Copy");
// 对成功与否定进行提示
copyStatuss(copyStatus)
}
-function copyStatuss(copyStatus){
+function copyStatuss(copyStatus) {
if (copyStatus) {
message.success('复制成功');
} else {
@@ -99,12 +98,12 @@ class TPMDataset extends Component {
className: "edu-txt-center font-14 ",
render: (text, record) => (
)
@@ -122,25 +121,25 @@ class TPMDataset extends Component {
page: 1,
limit: 10,
selectedRowKeys: [],
- mylistansum:30,
- collaboratorList:[],
- fileList:[],
- fileListimgs:[],
- file:null,
- datalist:[],
- data_sets_count:0,
- selectedRowKeysdata:[],
- loadingstate:false,
+ mylistansum: 30,
+ collaboratorList: [],
+ fileList: [],
+ fileListimgs: [],
+ file: null,
+ datalist: [],
+ data_sets_count: 0,
+ selectedRowKeysdata: [],
+ loadingstate: false,
checked: false,
- showmodel:false,
- itemtypebool:false,
- Buttonloading:false
+ showmodel: false,
+ itemtypebool: false,
+ Buttonloading: false
}
}
componentDidMount() {
this.setState({
- loadingstate:true,
+ loadingstate: true,
})
this.getdatas()
@@ -149,25 +148,25 @@ class TPMDataset extends Component {
mysonChange = (e) => {
// console.log(`全选checked = ${e.target.checked}`);
if (e.target.checked === true) {
- let mydata=[];
- let datas=[];
- for(let i=0;i
{
- let id=this.props.match.params.shixunId;
-
- let collaborators=`/shixuns/${id}/get_data_sets.json`;
- axios.get(collaborators,{params:{
- page:1,
- limit:10,
- }}).then((response)=> {
- if(response.status===200){
- if (response.data.status === 403||response.data.status === 401||response.data.status === 500) {
-
- }else{
- let datalists=[];
- for(let i=0;i {
+ if (response.status === 200) {
+ if (response.data.status === 403 || response.data.status === 401 || response.data.status === 500) {
+
+ } else {
+ let datalists = [];
+ for (let i = 0; i < response.data.data_sets.length; i++) {
+ const datas = response.data.data_sets;
var timedata = moment(datas[i].created_on).format('YYYY-MM-DD HH:mm');
datalists.push({
- timedata:timedata,
- author:datas[i].author,
- filesize:datas[i].filesize,
- id:datas[i].id,
- title:datas[i].title,
- file_path:datas[i].file_path,
+ timedata: timedata,
+ author: datas[i].author,
+ filesize: datas[i].filesize,
+ id: datas[i].id,
+ title: datas[i].title,
+ file_path: datas[i].file_path,
})
}
this.setState({
collaboratorList: response.data,
- data_sets_count:response.data.data_sets_count,
- datalist:datalists,
- selectedRowKeysdata:[],
+ data_sets_count: response.data.data_sets_count,
+ datalist: datalists,
+ selectedRowKeysdata: [],
selectedRowKeys: [],
- checked:false,
- page:1,
+ checked: false,
+ page: 1,
});
@@ -216,14 +217,14 @@ class TPMDataset extends Component {
}
setTimeout(() => {
this.setState({
- loadingstate:false,
+ loadingstate: false,
})
}, 500)
- }).catch((error)=>{
+ }).catch((error) => {
setTimeout(() => {
this.setState({
- loadingstate:false,
+ loadingstate: false,
})
}, 500)
console.log(error)
@@ -231,52 +232,54 @@ class TPMDataset extends Component {
}
- getdatastwo = (page,limit) => {
- let id=this.props.match.params.shixunId;
-
- let collaborators=`/shixuns/${id}/get_data_sets.json`;
- axios.get(collaborators,{params:{
- page:page,
- limit:limit,
- }}).then((response)=> {
- if(response.status===200){
- if (response.data.status === 403||response.data.status === 401||response.data.status === 500) {
-
- }else{
- let datalists=[];
- for(let i=0;i {
+ let id = this.props.match.params.shixunId;
+
+ let collaborators = `/shixuns/${id}/get_data_sets.json`;
+ axios.get(collaborators, {
+ params: {
+ page: page,
+ limit: limit,
+ }
+ }).then((response) => {
+ if (response.status === 200) {
+ if (response.data.status === 403 || response.data.status === 401 || response.data.status === 500) {
+
+ } else {
+ let datalists = [];
+ for (let i = 0; i < response.data.data_sets.length; i++) {
+ const datas = response.data.data_sets;
var timedata = moment(datas[i].created_on).format('YYYY-MM-DD HH:mm');
datalists.push({
- timedata:timedata,
- author:datas[i].author,
- filesize:datas[i].filesize,
- id:datas[i].id,
- title:datas[i].title,
- file_path:datas[i].file_path,
+ timedata: timedata,
+ author: datas[i].author,
+ filesize: datas[i].filesize,
+ id: datas[i].id,
+ title: datas[i].title,
+ file_path: datas[i].file_path,
})
}
this.setState({
collaboratorList: response.data,
- data_sets_count:response.data.data_sets_count,
- datalist:datalists,
- selectedRowKeysdata:[],
+ data_sets_count: response.data.data_sets_count,
+ datalist: datalists,
+ selectedRowKeysdata: [],
selectedRowKeys: [],
- checked:false,
- page:page,
+ checked: false,
+ page: page,
});
}
}
setTimeout(() => {
this.setState({
- loadingstate:false,
+ loadingstate: false,
})
}, 500)
- }).catch((error)=>{
+ }).catch((error) => {
setTimeout(() => {
this.setState({
- loadingstate:false,
+ loadingstate: false,
})
}, 500)
console.log(error)
@@ -285,25 +288,27 @@ class TPMDataset extends Component {
}
- getdatasthree = (page,limit) => {
- let id=this.props.match.params.shixunId;
+ getdatasthree = (page, limit) => {
+ let id = this.props.match.params.shixunId;
- let collaborators=`/shixuns/${id}/get_data_sets.json`;
- axios.get(collaborators,{params:{
- page:page,
- limit:limit,
- }}).then((response)=> {
- if(response.status===200){
- if (response.data.status === 403||response.data.status === 401||response.data.status === 500) {
+ let collaborators = `/shixuns/${id}/get_data_sets.json`;
+ axios.get(collaborators, {
+ params: {
+ page: page,
+ limit: limit,
+ }
+ }).then((response) => {
+ if (response.status === 200) {
+ if (response.data.status === 403 || response.data.status === 401 || response.data.status === 500) {
- }else{
+ } else {
}
}
- }).catch((error)=>{
+ }).catch((error) => {
});
@@ -313,10 +318,10 @@ class TPMDataset extends Component {
// //console.log('Page: ');
this.setState({
page: pageNumber,
- loadingstate:true,
+ loadingstate: true,
})
- this.getdatastwo(pageNumber,10);
+ this.getdatastwo(pageNumber, 10);
}
onSelectChange = (selectedRowKeys, selectedRows) => {
@@ -326,13 +331,13 @@ class TPMDataset extends Component {
selectedRowKeys
}
);
- let mydata=[];
- for(let i=0;i {
// console.log("handleChange123123");
// console.log(info);
- //debugger
+ //debugger
this.setState({
- Buttonloading:true
+ Buttonloading: true
})
- if(!info.file.status){
+ if (!info.file.status) {
this.setState({
- Buttonloading:false
+ Buttonloading: false
})
}
- if(info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed'){
+ if (info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed') {
let fileList = info.fileList;
this.setState({
fileList: appendFileSizeToUploadFileAll(fileList),
});
- if(info.file.status === 'done'){
+ if (info.file.status === 'done') {
//done 成功就会调用这个方法
- if(info.file.response){
- if(info.file.response.status===-1||info.file.response.status==="-1"){
+ if (info.file.response) {
+ if (info.file.response.status === -1 || info.file.response.status === "-1") {
this.setState({
- Buttonloading:false
+ Buttonloading: false
})
- }else{
+ } else {
this.getdatas();
this.setState({
- Buttonloading:false
+ Buttonloading: false
})
// this.props.showNotification(`上传成功`);
}
}
- }else{
+ } else {
// this.setState({
// Buttonloading:false
// })
}
- if(info.file.response){
- if(info.file.response.status===-1||info.file.response.status==="-1"){
- // console.log("准备显示弹框了");
- // console.log(info);false
- let itemtype=-1;
- try {
- itemtype=info.file.response.message.indexOf('文件名已经存在'.toLowerCase());
-
- }catch (e) {
-
- }
- this.setState({
- showmodel:true,
- tittest:info.file.response.message,
- itemtypebool:itemtype>-1?true:itemtype<=-1?false:false,
- Buttonloading:false
- })
-
- }else{
- this.setState({
- Buttonloading:false
+ if (info.file.response) {
+ if (info.file.response.status === -1 || info.file.response.status === "-1") {
+ // console.log("准备显示弹框了");
+ // console.log(info);false
+ let itemtype = -1;
+ try {
+ itemtype = info.file.response.message.indexOf('文件名已经存在'.toLowerCase());
+
+ } catch (e) {
+
+ }
+ this.setState({
+ showmodel: true,
+ tittest: info.file.response.message,
+ itemtypebool: itemtype > -1 ? true : itemtype <= -1 ? false : false,
+ Buttonloading: false
+ })
+
+ } else {
+ this.setState({
+ Buttonloading: false
})
- }
- }
+ }
+ }
}
}
@@ -415,7 +420,7 @@ class TPMDataset extends Component {
onAttachmentRemove = (file) => {
// debugger
- if(!file.percent || file.percent == 100){
+ if (!file.percent || file.percent == 100) {
confirm({
title: '确定要删除这个附件吗?',
okText: '确定',
@@ -434,15 +439,15 @@ class TPMDataset extends Component {
}
- deleteRemovedata(){
+ deleteRemovedata() {
- if(this.state.selectedRowKeysdata===undefined || this.state.selectedRowKeysdata===null ||this.state.selectedRowKeysdata.length===0){
+ if (this.state.selectedRowKeysdata === undefined || this.state.selectedRowKeysdata === null || this.state.selectedRowKeysdata.length === 0) {
this.props.showNotification(`请选择要删除的文件`);
return
}
- let id=this.props.match.params.shixunId;
+ let id = this.props.match.params.shixunId;
confirm({
title: '确定要删除文件吗?',
@@ -452,10 +457,12 @@ class TPMDataset extends Component {
onOk: () => {
const url = `/shixuns/${id}/destroy_data_sets.json`;
axios.delete(url,
- { params: {
- id:this.state.selectedRowKeysdata,
- }}
- )
+ {
+ params: {
+ id: this.state.selectedRowKeysdata,
+ }
+ }
+ )
.then((response) => {
if (response.data) {
const { status } = response.data;
@@ -478,11 +485,11 @@ class TPMDataset extends Component {
}
deleteAttachment = (file) => {
// console.log(file);
- let id=file.response ==undefined ? file.id : file.response.id
+ let id = file.response == undefined ? file.id : file.response.id
const url = `/attachements/destroy_files.json`
axios.delete(url, {
- id:[id],
- })
+ id: [id],
+ })
.then((response) => {
if (response.data) {
const { status } = response.data;
@@ -496,7 +503,7 @@ class TPMDataset extends Component {
newFileList.splice(index, 1);
return {
fileList: newFileList,
- deleteisnot:true
+ deleteisnot: true
};
});
}
@@ -514,20 +521,20 @@ class TPMDataset extends Component {
})
}
- ModalSave=()=>{
+ ModalSave = () => {
this.setState({
showmodel: false,
})
}
- ButtonloadinghandleChange=()=>{
+ ButtonloadinghandleChange = () => {
// this.props.showNotification(`zhzzzzz`);
// this.setState({
// Buttonloading:false
// })
}
render() {
- const {tpmLoading, shixun, user, match} = this.props;
- const {columns, page, limit, selectedRowKeys,mylistansum,fileList,datalist,data_sets_count,loadingstate} = this.state;
+ const { tpmLoading, shixun, user, match } = this.props;
+ const { columns, page, limit, selectedRowKeys, mylistansum, fileList, datalist, data_sets_count, loadingstate } = this.state;
const rowSelection = {
selectedRowKeys,
onChange: this.onSelectChange,
@@ -536,7 +543,7 @@ class TPMDataset extends Component {
// disabled: record.name === 'Disabled User', // Column configuration not to be checked
// name: record.name,
// }),
- let id=this.props.match.params.shixunId;
+ let id = this.props.match.params.shixunId;
const uploadProps = {
width: 600,
fileList,
@@ -546,12 +553,12 @@ class TPMDataset extends Component {
// showUploadList={false},然后外部拿到 fileList 数组自行渲染列表。
// showUploadList: false,
action: `${getUploadActionUrltwo(id)}`,
- showUploadList:false,
+ showUploadList: false,
onChange: this.handleChange,
onRemove: this.onAttachmentRemove,
beforeUpload: (file) => {
//上传前的操作
- console.log('beforeUpload', file);
+ console.log('beforeUpload', file);
// this.props.showNotification(`文件上传中`);
const isLt400M = file.size / 1024 / 1024 <= 400;
@@ -569,9 +576,9 @@ class TPMDataset extends Component {
{
- this.state.showmodel===true?
-
this.ModalSave()} tittest={this.state.tittest} modalsType={this.state.showmodel}>
- :""
+ this.state.showmodel === true ?
+
this.ModalSave()} tittest={this.state.tittest} modalsType={this.state.showmodel}>
+ : ""
}
-
+
-
- 全选
-
+
+ 全选
+
-
-
-
+
+
+
{
- data_sets_count>0?
+ data_sets_count > 0 ?
0 ? "deletebutomtextcode intermediatecenter mr21" : "deletebutom intermediatecenter mr21"} onClick={()=>this.deleteRemovedata()}>
+ className={selectedRowKeys.length > 0 ? "deletebutomtextcode intermediatecenter mr21" : "deletebutom intermediatecenter mr21"} onClick={() => this.deleteRemovedata()}>
删除
- :""
+ : ""
}
@@ -658,7 +665,7 @@ class TPMDataset extends Component {
border-right: 1px solid #eeeeee;
}
`}
- {data_sets_count===0?
+ {data_sets_count === 0 ?
+ columns={columns}
+ pagination={false}
+ className="mysjysltable4"
+ rowSelection={rowSelection}
+ rowClassName={this.rowClassName}
+ />
:
@@ -700,18 +707,18 @@ class TPMDataset extends Component {
}
{
- data_sets_count>=11?
-
- :""
+ data_sets_count >= 11 ?
+
+ : ""
}
- { data_sets_count===0?
-
:""
+ {data_sets_count === 0 ?
+
: ""
}
diff --git a/public/react/src/modules/tpm/TPMIndex.js b/public/react/src/modules/tpm/TPMIndex.js
index ad10bcb84..ac938e2f2 100644
--- a/public/react/src/modules/tpm/TPMIndex.js
+++ b/public/react/src/modules/tpm/TPMIndex.js
@@ -1,12 +1,12 @@
import React, { Component } from 'react';
-import { BrowserRouter as Router, Route, Link, Switch } from "react-router-dom";
+import { Route, Link, Switch } from "react-router-dom";
-import { Row, Col, Menu, Popover, Button } from 'antd';
+import { Row, Col, Menu } from 'antd';
import Loading from '../../Loading';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import TPMIndexHOC from './TPMIndexHOC';
@@ -30,7 +30,6 @@ import TPMRanking_listComponent from './TPMRanking_listContainer';
import TPMCollaboratorsComponent from './TPMCollaboratorsContainer';
import Audit_situationComponent from './Audit_situationComponent';
import TPMDataset from './TPMDataset';
-import TPMNav from './component/TPMNav';
import '../page/tpiPage.css';
@@ -453,20 +452,6 @@ class TPMIndex extends Component {
{this.state.is_jupyter === false ?
排行榜
: ""}
- {/*{this.state.identity >4||this.state.identity===undefined ? "":this.state.openknows===true?
*/}
- {/* */}
- {/* 更多设置在这里,点击“配置”看一看~
*/}
- {/* */}
- {/* */}
- {/* }*/}
- {/* trigger="click"*/}
- {/* placement="top"*/}
- {/* visible={this.state.openknows}*/}
- {/* >*/}
- {/* */}
- {/*:""}*/}
{this.state.identity > 4 || this.state.identity === undefined ? "" :
diff --git a/public/react/src/modules/tpm/TPMPropaedeuticsComponent.js b/public/react/src/modules/tpm/TPMPropaedeuticsComponent.js
index 994bec874..471da75bc 100644
--- a/public/react/src/modules/tpm/TPMPropaedeuticsComponent.js
+++ b/public/react/src/modules/tpm/TPMPropaedeuticsComponent.js
@@ -1,40 +1,30 @@
import React, { Component } from 'react';
-import { Redirect } from 'react-router';
-
-import PropTypes from 'prop-types';
import TPMPropaedeutics from './TPMPropaedeutics'
-import axios from 'axios';
class TPMPropaedeuticsComponent extends Component {
- constructor(props) {
- super(props)
- this.state = {
- // tpmLoading: true,
- // creator: {
- // owner_id: ''
- // }
- }
- }
-
- render() {
- const { tpmLoading } = this.props;
-
- return (
-
- { tpmLoading ? :
-
+ {tpmLoading ? :
+
-
+ is_jupyter={this.props.is_jupyter}
+ >
+
}
-
+
- );
- }
+ );
+ }
}
-export default TPMPropaedeuticsComponent ;
+export default TPMPropaedeuticsComponent;
diff --git a/public/react/src/modules/tpm/TPMRanking_listContainer.js b/public/react/src/modules/tpm/TPMRanking_listContainer.js
index f07401abe..9e30d2ea4 100644
--- a/public/react/src/modules/tpm/TPMRanking_listContainer.js
+++ b/public/react/src/modules/tpm/TPMRanking_listContainer.js
@@ -1,13 +1,7 @@
import React, { Component } from 'react';
-import { Redirect } from 'react-router';
-
-import PropTypes from 'prop-types';
import TPMRanking_list from './TPMRanking_list'
-import axios from 'axios';
-import TPMNav from "./component/TPMNav";
-
class TPMRanking_listContainer extends Component {
constructor(props) {
super(props)
@@ -16,24 +10,24 @@ class TPMRanking_listContainer extends Component {
}
render() {
- const { tpmLoading } = this.props;
- const user = this.props.current_user;
+ const { tpmLoading } = this.props;
+ const user = this.props.current_user;
- return (
-
- { tpmLoading ? :
-
+ {tpmLoading ? :
+
-
+ >
+
}
-
- );
+
+ );
}
}
diff --git a/public/react/src/modules/tpm/TPMShixunDiscussContainer.js b/public/react/src/modules/tpm/TPMShixunDiscussContainer.js
index 072cb5906..bac5bfd73 100644
--- a/public/react/src/modules/tpm/TPMShixunDiscussContainer.js
+++ b/public/react/src/modules/tpm/TPMShixunDiscussContainer.js
@@ -1,11 +1,7 @@
import React, { Component } from 'react';
-import { Redirect } from 'react-router';
-
-import PropTypes from 'prop-types';
import TPMShixunDiscuss from './TPMShixunDiscuss'
-import axios from 'axios';
class TPMShixunDiscussContainer extends Component {
constructor(props) {
@@ -14,32 +10,25 @@ class TPMShixunDiscussContainer extends Component {
}
}
- componentWillReceiveProps(newProps, newContext) {
-
- }
-
- componentDidMount() {
- }
-
- render() {
- const { tpmLoading } = this.props;
- const user = this.props.current_user;
- return (
-
- { tpmLoading ? :
+ render() {
+ const { tpmLoading } = this.props;
+ const user = this.props.current_user;
+ return (
+
+ {tpmLoading ? :
- }
-
- );
- }
+ }
+
+ );
+ }
}
export default TPMShixunDiscussContainer;
diff --git a/public/react/src/modules/tpm/challengesnew/TpmTask/TpmTaskIndex.js b/public/react/src/modules/tpm/challengesnew/TpmTask/TpmTaskIndex.js
index 5a64daf9e..22385c5da 100644
--- a/public/react/src/modules/tpm/challengesnew/TpmTask/TpmTaskIndex.js
+++ b/public/react/src/modules/tpm/challengesnew/TpmTask/TpmTaskIndex.js
@@ -1,8 +1,8 @@
-import React, {Component} from 'react';
+import React, { Component } from 'react';
import { BrowserRouter as Router, Route, Link, Switch } from "react-router-dom";
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from "../../../../Loading";
@@ -10,8 +10,8 @@ import Bottomsubmit from "../../../modals/Bottomsubmit";
const TPMchallengestask = Loadable({
- loader: () => import('../../challengesnew/TPMchallengesnew'),
- loading: Loading,
+ loader: () => import('../../challengesnew/TPMchallengesnew'),
+ loading: Loading,
})
export default class TpmTaskIndex extends Component {
@@ -38,7 +38,7 @@ export default class TpmTaskIndex extends Component {
{/*新建关卡*/}
()
+ (props) => ()
}>
{/*编辑关卡*/}
diff --git a/public/react/src/modules/user/AccountPage.js b/public/react/src/modules/user/AccountPage.js
index 2b34a2368..a36a10c0c 100644
--- a/public/react/src/modules/user/AccountPage.js
+++ b/public/react/src/modules/user/AccountPage.js
@@ -4,7 +4,7 @@ import { Route, Switch } from "react-router-dom";
import CNotificationHOC from '../courses/common/CNotificationHOC'
import Loading from '../../Loading';
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import TPMIndexHOC from '../tpm/TPMIndexHOC';
diff --git a/public/react/src/modules/user/usersInfo/Infos.js b/public/react/src/modules/user/usersInfo/Infos.js
index 488668421..bab362732 100644
--- a/public/react/src/modules/user/usersInfo/Infos.js
+++ b/public/react/src/modules/user/usersInfo/Infos.js
@@ -1,13 +1,13 @@
import React, { Component } from 'react';
-import {Link} from 'react-router-dom';
-import {Tooltip,Menu} from 'antd';
-import Loadable from 'react-loadable';
+import { Link } from 'react-router-dom';
+import { Tooltip, Menu } from 'antd';
+import { Loadable } from 'educoder';
import Loading from '../../../Loading';
-import {BrowserRouter as Router,Route,Switch} from 'react-router-dom';
+import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import UpgradeModals from '../../modals/UpgradeModals';
import axios from 'axios';
-import {getImageUrl} from 'educoder';
+import { getImageUrl } from 'educoder';
import InfosBanner from './InfosBanner'
import "./usersInfo.css"
@@ -19,73 +19,73 @@ import Trialapplication from '../../login/Trialapplication'
const InfosPackage = Loadable({
- loader: () => import('./InfosPackage'),
- loading:Loading,
+ loader: () => import('./InfosPackage'),
+ loading: Loading,
})
const InfosCourse = Loadable({
loader: () => import('./InfosCourse'),
- loading:Loading,
+ loading: Loading,
})
const InfosShixun = Loadable({
loader: () => import('./InfosShixun'),
- loading:Loading,
+ loading: Loading,
})
const InfosPath = Loadable({
loader: () => import('./InfosPath'),
- loading:Loading,
+ loading: Loading,
})
const InfosProject = Loadable({
loader: () => import('./InfosProject'),
- loading:Loading,
+ loading: Loading,
})
const InfosVideo = Loadable({
loader: () => import('./video/InfosVideo'),
- loading:Loading,
+ loading: Loading,
})
-const InfosTopics=Loadable({
- loader: () => import('./InfosTopics'),
- loading:Loading,
+const InfosTopics = Loadable({
+ loader: () => import('./InfosTopics'),
+ loading: Loading,
})
const $ = window.$;
-class Infos extends Component{
- constructor(props){
+class Infos extends Component {
+ constructor(props) {
super(props);
- this.state={
- data:undefined,
- is_current:undefined,
- is_edit:false,
- sign:undefined,
- type:0,
- login:undefined,
- isRenders:false,
- moduleName:"courses",
- next_gold:undefined
+ this.state = {
+ data: undefined,
+ is_current: undefined,
+ is_edit: false,
+ sign: undefined,
+ type: 0,
+ login: undefined,
+ isRenders: false,
+ moduleName: "courses",
+ next_gold: undefined
}
}
- componentDidMount =()=>{
- let upsystem=`/users/system_update.json`;
- axios.get(upsystem).then((response)=>{
- let updata=response.data;
- this.setState({
- updata:updata
- })
- }).catch((error)=>{
- console.log(error);
- })
-
- this.getInfo(this.props.match.params.username);
+ componentDidMount = () => {
+ let upsystem = `/users/system_update.json`;
+ axios.get(upsystem).then((response) => {
+ let updata = response.data;
+ this.setState({
+ updata: updata
+ })
+ }).catch((error) => {
+ console.log(error);
+ })
+
+ this.getInfo(this.props.match.params.username);
}
//判断是否看的是当前用户的个人主页
- componentDidUpdate =(prevProps)=> {
- if(this.props.current_user && prevProps.current_user != this.props.current_user){
- if(this.props.current_user.login != this.props.match.params.username){
+ componentDidUpdate = (prevProps) => {
+ if (this.props.current_user && prevProps.current_user != this.props.current_user) {
+ if (this.props.current_user.login != this.props.match.params.username) {
this.setState({
- is_current:false,
- login:this.props.current_user.login
+ is_current: false,
+ login: this.props.current_user.login
})
}
} else {
@@ -98,72 +98,72 @@ class Infos extends Component{
//获取个人主页信息
- getInfo = (user_login) =>{
- let url =`/users/${user_login}/homepage_info.json`;
- axios.get(url).then((result)=>{
- if(result){
- if (result.data.status === 403||result.data.status === 401||result.data.status === 500||result.data.status === 404) {
-
- }else{
- this.setState({
- data:result.data,
- followed:result.data.followed,
- sign:result.data.brief_introduction,
- id:result.data.id,
- next_gold:result.data.tomorrow_attendance_gold
- })
- }
+ getInfo = (user_login) => {
+ let url = `/users/${user_login}/homepage_info.json`;
+ axios.get(url).then((result) => {
+ if (result) {
+ if (result.data.status === 403 || result.data.status === 401 || result.data.status === 500 || result.data.status === 404) {
+
+ } else {
+ this.setState({
+ data: result.data,
+ followed: result.data.followed,
+ sign: result.data.brief_introduction,
+ id: result.data.id,
+ next_gold: result.data.tomorrow_attendance_gold
+ })
+ }
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error);
})
}
// 编辑签名
- editmysign=()=>{
+ editmysign = () => {
this.setState({
- is_edit:true
- },()=>{
+ is_edit: true
+ }, () => {
$("#mysign").focus();
})
}
// 输入签名
- inputSign=(e)=>{
+ inputSign = (e) => {
this.setState({
- sign:e.target.value
+ sign: e.target.value
})
}
//取消编辑签名
- savemysign=()=>{
- let { sign } =this.state;
- let url=`/users/brief_introduction.json`;
- axios.post((url),{
- content:sign
- }).then((result)=>{
- if(result){
+ savemysign = () => {
+ let { sign } = this.state;
+ let url = `/users/brief_introduction.json`;
+ axios.post((url), {
+ content: sign
+ }).then((result) => {
+ if (result) {
this.setState({
- is_edit:false
+ is_edit: false
})
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error)
})
}
- changeType=(e)=>{
+ changeType = (e) => {
this.setState({
- type:e.key
+ type: e.key
})
}
- turnTo=(url)=>{
+ turnTo = (url) => {
this.props.history.push(url);
}
//签到
- signFor=()=>{
- let url=`/users/attendance.json`
- axios.post(url).then((result)=>{
- if(result){
+ signFor = () => {
+ let url = `/users/attendance.json`
+ axios.post(url).then((result) => {
+ if (result) {
// this.setState(
// (prevState) => ({
// data : update(prevState.data, {attendance_signed: {$set: true} })
@@ -174,35 +174,35 @@ class Infos extends Component{
// })
this.getInfo(this.props.match.params.username);
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error);
})
}
// 关注
- followPerson=()=>{
- let{followed,id}=this.state;
- let url=`/users/${id}/watch.json`;
+ followPerson = () => {
+ let { followed, id } = this.state;
+ let url = `/users/${id}/watch.json`;
// 取消关注
- if(followed){
- axios.delete(url).then((result)=>{
- if(result){
+ if (followed) {
+ axios.delete(url).then((result) => {
+ if (result) {
this.setState({
- followed:false
+ followed: false
})
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error)
})
- }else{
+ } else {
// 关注
- axios.post(url).then((result)=>{
- if(result){
+ axios.post(url).then((result) => {
+ if (result) {
this.setState({
- followed:true
+ followed: true
})
}
- }).catch((error)=>{
+ }).catch((error) => {
console.log(error);
})
}
@@ -215,18 +215,18 @@ class Infos extends Component{
// showTrial:true
// })
// }
- cancelModulationModels=()=>{
+ cancelModulationModels = () => {
this.setState({
isRenders: false
})
}
- ToBank=(url)=>{
- window.location.href=url;
+ ToBank = (url) => {
+ window.location.href = url;
}
- render(){
+ render() {
let {
- data ,
+ data,
is_edit,
sign,
type,
@@ -235,93 +235,93 @@ class Infos extends Component{
isRenders,
moduleName,
next_gold
- }=this.state;
+ } = this.state;
let isCurrent = true;
let currentLogin;
- if(this.props.current_user && this.props.current_user.login != this.props.match.params.username){
- isCurrent=false;
+ if (this.props.current_user && this.props.current_user.login != this.props.match.params.username) {
+ isCurrent = false;
currentLogin = this.props.current_user.login;
}
const _commonProps = {
is_current: isCurrent,
login: currentLogin
}
- return(
+ return (
- {this.state.updata===undefined?"":}
+ {this.state.updata === undefined ? "" : }
{
- isRenders && this.cancelModulationModels()}/>
+ isRenders && this.cancelModulationModels()} />
}
- {/* --------------------------------------------------------------------- */}
- {/* 题库 */}
- ()
- }
- >
+ {/* --------------------------------------------------------------------- */}
+ {/* 题库 */}
+ ()
+ }
+ >
- {/* 课堂 */}
- {/* http://localhost:3007/courses/1309/homework/9300/setting */}
+ {/* 课堂 */}
+ {/* http://localhost:3007/courses/1309/homework/9300/setting */}
()
- }
- >
+ render={
+ (props) => ()
+ }
+ >
{/* 实训项目 */}
- ()
- }
- >
+ ()
+ }
+ >
{/* 实践课程 */}
- ()
- }
- >
+ ()
+ }
+ >
{/* 开发项目 */}
- ()
- }
- >
-
- {/* 众包 */}
- {/* http://localhost:3007/courses/1309/homework/9300/setting */}
- ()
- }
- >
-
- {/* 视频 */}
- ()
- }
- >
+ ()
+ }
+ >
+
+ {/* 众包 */}
+ {/* http://localhost:3007/courses/1309/homework/9300/setting */}
+ ()
+ }
+ >
+
+ {/* 视频 */}
+ ()
+ }
+ >
()
- }
- >
+ render={
+ (props) => ()
+ }
+ >
@@ -329,4 +329,4 @@ class Infos extends Component{
}
}
// CNotificationHOC() ( SnackbarHOC() ( TPMIndexHOC))
-export default (Infos) ;
+export default (Infos);
diff --git a/public/react/src/modules/user/usersInfo/InfosIndex.js b/public/react/src/modules/user/usersInfo/InfosIndex.js
index 4c6273820..69fa345db 100644
--- a/public/react/src/modules/user/usersInfo/InfosIndex.js
+++ b/public/react/src/modules/user/usersInfo/InfosIndex.js
@@ -5,7 +5,7 @@ import { SnackbarHOC } from 'educoder';
import TPMIndexHOC from '../../tpm/TPMIndexHOC';
import CNotificationHOC from '../../courses/common/CNotificationHOC'
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../../Loading';
diff --git a/public/react/src/modules/user/usersInfo/banks/BanksIndex.js b/public/react/src/modules/user/usersInfo/banks/BanksIndex.js
index 43d53606e..2549fa657 100644
--- a/public/react/src/modules/user/usersInfo/banks/BanksIndex.js
+++ b/public/react/src/modules/user/usersInfo/banks/BanksIndex.js
@@ -10,7 +10,7 @@ import "../usersInfo.css"
import "../../../courses/css/members.css"
import "../../../courses/css/Courses.css"
-import Loadable from 'react-loadable';
+import { Loadable } from 'educoder';
import Loading from '../../../../Loading';
// 毕设选题
diff --git a/public/react/src/modules/user/usersInfo/banks/BanksTabIndex.js b/public/react/src/modules/user/usersInfo/banks/BanksTabIndex.js
index e38bb5de8..bbd67b777 100644
--- a/public/react/src/modules/user/usersInfo/banks/BanksTabIndex.js
+++ b/public/react/src/modules/user/usersInfo/banks/BanksTabIndex.js
@@ -1,62 +1,62 @@
import React, { Component } from 'react';
-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 'educoder';
import Loading from '../../../../Loading';
import BanksMenu from './banksMenu'
// 毕设选题
const GtopicBanks = Loadable({
- loader: () => import('./GtopicBanks'),
- loading: Loading,
+ loader: () => import('./GtopicBanks'),
+ loading: Loading,
})
// 问卷内容
const PollBanks = Loadable({
- loader: () => import('./PollBanksContent'),
- loading: Loading,
+ loader: () => import('./PollBanksContent'),
+ loading: Loading,
})
// 试卷详情
const ExerciseBanksDetail = Loadable({
- loader: () => import('./ExerciseBanksDetail'),
- loading: Loading,
+ loader: () => import('./ExerciseBanksDetail'),
+ loading: Loading,
});
-class BanksTabIndex extends Component{
- constructor(props){
+class BanksTabIndex extends Component {
+ constructor(props) {
super(props);
- this.state={
- banksMenu:undefined
+ this.state = {
+ banksMenu: undefined
}
}
- initPublic = (crumbData,menuData,data) =>{
+ initPublic = (crumbData, menuData, data) => {
this.setState({
- banksMenu:menuData
+ banksMenu: menuData
})
- this.props.initPublic(crumbData,data);
+ this.props.initPublic(crumbData, data);
}
- render(){
- let{
- banksMenu
- }=this.state
+ render() {
+ let {
+ banksMenu
+ } = this.state
- const common={
- initPublic:this.initPublic,
+ const common = {
+ initPublic: this.initPublic,
};
console.log("BanksTabIndex");
console.log(banksMenu);
console.log(this.props);
- return(
+ return (
{
- banksMenu &&
-
}
@@ -67,20 +67,20 @@ class BanksTabIndex extends Component{
return ()
}
- }>
+ }>
{
return ()
}
- }>
+ }>
{
return ()
}
- }>
+ }>