qin
2025-03-31 9dbdee398803b4bdd11f1feadf04ba209dc1356f
src/views/GB19762-2025.vue
@@ -80,8 +80,10 @@
                </div>
            </div>
            <div class="grid grid-cols-4 gap-4" style="padding: 15px 10px; min-height: 30px">
                <img style="width:78px;height: 30px;" v-if="calcResult != null" :src="getImgUrl()">
            <div class="grid" style="padding: 15px 10px; min-height: 30px">
                <img v-if="level > -1" style="width:78px;height: 30px;" :src="getImgUrl()"><span v-if="level > -1">{{
                    calcResult }}</span>
                <!-- <span v-if="level == 0">未计算出能效等级,请检查输入数据!</span> -->
            </div>
        </div>
    </div>
@@ -203,32 +205,33 @@
    Efficiency.value = '';
    typeSelect.value = 1;
    calcResult.value = null;
    level.value = 0;
}
const getImgUrl = () => {
    return `${SERVE_URL}static/img/calc-icons/${calcResult.value}.png`;
    return `${SERVE_URL}static/img/calc-icons/${level.value}.png`;
}
// 计算
const Calc = () => {
    if (MaxFlow.value == null)
    {
    if (MaxFlow.value == null) {
        ElMessage.error("请输入有效流量数据!");
        return;
    }
    if (MaxHead.value == null)
    {
    if (MaxHead.value == null) {
        ElMessage.error("请输入有效扬程数据!");
        return;
    }
    if (Speed.value == null)
    {
    if (Speed.value == null) {
        ElMessage.error("请输入有效转速数据!");
        return;
    }
    if (Efficiency.value == null)
    {
    if (Efficiency.value == null) {
        ElMessage.error("请输入有效效率数据!");
        return;
    }
    if (Efficiency.value < 0 || Efficiency.value > 100) {
        ElMessage.error("请输入有效效率数据【0-100】!");
        return;
    }
@@ -265,7 +268,7 @@
    }
    let level = GetEnergyLevel(c1V, c2V, c3V);
    calcResult.value = level;
    //calcResult.value = level;
}
const GetEnergyLevel = (c1V: number, c2V: number, c3V: number) => {
@@ -274,13 +277,16 @@
        { level: 2, min: c2V, max: c1V },
        { level: 3, min: c3V, max: c2V }
    ]
    let level = 5;
    let levelV = 0;
    for (const range of levelDic) {
        if (Efficiency.value >= range.min && Efficiency.value <= range.max) {
            level = range.level;
            levelV = range.level;
        }
    }
    return level;
    calcResult.value = "计算结果:1级效率值 " + c1V.toFixed(2) + "%,2级效率值 " + c2V.toFixed(2) + "%,3级效率值 " + c3V.toFixed(2) + "%";
    level.value = levelV;
    return levelV;
}
//石油化工离心泵计算
@@ -331,7 +337,7 @@
    c2V = oV + cv[0].c2;
    c3V = oV + cv[0].c3;
    let level = GetEnergyLevel(c1V, c2V, c3V);
    calcResult.value = level;
    //calcResult.value = level;
}
//issingle: 是否单级,isdouble: 是否双吸
@@ -352,21 +358,14 @@
const Speed = ref(null);
const Efficiency = ref(null);
const calcResult = ref(null);
const level = ref(-1)
//监听类型选择筛选
const changeSelectType = (tag: number) => {
    typeSelect.value = tag;
    MaxFlow.value = '';
    MaxHead.value = '';
    Speed.value = '';
    Efficiency.value = '';
};
const changeSelectPumpType = (tag: number) => {
    pumpSelect.value = tag;
    typeSelect.value = type.filter((c) => { return c.pumpid == tag })[0].tag;
    MaxFlow.value = '';
    MaxHead.value = '';
    Speed.value = '';
    Efficiency.value = '';
};
</script>
<style lang="scss" scoped>