From 19a85a054ae70f0a8869d11c641109cddd779ba0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 5 Jul 2019 11:00:45 +0800 Subject: [PATCH 1/8] =?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 | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index d6950d43a..e58d2bb0e 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1346,7 +1346,7 @@ class Listofworks extends Component { // } // let url = "/zip/shixun_report"; // let homeworkid = this.props.match.params.homeworkid; - axios.get((url),{headers:{'filename':'utf-8'}}).then((response) => { + axios.get((url),{headers:{'filename':'utf-8'},responseType: 'blob',}).then((response) => { console.log("1350"); console.log(response); if(response.data.status&&response.data.status===-1){ @@ -1355,20 +1355,20 @@ class Listofworks extends Component { }else if(response.data.status&&response.data.status===-2){ }else{ - window.location.href("/api"+url); - // response.blob().then(blob => { - // //关闭loading 按钮恢复正常 - // let blobUrl = window.URL.createObjectURL(blob); - // const filename = times.formatNowDate() + '.zip'; - // const aElement = document.createElement('a'); - // document.body.appendChild(aElement); - // aElement.style.display = 'none'; - // aElement.href = blobUrl; - // aElement.download = filename; - // aElement.click(); - // document.body.removeChild(aElement); - // }); - + // window.location.href("/api"+url); + console.log("开始下载zip文件") + const type='application/zip'//ZIP文件 + const blob = new Blob([response.data], { type: type }) + const downloadElement = document.createElement('a') + const href = window.URL.createObjectURL(blob) + //后台再header中传文件名 + const name = decodeURI(response.headers['content-disposition'].split('=')[1]) + downloadElement.href = href + downloadElement.download = name + document.body.appendChild(downloadElement) + downloadElement.click() + document.body.removeChild(downloadElement) // 下载完成移除元素 + window.URL.revokeObjectURL(href) // 释放掉blob对象 } }).catch((error) => { console.log(error) From b057098eb936ed3f9d24118821bae2b4f93edf0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Fri, 5 Jul 2019 11:25:34 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/package.json | 2 +- .../react/src/modules/courses/Resource/index.js | 4 ++-- .../courses/shixunHomework/shixunHomework.js | 15 ++++++++++----- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/public/react/package.json b/public/react/package.json index ebfda1b41..54519f009 100644 --- a/public/react/package.json +++ b/public/react/package.json @@ -93,7 +93,7 @@ "wrap-md-editor": "^0.2.20" }, "scripts": { - "start": "node --max_old_space_size=8072 scripts/start.js", + "start": "node --max_old_space_size=15360 scripts/start.js", "build": "node --max_old_space_size=15360 scripts/build.js", "concat": "node scripts/concat.js", "gen_stats": "NODE_ENV=production webpack --profile --config=./config/webpack.config.prod.js --json > stats.json", diff --git a/public/react/src/modules/courses/Resource/index.js b/public/react/src/modules/courses/Resource/index.js index 06531d142..1ad136934 100644 --- a/public/react/src/modules/courses/Resource/index.js +++ b/public/react/src/modules/courses/Resource/index.js @@ -123,7 +123,7 @@ class Fileslists extends Component{ list.map((item,key)=>{ course_second_categoriess=item.course_second_categories }) - debugger + this.setState({ course_modules:response.data, has_course_groups:response.data.has_course_groups, @@ -850,7 +850,7 @@ class Fileslists extends Component{ {/*})*/} {/*)*/} {/*})}*/} - {this.props.isAdmin()?parseInt(this.props.match.params.main_id)===parseInt(this.props.coursesids)? + {this.props.isAdmin()?parseInt(this.props.match.params.main_id)===filesId&&filesId?

this.addDir()}>添加目录

