songguoqiang
9 months ago
3 changed files with 210 additions and 1 deletions
@ -0,0 +1,170 @@ |
|||
<template> |
|||
<ContentWrap> |
|||
<!-- 智能电表统计表搜索工作栏 --> |
|||
<el-form :model="queryParams" ref="queryForm" :inline="true"> |
|||
<el-form-item label="日期" prop="dateRange"> |
|||
<el-date-picker |
|||
v-model="queryParams.dateRange" |
|||
style="width: 240px; height: 30px" |
|||
value-format="YYYY-MM-DD" |
|||
end-placeholder="结束日期" |
|||
start-placeholder="开始日期" |
|||
type="daterange" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item label="仪表的描述总用电表" prop="mcode"> |
|||
<el-select v-model="queryParams.flag" placeholder="请选择"> |
|||
<el-option |
|||
v-for="item in typeList" |
|||
:key="item.flag" |
|||
:label="item.mname" |
|||
:value="item.flag" /> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="primary" size="mini" @click="handleQuery">搜索</el-button> |
|||
<el-button size="mini" @click="resetQuery">重置</el-button> |
|||
<!-- <el-button type="success" @click="exportElecTotal" size="mini">导出</el-button> --> |
|||
</el-form-item> |
|||
</el-form> |
|||
</ContentWrap> |
|||
|
|||
<!-- 列表 --> |
|||
<ContentWrap> |
|||
<el-table |
|||
v-loading="loading" :data="dataList.dList" border="true" > |
|||
highlight-current-row="无功" prop="wugong" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="无功" prop="wugong" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="总" prop="idescTotal" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="峰" prop="idescF" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="谷" prop="idescG" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="平" prop="idescP" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="尖峰" prop="idescPt" align="center" :show-overflow-tooltip="true" /> |
|||
<el-table-column label="功率因数" prop="gy" align="center" :show-overflow-tooltip="true" /> |
|||
</el-table> |
|||
</ContentWrap> |
|||
|
|||
</template> |
|||
|
|||
<script setup lang="ts"> |
|||
import * as TjanalysisApi from '@/api/tjanalysis' |
|||
import { formatDate } from '@/utils/formatTime' |
|||
|
|||
defineOptions({ name: 'PlatscaleAnalysis' }) |
|||
|
|||
const message = useMessage() // 消息弹窗 |
|||
const { t } = useI18n() // 国际化 |
|||
|
|||
const route = useRoute() // 路由信息 |
|||
const routeName = ref() |
|||
routeName.value = route.name |
|||
const loading = ref(true) |
|||
const dataList = reactive({dList: [] , total: 0}) |
|||
|
|||
const queryParams = reactive({ |
|||
dateRange: [], |
|||
flag:'0' |
|||
}) |
|||
|
|||
const typeList= ref([{"flag":"0","mname":"主变1号"},{"flag":"1","mname":"主变2号"}]); |
|||
|
|||
const handleQuery = async () => { |
|||
getList() |
|||
} |
|||
|
|||
const resetQuery = async () => { |
|||
// 获取当前日期 |
|||
let today = new Date(); |
|||
|
|||
// 计算昨天的日期 |
|||
today.setDate(today.getDate() - 1); |
|||
|
|||
// 格式化日期为 "yyyy-MM-dd" |
|||
let year = today.getFullYear(); |
|||
let month = String(today.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以需要+1,并确保是两位数 |
|||
let date = String(today.getDate()).padStart(2, '0'); // 确保日期是两位数 |
|||
|
|||
let yesterdayAsString = `${year}-${month}-${date}`; |
|||
|
|||
console.log(yesterdayAsString); |
|||
|
|||
|
|||
queryParams.dateRange=[yesterdayAsString,yesterdayAsString] |
|||
getList() |
|||
} |
|||
|
|||
const getList = async () => { |
|||
const res = await TjanalysisApi.queryIrealdataTimeTj(queryParams) |
|||
console.log(res) |
|||
if (res != null && res.dataList != null) { |
|||
dataList.dList = res.dataList |
|||
} |
|||
loading.value = false |
|||
} |
|||
|
|||
const exportElecTotal = async () => { |
|||
const res = await TjanalysisApi.queryIrealdataTimeTj(queryParams) |
|||
if (res != null) { |
|||
let url = window.URL.createObjectURL(new Blob([res])); |
|||
let link = document.createElement("a"); |
|||
link.style.display = "none"; |
|||
link.href = url; |
|||
link.setAttribute("download", "一次主表统计表.xlsx"); |
|||
document.body.appendChild(link); |
|||
link.click(); |
|||
} |
|||
} |
|||
|
|||
function getSummaries(param) { |
|||
const { columns, data } = param; |
|||
const sums = []; |
|||
columns.forEach((column, index) => { |
|||
// console.log(column) |
|||
if (index === 0) { |
|||
sums[index] = '总'; |
|||
// return; |
|||
} |
|||
|
|||
const values = data.map(item => Number(item[column.property])); |
|||
if (!values.every(value => isNaN(value))) { |
|||
sums[index] = values.reduce((prev, curr) => { |
|||
const value = Number(curr); |
|||
if (!isNaN(value)) { |
|||
return prev + curr; |
|||
} else { |
|||
return prev; |
|||
} |
|||
}, 0); |
|||
// sums[index] += ' 元'; |
|||
} else { |
|||
// sums[index] = 'N/A'; |
|||
} |
|||
}); |
|||
|
|||
return sums; |
|||
} |
|||
|
|||
/** 初始化 **/ |
|||
onMounted(async () => { |
|||
// 获取当前日期 |
|||
let today = new Date(); |
|||
|
|||
// 计算昨天的日期 |
|||
today.setDate(today.getDate() - 1); |
|||
|
|||
// 格式化日期为 "yyyy-MM-dd" |
|||
let year = today.getFullYear(); |
|||
let month = String(today.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以需要+1,并确保是两位数 |
|||
let date = String(today.getDate()).padStart(2, '0'); // 确保日期是两位数 |
|||
|
|||
let yesterdayAsString = `${year}-${month}-${date}`; |
|||
|
|||
console.log(yesterdayAsString); |
|||
|
|||
|
|||
queryParams.dateRange=[yesterdayAsString,yesterdayAsString] |
|||
getList() |
|||
}) |
|||
|
|||
</script> |
|||
|
Loading…
Reference in new issue