浏览代码

Merge branch 'beta' into HK

lsc 2 年之前
父节点
当前提交
6fe45f5549
共有 4 个文件被更改,包括 130 次插入88 次删除
  1. 37 27
      src/components/easy2/studyStudent.vue
  2. 37 27
      src/components/easy3/studyStudent.vue
  3. 19 7
      src/components/index.vue
  4. 37 27
      src/components/studyStudent.vue

+ 37 - 27
src/components/easy2/studyStudent.vue

@@ -16925,40 +16925,50 @@ export default {
         });
     },
     downloadFile2(f) {
-      let url = f.url;
-      let _this = this;
-      let _url = "";
+      const loading = this.$loading.service({
+        background: "rgba(255, 255, 255, 0.7)",
+        target: document.body,
+        text: "文件加载中...",
+      });
+      let url2 = f.url;
+      let _url2 = "";
       if (
-        url.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
+        url2.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
       ) {
-        _url = url.split(
+        _url2 = url2.split(
           "https://view.officeapps.live.com/op/view.aspx?src="
         )[1];
       } else {
-        _url = url;
+        _url2 = url2;
       }
-      const x = new XMLHttpRequest();
-      x.open("GET", _url, true);
-      x.responseType = "blob";
-      const loading = _this.$loading.service({
-        background: "rgba(255, 255, 255, 0.7)",
-        target: document.body,
-        text: "文件加载中...",
-      });
-      // _this.$message.success("文件下载中...");
-      x.onload = function (e) {
-        loading.close();
-        let content = x.response;
-        let elink = document.createElement("a");
-        elink.download = f.name;
-        elink.style.display = "none";
-        let blob = new Blob([content]);
-        elink.href = URL.createObjectURL(blob);
-        document.body.appendChild(elink);
-        elink.click();
-        document.body.removeChild(elink);
+      let params = {
+        url: _url2,
+        name: f.name,
       };
-      x.send();
+      this.ajax
+        .get(this.$store.state.api + "download", params)
+        .then((res) => {
+          console.log(res);
+          loading.close();
+          let content = res.data.data.data;
+          let ab = new ArrayBuffer(content.length);
+          let view = new Uint8Array(ab);
+          for (var i = 0; i < content.length; ++i) {
+            view[i] = content[i];
+          }
+          let elink = document.createElement("a");
+          elink.download = f.name;
+          elink.style.display = "none";
+          let blob = new Blob([ab], { type: res.data.response.headers['content-type']+';charset=UTF-8'});
+          elink.href = URL.createObjectURL(blob);
+          document.body.appendChild(elink);
+          elink.click();
+          document.body.removeChild(elink);
+        })
+        .catch((err) => {
+          loading.close();
+          console.error(err);
+        });
     },
     downloadFile(url) {
       let _this = this;

+ 37 - 27
src/components/easy3/studyStudent.vue

@@ -16789,40 +16789,50 @@ export default {
         });
     },
     downloadFile2(f) {
-      let url = f.url;
-      let _this = this;
-      let _url = "";
+      const loading = this.$loading.service({
+        background: "rgba(255, 255, 255, 0.7)",
+        target: document.body,
+        text: "文件加载中...",
+      });
+      let url2 = f.url;
+      let _url2 = "";
       if (
-        url.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
+        url2.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
       ) {
-        _url = url.split(
+        _url2 = url2.split(
           "https://view.officeapps.live.com/op/view.aspx?src="
         )[1];
       } else {
-        _url = url;
+        _url2 = url2;
       }
-      const x = new XMLHttpRequest();
-      x.open("GET", _url, true);
-      x.responseType = "blob";
-      const loading = _this.$loading.service({
-        background: "rgba(255, 255, 255, 0.7)",
-        target: document.body,
-        text: "文件加载中...",
-      });
-      // _this.$message.success("文件下载中...");
-      x.onload = function (e) {
-        loading.close();
-        let content = x.response;
-        let elink = document.createElement("a");
-        elink.download = f.name;
-        elink.style.display = "none";
-        let blob = new Blob([content]);
-        elink.href = URL.createObjectURL(blob);
-        document.body.appendChild(elink);
-        elink.click();
-        document.body.removeChild(elink);
+      let params = {
+        url: _url2,
+        name: f.name,
       };
-      x.send();
+      this.ajax
+        .get(this.$store.state.api + "download", params)
+        .then((res) => {
+          console.log(res);
+          loading.close();
+          let content = res.data.data.data;
+          let ab = new ArrayBuffer(content.length);
+          let view = new Uint8Array(ab);
+          for (var i = 0; i < content.length; ++i) {
+            view[i] = content[i];
+          }
+          let elink = document.createElement("a");
+          elink.download = f.name;
+          elink.style.display = "none";
+          let blob = new Blob([ab], { type: res.data.response.headers['content-type']+';charset=UTF-8'});
+          elink.href = URL.createObjectURL(blob);
+          document.body.appendChild(elink);
+          elink.click();
+          document.body.removeChild(elink);
+        })
+        .catch((err) => {
+          loading.close();
+          console.error(err);
+        });
     },
     downloadFile(url) {
       let _this = this;

+ 19 - 7
src/components/index.vue

@@ -300,7 +300,7 @@ export default {
     getCourse(typeName, ftypeId, typeid, type) {
       this.page = 1;
       this.zoneClass = [];
-      if (typeName == "年级") {
+      if (typeid == "34628934-d02f-11ec-8c78-005056b86db5" || ftypeId == '34628934-d02f-11ec-8c78-005056b86db5' || typeid == "34628934-d02f-11ec-8c78-005056b86ac5" || ftypeId == "34628934-d02f-11ec-8c78-005056b86ac5") {
         if (type == 1) {
           if (this.typeE.indexOf(typeid) != -1) {
              if(this.oid == '69893dca-1d47-11ed-8c78-005056b86db5'){
@@ -435,7 +435,7 @@ export default {
             }
           }
         }
-      } else if (typeName == "学科") {
+      } else if (typeid == "34629907-d02f-11ec-8c78-005056b86db5" || ftypeId == '34629907-d02f-11ec-8c78-005056b86db5' || typeid == "34629907-d02f-11ec-8c78-005056b86ac5" || ftypeId == "34629907-d02f-11ec-8c78-005056b86ac5") {
         if (type == 1) {
           if (this.typeE.indexOf(typeid) != -1) {
              if(this.oid == '69893dca-1d47-11ed-8c78-005056b86db5'){
@@ -701,6 +701,9 @@ export default {
       this.ajax
         .get(this.$store.state.api + "selectAllType", params)
         .then((res) => {
+          if(this.oid == "69893dca-1d47-11ed-8c78-005056b86db5"){
+            res.data[0] = [...res.data[0],...res.data[4]]
+          }
           this.CourseTypeJson = {};
           this.CourseType = res.data;
           this.CourseType3 = [
@@ -711,14 +714,23 @@ export default {
 
           for (var cti = 0; cti < res.data[0].length; cti++) {
             if (
-              res.data[0][cti].name == "年级" ||
-              res.data[0][cti].name == "学科"
+              res.data[0][cti].id == "34628934-d02f-11ec-8c78-005056b86db5" ||
+              res.data[0][cti].id == "34629907-d02f-11ec-8c78-005056b86db5"
             ) {
-              this.CourseType3[1].id.push(res.data[0][cti].id);
               this.CourseType3[0].id.push(res.data[0][cti].id);
-            } else if (res.data[0][cti].name == "主题") {
+            }else if(res.data[0][cti].id == "34628934-d02f-11ec-8c78-005056b86ac5" ||
+              res.data[0][cti].id == "34629907-d02f-11ec-8c78-005056b86ac5"){
+              this.CourseType3[1].id.push(res.data[0][cti].id);
+            } else if (res.data[0][cti].id == "34629bcc-d02f-11ec-8c78-005056b86db5") {
               this.CourseType3[2].id.push(res.data[0][cti].id);
             }
+            if(res.data[0][cti].id == "34628934-d02f-11ec-8c78-005056b86db5" || res.data[0][cti].id == "34628934-d02f-11ec-8c78-005056b86ac5"){
+              res.data[0][cti].name = "年级";
+            }else if(res.data[0][cti].id == "34629907-d02f-11ec-8c78-005056b86db5" || res.data[0][cti].id == "34629907-d02f-11ec-8c78-005056b86ac5"){
+              res.data[0][cti].name = "学科";
+            }else if(res.data[0][cti].id == "34629bcc-d02f-11ec-8c78-005056b86db5"){
+              res.data[0][cti].name = "主题";
+            }
           }
           for (var i = 0; i < res.data[0].length; i++) {
             if (!this.cid) {
@@ -1044,7 +1056,7 @@ export default {
   display: flex;
   flex-direction: row;
   align-items: baseline;
-  margin: 2px 0;
+  /* margin: 2px 0; */
   width: 100%;
 }
 

+ 37 - 27
src/components/studyStudent.vue

@@ -16061,40 +16061,50 @@ export default {
         });
     },
     downloadFile2(f) {
-      let url = f.url;
-      let _this = this;
-      let _url = "";
+      const loading = this.$loading.service({
+        background: "rgba(255, 255, 255, 0.7)",
+        target: document.body,
+        text: "文件加载中...",
+      });
+      let url2 = f.url;
+      let _url2 = "";
       if (
-        url.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
+        url2.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
       ) {
-        _url = url.split(
+        _url2 = url2.split(
           "https://view.officeapps.live.com/op/view.aspx?src="
         )[1];
       } else {
-        _url = url;
+        _url2 = url2;
       }
-      const x = new XMLHttpRequest();
-      x.open("GET", _url, true);
-      x.responseType = "blob";
-      const loading = _this.$loading.service({
-        background: "rgba(255, 255, 255, 0.7)",
-        target: document.body,
-        text: "文件加载中...",
-      });
-      // _this.$message.success("文件下载中...");
-      x.onload = function (e) {
-        loading.close();
-        let content = x.response;
-        let elink = document.createElement("a");
-        elink.download = f.name;
-        elink.style.display = "none";
-        let blob = new Blob([content]);
-        elink.href = URL.createObjectURL(blob);
-        document.body.appendChild(elink);
-        elink.click();
-        document.body.removeChild(elink);
+      let params = {
+        url: _url2,
+        name: f.name,
       };
-      x.send();
+      this.ajax
+        .get(this.$store.state.api + "download", params)
+        .then((res) => {
+          console.log(res);
+          loading.close();
+          let content = res.data.data.data;
+          let ab = new ArrayBuffer(content.length);
+          let view = new Uint8Array(ab);
+          for (var i = 0; i < content.length; ++i) {
+            view[i] = content[i];
+          }
+          let elink = document.createElement("a");
+          elink.download = f.name;
+          elink.style.display = "none";
+          let blob = new Blob([ab], { type: res.data.response.headers['content-type']+';charset=UTF-8'});
+          elink.href = URL.createObjectURL(blob);
+          document.body.appendChild(elink);
+          elink.click();
+          document.body.removeChild(elink);
+        })
+        .catch((err) => {
+          loading.close();
+          console.error(err);
+        });
     },
     downloadFile(url) {
       let _this = this;