wangjuncheng
2025-07-01 345e4be41afb5414e34cc0c0fe82f34167da95d0
撤回方案详情中,雨强雨量的修改
已修改1个文件
48 ■■■■ 文件已修改
src/components/monifangzhen/schemeInfo.vue 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/monifangzhen/schemeInfo.vue
@@ -108,61 +108,24 @@
// 处理 data 字段解析
function parseDataField(dataStr) {
  if (typeof dataStr !== "string") return [];
  // console.log(dataStr, '方案详情内的降雨数据');
  try {
    const parsed = JSON.parse(dataStr);
    const fields = {
      total: "降雨总量(mm):",
      duration: "降雨时长(小时):",
      intensity: "降雨强度(mm/小时):", // 统一为 mm/h
      intensity: "降雨强度(mm/小时):",
      prediction: "降雨场次:",
      model: "降雨模式:",
      history: "历史降雨:",
    };
    let { total, duration, intensity, intensityUnit } = parsed;
    // 根据 intensityUnit 确定转换系数
    let factor = 1;
    switch (intensityUnit) {
      case "mm/min":
        factor = 60;
        break;
      case "mm/5min":
        factor = 12;
        break;
      case "mm/h":
        factor = 1;
        break;
      default:
        factor = 1;
    }
    // 转换单位:将 intensity 和 total 统一为按小时计算的值
    intensity = intensity != null ? (intensity * factor).toFixed(2) : "无";
    total = total != null ? (total * factor).toFixed(2) : "无";
    // 控制台输出你需要的关键字段
    // console.log('转换后的降雨强度(mm/h):', intensity);
    // console.log('转换后的降雨总量(mm):', total);
    // 处理 duration,如果非数字则设为默认值
    duration = duration != null ? parseInt(duration) : "无";
    const result = Object.entries(parsed)
      .filter(([k]) => fields[k])
      .map(([k, v]) => {
        let displayValue = v || "无";
        if (k === "total") displayValue = total;
        if (k === "duration") displayValue = duration;
        if (k === "intensity") displayValue = intensity;
        return {
          name: fields[k],
          value: displayValue,
        };
      });
      .map(([k, v]) => ({
        name: fields[k],
        value: v || "无",
      }));
    // 处理雨量计数据
    if (parsed.type == 2 && parsed.gauges && Array.isArray(parsed.gauges)) {
@@ -177,7 +140,6 @@
    return result;
  } catch (e) {
    console.error("解析 dataStr 出错:", e);
    return [{ name: "数据:", value: dataStr || "无" }];
  }
}