From fcc84cfea24bb528fc9142240d4dbcf94eaa0a88 Mon Sep 17 00:00:00 2001
From: 董国庆 <364620639@qq.com>
Date: 星期四, 26 六月 2025 16:26:19 +0800
Subject: [PATCH] Merge branch 'main' of http://120.76.84.145:10101/gitblit/r/H5/leshan-laboratory

---
 culture/src/views/strainReportLibrary/reportLibraryOneTWO/add.vue |   43 +++++++++++++++++++++++++++++++++++++------
 1 files changed, 37 insertions(+), 6 deletions(-)

diff --git a/culture/src/views/strainReportLibrary/reportLibraryOneTWO/add.vue b/culture/src/views/strainReportLibrary/reportLibraryOneTWO/add.vue
index fcb1932..a5e53ce 100644
--- a/culture/src/views/strainReportLibrary/reportLibraryOneTWO/add.vue
+++ b/culture/src/views/strainReportLibrary/reportLibraryOneTWO/add.vue
@@ -143,8 +143,8 @@
                 </div>
 
                 <div class="end-btn" style="margin-top: 38px">
-                    <el-button type="primary" @click="addData">发送</el-button>
-                    <el-button type="default" @click="saveData">存草稿</el-button>
+                    <el-button type="primary" @click="addData" :loading="loading" :disabled="loading">发送</el-button>
+                    <el-button type="default" @click="saveData" :loading="loading" :disabled="loading">存草稿</el-button>
                 </div>
             </el-form>
         </Card>
@@ -231,6 +231,7 @@
                 }
             ],
             selectedMember: null, // 存储选中的菌种实验员
+            loading: false, // 提交loading状态
         }
     },
     computed: {
@@ -275,10 +276,13 @@
     },
     methods: {
         addData() {
-            console.log('qeqweqeqwqrew', this.form, this.projectData);
-
+            if (this.loading) return;
+            this.loading = true;
             this.$refs.form.validate(async (valid) => {
-                if (!valid) return;
+                if (!valid) {
+                    this.loading = false;
+                    return;
+                }
                 let str = []
                 str = this.assessmentTable.map(item => {
                     return item.selectedScore
@@ -286,14 +290,17 @@
 
                 if (this.$refs.materialEditor.getContent() == '<p></p>') {
                     this.$message.error('请输入报告正文')
+                    this.loading = false;
                     return
                 }
                 if (!this.projectData.length) {
                     this.$message.warning('请选择项目组');
+                    this.loading = false;
                     return;
                 }
                 if (!this.selectedMember || !this.selectedMember[0]) {
                     this.$message.warning('请选择菌种实验员');
+                    this.loading = false;
                     return;
                 }
                 const params = {
@@ -311,25 +318,42 @@
                 if (this.$route.query.id) {
                     params.id = this.$route.query.id
                     update(params).then(res => {
+                        this.loading = false;
                         if (res.code == 200) {
                             this.$message.success('编辑成功');
                             this.$router.back()
+                        } else {
+                            this.$message.error(res.message || '编辑失败');
                         }
+                    }).catch(() => {
+                        this.loading = false;
+                        this.$message.error('编辑失败');
                     })
                     return
                 }
 
                 add(params).then(res => {
+                    this.loading = false;
                     if (res.code == 200) {
                         this.$message.success('发送成功');
                         this.$router.back()
+                    } else {
+                        this.$message.error(res.message || '发送失败');
                     }
+                }).catch(() => {
+                    this.loading = false;
+                    this.$message.error('发送失败');
                 })
             });
         },
         saveData() {
+            if (this.loading) return;
+            this.loading = true;
             this.$refs.form.validate(async (valid) => {
-                if (!valid) return;
+                if (!valid) {
+                    this.loading = false;
+                    return;
+                }
                 let str = []
                 str = this.assessmentTable.map(item => {
                     return item.selectedScore
@@ -348,12 +372,19 @@
                         reportType: 2
                     };
                     add(params).then(res => {
+                        this.loading = false;
                         if (res.code == 200) {
                             this.$message.success('保存成功');
                             this.$router.back()
+                        } else {
+                            this.$message.error(res.message || '保存失败');
                         }
+                    }).catch(() => {
+                        this.loading = false;
+                        this.$message.error('保存失败');
                     })
                 } catch (e) {
+                    this.loading = false;
                     this.$message.error('保存失败');
                 }
             });

--
Gitblit v1.7.1