Browse Source

Merge branch 'master' of https://git.cocorobo.cn/CocoRoboLabs/pbl-student-table

zengyicheng 2 years ago
parent
commit
c1d3e9d4b5
1 changed files with 112 additions and 96 deletions
  1. 112 96
      src/common/jietu2.js

+ 112 - 96
src/common/jietu2.js

@@ -1,104 +1,120 @@
-function jietu_shishi(uid, cid, stage, task, tool) {
-  html2canvas($("body")[0]).then(function (canvas) {
-    //获取截取图片路径
+ let _loading = document.createElement('div')
+ _loading.style = "width:100%;height:100%;background:#0000008f;position:fixed;top:0;left:0;z-index:99999999999999;display: flex;justify-content: center;align-items: center;"
+ let _lchild = document.createElement('div')
+ let _limg = document.createElement('img')
+ _limg.src = 'https://pbl.cocorobo.cn/pbl-student-table/dist/js/loading.gif'
+ _limg.style = "width: 26px;margin-right: 10px;"
+ _lchild.appendChild(_limg)
+ let _lspan = document.createElement('span')
+ _lspan.innerHTML = "上传中..."
+ _lchild.appendChild(_lspan)
+ _lchild.style = "color: #fff;padding: 15px;background: #00000070;border-radius: 5px;font-size: 18px;display:flex;align-items:center;"
+ _loading.appendChild(_lchild)
+ //  document.body.appendChild(_loading)
 
-    var base64Url = canvas.toDataURL('image/png');
-    //后台操作处理
+ function jietu_shishi(uid, cid, stage, task, tool) {
+   html2canvas($("body")[0]).then(function (canvas) {
+     //获取截取图片路径
 
-    var base64 = "<img src=" + base64Url + " />"
-    var file = dataURLtoFile_shishi(base64Url, "截图")
-    beforeUpload_shishi(file, uid, cid, stage, task, tool)
-    // $("body")[0].innerHTML = base64
-  });
-}
+     var base64Url = canvas.toDataURL('image/png');
+     //后台操作处理
 
-function dataURLtoFile_shishi(dataurl, filename) {
-  let arr = dataurl.split(","),
-    mime = arr[0].match(/:(.*?);/)[1],
-    bstr = atob(arr[1]),
-    n = bstr.length,
-    u8arr = new Uint8Array(n);
-  while (n--) {
-    u8arr[n] = bstr.charCodeAt(n);
-  }
-  return new File([u8arr], filename, {
-    type: mime
-  });
-}
+     var base64 = "<img src=" + base64Url + " />"
+     var file = dataURLtoFile_shishi(base64Url, "截图")
+     beforeUpload_shishi(file, uid, cid, stage, task, tool)
+     // $("body")[0].innerHTML = base64
+   });
+ }
 
+ function dataURLtoFile_shishi(dataurl, filename) {
+   let arr = dataurl.split(","),
+     mime = arr[0].match(/:(.*?);/)[1],
+     bstr = atob(arr[1]),
+     n = bstr.length,
+     u8arr = new Uint8Array(n);
+   while (n--) {
+     u8arr[n] = bstr.charCodeAt(n);
+   }
+   return new File([u8arr], filename, {
+     type: mime
+   });
+ }
 
