he wei
2024-11-06 32250f9a1db456b706e52ffb2664d738a2650678
src/views/home/index.vue
@@ -24,7 +24,7 @@
const map = ref();
const devDatas = computed(() => {
  let labels = ["充放电一体机", "锂电池均衡仪"],
  let labels = ["充放电测试仪", "锂电池均衡仪"],
    datas = [
      { name: "在线", data: [] },
      { name: "离线", data: [] },
@@ -74,9 +74,9 @@
      return new Date(a).getTime() - new Date(b).getTime();
    }).forEach((v) => {
      let item = actm[v];
      // 2 放电  3充电
      jhyData[0].data.push(item[3]);
      jhyData[1].data.push(item[2]);
      // 3 放电  2充电
      jhyData[0].data.push(item[2]);
      jhyData[1].data.push(item[3]);
      dates.push(v);
    });
@@ -84,9 +84,9 @@
      return new Date(a).getTime() - new Date(b).getTime();
    }).forEach((v) => {
      let item = a200[v];
      // 2 放电  3充电
      ytjData[0].data.push(item[3]);
      ytjData[1].data.push(item[2]);
      // 3 放电  2充电
      ytjData[0].data.push(item[2]);
      ytjData[1].data.push(item[3]);
    });
    
  }
@@ -94,8 +94,9 @@
});
const testDatas = computed(() => {
  // 2 放电   3 充电
  let labels = ["放电测试", "充电测试"],
  // 3 放电   2 充电
  let labels_yt = ["放电测试", "充电测试"],
    labels_jh = ["放电", "充电", '均衡'],
    ytjMonthData = [],
    ytjYearData = [],
    jhyMonthData = [],
@@ -108,13 +109,14 @@
      },
    } = JSON.parse(message.value);
    ytjMonthData.push(a200Map["a200MonthMap"][2], a200Map["a200MonthMap"][3]);
    ytjYearData.push(a200Map["a200YearMap"][2], a200Map["a200YearMap"][3]);
    jhyMonthData.push(actmMap["actmMonthMap"][2], actmMap["actmMonthMap"][3]);
    jhyYearData.push(actmMap["actmYearMap"][2], actmMap["actmYearMap"][3]);
    ytjMonthData.push(a200Map["a200MonthMap"][3], a200Map["a200MonthMap"][2]);
    ytjYearData.push(a200Map["a200YearMap"][3], a200Map["a200YearMap"][2]);
    jhyMonthData.push(actmMap["actmMonthMap"][3], actmMap["actmMonthMap"][2], actmMap["actmMonthMap"][4]);
    jhyYearData.push(actmMap["actmYearMap"][3], actmMap["actmYearMap"][2], actmMap["actmYearMap"][4]);
  }
  return {
    labels,
    labels_jh,
    labels_yt,
    ytjMonthData,
    ytjYearData,
    jhyMonthData,
@@ -136,14 +138,14 @@
    ytjTestType.value == 0
      ? testDatas.value.ytjMonthData
      : testDatas.value.ytjYearData;
  testBar.value?.updateChart(testDatas.value.labels, datas);
  testBar.value?.updateChart(testDatas.value.labels_yt, datas);
}
function updateJhTest() {
  let datas =
    jhTestType.value == 0
      ? testDatas.value.jhyMonthData
      : testDatas.value.jhyYearData;
  jhTestBar.value?.updateChart(testDatas.value.labels, datas);
  jhTestBar.value?.updateChart(testDatas.value.labels_jh, datas);
}
function updateMap() {
  const getColor = (onLine) => ["#aaa", "#0f0"][onLine];
@@ -172,18 +174,18 @@
onMounted(() => {
  setTimeout(() => {
    alarmPie.value.updateChart([
      {
        name: "充放电一体机",
        value: 0,
      },
      {
        name: "锂电池均衡仪",
        value: 0,
      },
    ]);
  }, 500);
  // setTimeout(() => {
  //   alarmPie.value.updateChart([
  //     {
  //       name: "充放电测试仪",
  //       value: 0,
  //     },
  //     {
  //       name: "锂电池均衡仪",
  //       value: 0,
  //     },
  //   ]);
  // }, 500);
});
</script>
@@ -192,11 +194,11 @@
    <yc-card class="item" title="设备状态统计">
      <group-bar ref="devBar" unit="台"></group-bar>
    </yc-card>
    <yc-card class="item">
    <yc-card class="item large">
      <div class="card-content">
        <div class="info">
          <div class="info-item">
            <div class="label">充放电一体机</div>
            <div class="label">充放电测试仪</div>
            <div class="value">
              <led-num :bits="4" :num="devDatas.ytjCount"></led-num>
            </div>
@@ -228,7 +230,7 @@
        </div>
      </div>
    </yc-card>
    <yc-card class="item" title="设备历史告警统计">
    <!-- <yc-card class="item" title="设备历史告警统计">
      <template #tools>
        <el-radio-group v-model="alarmType" size="small" is-button>
          <el-radio-button :value="0">本月</el-radio-button>
@@ -236,8 +238,8 @@
        </el-radio-group>
      </template>
      <pie ref="alarmPie"></pie>
    </yc-card>
    <yc-card class="item" title="充放电一体机测试统计">
    </yc-card> -->
    <yc-card class="item" title="充放电测试仪测试统计">
      <template #tools>
        <el-radio-group
          v-model="ytjTestType"
@@ -259,7 +261,7 @@
          size="small"
          is-button
        >
          <el-radio-button :value="0">充放电一体机</el-radio-button>
          <el-radio-button :value="0">充放电测试仪</el-radio-button>
          <el-radio-button :value="1">锂电均衡仪</el-radio-button>
        </el-radio-group>
      </template>
@@ -294,6 +296,9 @@
  gap: 6px;
  .item {
    // background: gray;
    &.large {
      grid-row-start: span 2;
    }
  }
}
.card-content {