Переглянути джерело

任务管理文件上传bug修改

ysc 1 рік тому
батько
коміт
0c242adc6d

+ 4 - 0
src/components/FileUpload/index.vue

@@ -70,6 +70,10 @@ export default {
         type: 'warning'
       });
     },
+    clear() {
+      this.fileList = []
+    }
+
   }
 }
 </script>

+ 1 - 1
src/views/meeting/weekly.vue

@@ -95,7 +95,7 @@
     </div>
 
     <!-- 任务详情对话框 -->
-    <el-dialog title="任务详情" :visible.sync="taskOpen" width="680px" append-to-body
+    <el-dialog title="任务详情" :visible.sync="taskOpen" width="760px" append-to-body
                :close-on-click-modal="false">
       <task-detail :detail-form="taskForm"></task-detail>
     </el-dialog>

+ 10 - 7
src/views/task/projectView.vue

@@ -145,7 +145,7 @@
           </el-col>
         </el-row>
         <el-form-item label="附件" prop="fileUrl">
-          <file-upload @getFileUrl="getFileUrl" @removeFile="removeFile"></file-upload>
+          <file-upload ref="fu" @getFileUrl="getFileUrl" @removeFile="removeFile"></file-upload>
         </el-form-item>
         <el-form-item label="描述" prop="description">
           <el-input v-model="form.description" type="textarea" autosize/>
@@ -160,7 +160,7 @@
       </div>
     </el-dialog>
 
-    <el-dialog title="任务详情" :visible.sync="openDetail" width="680px" class="feed-dialog" append-to-body>
+    <el-dialog title="任务详情" :visible.sync="openDetail" width="760px" class="feed-dialog" append-to-body>
       <task-detail :detailForm="detailForm"></task-detail>
     </el-dialog>
 
