|
@@ -4564,7 +4564,19 @@ export default {
|
|
|
},
|
|
|
async addWork() {
|
|
|
|
|
|
- this.pptCourseJson.pptData = await this.getPPtJson();
|
|
|
+ let _pptData = await this.getPPtJson();
|
|
|
+
|
|
|
+ // 用_pptData生成json文件,并生成File对象
|
|
|
+ const pptJsonStr = JSON.stringify(_pptData, null, 2);
|
|
|
+ const pptJsonFile = new File([pptJsonStr], "pptData.json", { type: "application/json" });
|
|
|
+ // 你可以根据需要将pptJsonFile上传或保存
|
|
|
+
|
|
|
+ let _url = await this.uploadFile(pptJsonFile);
|
|
|
+ console.log(_url)
|
|
|
+ this.pptCourseJson.pptData = _url;
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
this.inputShow = true;
|
|
|
|
|
|
for (var i = 0; i < this.unitJson.length; i++) {
|
|
@@ -4698,7 +4710,16 @@ export default {
|
|
|
},
|
|
|
async updateWork() {
|
|
|
|
|
|
- this.pptCourseJson.pptData = await this.getPPtJson();
|
|
|
+ let _pptData = await this.getPPtJson();
|
|
|
+
|
|
|
+ // 用_pptData生成json文件,并生成File对象
|
|
|
+ const pptJsonStr = JSON.stringify(_pptData, null, 2);
|
|
|
+ const pptJsonFile = new File([pptJsonStr], "pptData.json", { type: "application/json" });
|
|
|
+ // 你可以根据需要将pptJsonFile上传或保存
|
|
|
+ console.log(_url)
|
|
|
+ let _url = await this.uploadFile(pptJsonFile);
|
|
|
+
|
|
|
+ this.pptCourseJson.pptData = _url;
|
|
|
|
|
|
let params = [
|
|
|
{
|
|
@@ -8303,6 +8324,62 @@ export default {
|
|
|
//把toolList挂载到window上
|
|
|
window.pptToolList = _toolList;
|
|
|
},
|
|
|
+ //上传文件
|
|
|
+ uploadFile(file) {
|
|
|
+ return new Promise((resolve)=>{
|
|
|
+ var credentials = {
|
|
|
+ accessKeyId: "AKIATLPEDU37QV5CHLMH",
|
|
|
+ secretAccessKey: "Q2SQw37HfolS7yeaR1Ndpy9Jl4E2YZKUuuy2muZR"
|
|
|
+ }; //秘钥形式的登录上传
|
|
|
+ window.AWS.config.update(credentials);
|
|
|
+ window.AWS.config.region = "cn-northwest-1"; //设置区域
|
|
|
+
|
|
|
+ var bucket = new window.AWS.S3({ params: { Bucket: "ccrb" } }); //选择桶
|
|
|
+ var _this = this;
|
|
|
+
|
|
|
+ if (file) {
|
|
|
+ var params = {
|
|
|
+ Key:
|
|
|
+ file.name.split(".")[0] +
|
|
|
+ new Date().getTime() +
|
|
|
+ "." +
|
|
|
+ file.name.split(".")[file.name.split(".").length - 1],
|
|
|
+ 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 (err) {
|
|
|
+ // var a = _this.$refs.upload1.uploadFiles;
|
|
|
+ // a.splice(a.length - 1, a.length);
|
|
|
+ _this.$message.error("上传失败ppt数据失败");
|
|
|
+ } else {
|
|
|
+ //上传成功处理
|
|
|
+ // _this.unitJson[_this.unitIndex].chapterInfo[0].fileList1.push({
|
|
|
+ // name: file.name,
|
|
|
+ // url: data.Location,
|
|
|
+ // uid: file.uid
|
|
|
+ // });
|
|
|
+ // _this.imgChange();
|
|
|
+ // console.log(data.Location);
|
|
|
+ resolve(data.Location)
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
},
|
|
|
beforeDestroy() {
|
|
|
clearTimeout(this.timer);
|