董国庆
2025-06-26 fcc84cfea24bb528fc9142240d4dbcf94eaa0a88
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
        },