-function beforeUpload_shishi(nfile, uid, cid, stage, task, tool) {
-  var file = nfile;
-  var credentials = {
-    accessKeyId: "AKIATLPEDU37QV5CHLMH",
-    secretAccessKey: "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",
-  }; //秘钥形式的登录上传
-  window.AWS.config.update(credentials);
-  window.AWS.config.region = "cn-northwest-1"; //设置区域
 
-  var bucket = new window.AWS.S3({
-    params: {
-      Bucket: "ccrb"
-    }
-  }); //选择桶
+ function beforeUpload_shishi(nfile, uid, cid, stage, task, tool) {
+  //  document.body.appendChild(_loading)
+   var file = nfile;
+   var credentials = {
+     accessKeyId: "AKIATLPEDU37QV5CHLMH",
+     secretAccessKey: "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",
+   }; //秘钥形式的登录上传
+   window.AWS.config.update(credentials);
+   window.AWS.config.region = "cn-northwest-1"; //设置区域
 
-  if (file) {
-    var params = {
-      Key: file.name.split(".")[0] + new Date().getTime() + "." + "png",
-      ContentType: file.type,
-      Body: file,
-      "Access-Control-Allow-Credentials": "*",
-      ACL: "public-read",
-    }; //key可以设置为桶的相抵路径,Body为文件, ACL最好要设置
-    var options = {
-      partSize: 2048 * 1024 * 1024,
-      queueSize: 2,
-      leavePartsOnError: true,
-    };
-    bucket.upload(params, options)
-      .on("httpUploadProgress", function (evt) {
-        //这里可以写进度条
-        // console.log("Uploaded : " + parseInt((evt.loaded * 80) / evt.total) + '%');
-      }).send(function (err, data) {
-        console.log(data.Location);
-        var a = {
-          name: file.name,
-          url: data.Location,
-          uid: file.uid,
-        }
-        addSWork_shishi(uid, cid, stage, task, tool, data.Location)
-      });
-  }
-}
+   var bucket = new window.AWS.S3({
+     params: {
+       Bucket: "ccrb"
+     }
+   }); //选择桶
 
-function addSWork_shishi(uid, cid, stage, task, tool, a) {
-  let params = {
-    uid: uid,
-    cid: cid,
-    stage: stage,
-    task: task,
-    tool: tool,
-    content: a,
-    type: 1,
-    // upload: JSON.stringify(this.imgFileUp),
-  };
-  $.ajax({
-    type: 'GET',
-    url: 'https://pbl.cocorobo.cn/api/pbl/addCourseWorks2',
-    data: params,
-    dataType: "json",
-    success: (data) => {
-      let _div = document.createElement('div')
-      _div.style = "width:100%;height:100%;background:#0000008f;position:fixed;top:0;left:0;z-index:99999999999999;display: flex;justify-content: center;align-items: center;"
-      let _inner = document.createElement('div')
-      _inner.style = "color: #fff;padding: 15px;background: #00000070;border-radius: 5px;font-size: 18px;"
-      _inner.innerHTML = "截图上传成功"
-      _div.appendChild(_inner)
-      document.body.appendChild(_div)
-      setTimeout(() => {
-        document.body.removeChild(_div)
-      }, 2000);
-      console.log("截图上传成功");
-    }
-  })
-}
+   if (file) {
+     var params = {
+       Key: file.name.split(".")[0] + new Date().getTime() + "." + "png",
+       ContentType: file.type,
+       Body: file,
+       "Access-Control-Allow-Credentials": "*",
+       ACL: "public-read",
+     }; //key可以设置为桶的相抵路径,Body为文件, ACL最好要设置
+     var options = {
+       partSize: 2048 * 1024 * 1024,
+       queueSize: 2,
+       leavePartsOnError: true,
+     };
+     bucket.upload(params, options)
+       .on("httpUploadProgress", function (evt) {
+         //这里可以写进度条
+         // console.log("Uploaded : " + parseInt((evt.loaded * 80) / evt.total) + '%');
+       }).send(function (err, data) {
+         console.log(data.Location);
+         var a = {
+           name: file.name,
+           url: data.Location,
+           uid: file.uid,
+         }
+         addSWork_shishi(uid, cid, stage, task, tool, data.Location)
+       });
+   }
+ }
+
+ function addSWork_shishi(uid, cid, stage, task, tool, a) {
+   let params = {
+     uid: uid,
+     cid: cid,
+     stage: stage,
+     task: task,
+     tool: tool,
+     content: a,
+     type: 1,
+     // upload: JSON.stringify(this.imgFileUp),
+   };
+   $.ajax({
+     type: 'GET',
+     url: 'https://pbl.cocorobo.cn/api/pbl/addCourseWorks2',
+     data: params,
+     dataType: "json",
+     success: (data) => {
+       let _div = document.createElement('div')
+       _div.style = "width:100%;height:100%;background:#0000008f;position:fixed;top:0;left:0;z-index:99999999999999;display: flex;justify-content: center;align-items: center;"
+       let _inner = document.createElement('div')
+       _inner.style = "color: #fff;padding: 15px;background: #00000070;border-radius: 5px;font-size: 18px;"
+       _inner.innerHTML = "截图上传成功"
+       _div.appendChild(_inner)
+       document.body.appendChild(_div)
+       setTimeout(() => {
+         document.body.removeChild(_loading)
+         document.body.removeChild(_div)
+       }, 2000);
+       console.log("截图上传成功");
+     }
+   })
+ }