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/reportLibraryOneFour/add.vue | 164 +++++++++++++++++++++++++++++++----------------------- 1 files changed, 93 insertions(+), 71 deletions(-) diff --git a/culture/src/views/strainReportLibrary/reportLibraryOneFour/add.vue b/culture/src/views/strainReportLibrary/reportLibraryOneFour/add.vue index 4d11c02..4859ffe 100644 --- a/culture/src/views/strainReportLibrary/reportLibraryOneFour/add.vue +++ b/culture/src/views/strainReportLibrary/reportLibraryOneFour/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="submitLoading">发送</el-button> + <el-button type="default" @click="saveData" :loading="draftLoading">存草稿</el-button> </div> </el-form> </Card> @@ -231,6 +231,8 @@ } ], selectedMember: null, // 存储选中的菌种实验员 + submitLoading: false, // 发送按钮loading + draftLoading: false, // 存草稿按钮loading } }, computed: { @@ -275,92 +277,112 @@ } }, methods: { - addData() { - console.log('qeqweqeqwqrew', this.form, this.projectData); - - this.$refs.form.validate(async (valid) => { - if (!valid) return; - let str = [] - str = this.assessmentTable.map(item => { - return item.selectedScore - }) - - if (this.$refs.materialEditor.getContent() == '<p></p>') { - this.$message.error('请输入报告正文') - return - } - if (!this.projectData.length) { - this.$message.warning('请选择项目组'); - return; - } - if (!this.selectedMember || !this.selectedMember[0]) { - this.$message.warning('请选择菌种实验员'); - return; - } - const params = { - isDraft: 0, - projectId: this.projectData[0].id, - experimentId: this.selectedMember[0].userId, - // reportCode: this.form.reportCode, - reportContent: this.$refs.materialEditor.getContent(), - reportName: this.form.reportName, - evaluateTotal: this.totalScore, - evaluate: str.join(','), - reportType: 4 - }; - console.log('params', params); - - if (this.$route.query.id) { - - params.id = this.$route.query.id - update(params).then(res => { - if (res.code == 200) { - this.$message.success('编辑成功'); - this.$router.back() - } + async addData() { + if (this.submitLoading) return; + this.submitLoading = true; + try { + this.$refs.form.validate(async (valid) => { + if (!valid) { this.submitLoading = false; return; } + let str = [] + str = this.assessmentTable.map(item => { + return item.selectedScore }) - return - } - add(params).then(res => { - if (res.code == 200) { - this.$message.success('发送成功'); - this.$router.push('/strainReportLibrary/reportLibraryFour'); + if (this.$refs.materialEditor.getContent() == '<p></p>') { + this.$message.error('请输入报告正文') + this.submitLoading = false; + return } - }) - }); - }, - saveData() { - this.$refs.form.validate(async (valid) => { - if (!valid) return; - let str = [] - str = this.assessmentTable.map(item => { - return item.selectedScore - }) - - try { + if (!this.projectData.length) { + this.$message.warning('请选择项目组'); + this.submitLoading = false; + return; + } + if (!this.selectedMember || !this.selectedMember[0]) { + this.$message.warning('请选择菌种实验员'); + this.submitLoading = false; + return; + } const params = { - isDraft: 1, + isDraft: 0, projectId: this.projectData[0].id, experimentId: this.selectedMember[0].userId, // reportCode: this.form.reportCode, reportContent: this.$refs.materialEditor.getContent(), reportName: this.form.reportName, evaluateTotal: this.totalScore, - evaluate: str.join(','), + evaluate: str.join(','), reportType: 4 }; + if (this.$route.query.id) { + params.id = this.$route.query.id + update(params).then(res => { + this.submitLoading = false; + if (res.code == 200) { + this.$message.success('编辑成功'); + this.$router.back() + } + }).catch(() => { + this.submitLoading = false; + }) + return + } add(params).then(res => { + this.submitLoading = false; if (res.code == 200) { - this.$message.success('保存成功'); + this.$message.success('发送成功'); this.$router.push('/strainReportLibrary/reportLibraryFour'); } + }).catch(() => { + this.submitLoading = false; }) - } catch (e) { - this.$message.error('保存失败'); - } - }); - }, getProjectData(data) { + }); + } catch (e) { + this.submitLoading = false; + } + }, + async saveData() { + if (this.draftLoading) return; + this.draftLoading = true; + try { + this.$refs.form.validate(async (valid) => { + if (!valid) { this.draftLoading = false; return; } + let str = [] + str = this.assessmentTable.map(item => { + return item.selectedScore + }) + try { + const params = { + isDraft: 1, + projectId: this.projectData[0].id, + experimentId: this.selectedMember[0].userId, + // reportCode: this.form.reportCode, + reportContent: this.$refs.materialEditor.getContent(), + reportName: this.form.reportName, + evaluateTotal: this.totalScore, + evaluate: str.join(','), + reportType: 4 + }; + add(params).then(res => { + this.draftLoading = false; + if (res.code == 200) { + this.$message.success('保存成功'); + this.$router.push('/strainReportLibrary/reportLibraryFour'); + } + }).catch(() => { + this.draftLoading = false; + }) + } catch (e) { + this.draftLoading = false; + this.$message.error('保存失败'); + } + }); + } catch (e) { + this.draftLoading = false; + this.$message.error('保存失败'); + } + }, + getProjectData(data) { this.projectData = [data]; // 将选中的项目组数据存储到数组中 this.showChoose = false }, -- Gitblit v1.7.1