| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 | 
let $jq = '';$jq = $var $180 = $.noConflict();function jietu_shishi(uid, cid, stage, task, tool) {  html2canvas($jq("body")[0]).then(function (canvas) {    //获取截取图片路径    var base64Url = canvas.toDataURL('image/png');    //后台操作处理    var base64 = "<img src=" + base64Url + " />"    var file = dataURLtoFile_shishi(base64Url, "截图")    beforeUpload_shishi(file, uid, cid, stage, task, tool)    // $jq("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, loading, atool, text) {  // loading.style.display = 'flex'  // top.document.getElementById(loading);  //  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"; //设置区域  var bucket = new window.AWS.S3({    params: {      Bucket: "ccrb"    }  }); //选择桶  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) {        if (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, loading, atool, text)        } else {          var _a = document.getElementsByTagName("img")          for (var i = 0; i < _a.length; i++) {            _a[i].removeAttribute("crossorigin")          }          top.document.getElementById(loading).children[0].style.display = "none"          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)          }, 1000);        }      });  }}function addSWork_shishi(uid, cid, stage, task, tool, a, loading, atool, text) {  let params = {    uid: uid,    cid: cid,    stage: stage,    task: task,    tool: tool,    content: a,    type: 1,    atool: atool,    text: text    // upload: JSON.stringify(this.imgFileUp),  };  if (!$jq) {    $jq = $    var $180 = $.noConflict();  }  $jq.ajax({    type: 'POST',    url: 'https://pbl.cocorobo.cn/api/pbl/addCourseWorks4s',    data: params,    dataType: "json",    error: (XMLHttpRequest, textStatus, errorThrown) => {      var _a = document.getElementsByTagName("img")      for (var i = 0; i < _a.length; i++) {        _a[i].removeAttribute("crossorigin")      }      top.document.getElementById(loading).children[0].style.display = "none"      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)      }, 1000);    },    success: (data) => {      setTimeout(() => {        var _a = document.getElementsByTagName("img")        for (var i = 0; i < _a.length; i++) {          _a[i].removeAttribute("crossorigin")        }        top.document.getElementById(loading).children[0].style.display = "none"        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)        _div.onclick = () => {          document.body.removeChild(_div)        }        setTimeout(() => {          //  document.body.removeChild(_loading)          document.body.removeChild(_div)        }, 1000);        console.log("截图上传成功");      }, 3000)    }  })}
 |