wangjuncheng
8 天以前 f60f7c614e60221ed7c0ddb93c52608e86f4b57e
src/store/simAPI.js
@@ -5,6 +5,10 @@
import dayjs from 'dayjs'
export const SimAPIStore = defineStore('SimAPI', () => {
    // 定时器
    const shouldPoll = ref(false)
    const selectTab = ref("行政区划仿真")
    const isLoading = ref(false)
@@ -31,14 +35,22 @@
        }
        if (forms.type === 1 || forms.type === 3) {
            if (!forms.geom || !forms.rainfall || !forms.intensity || !forms.duration) {
                ElMessage.warning('请确保表单均已填写')
            if (!forms.geom) {
                ElMessage.warning('请选择模拟区域')
                return false
            }
            if (!forms.rainfall && !forms.intensity && !forms.duration && (forms.rainfall.length > 0 && !forms.intensityUnit)) {
                ElMessage.warning('请确保表单均已填写');
                return false;
            }
        }
        if (forms.type === 2) {
            if (!forms.geom || !forms.gauges) {
                ElMessage.warning('请确保表单均已填写')
            if (!forms.geom) {
                ElMessage.warning('请选择模拟区域')
                return false
            }
            if (forms.gauges.length === 0) {
                ElMessage.warning('请选择雨量计设备')
                return false
            }
        }
@@ -76,10 +88,10 @@
                    mode: forms.mode,
                    gauges: forms.gauges,
                    rainfalls: forms.rainFallList,
                    intensityUnit: forms.intensityUnit
                    intensityUnit: forms.intensityUnit || 'mm/15min'
                })
            }
            console.log(params)
            // console.log(params, '保存方案参数')
            const res = await createSimData(params)
            ElMessage.success('方案保存成功')
            return res
@@ -94,6 +106,7 @@
    // 保存方案弹窗
    const addSimCheme = async (forms) => {
        // 表单验证
        if (!validateForm(forms)) {
            throw new Error('表单验证未通过'); // 抛出错误,阻止继续执行
        }
@@ -103,8 +116,9 @@
                confirmButtonText: '确定',
                cancelButtonText: '取消',
            })
            // 用户确认后执行保存
            await saveScheme(forms)
            // 用户确认后执行保存,并返回结果
            const res = await saveScheme(forms); // 执行保存并接收结果
            return res; // 返回保存的结果
        } catch (error) {
            if (error !== 'cancel') {
                console.error('保存出错:', error)
@@ -117,9 +131,11 @@
    }
    return {
        selectTab,
        isLoading,
        shouldPoll,
        handleClickTab,
        addSimCheme,
        saveScheme,