@@ -227,7 +227,7 @@ export default {
   methods: {
     initData() {
       let today = new Date();
-      let month = [DateUtil.beforeDay(today, 13), DateUtil.afterDay(today, 15)];
+      let month = [DateUtil.beforeDay(today, 15), DateUtil.afterDay(today, 15)];
       this.$set(this.queryParams, 'rangeDate', month)
       this.getList()
       getProjectTree().then(res => {
@@ -334,8 +334,9 @@ export default {
     // 取消按钮
     cancel() {
       this.$refs.rtEditor.clear()
-      this.open = false;
+      this.$refs.fu.clear()
       this.reset();
+      this.open = false;
     },
     // 表单重置
     reset() {
@@ -363,10 +364,12 @@ export default {
     submitForm() {
       this.$refs["form"].validate(valid => {
         if (valid) {
-          let files = this.form.files.map(item => item.name);
-          this.form.fileUrl = JSON.stringify(files)
+          if (this.form.files) {
+            let files = this.form.files.map(item => item.name);
+            this.form.fileUrl = JSON.stringify(files)
+          }
           addTaskFeedback(this.form).then(res => {
-            this.$message.success("反馈成功");
+            this.$message.success("评论成功");
             this.open = false;
             this.getList();
           });

+ 23 - 23
src/views/task/task.vue

@@ -186,7 +186,7 @@
           </el-col>
         </el-row>
         <el-form-item label="任务附件">
-          <file-upload :files="form.fileList" @getFileUrl="getFileUrl" @removeFile="removeFile"></file-upload>
+          <file-upload ref="fu" :files="form.fileList" @getFileUrl="getFileUrl" @removeFile="removeFile"></file-upload>
         </el-form-item>
         <el-form-item label="任务描述" prop="description">
           <rich-text-editor ref="rtEditor" :value="form.description"
@@ -452,6 +452,7 @@ export default {
     cancel() {
       this.$refs.dut2.clearText()
       this.$refs.rtEditor.clear()
+      this.$refs.fu.clear()
       this.reset()
       this.open = false;
     },
@@ -583,6 +584,7 @@ export default {
           break
       }
     },
+
     /** 审核按钮操作 */
     handleAudit(row) {
       getTask(row.id).then(res => {
@@ -613,8 +615,10 @@ export default {
         if (valid) {
           this.form.beginDate = this.form.rangeDate[0]
           this.form.endDate = this.form.rangeDate[1]
-          let tempFiles = this.form.files.map(item => item.name);
-          this.form.fileUrl = JSON.stringify(tempFiles)
+          if (this.form.files) {
+            let tempFiles = this.form.files.map(item => item.name);
+            this.form.fileUrl = JSON.stringify(tempFiles)
+          }
           this.form.checkTaskConflict = true;
           if (!this.form.id) {
             addTask(this.form).then(res => {
@@ -639,6 +643,7 @@ export default {
         }
       });
     },
+
     submitConfirm() {
       if (this.open) {
         this.form.checkTaskConflict = false;
@@ -660,8 +665,8 @@ export default {
           this.$message.success("操作成功");
         })
       }
-    }
-    ,
+    },
+
     cancelConfirm() {
       this.open = false;
       this.splitOpen = false;
@@ -672,8 +677,7 @@ export default {
         dutSplit[key].clearText()
       }
       this.resetForm("splitForm");
-    }
-    ,
+    },
 
     /** 审核提交按钮 */
     submitAudit() {
@@ -687,8 +691,8 @@ export default {
           })
         }
       });
-    }
-    ,
+    },
+
     /** 分解任务提交按钮 */
     submitSplit() {
       if (this.splitForm.children.length === 0) {
@@ -707,8 +711,10 @@ export default {
         return
       }
       this.splitForm.children.forEach(c => {
-        let files = c.files.map(item => item.name);
-        c.fileUrl = JSON.stringify(files)
+        if (c.files) {
+          let files = c.files.map(item => item.name);
+          c.fileUrl = JSON.stringify(files)
+        }
       })
       this.splitForm.checkTaskConflict = true;
       splitTask(this.splitForm).then(res => {
@@ -722,9 +728,7 @@ export default {
           this.$message.success("操作成功");
         }
       })
-
-    }
-    ,
+    },
 
     /** 终止按钮操作 */
     handleUpdate(row) {
@@ -735,8 +739,7 @@ export default {
         this.$message.success("终止成功");
       }).catch(() => {
       });
-    }
-    ,
+    },
     /** 删除按钮操作 */
     handleDelete(row) {
       this.$confirm('是否确认删除任务编号为"' + row.id + '"的数据项?').then(() => {
@@ -746,8 +749,7 @@ export default {
         this.$message.success("删除成功");
       }).catch(() => {
       });
-    }
-    ,
+    },
 
     addChild() {
       let child = {
@@ -758,15 +760,13 @@ export default {
         description: undefined
       }
       this.splitForm.children.push(child)
-    }
-    ,
+    },
     delChild(index) {
       this.splitForm.children.splice(index, 1)
     }
-    ,
+
   }
-}
-;
+};
 </script>
 <style scoped lang="scss">
 .split-form {

+ 7 - 4
src/views/task/view.vue

@@ -176,7 +176,7 @@
           </el-col>
           <el-col :span="12">
             <el-form-item label="附件" prop="fileUrl">
-              <file-upload @getFileUrl="getFileUrl" @removeFile="removeFile"></file-upload>
+              <file-upload ref="fu" @getFileUrl="getFileUrl" @removeFile="removeFile"></file-upload>
             </el-form-item>
           </el-col>
         </el-row>
@@ -194,7 +194,7 @@
       </div>
     </el-dialog>
 
-    <el-dialog title="任务详情" :visible.sync="openDetail" width="680px" class="feed-dialog" append-to-body>
+    <el-dialog title="任务详情" :visible.sync="openDetail" width="760px" class="feed-dialog" append-to-body>
       <task-detail :detailForm="detailForm"></task-detail>
     </el-dialog>
 
@@ -407,6 +407,7 @@ export default {
     // 取消按钮
     cancel() {
       this.$refs.rtEditor.clear();
+      this.$refs.fu.clear();
       this.open = false;
       this.reset();
     },
@@ -436,8 +437,10 @@ export default {
     submitForm() {
       this.$refs["form"].validate(valid => {
         if (valid) {
-          let files = this.form.files.map(item => item.name);
-          this.form.fileUrl = JSON.stringify(files)
+          if (this.form.files) {
+            let files = this.form.files.map(item => item.name);
+            this.form.fileUrl = JSON.stringify(files)
+          }
           addTaskFeedback(this.form).then(res => {
             this.$message.success("反馈成功");
             this.open = false;