| | |
| | | import carInfoModule from "@/views/moudle/battShow/carInfo"; |
| | | import FlexBox from "@/components/FlexBox.vue"; |
| | | import ChartBox from "@/components/chartBox.vue"; |
| | | import {dataAnalysisModule} from "@/views/analysis/module"; |
| | | import {dataAnalysisModule, bmsAnalysisTimeModule} from "@/views/analysis/module"; |
| | | import HdwChart from "@/components/echarts/hdwChart.vue"; |
| | | import getNormalLine from "@/components/echarts/options/normalLine"; |
| | | import {ElMessage} from "element-plus"; |
| | |
| | | A 15 15, 0, 1, 1, 27.99 7.5 |
| | | L 15 15 |
| | | " style="stroke-width: 4px; fill: rgba(0, 0, 0, 0)"/> |
| | | ` |
| | | `; |
| | | const cascaderValue = ref([]); |
| | | |
| | | const { |
| | | usefulTimeRangeList, |
| | | getBmsAnalysisTime |
| | | } = bmsAnalysisTimeModule(); |
| | | const cascaderHandleChange = ()=>{ |
| | | carName.value = cascaderValue.value[0]; |
| | | timeRange.value = cascaderValue.value[1].split("~"); |
| | | } |
| | | |
| | | onMounted(()=>{ |
| | | analysisType.value = 2; |
| | | getBmsAnalysisTime(analysisType.value); |
| | | getCarNames(); |
| | | initChart(); |
| | | setChart(); |
| | |
| | | <div class="input-list"> |
| | | <div class="input-item"> |
| | | <div class="input-wrapper"> |
| | | <div class="input-label">车辆名称:</div> |
| | | <div class="input-label">数据筛选:</div> |
| | | <div class="input-content"> |
| | | <el-select v-model="carName" filterable> |
| | | <el-option |
| | | v-for="(item, key) in carList" :key="'key'+key" |
| | | :value="item.key" :label="item.label"></el-option> |
| | | </el-select> |
| | | <el-cascader |
| | | class="w400" |
| | | v-model="cascaderValue" |
| | | :options="usefulTimeRangeList" |
| | | @change="cascaderHandleChange"> |
| | | <template #default="{ node, data }"> |
| | | <span>{{ data.label }}</span> |
| | | <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> |
| | | </template> |
| | | </el-cascader> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="input-item"> |
| | | <div class="input-wrapper"> |
| | | <div class="input-label">日期选择:</div> |
| | | <div class="input-content"> |
| | | <el-date-picker |
| | | v-model="timeRange" |
| | | type="datetimerange" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | format="YYYY-MM-DD HH:mm:ss" |
| | | date-format="YYYY/MM/DD ddd" |
| | | time-format="A hh:mm:ss"></el-date-picker> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="input-item"> |
| | | <el-button :loading="loading" type="primary" @click="searchData">查询</el-button> |
| | | <el-button :disabled="cascaderValue.length === 0" :loading="loading" type="primary" @click="searchData">查询</el-button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | height: 100%; |
| | | padding: 8px 0 8px 8px; |
| | | } |
| | | /deep/ .el-cascader.w400 { |
| | | width: 400px; |
| | | } |
| | | </style> |