diff --git a/public/react/src/modules/courses/shixunHomework/shixunHomework.js b/public/react/src/modules/courses/shixunHomework/shixunHomework.js index 9bf782d48..9bf0d12a4 100644 --- a/public/react/src/modules/courses/shixunHomework/shixunHomework.js +++ b/public/react/src/modules/courses/shixunHomework/shixunHomework.js @@ -976,7 +976,8 @@ class ShixunHomework extends Component{ order, }=this.state; - + let main_id=this.props.match.params.main_id; + let category_id=this.props.match.params.category_id; return(
@@ -1131,7 +1132,7 @@ class ShixunHomework extends Component{ {course_modules&&course_modules.main_category.map((item,key)=>{ return( - datas&&datas.category_id===null?datas.main_category_id===item.main_category_id?"":
  • this.moveTos(item.main_category_id)}>{item.main_category_name}
  • :"" + datas&&datas.category_id===null?"":
  • this.moveTos(item.main_category_id)}>{item.main_category_name}
  • :"" ) })} @@ -1139,8 +1140,12 @@ class ShixunHomework extends Component{ { course_modules&&course_modules.homework_category.filter((item,key)=> { return (!this.state.dirSearchValue || item.category_name.indexOf(this.state.dirSearchValue) != -1) }).map( (item,key) => { - return - datas&&datas.category_id!=null?datas.category_id===item.category_id?"":
  • this.moveTos(item.category_id )}>{item.category_name}
  • :"" + if(datas&&datas.category_id!=null&&datas&&datas.category_id===item.category_id===false){ + return
  • this.moveTos(item.category_id )}>{item.category_name}
  • + } + if(datas&&datas.category_id===null){ + return
  • this.moveTos(item.category_id )}>{item.category_name}
  • + } })} @@ -1152,7 +1157,7 @@ class ShixunHomework extends Component{ } `} - {course_modules&&course_modules.homework_category.length===0? + {course_modules&&course_modules.homework_category.length===0&&datas&&datas.category_id===null?
    暂无数据
    :""} {/*{course_modules&&course_modules.homework_category.map((item,key)=>{*/} From 8bb7d0d50a5add25ab0b4a81a16491306a2cd917 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 5 Jul 2019 11:58:16 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/courses/shixunHomework/Listofworks.js | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index e58d2bb0e..4f3c3b9d4 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1419,9 +1419,18 @@ class Listofworks extends Component { }else if(response.data.status&&response.data.status===-2){ }else{ - window.location.href("/api"+url); - - // window.open("/api"+url, '_blank'); + const type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8' //excel文件 + const blob = new Blob([response.data], { type: type }) + const downloadElement = document.createElement('a') + const href = window.URL.createObjectURL(blob) + //后台再header中传文件名 + const name = decodeURI(response.headers['content-disposition'].split('=')[1]) + downloadElement.href = href + downloadElement.download = name + document.body.appendChild(downloadElement) + downloadElement.click() + document.body.removeChild(downloadElement) // 下载完成移除元素 + window.URL.revokeObjectURL(href) // 释放掉blob对象 } }).catch((error) => { From 80ca6bc9fec29e580b6c8b370f8a231f8094c676 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 5 Jul 2019 12:12:33 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../react/src/modules/courses/shixunHomework/Listofworks.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index 4f3c3b9d4..3620f0792 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1419,12 +1419,14 @@ class Listofworks extends Component { }else if(response.data.status&&response.data.status===-2){ }else{ - const type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8' //excel文件 + const type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' //excel文件 const blob = new Blob([response.data], { type: type }) const downloadElement = document.createElement('a') const href = window.URL.createObjectURL(blob) //后台再header中传文件名 const name = decodeURI(response.headers['content-disposition'].split('=')[1]) + console.log(response.headers['content-disposition'].split('=')[1]); + console.log(name); downloadElement.href = href downloadElement.download = name document.body.appendChild(downloadElement) From f2b301408b83bf39a1d0f44a1c42747a5b2268f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 5 Jul 2019 12:23:48 +0800 Subject: [PATCH 5/8] b --- .../react/src/modules/courses/shixunHomework/Listofworks.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index 3620f0792..ada6254bc 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1346,7 +1346,7 @@ class Listofworks extends Component { // } // let url = "/zip/shixun_report"; // let homeworkid = this.props.match.params.homeworkid; - axios.get((url),{headers:{'filename':'utf-8'},responseType: 'blob',}).then((response) => { + axios.get((url),{headers:{'filename':'utf-8'},responseType: 'blob'}).then((response) => { console.log("1350"); console.log(response); if(response.data.status&&response.data.status===-1){ @@ -1410,7 +1410,7 @@ class Listofworks extends Component { // search: this.state.searchtext, // } // },{responseType: 'blob'}) - axios.get((url),{headers:{'filename':'utf-8'}}).then((response) => { + axios.get((url),{headers:{'filename':'utf-8'},responseType: 'blob'}).then((response) => { console.log("1374"); console.log(response); if(response.data.status&&response.data.status===-1){ From 881bd3dcf2b9d538c19b1d9624107f218d59217d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Fri, 5 Jul 2019 12:34:21 +0800 Subject: [PATCH 6/8] =?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/courses/exercise/Exercisestatisticalresult.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/react/src/modules/courses/exercise/Exercisestatisticalresult.js b/public/react/src/modules/courses/exercise/Exercisestatisticalresult.js index ca7b8e403..51b8ae98b 100644 --- a/public/react/src/modules/courses/exercise/Exercisestatisticalresult.js +++ b/public/react/src/modules/courses/exercise/Exercisestatisticalresult.js @@ -102,7 +102,7 @@ class Exercisestatisticalresult extends Component { } `} -
    +
    {data&&data.course_groups.length===0?"":
    From 34130459741f9e04e7f4699809ebd974efd0ac16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 5 Jul 2019 12:54:57 +0800 Subject: [PATCH 7/8] b --- .../courses/shixunHomework/Listofworks.js | 31 ++----------------- 1 file changed, 3 insertions(+), 28 deletions(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index ada6254bc..7dd49a203 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1346,7 +1346,7 @@ class Listofworks extends Component { // } // let url = "/zip/shixun_report"; // let homeworkid = this.props.match.params.homeworkid; - axios.get((url),{headers:{'filename':'utf-8'},responseType: 'blob'}).then((response) => { + axios.get((url),{responseType: 'blob'}).then((response) => { console.log("1350"); console.log(response); if(response.data.status&&response.data.status===-1){ @@ -1374,31 +1374,6 @@ class Listofworks extends Component { console.log(error) }); } - //字节装为字符串 - utf8ByteArrayToString(bytes) { - var out = [], pos =0, c =0; - while (pos < bytes.length) { - var c1 = bytes[pos++]; - if (c1 <128) { - out[c++] = String.fromCharCode(c1); - }else if (c1 >191 && c1 <224) { - var c2 = bytes[pos++]; - out[c++] = String.fromCharCode((c1 &31) <<6 | c2 &63); - }else if (c1 >239 && c1 <365) { - var c2 = bytes[pos++]; - var c3 = bytes[pos++]; - var c4 = bytes[pos++]; - var u = ((c1 &7) <<18 | (c2 &63) <<12 | (c3 &63) <<6 | c4 &63) -0x10000; - out[c++] = String.fromCharCode(0xD800 + (u >>10)); - out[c++] = String.fromCharCode(0xDC00 + (u &1023)); - }else { - var c2 = bytes[pos++]; - var c3 = bytes[pos++]; - out[c++] =String.fromCharCode((c1 &15) <<12 | (c2 &63) <<6 | c3 &63); - } - } - return out.join(''); - } // 课堂学生成绩的导出下载 Classstudentachievement=(url)=>{ console.log("Classstudentachievement"); @@ -1410,7 +1385,7 @@ class Listofworks extends Component { // search: this.state.searchtext, // } // },{responseType: 'blob'}) - axios.get((url),{headers:{'filename':'utf-8'},responseType: 'blob'}).then((response) => { + axios.get((url),{responseType: 'blob'}).then((response) => { console.log("1374"); console.log(response); if(response.data.status&&response.data.status===-1){ @@ -1428,7 +1403,7 @@ class Listofworks extends Component { console.log(response.headers['content-disposition'].split('=')[1]); console.log(name); downloadElement.href = href - downloadElement.download = name + downloadElement.download = '201975.xlsx' document.body.appendChild(downloadElement) downloadElement.click() document.body.removeChild(downloadElement) // 下载完成移除元素 From b2f0d818c8d2b09236865b9c5cc4fe6c9e8577c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 5 Jul 2019 13:39:05 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/src/modules/courses/shixunHomework/Listofworks.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/react/src/modules/courses/shixunHomework/Listofworks.js b/public/react/src/modules/courses/shixunHomework/Listofworks.js index 7dd49a203..d697694cb 100644 --- a/public/react/src/modules/courses/shixunHomework/Listofworks.js +++ b/public/react/src/modules/courses/shixunHomework/Listofworks.js @@ -1403,7 +1403,7 @@ class Listofworks extends Component { console.log(response.headers['content-disposition'].split('=')[1]); console.log(name); downloadElement.href = href - downloadElement.download = '201975.xlsx' + downloadElement.download = name document.body.appendChild(downloadElement) downloadElement.click() document.body.removeChild(downloadElement) // 下载完成移除元素