lsc 11 달 전
부모
커밋
e8b5e1c7df

+ 1 - 1
dist/index.html

@@ -32,7 +32,7 @@
       width: 100%;
       background: #e6eaf0;
       font-family: '黑体';
-    }</style><link href=./static/css/app.1a8216bf16480365c47a954381aa6b0c.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.571c38d63f24b1ae9e16.js></script><script type=text/javascript src=./static/js/vendor.35dfb1d95a63059f336f.js></script><script type=text/javascript src=./static/js/app.0d98abca3e201e8244bc.js></script></body></html><script>function stopSafari() {
+    }</style><link href=./static/css/app.deff8b917b0429a3b5789cdf3e395847.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.571c38d63f24b1ae9e16.js></script><script type=text/javascript src=./static/js/vendor.35dfb1d95a63059f336f.js></script><script type=text/javascript src=./static/js/app.3e2eecab43a5c9f4a921.js></script></body></html><script>function stopSafari() {
     //阻止safari浏览器双击放大功能
     let lastTouchEnd = 0  //更新手指弹起的时间
     document.documentElement.addEventListener("touchstart", function (event) {

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
dist/static/css/app.deff8b917b0429a3b5789cdf3e395847.css


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
dist/static/css/app.deff8b917b0429a3b5789cdf3e395847.css.map


BIN
dist/static/img/hello.68de2a9.gif


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
dist/static/js/app.3e2eecab43a5c9f4a921.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
dist/static/js/app.3e2eecab43a5c9f4a921.js.map


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
dist/static/js/manifest.571c38d63f24b1ae9e16.js.map


+ 46 - 40
src/components/pages/aiAddCourse/addCourse.vue

@@ -5043,9 +5043,9 @@
                               <div v-if="itemTask.eList && itemTask.eList.length" class="elist_input">
                                 <div v-for="(eItem, eIndex) in itemTask.eList" :key="eIndex" class="elist_input_box">
                                   <div class="elist_inptu_text">
-                                    <!-- <span>目标:</span> -->
-                                    <span>核心素养:</span>
-                                    <input type="input" v-model="itemTask.eList[eIndex].target" placeholder="填写核心素养"  style="width: calc(100% - 280px);"/>
+                                    <span>目标:</span>
+                                    <!-- <span>核心素养:</span> -->
+                                    <input type="input" v-model="itemTask.eList[eIndex].target" placeholder="填写目标"  style="width: calc(100% - 280px);"/>
                                     <el-switch
                                       class="rateSwitch"
                                       style="margin-left: auto;"
@@ -5057,11 +5057,11 @@
                                       inactive-value="1">
                                     </el-switch>
                                   </div>
-                                  <div class="elist_inptu_text">
+                                  <div class="elist_inptu_text" v-show="false">
                                     <!-- <span>评价维度:</span> -->
-                                    <span>目标:</span>
+                                    <span>能力:</span>
                                     <!-- <el-tooltip effect="dark" :content="itemTask.eList[eIndex].value || '填写评价维度'" placement="top" popper-class="text_tooltip2"> -->
-                                    <input type="input" v-model="itemTask.eList[eIndex].value" placeholder="填写目标" />
+                                    <input type="input" v-model="itemTask.eList[eIndex].value" placeholder="填写能力" />
                                     <!-- </el-tooltip> -->
                                     <!-- <span>评星等级:</span>
                                     <el-rate v-model="itemTask.eList[eIndex].score" @change="setEListStar()"
@@ -5079,6 +5079,13 @@
                                     <span>评价标准:</span>
                                     <!-- <el-tooltip effect="dark" :content="itemTask.eList[eIndex].detail || '填写维度描述'" placement="top" popper-class="text_tooltip2"> -->
                                     <input type="input" v-model="itemTask.eList[eIndex].detail" placeholder="填写评价标准" />
+                                    <div class="remove" @click="
+                                      deletEList(
+                                        unitIndex,
+                                        itemTaskIndex,
+                                        eIndex
+                                      )
+                                      "></div>
                                     <!-- </el-tooltip> -->
                                   </div>
                                   <div class="elist_inptu_text" v-if="evalua">
@@ -5094,7 +5101,7 @@
                                       :props="{ checkStrictly: true }" :show-all-levels="false" clearable></el-cascader>
                                   </div>
                                   <div class="elist_inptu_text" style="align-items: flex-start;" v-loading="ruleLoading[itemTaskIndex] && ruleLoading[itemTaskIndex][eIndex]" element-loading-text="小可正在努力生成中,请稍等...">
-                                    <span>细则:</span>
+                                    <span>评价细则:</span>
                                     <div style="width: calc(100%);">
                                       <div @click="openRule(itemTaskIndex, eIndex)" class="ruleBtn" v-if="itemTask.eList[eIndex].rule">{{itemTask.eList[eIndex].isrule ? '收起细则' : '展开细则'}}</div>
                                       <el-tooltip effect="light" content="右键单击可配置提示词" placement="bottom" v-else>
@@ -16231,15 +16238,11 @@ export default {
 // ${this.getListClassC(this.checkboxList2) ?  '班级:' + this.getListClassC(this.checkboxList2) : "无"}
 // ${this.infoData.length ? '使用文件检索的方式完整的去分析文件内容,并请完全按照要求输出。' : ''}
 // let txt = (!this.yiKeTemplateArray.includes(this.templateid)) ? '任务设计、评价标准和教学目标(markdown格式)' : '任务设计和评价标准'
-let txt = (!this.yiKeTemplateArray.includes(this.templateid)) ? `子任务名称:名称应该总结了该任务是在做什么,
-子任务设计:任务设计。
-子教学目标:教学目标。
-学生过程性成果:学生过程性成果。
-评价标准:评价标准。` : `子任务名称:名称应该总结了该任务是在做什么,
-子任务设计:任务设计。
-子教学目标:教学目标。
-学生过程性成果:学生过程性成果。
-评价标准:评价标准。`
+let txt = (!this.yiKeTemplateArray.includes(this.templateid)) ? `  **子教学目标**:子教学目标是课程目标在该任务的分解目标,撰写格式同子教学目标  
+  **过程性成果**:过程性成果是最终成果的一部分或者是中间成果(例如背景设计-大纲-章节-童话)  
+  **子评价标准**:以学生能做到...开始,需要匹配子教学目标和教学任务和过程性成果  ` : `  **子教学目标**:子教学目标是课程目标在该任务的分解目标,撰写格式同子教学目标  
+  **过程性成果**:过程性成果是最终成果的一部分或者是中间成果(例如背景设计-大纲-章节-童话)  
+  **子评价标准**:以学生能做到...开始,需要匹配子教学目标和教学任务和过程性成果  `  
 
 let courseText = this.courseText ? this.courseText : this.teacherCourseText
 let target = this.targetCourseText2 ? this.targetCourseText2 : this.targetcoursetext
@@ -16256,15 +16259,17 @@ Instruction: Based on the context, follow "Format example", write content.
 ${msg} 以及##参考资料
 
 ## 参考资料
-课程名字:${this.courseName}
-${courseText ? '课程简要描述:' + courseText : ''}
-${sub.length ? '学科:' + sub.join(",") : ''}
-${mclass.length ? '面向年级:' + mclass.join(",") : ''}
+课程名字:${this.courseName} ${courseText ? '课程简要描述:' + courseText : ''} ${sub.length ? '学科:' + sub.join(",") : ''} ${mclass.length ? '面向年级:' + mclass.join(",") : ''}
 ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').replaceAll('-','').replaceAll('\n','') : ''}
-detail至少输出300tokens
+detail至少输出300tokens,markdown格式输出。
+detail包含子教学目标、过程性成果、子评价标准
+子教学目标:子教学目标是课程目标在该任务的分解目标,撰写格式同子教学目标  
+过程性成果:过程性成果是最终成果的一部分或者是中间成果(例如背景设计-大纲-章节-童话)  
+子评价标准:以学生能做到...开始,需要匹配子教学目标和教学任务和过程性成果  
+task2输出子任务名称但是不要输出序号或者前缀仅输出名称
 
 # Format example
-[{"task": "任务名称","detail": "${txt}"},{"task": "任务名称","detail": "${txt}"},{"task": "任务名称","detail": "${txt}"},{"task": "任务名称","detail": "${txt}"}]`
+[{"task": "任务名称","task2": "子任务名称","detail": "${txt}"},{"task": "任务名称","task2": "子任务名称","detail": "${txt}"},{"task": "任务名称","task2": "子任务名称","detail": "${txt}"},{"task": "任务名称","task2": "子任务名称","detail": "${txt}"}]`
 // detail输出不要输出成json,文本或者markdown都可以
         this.aiGet2(message, () => {
           this.loading = false
@@ -17093,7 +17098,7 @@ ${this.courseText && this.aiCallBack == 2 ? '注意,优化原有的<参考内
       this.isOutlineCancelToken = this.ajax.setCancelSource();
       let parm = {
         assistant_id: '6063369f-289a-11ef-8bf4-12e77c4cb76b',
-        message: [{"type":"text", "text":messages.replaceAll('\n', " ").replaceAll('*', "")}],
+        message: [{"type":"text", "text":messages}],
         session_name: uuidv4(),
         userId: this.userid,
         file_ids: fileid.length ? [...fileid] : '',
@@ -17128,7 +17133,7 @@ ${this.courseText && this.aiCallBack == 2 ? '注意,优化原有的<参考内
                     let regex = new RegExp("(?<=```json)([\\s\\S]*?)(?=```)");
                     let match = data.message.match(regex);
                     // eval("var aaa = " + match[0])
-                    dArray = JSON.parse(match[0].replace(/\n/g, '').replace(/\s{2,}/g, ' '));
+                    dArray = JSON.parse(match[0].replace(/\n/g, '      ').replace(/\s{2,}/g, '      '));
 
                 } catch (error) {
                   _this.$message.error('哎呀,网络波动了...小可正在为您重新生成中...')
@@ -17148,13 +17153,13 @@ ${this.courseText && this.aiCallBack == 2 ? '注意,优化原有的<参考内
               for (var i = 0; i < dArray.length; i++) {
                 let _task = dArray[i]
                 if(_this.unitJson[0].chapterInfo[0].taskJson[i]){
-                  _this.unitJson[0].chapterInfo[0].taskJson[i].task = _task.task.replaceAll('任务'+(i+1),'').replaceAll('任务'+_this.numberToChinese(i+1),'').replaceAll(':','').replaceAll(':','')
-                  _this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail2 = _task.detail
+                  _this.unitJson[0].chapterInfo[0].taskJson[i].task = _task.task.replaceAll('任务'+(i+1),'').replaceAll('任务'+_this.numberToChinese(i+1),'').replaceAll(':','').replaceAll(':','')+(_task.task2 ? ":"+_task.task2 : "")
+                  _this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail2 = _task.detail.replaceAll("      ", "  \n")
                 }else {
                   _this.unitJson[0].chapterInfo[0].taskJson.push({
-                    task: _task.task.replaceAll('任务'+(i+1),'').replaceAll('任务'+_this.numberToChinese(i+1),'').replaceAll(':','').replaceAll(':',''),
+                    task: _task.task.replaceAll('任务'+(i+1),'').replaceAll('任务'+_this.numberToChinese(i+1),'').replaceAll(':','').replaceAll(':','')+(_task.task2 ? ":"+_task.task2 : ""),
                     taskDetail: "",
-                    taskDetail2: _task.detail,
+                    taskDetail2: _task.detail.replaceAll("      ", "  \n"),
                     taskDetail3: "",
                     chapterData: [],
                     toolText: "",
@@ -17185,9 +17190,9 @@ ${this.courseText && this.aiCallBack == 2 ? '注意,优化原有的<参考内
               for (var i = 0; i < dArray.length; i++) {
                 let _task = dArray[i]
                 _this.unitJson[0].chapterInfo[0].taskJson.push({
-                  task: _task.task.replaceAll('任务'+(i+1),'').replaceAll('任务'+_this.numberToChinese(i+1),'').replaceAll(':','').replaceAll(':',''),
+                  task: _task.task.replaceAll('任务'+(i+1),'').replaceAll('任务'+_this.numberToChinese(i+1),'').replaceAll(':','').replaceAll(':','')+(_task.task2 ? ":"+_task.task2 : ""),
                   taskDetail: "",
-                  taskDetail2: _task.detail,
+                  taskDetail2: _task.detail.replaceAll("      ", "  \n"),
                   taskDetail3: "",
                   chapterData: [],
                   toolText: "",
@@ -19406,7 +19411,7 @@ ${msg}
       // })
       let params = {
         assistant_id: 'f8e1ebb2-2e0d-11ef-8bf4-12e77c4cb76b',
-        message: [{"type":"text", "text":messages.replaceAll('\n', " ").replaceAll('*', "")}],
+        message: [{"type":"text", "text":messages.replaceAll('\n', " ")}],
         session_name: _uuid,
         userId: _this.userid,
         uid: _uuid,
@@ -19659,10 +19664,12 @@ ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').repl
       }
       let target = _this.targetCourseText2 ? _this.targetCourseText2 : _this.targetcoursetext
       let taskArray = []
+      let taskArrayD = []
       for (var k = 0; k < this.unitJson[0].chapterInfo[0].taskJson.length; k++) {
           // _text += `任务名称:${this.unitJson[0].chapterInfo[0].taskJson[i].task}`
           if(k != index){
             taskArray.push(this.unitJson[0].chapterInfo[0].taskJson[k].task)
+            taskArrayD.push(this.unitJson[0].chapterInfo[0].taskJson[k].taskDetail2.replaceAll('#','').replaceAll('*','').replaceAll('-','').replaceAll('\n',''))
           }
         }
       let messages = `NOTICE
@@ -19676,18 +19683,17 @@ Instruction: Based on the context, follow "Format example", write content.
 ${msg}
 
 ## 参考信息
-课程名字:${_this.courseName}
-任务名称:${_this.aiCallBack.task ? _this.aiCallBack.task : _this.unitJson[0].chapterInfo[0].taskJson[_tindex2].task}
+课程名字:${_this.courseName} 任务名称:${_this.aiCallBack.task ? _this.aiCallBack.task : _this.unitJson[0].chapterInfo[0].taskJson[_tindex2].task}
 ${_this.courseText ? '课程简要描述:' + _this.courseText : ''}
 ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').replaceAll('-','').replaceAll('\n','') : ''}
 ${taskArray.length ? '其他任务大纲名字:' + taskArray.join(',') : ''}
+${taskArray.length ? '其他任务大纲内容' + taskArray.join(',') : ''}
 
 # Format example
-子任务名称:名称应该总结了该任务是在做什么,
-子任务设计:任务设计。
-子教学目标:教学目标。
-学生过程性成果:学生过程性成果。
-评价标准:评价标准。
+**子任务标题**:环节+子任务名称
+**子教学目标**:子教学目标是课程目标在该任务的分解目标,撰写格式同子教学目标
+**过程性成果**:过程性成果是最终成果的一部分或者是中间成果(例如背景设计-大纲-章节-童话)
+**子评价标准**:以学生能做到...开始,需要匹配子教学目标和教学任务和过程性成果
 `
 // 教学目标:教学目标。
 // 任务设计:任务设计。
@@ -19717,7 +19723,7 @@ ${taskArray.length ? '其他任务大纲名字:' + taskArray.join(',') : ''}
       // })
       let params = {
         assistant_id: 'f8e1ebb2-2e0d-11ef-8bf4-12e77c4cb76b',
-        message: [{"type":"text", "text":messages.replaceAll('\n', " ").replaceAll('*', "")}],
+        message: [{"type":"text", "text":messages}],
         session_name: _uuid,
         userId: _this.userid,
         uid: _uuid,
@@ -21654,7 +21660,7 @@ Instruction: Based on the context, follow "Format example", write content.
 ${msg}
 
 ##制定标准资料
-评价维度:${this.unitJson[0].chapterInfo[0].taskJson[i].eList[k].value}
+评价维度:${this.unitJson[0].chapterInfo[0].taskJson[i].eList[k].target}
 维度描述:${this.unitJson[0].chapterInfo[0].taskJson[i].eList[k].detail}
 
 # Format example

+ 1 - 1
src/components/pages/test/add/components/course2/courseIndex.vue

@@ -886,7 +886,7 @@
         this.isLoading = true;
         let params = {
           // type: this.groupA,
-					type: "4",
+					type: "0",
           uid: this.userid,
           oid: this.oid,
           org: this.org,

+ 326 - 2
src/components/pages/test/add/components/file/index.vue

@@ -10,7 +10,27 @@
                 </el-select>
             </div>
             <div class="set_type">
-                <span>题目分数:</span><el-input v-model="checkJson.score" class="input" placeholder="请输入分数" style="width: 120px"  @change="numberPan"></el-input>
+                <span>题目分数:</span><el-input v-model="checkJson.score" class="input" placeholder="请输入分数"
+                    style="width: 120px" @change="numberPan"></el-input>
+            </div>
+            <div class="set_file">
+                <div class="set_type">
+                    <span>模板上传:</span>
+                    <div class="btn" @click.stop="addImg($event)" v-loading="proVisible">
+                        <el-button type="primary" size="mini">上传模板</el-button>
+                        <input type="file" accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf" style="display: none" multiple="multiple"
+                            @change="beforeUpload($event)" />
+                    </div>
+                </div>
+                <div class="file_box" v-if="checkJson.file && checkJson.file.length" v-loading="loading">
+                    <div class="file_item" v-for="(item, index) in checkJson.file" :key="index">
+                        <div class="file_name">{{ item.name }}</div>
+                        <div class="file_btns">
+                            <div class="file_btn" @click="downloadFile(index)">下载</div>
+                            <div class="file_btn" @click="delFile(index)">删除</div>
+                        </div>
+                    </div>
+                </div>
             </div>
             <div class="set_title">
                 <span>表单问题:</span>
@@ -35,6 +55,43 @@
 </template>
 
 <script>
+
+const getFile = (url) => {
+  return new Promise((resolve, reject) => {
+    var credentials = {
+        accessKeyId: "AKIATLPEDU37QV5CHLMH",
+        secretAccessKey: "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",
+      }; //秘钥形式的登录上传
+      window.AWS.config.update(credentials);
+      window.AWS.config.region = "cn-northwest-1"; //设置区域
+      let url2 = url;
+      let _url2 = "";
+      if (
+        url2.indexOf("https://view.officeapps.live.com/op/view.aspx?src=") != -1
+      ) {
+        _url2 = url2.split(
+          "https://view.officeapps.live.com/op/view.aspx?src="
+        )[1];
+      } else {
+        _url2 = url2;
+      }
+      var s3 = new window.AWS.S3({ params: { Bucket: "ccrb" } });
+      let name = decodeURIComponent(_url2.split("https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/")[1])
+      var params = {
+        Bucket: "ccrb",
+        Key: name
+      };
+      s3.getObject(params, function (err, data) {
+        if (err) {
+          console.log(err, err.stack)
+          resolve({ data: 1 });
+        }else {
+          resolve({ data: data.Body });
+          console.log(data); 
+        }
+      });
+  });
+};
 // import EditorBar from "../../../../../tools/wangEnduit";
 export default {
     components: {
@@ -52,7 +109,9 @@ export default {
                 { type: 1, name: '附件' },
                 // { type: 2, name: '多选题' }
             ],
-            checkJson: {}
+            checkJson: {},
+            proVisible: false,
+            loading: false
         }
     },
     directives: {
@@ -96,7 +155,229 @@ export default {
             this.$forceUpdate();
             console.log(val);
         },
+        addImg(e) {
+            var el = e.currentTarget;
+            el.getElementsByTagName("input")[0].click();
+            e.target.value = "";
+        },
+        delFile(index){
+            this.checkJson.file.splice(index, 1);
+            this.$forceUpdate();
+        },
+        downloadFile(index){
+            this.loading = true;
+            let file = this.checkJson.file[index]
+            getFile(file.url).then((data) => {
+                this.loading = false;
+                if (data.data != 1) {
+                    // 下载文件, 并存成ArrayBuffer对象
+                    const file_name =file.name; // 获取文件名
+                    const file_data = data.data; // 获取文件数据
+                    let url = window.URL.createObjectURL(new Blob([file_data]));
+                    let a = document.createElement("a");
+                    a.name = file_name;
+                    a.href = url;
+                    a.download = file_name;
+                    a.click();
+                    console.log(data); 
+                    this.$message.success("下载成功");
+                }else {
+                    this.$message.error("下载失败");
+                }
+            });
+
+        },
+        beforeUpload(event) {
+            let file = "";
+            let cfindex2 = 0;
+            for (var cfindex = 0; cfindex < event.target.files.length; cfindex++) {
+                file = event.target.files[cfindex];
 
+                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" } }); //选择桶
+                var _this = this;
+
+                // _this.progress = 0;
+                _this.proVisible = true;
+                // _this.isFinishSize = 0;
+                // _this.isAllSize = (file.size / 1024 / 1024).toFixed(2);
+                let _name = file.name;
+                let size = file.size;
+                _this.$forceUpdate();
+                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) + '%');
+                            // _this.progress = parseInt((evt.loaded / evt.total) * 100);
+                            // _this.isFinishSize = (evt.loaded / 1024 / 1024).toFixed(2);
+                            // _this.$forceUpdate();
+                        })
+                        .send(function (err, data) {
+                            cfindex2++;
+
+                            // _this.progress = 100;
+                            // _this.isFinishSize = _this.isAllSize;
+                            // _this.$forceUpdate();
+                            // setTimeout(() => {
+                            //     _this.proVisible = false;
+                            //     _this.$forceUpdate();
+                            // }, 1000);
+                            setTimeout(() => {
+                                if (
+                                    cfindex2 == event.target.files.length ||
+                                    cfindex2 > event.target.files.length
+                                ) {
+                                    _this.proVisible = false;
+                                }
+                            }, 1000);
+                            // loading.close();
+                            if (err) {
+                                _this.$message.error("上传失败");
+                            } else {
+                                let _type = 2;
+                                var imgA = [
+                                    "png",
+                                    "jpg",
+                                    "jpeg",
+                                    "bmp",
+                                    "gif",
+                                    "webp",
+                                    "psd",
+                                    "svg",
+                                    "tiff"
+                                ];
+                                var fileA = [
+                                    "DOC",
+                                    "DOCX",
+                                    "DOCM",
+                                    "DOTM",
+                                    "DOTX",
+                                    "PPTX",
+                                    "PPSX",
+                                    "PPT",
+                                    "PPS",
+                                    "PPTM",
+                                    "POTM",
+                                    "PPAM",
+                                    "POTX",
+                                    "PPSM",
+                                    "XLSX",
+                                    "XLS"
+                                ];
+                                var videoA = [
+                                    "AVI",
+                                    "NAVI",
+                                    "MPEG",
+                                    "ASF",
+                                    "MOV",
+                                    "WMV",
+                                    "3GP",
+                                    "RM",
+                                    "RMVB",
+                                    "FLV",
+                                    "F4V",
+                                    "H.264",
+                                    "H.265",
+                                    "REAL VIDEO",
+                                    "MKV",
+                                    "WebM",
+                                    "HDDVD",
+                                    "MP4",
+                                    "MPG",
+                                    "M4V",
+                                    "MGV",
+                                    "OGV",
+                                    "QTM",
+                                    "STR",
+                                    "AMC",
+                                    "DVX",
+                                    "EVO",
+                                    "DAT",
+                                    "OGG",
+                                    "OGM"
+                                ];
+                                if (
+                                    fileA.indexOf(
+                                        data.Location.split(".")[
+                                            data.Location.split(".").length - 1
+                                        ].toLocaleUpperCase()
+                                    ) != -1
+                                ) {
+                                    _type = 1; //word 文件
+                                } else if (
+                                    videoA.indexOf(
+                                        data.Location.split(".")[
+                                            data.Location.split(".").length - 1
+                                        ].toLocaleUpperCase()
+                                    ) != -1
+                                ) {
+                                    _type = 2; //视频
+                                } else if (
+                                    imgA.indexOf(
+                                        data.Location.split(".")[
+                                            data.Location.split(".").length - 1
+                                        ].toLocaleLowerCase()
+                                    ) != -1
+                                ) {
+                                    _type = 3; //图片
+                                } else if (
+                                    "pdf".indexOf(
+                                        data.Location.split(".")[
+                                            data.Location.split(".").length - 1
+                                        ].toLocaleLowerCase()
+                                    ) != -1
+                                ) {
+                                    _type = 4; //pdf
+                                } else {
+                                    _type = 5; //文件
+                                }
+                                if (_this.checkJson.file) {
+                                    _this.checkJson.file.push({
+                                        name: _name,
+                                        url: data.Location,
+                                        type: _type
+                                    });
+                                } else {
+                                    _this.checkJson.file = [];
+                                    _this.checkJson.file.push({
+                                        name: _name,
+                                        url: data.Location,
+                                        type: _type
+                                    });
+                                }
+                                _this.$forceUpdate();
+
+                                console.log(_this.checkJson);
+                                console.log(data.Location);
+                            }
+                        });
+                }
+            }
+        },
     },
     mounted() {
         console.log(1);
@@ -205,4 +486,47 @@ export default {
     border-bottom: 10px solid #f6f6f6;
     border-top: 10px solid transparent;
 } */
+
+
+.file_box {
+    padding: 0 0 0 15px;
+    width: 100%;
+    box-sizing: border-box;
+    margin: 10px 0;
+}
+
+.file_item {
+    display: flex;
+    width: 100%;
+    padding: 5px;
+    box-sizing: border-box;
+    border-radius: 5px;
+}
+
+.file_item+.file_item {
+    margin-top: 10px;
+}
+
+.file_name {
+    color: #747474;
+}
+
+.file_item:hover{
+    background: #fff;
+}
+
+.file_btns {
+    margin-left: auto;
+    display: flex;
+    align-items: center;
+}
+
+.file_btn+.file_btn {
+    margin-left: 10px;
+}
+
+.file_btn {
+    color: #3681fc;
+    cursor: pointer;
+}
 </style>

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.