|
|
@@ -0,0 +1,64 @@
|
|
|
+<script lang="ts" setup>
|
|
|
+import historyGas from './historyGas.vue'
|
|
|
+import todayGas from './todayGas.vue'
|
|
|
+
|
|
|
+type ActivePanel = 'today' | 'history'
|
|
|
+
|
|
|
+const activePanel = ref<ActivePanel>('today')
|
|
|
+
|
|
|
+const panelOptions: Array<{ label: string; value: ActivePanel }> = [
|
|
|
+ { label: '当日', value: 'today' },
|
|
|
+ { label: '累计', value: 'history' }
|
|
|
+]
|
|
|
+
|
|
|
+const activeTitle = computed(() =>
|
|
|
+ activePanel.value === 'today' ? '当日注气量统计' : '累计注气量统计'
|
|
|
+)
|
|
|
+</script>
|
|
|
+
|
|
|
+<template>
|
|
|
+ <div class="panel flex flex-col">
|
|
|
+ <div class="panel-title flex items-center justify-between">
|
|
|
+ <div class="kb-panel-title-text flex items-center">
|
|
|
+ <div class="icon-decorator">
|
|
|
+ <span></span>
|
|
|
+ <span></span>
|
|
|
+ </div>
|
|
|
+ {{ activeTitle }}
|
|
|
+ </div>
|
|
|
+ <el-segmented
|
|
|
+ v-model="activePanel"
|
|
|
+ :options="panelOptions"
|
|
|
+ size="small"
|
|
|
+ class="gas-statistics-switch" />
|
|
|
+ </div>
|
|
|
+ <div class="flex-1 min-h-0">
|
|
|
+ <todayGas v-if="activePanel === 'today'" embedded />
|
|
|
+ <historyGas v-else embedded />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+@import url('@/styles/kb.scss');
|
|
|
+
|
|
|
+.gas-statistics-switch {
|
|
|
+ --el-segmented-item-selected-color: #03409b;
|
|
|
+ --el-segmented-item-selected-bg-color: rgb(255 255 255 / 86%);
|
|
|
+ --el-segmented-bg-color: rgb(31 91 184 / 10%);
|
|
|
+ --el-segmented-item-hover-bg-color: rgb(255 255 255 / 56%);
|
|
|
+
|
|
|
+ min-height: calc(26px * var(--kb-scale, 1));
|
|
|
+ padding: calc(2px * var(--kb-scale, 1));
|
|
|
+ border: 1px solid rgb(31 91 184 / 12%);
|
|
|
+ transform: translateY(calc(-2px * var(--kb-scale, 1)));
|
|
|
+
|
|
|
+ :deep(.el-segmented__item) {
|
|
|
+ min-height: calc(22px * var(--kb-scale, 1));
|
|
|
+ padding: 0 calc(8px * var(--kb-scale, 1));
|
|
|
+ font-size: calc(13px * var(--kb-scale, 1));
|
|
|
+ font-weight: 600;
|
|
|
+ color: #29527f;
|
|
|
+ }
|
|
|
+}
|
|
|
+</style>
|