From 5af29371bfa7076acb4d109e7036572c205ccea1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Thu, 4 Jul 2019 09:43:01 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../courses/shixunHomework/Listofworks.js | 45 +- .../shixunHomework/Workquestionandanswer.js | 1014 +++++++++-------- 2 files changed, 575 insertions(+), 484 deletions(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index 342fef706..5dea6e3e6 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1327,6 +1327,47 @@ class Listofworks extends Component { }); } + + // 导出实习报告批量 + internshipreport = ()=>{ + console.log("internshipreport"); + let url = "/zip/shixun_report"; + let homeworkid = this.props.match.params.homeworkid; + axios.get((url),{ + params: { + homework_common_id: homeworkid, + work_status: this.state.course_groupyslstwo, + course_group: this.state.checkedValuesineinfo, + search: this.state.searchtext, + } + }).then((response) => { + console.log("1342"); + console.log(response); + + }).catch((error) => { + console.log(error) + }); + } + + // 课堂学生成绩的导出下载 + Classstudentachievement=()=>{ + console.log("Classstudentachievement"); + const course_id = this.props.match.params.coursesId; + let url = "/courses/"+course_id+"/export_member_scores_excel.xlsx"; + axios.get((url),{ + params: { + group_id: this.state.checkedValuesineinfo, + search: this.state.searchtext, + } + }).then((response) => { + console.log("1306"); + console.log(response); + + }).catch((error) => { + console.log(error) + }); + } + render() { // console.log("Listofworks.js000") @@ -1475,8 +1516,8 @@ class Listofworks extends Component { {this.props.isAdmin()?
  • 导出
  • :""} {this.props.isAdmin() ? diff --git a/public/react/src/modules/courses/shixunHomework/Workquestionandanswer.js b/public/react/src/modules/courses/shixunHomework/Workquestionandanswer.js index a392dce33..c342227c6 100644 --- a/public/react/src/modules/courses/shixunHomework/Workquestionandanswer.js +++ b/public/react/src/modules/courses/shixunHomework/Workquestionandanswer.js @@ -1,26 +1,26 @@ import React, {Component} from "react"; import CoursesListType from '../coursesPublic/CoursesListType'; -import {WordsBtn,ActionBtn,markdownToHTML} from 'educoder'; +import {WordsBtn, ActionBtn, markdownToHTML} from 'educoder'; import GraduateTopicReply from '../graduation/topics/GraduateTopicReply' import MemoDetailMDEditortwo from '../../forums/MemoDetailMDEditortwo' import { - Form, - Select, - Input, - Button, - Checkbox, - Upload, - Icon, - message, - Modal, - Table, - Divider, - InputNumber, - Tag, - DatePicker, - Radio, - Tooltip, - notification + Form, + Select, + Input, + Button, + Checkbox, + Upload, + Icon, + message, + Modal, + Table, + Divider, + InputNumber, + Tag, + DatePicker, + Radio, + Tooltip, + notification } from "antd"; import {Link, Switch, Route, Redirect} from 'react-router-dom'; import moment from 'moment' @@ -44,373 +44,414 @@ const TextArea = Input.TextArea //作业问答页面 class Workquestionandanswer extends Component { - //unifiedsetting 统一设置 - //allowreplenishment 允许补交 - //completionefficiencyscore 完成效率评分占比 - //level级别 - //proportion 比例 - constructor(props) { - super(props); - // this.props.form.setFieldsValue({ - // radiogroup:1, - // - // }); - this.state ={ - // namestring:"JFinal是基于Java语言的极速web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、`Restful`。在拥有Java语言所有优势的同时再拥有`ruby`、`python`等动态语言的开发效率。\r\n\r\n在本实训中,我们将基于JFinal框架搭建一个在线商城。我们会学习到如何合理设计`Model`来进行数据表映射和数据操作、如何设计`Controller`对请求进行合理的处理…… 通过本实训,您不仅能收获到具体框架和技术的使用经验,也能对项目架构设计等知识有所了解或巩固。\r\n\r\n
    \r\n\t\r\n
    \r\n\r\n本实训聚焦一个在线商城项目的核心业务逻辑实现。你将在这一过程中收获Java Web项目设计的基本思想,也能得到编程能力的一次跃升。", - props: props, - starttimetype: false, - endtimetype: false, - latetimetype: false, - allowlate: 1, - latepenaltytype: false, - unifiedsetting: false, - allowreplenishment: undefined, - completionefficiencyscore: false, - proportion: undefined, - level: undefined, - ealuation: false, - latededuction: undefined, - latedeductiontwo: undefined, - Showupdateinstructions:false, - database: false, - datasheet: false, - databasetwo: undefined, - datasheettwo: undefined, - publicwork: undefined, - memo: {id: "94", user_id: 1}, - polls_descriptiontest: "作业说明...", - jobdescriptiondisplay:"none", - score_open:false, - code_review:false - } - } - - componentDidMount() { - var homeworkid = this.props.match.params.homeworkid; - // console.log(homeworkid) - this.Gettitleinformation(homeworkid) - let query = this.props.location.pathname; - const type = query.split('/'); - this.setState({ - shixuntypes:type[3] - }) - } - - isupdatas=()=>{ - var homeworkid = this.props.match.params.homeworkid; - this.Gettitleinformation(homeworkid) - } - //获取题目信息 - Gettitleinformation = (homeworkid) => { - // console.log("获取题目信息"); - let url = `/homework_commons/${homeworkid}.json`; - axios.get(url).then((result) => { - if (result.status === 200) { - // console.log(url) - // console.log("设置页") - // console.log(JSON.stringify(result)) - this.setState({ - jobsettingsdata:result, - ...result.data - }) - } - }).catch((error) => { - console.log(error) - }) - } - jobdescriptiondisplaybj =()=>{ - this.setState({ - Showupdateinstructions:true, - }) - } - - //统一设置 - onChange = (e) => { - this.setState({ - unifiedsetting: e.target.checked, - }) - // console.log(e.target.checked); - } - - //立即发布 - homeworkstart = () => { - let homeworkid=this.props.match.params.homeworkid; - let url="/homework_commons/"+homeworkid+"/publish_groups.json"; - - axios.get(url).then((response) => { - - if (response.status === 200) { - let starttime = this.props.getNowFormatDates(1); - let endtime = this.props.getNowFormatDates(2); - this.setState({ - modalname: "立即发布", - modaltype: response.data.course_groups === null || response.data.course_groups.length === 0 ? 2 : 1, - visible: true, - Topval:"学生将立即收到作业", - // Botvalleft:"暂不发布", - Botval:`本操作只对"未发布"的分班有效`, - starttime: "发布时间:" + moment(moment(new Date())).format("YYYY-MM-DD HH:mm"), - endtime: "截止时间:" + endtime, - Cancelname: "暂不发布", - Savesname: "立即发布", - Cancel: this.homeworkhide, - Saves: this.homeworkstartend, - course_groups: response.data.course_groups, - starttimes:starttime, - typs:"start", - }) - } - }).catch((error) => { - console.log(error) - }); - - } - //立即截止 - homeworkends = () => { - let homeworkid=this.props.match.params.homeworkid; - let url="/homework_commons/"+homeworkid+"/end_groups.json"; - - axios.get(url).then((response) => { - - if (response.status === 200) { - this.setState({}) - this.setState({ - modalname: "立即截止", - modaltype: response.data.course_groups === null || response.data.course_groups.length === 0 ? 2 : 1, - visible: true, - Topval:"学生将不能再提交作业", - // Botvalleft:"暂不截止", - Botval:`本操作只对"提交中"的分班有效`, - Cancelname: "暂不截止", - Savesname: "立即截止", - Cancel: this.homeworkhide, - Saves: this.coursetaskend, - starttime: undefined, - endtime: undefined, - course_groups: response.data.course_groups, - typs:"end", - }) - } - }).catch((error) => { - console.log(error) - }); - - - } + //unifiedsetting 统一设置 + //allowreplenishment 允许补交 + //completionefficiencyscore 完成效率评分占比 + //level级别 + //proportion 比例 + constructor(props) { + super(props); + // this.props.form.setFieldsValue({ + // radiogroup:1, + // + // }); + this.state = { + // namestring:"JFinal是基于Java语言的极速web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、`Restful`。在拥有Java语言所有优势的同时再拥有`ruby`、`python`等动态语言的开发效率。\r\n\r\n在本实训中,我们将基于JFinal框架搭建一个在线商城。我们会学习到如何合理设计`Model`来进行数据表映射和数据操作、如何设计`Controller`对请求进行合理的处理…… 通过本实训,您不仅能收获到具体框架和技术的使用经验,也能对项目架构设计等知识有所了解或巩固。\r\n\r\n
    \r\n\t\r\n
    \r\n\r\n本实训聚焦一个在线商城项目的核心业务逻辑实现。你将在这一过程中收获Java Web项目设计的基本思想,也能得到编程能力的一次跃升。", + props: props, + starttimetype: false, + endtimetype: false, + latetimetype: false, + allowlate: 1, + latepenaltytype: false, + unifiedsetting: false, + allowreplenishment: undefined, + completionefficiencyscore: false, + proportion: undefined, + level: undefined, + ealuation: false, + latededuction: undefined, + latedeductiontwo: undefined, + Showupdateinstructions: false, + database: false, + datasheet: false, + databasetwo: undefined, + datasheettwo: undefined, + publicwork: undefined, + memo: {id: "94", user_id: 1}, + polls_descriptiontest: "作业说明...", + jobdescriptiondisplay: "none", + score_open: false, + code_review: false + } + } + + componentDidMount() { + var homeworkid = this.props.match.params.homeworkid; + // console.log(homeworkid) + this.Gettitleinformation(homeworkid) + let query = this.props.location.pathname; + const type = query.split('/'); + this.setState({ + shixuntypes: type[3] + }) + } + + isupdatas = () => { + var homeworkid = this.props.match.params.homeworkid; + this.Gettitleinformation(homeworkid) + } + //获取题目信息 + Gettitleinformation = (homeworkid) => { + // console.log("获取题目信息"); + let url = `/homework_commons/${homeworkid}.json`; + axios.get(url).then((result) => { + if (result.status === 200) { + // console.log(url) + // console.log("设置页") + // console.log(JSON.stringify(result)) + this.setState({ + jobsettingsdata: result, + ...result.data + }) + } + }).catch((error) => { + console.log(error) + }) + } + jobdescriptiondisplaybj = () => { + this.setState({ + Showupdateinstructions: true, + }) + } + + //统一设置 + onChange = (e) => { + this.setState({ + unifiedsetting: e.target.checked, + }) + // console.log(e.target.checked); + } + + //立即发布 + homeworkstart = () => { + let homeworkid = this.props.match.params.homeworkid; + let url = "/homework_commons/" + homeworkid + "/publish_groups.json"; + + axios.get(url).then((response) => { + + if (response.status === 200) { + let starttime = this.props.getNowFormatDates(1); + let endtime = this.props.getNowFormatDates(2); + this.setState({ + modalname: "立即发布", + modaltype: response.data.course_groups === null || response.data.course_groups.length === 0 ? 2 : 1, + visible: true, + Topval: "学生将立即收到作业", + // Botvalleft:"暂不发布", + Botval: `本操作只对"未发布"的分班有效`, + starttime: "发布时间:" + moment(moment(new Date())).format("YYYY-MM-DD HH:mm"), + endtime: "截止时间:" + endtime, + Cancelname: "暂不发布", + Savesname: "立即发布", + Cancel: this.homeworkhide, + Saves: this.homeworkstartend, + course_groups: response.data.course_groups, + starttimes: starttime, + typs: "start", + }) + } + }).catch((error) => { + console.log(error) + }); + + } + //立即截止 + homeworkends = () => { + let homeworkid = this.props.match.params.homeworkid; + let url = "/homework_commons/" + homeworkid + "/end_groups.json"; + + axios.get(url).then((response) => { + + if (response.status === 200) { + this.setState({}) + this.setState({ + modalname: "立即截止", + modaltype: response.data.course_groups === null || response.data.course_groups.length === 0 ? 2 : 1, + visible: true, + Topval: "学生将不能再提交作业", + // Botvalleft:"暂不截止", + Botval: `本操作只对"提交中"的分班有效`, + Cancelname: "暂不截止", + Savesname: "立即截止", + Cancel: this.homeworkhide, + Saves: this.coursetaskend, + starttime: undefined, + endtime: undefined, + course_groups: response.data.course_groups, + typs: "end", + }) + } + }).catch((error) => { + console.log(error) + }); + + + } // 立即发布 - homeworkstartend = (ds,endtime) => { - var homeworkid = this.props.match.params.homeworkid; - let {course_groupslist} = this.state; - - let coursesId = this.props.match.params.coursesId; - let url = "/courses/" + coursesId + "/homework_commons/publish_homework.json"; - axios.post(url, { - homework_ids: [homeworkid], - group_ids: course_groupslist, - end_time:endtime, - }).then((result) => { - if (result.status === 200) { - if (result.data.status === 0) { - notification.open({ - message:"提示", - description:result.data.message - }); - this.homeworkhide(); - } - - } - }).catch((error) => { - console.log(error); - }) - } - - //立即截止确定按钮 - coursetaskend = () => { - var homeworkid = this.props.match.params.homeworkid; - let {course_groupslist} = this.state; - - - const cid = this.props.match.params.coursesId; - let url = "/courses/" + cid + "/homework_commons/end_homework.json"; - axios.post(url, { - group_ids: course_groupslist, - homework_ids: [homeworkid], - }) - .then((response) => { - if (response.data.status == 0) { - notification.open({ - message:"提示", - description:response.data.message - }); - this.homeworkhide() - } - }) - .catch(function (error) { - console.log(error); - }); - } - ReleaseNotes=(explanations)=>{ - var homeworkid = this.props.match.params.homeworkid; - let url=`/homework_commons/${homeworkid}/update_explanation.json`; - axios.post((url), { - explanation: explanations - }) - .then((result)=>{ - if(result){ - this.props.showNotification(`${result.data.message}`); - this.setState({ - Showupdateinstructions:false - }) - var homeworkid = this.props.match.params.homeworkid; - // console.log(homeworkid) - this.Gettitleinformation(homeworkid) - } - }).catch((error)=>{ - console.log(error); - }) - } - - NOReleaseNotes=()=>{ - this.setState({ - Showupdateinstructions:false, - }) - } - workshowmodel=()=>{ - this.setState({ - showmodel:true - }) - } - - hideshowmodel=()=>{ - this.setState({ - showmodel:false - }) - } - - homeworkhide=()=>{ - this.isupdatas() + homeworkstartend = (ds, endtime) => { + var homeworkid = this.props.match.params.homeworkid; + let {course_groupslist} = this.state; + + let coursesId = this.props.match.params.coursesId; + let url = "/courses/" + coursesId + "/homework_commons/publish_homework.json"; + axios.post(url, { + homework_ids: [homeworkid], + group_ids: course_groupslist, + end_time: endtime, + }).then((result) => { + if (result.status === 200) { + if (result.data.status === 0) { + notification.open({ + message: "提示", + description: result.data.message + }); + this.homeworkhide(); + } + + } + }).catch((error) => { + console.log(error); + }) + } + + //立即截止确定按钮 + coursetaskend = () => { + var homeworkid = this.props.match.params.homeworkid; + let {course_groupslist} = this.state; + + + const cid = this.props.match.params.coursesId; + let url = "/courses/" + cid + "/homework_commons/end_homework.json"; + axios.post(url, { + group_ids: course_groupslist, + homework_ids: [homeworkid], + }) + .then((response) => { + if (response.data.status == 0) { + notification.open({ + message: "提示", + description: response.data.message + }); + this.homeworkhide() + } + }) + .catch(function (error) { + console.log(error); + }); + } + ReleaseNotes = (explanations) => { + var homeworkid = this.props.match.params.homeworkid; + let url = `/homework_commons/${homeworkid}/update_explanation.json`; + axios.post((url), { + explanation: explanations + }) + .then((result) => { + if (result) { + this.props.showNotification(`${result.data.message}`); + this.setState({ + Showupdateinstructions: false + }) + var homeworkid = this.props.match.params.homeworkid; + // console.log(homeworkid) + this.Gettitleinformation(homeworkid) + } + }).catch((error) => { + console.log(error); + }) + } + + NOReleaseNotes = () => { + this.setState({ + Showupdateinstructions: false, + }) + } + workshowmodel = () => { + this.setState({ + showmodel: true + }) + } + + hideshowmodel = () => { this.setState({ - modalname:undefined, - modaltype:undefined, - visible:false, - Topval:undefined, - Topvalright:undefined, - Botvalleft:undefined, - Botval:undefined, - starttime:undefined, - endtime:undefined, - Cancelname:undefined, - Savesname:undefined, - Cancel:undefined, - Saves:undefined, - StudentList_value:undefined, - addname:undefined, - addnametype:false, - addnametab:undefined, - typs:undefined, - starttimes:undefined, + showmodel: false }) } - getcourse_groupslist=(id)=>{ + + homeworkhide = () => { + this.isupdatas() this.setState({ - course_groupslist:id + modalname: undefined, + modaltype: undefined, + visible: false, + Topval: undefined, + Topvalright: undefined, + Botvalleft: undefined, + Botval: undefined, + starttime: undefined, + endtime: undefined, + Cancelname: undefined, + Savesname: undefined, + Cancel: undefined, + Saves: undefined, + StudentList_value: undefined, + addname: undefined, + addnametype: false, + addnametab: undefined, + typs: undefined, + starttimes: undefined, }) } + getcourse_groupslist = (id) => { + this.setState({ + course_groupslist: id + }) + } + + + // 导出实习报告批量 + internshipreport = () => { + console.log("internshipreport"); + var homeworkid = this.props.match.params.homeworkid; + let url = "/zip/shixun_report"; + axios.get((url),{ + params: { + homework_common_id: homeworkid, + } + }).then((response) => { + console.log("326"); + console.log(response); + + }).catch((error) => { + console.log(error) + }); + } + + // 课堂学生成绩的导出下载 + Classstudentachievement = () => { + console.log("Classstudentachievement"); + const course_id = this.props.match.params.coursesId; + let url = "/courses/" + course_id + "/export_member_scores_excel.xlsx"; + axios.get(url).then((response) => { + console.log("339"); + console.log(response); + + }).catch((error) => { + console.log(error) + }); + } + render() { - const dateFormat = 'YYYY-MM-DD HH:mm:ss'; - let {starttimetype, endtimetype, latetimetype, allowlate, latepenaltytype, jobsettingsdata,score_open,Showupdateinstructions - , homework_id} = this.state; - const radioStyle = { - display: 'block', - height: '30px', - lineHeight: '30px', - }; - const formItemLayout = { - labelCol: {span: 6}, - wrapperCol: {span: 14}, - }; - let coursesId = this.props.match.params.coursesId; - - - return ( -
    - {this.state.showmodel===true?this.hideshowmodel()} - updatas={()=>this.isupdatas()} - />:""} - {/*立即发布*/} - this.getcourse_groupslist(id)} - starttimes={this.state.starttimes} - typs={this.state.typs} - /> -
    -
    -

    - {jobsettingsdata === undefined ? "" : jobsettingsdata.data.course_name} - > - {jobsettingsdata === undefined ? "" : jobsettingsdata.data.category.category_name} - > - 作业详情 -

    -
    -
    -

    - {jobsettingsdata === undefined ? "" : jobsettingsdata.data.homework_name} -

    - - 返回 - 实训详情 - - -
    -
    -
    -
    - {this.props.isAdmin() === true? 作品列表: - 作品列表 - // :作品列表(学生完成) - } - - 作业问答 - {this.props.isAdmin()? - this.state.code_review===true||jobsettingsdata === undefined ? [""] : jobsettingsdata.data.homework_status[0]==="未发布"?"": - 代码查重:""} - - 设置 - {/*导出成绩*/} - - {this.props.isAdmin() ?
  • - 导出 - -
  • : ""} - {this.props.isAdmin() ?jobsettingsdata&&jobsettingsdata.data.end_immediately===true? - 立即截止:"" : ""} - {this.props.isAdmin() ?jobsettingsdata&&jobsettingsdata.data.publish_immediately===true? - 立即发布 :"": ""} - - - {this.props.isAdmin()? - this.state.code_review===true? - 代码查重 - :"":""} - -
    -
    - - {jobsettingsdata === undefined|| jobsettingsdata.data.description===null? "无" :
    + {this.props.isAdmin() ? +
  • + 导出 + +
  • : ""} + {this.props.isAdmin() ? jobsettingsdata && jobsettingsdata.data.end_immediately === true ? + 立即截止 : "" : ""} + {this.props.isAdmin() ? jobsettingsdata && jobsettingsdata.data.publish_immediately === true ? + 立即发布 : "" : ""} + + + {this.props.isAdmin() ? + this.state.code_review === true ? + 代码查重 + : "" : ""} + +
    +
    + + {jobsettingsdata === undefined || jobsettingsdata.data.description === null ? "无" : +
    -
    - {/* /!*{}}>
    +
    + {/* /!*{}}>
    {/* /!*{jobsettingsdata.data.description}*!/*/} - {/* */} + {/* */}
    - {/*
    */} - {/*

    */} - {/* /!*{ChallengesDataList === undefined ? "" :ChallengesDataList.description===null?""*!/*/} - {/* */} - {/* /!*}*!/*/} - {/*

    */} - - {/*
    */} + {/*
    */} + {/*

    */} + {/* /!*{ChallengesDataList === undefined ? "" :ChallengesDataList.description===null?""*!/*/} + {/* */} + {/* /!*}*!/*/} + {/*

    */} + + {/*
    */} -
    } - -
    -
    作业说明:
    - { - this.props.isAdmin()&&this.props.isAdmin()===true ? - - (Showupdateinstructions&& Showupdateinstructions === true?"": - this.jobdescriptiondisplaybj()} > - ):"" - } - -
    - - -
    - { Showupdateinstructions&& Showupdateinstructions === true? -
    - -
    - : -
    - {jobsettingsdata === undefined ? "无" : jobsettingsdata === null ? "无" : jobsettingsdata === "null" ? "无" : - jobsettingsdata.data.explanation=== undefined?"无" :jobsettingsdata.data.explanation=== null?"无": -
    - } - -
    - } +
    } + +
    +
    作业说明:
    + { + this.props.isAdmin() && this.props.isAdmin() === true ? + + (Showupdateinstructions && Showupdateinstructions === true ? "" : + this.jobdescriptiondisplaybj()}> + ) : "" + } + +
    + + +
    + {Showupdateinstructions && Showupdateinstructions === true ? +
    + +
    + : +
    + {jobsettingsdata === undefined ? "无" : jobsettingsdata === null ? "无" : jobsettingsdata === "null" ? "无" : + jobsettingsdata.data.explanation === undefined ? "无" : jobsettingsdata.data.explanation === null ? "无" : +
    + } + +
    + }
    - -{/* */} - {/*
    */} - {/**/} - {/*
    */} - {/*{ Showupdateinstructions&& Showupdateinstructions === true?*/} - {/*
    */} - {/* */} - {/*
    */} - {/* :""*/} - {/*}*/} - { homework_id && - } - - - - - - - ) - } + + {/* */} + {/*
    */} + {/**/} + {/*
    */} + {/*{ Showupdateinstructions&& Showupdateinstructions === true?*/} + {/*
    */} + {/* */} + {/*
    */} + {/* :""*/} + {/*}*/} + {homework_id && + } + + + + + + + ) + } } export default Workquestionandanswer; \ No newline at end of file From 6b1054238d54f9ef2cbb11701330b0796e2fa7f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Thu, 4 Jul 2019 10:15:07 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/modules/tpm/newshixuns/Newshixuns.js | 1 + .../tpm/shixunchild/Challenges/Challenges.js | 120 +++++++++++------- 2 files changed, 75 insertions(+), 46 deletions(-) diff --git a/public/react/src/modules/tpm/newshixuns/Newshixuns.js b/public/react/src/modules/tpm/newshixuns/Newshixuns.js index fd3097c3f..cb8433e58 100644 --- a/public/react/src/modules/tpm/newshixuns/Newshixuns.js +++ b/public/react/src/modules/tpm/newshixuns/Newshixuns.js @@ -928,6 +928,7 @@ class Newshixuns extends Component {