Commit c9fb80d8 authored by 朱超's avatar 朱超

能耗排名更新

parent 682c436f
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div <div
class="contentBlock" class="contentBlock"
id="contentBlock" id="contentBlock"
v-loading.fullscreen.lock="fullscreenLoading" v-loading="loading"
element-loading-background="rgba(122, 122, 122, 0.6)" element-loading-background="rgba(122, 122, 122, 0.6)"
> >
<el-card class="card-contianer"> <el-card class="card-contianer">
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
<el-config-provider :locale="zhCn"> <el-config-provider :locale="zhCn">
<el-date-picker <el-date-picker
type="datetime" type="datetime"
value-format="YYYY-MM-DD HH:00:00" value-format="YYYY-MM-DD HH:mm:ss"
placeholder="选择开始时间" placeholder="选择开始时间"
style="width: 180px" style="width: 180px"
v-model="enertyInfo.startTime" v-model="enertyInfo.startTime"
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
<el-config-provider :locale="zhCn"> <el-config-provider :locale="zhCn">
<el-date-picker <el-date-picker
type="datetime" type="datetime"
value-format="YYYY-MM-DD HH:00:00" value-format="YYYY-MM-DD HH:mm:ss"
placeholder="选择结束时间" placeholder="选择结束时间"
style="width: 180px" style="width: 180px"
v-model="enertyInfo.endTime" v-model="enertyInfo.endTime"
...@@ -635,6 +635,7 @@ import { ...@@ -635,6 +635,7 @@ import {
postTopBHXLXJ1, postTopBHXLXJ1,
postTopSecondTempAvg, postTopSecondTempAvg,
} from "../../api/ranking"; } from "../../api/ranking";
const loading = ref(false);
const curwidth = ref(1700); const curwidth = ref(1700);
const curheight = ref(1000); const curheight = ref(1000);
const switchV = ref(false); const switchV = ref(false);
...@@ -766,21 +767,66 @@ function exportTableToExcelFun(n, dataList, company) { ...@@ -766,21 +767,66 @@ function exportTableToExcelFun(n, dataList, company) {
} }
function exportTableToExcel(title, space, sheetTit, data) { function exportTableToExcel(title, space, sheetTit, data) {
const worksheet = XLSX.utils.json_to_sheet(data); const ws = XLSX.utils.json_to_sheet(data);
const workbook = XLSX.utils.book_new(); const workbook = XLSX.utils.book_new();
XLSX.utils.sheet_add_aoa(worksheet, [title], { const border = {
top: {
style: "thin",
},
bottom: {
style: "thin",
},
left: {
style: "thin",
},
right: {
style: "thin",
},
};
const range = XLSX.utils.decode_range(ws["!ref"]);
const cellList = Object.keys(ws).filter((item) => item.indexOf("!") < 0);
for (let row = range.s.r; row <= range.e.r; row++) {
for (let col = range.s.c; col <= range.e.c; col++) {
const cell = XLSX.utils.encode_cell({ r: row, c: col });
if (cellList.indexOf(cell) < 0) {
ws[cell] = { t: "", v: "", s: { border } };
} else {
ws[cell].s = { border };
}
}
}
XLSX.utils.sheet_add_aoa(ws, [title], {
origin: "A1", origin: "A1",
}); });
worksheet["!cols"] = [{ wch: 5 }, { wch: 20 }, { wch: 20 }, { wch: 20 }]; ws["!cols"] = [{ wch: 5 }, { wch: 20 }, { wch: 20 }, { wch: 20 }];
space.forEach((element) => { space.forEach((element) => {
worksheet[element].s = { ws[element].s = {
fill: { fill: {
fgColor: { rgb: "0097d5fd" }, fgColor: { rgb: "0097d5fd" },
}, },
border: {
bottom: {
color: "#000000",
style: "thin",
},
left: {
color: "#000000",
style: "thin",
},
right: {
color: "#000000",
style: "thin",
},
top: {
color: "#000000",
style: "thin",
},
},
}; };
}); });
XLSX.utils.book_append_sheet(workbook, worksheet, sheetTit); XLSX.utils.book_append_sheet(workbook, ws, sheetTit);
const excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" }); const excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" });
const dataBlob = new Blob([excelBuffer], { const dataBlob = new Blob([excelBuffer], {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8", type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8",
...@@ -791,7 +837,7 @@ function exportTableToExcel(title, space, sheetTit, data) { ...@@ -791,7 +837,7 @@ function exportTableToExcel(title, space, sheetTit, data) {
} }
function exportTableToExcelAll() { function exportTableToExcelAll() {
let worksheet = ref(); let ws = ref();
let workbook = ref(); let workbook = ref();
let excelBuffer = ref(); let excelBuffer = ref();
let dataBlob = ref(); let dataBlob = ref();
...@@ -809,9 +855,22 @@ function exportTableToExcelAll() { ...@@ -809,9 +855,22 @@ function exportTableToExcelAll() {
topSecondTempAvg.value, topSecondTempAvg.value,
topSecondTempAvg.value, topSecondTempAvg.value,
]; ];
let dataList = [];
data.forEach((element) => {
let arr = [];
element.forEach((element1) => {
arr.push({
rankingIndex: element1.rankingIndex,
supplyName: element1.supplyName,
transferName: element1.transferName,
uc: element1.uc.toFixed(2),
});
});
dataList.push(arr);
});
let title = [ let title = [
"热单耗(W/㎡)", "热单耗(W/㎡)",
"热耗(W/(㎡×℃", "热耗(W/(㎡×℃))",
"水单耗(Kg/㎡)", "水单耗(Kg/㎡)",
"电单耗(Kwh/㎡)", "电单耗(Kwh/㎡)",
"一网回温(℃)", "一网回温(℃)",
...@@ -820,8 +879,10 @@ function exportTableToExcelAll() { ...@@ -820,8 +879,10 @@ function exportTableToExcelAll() {
"板换效率(%)", "板换效率(%)",
"二网均温(℃)", "二网均温(℃)",
"二网温差(℃)", "二网温差(℃)",
"二网瞬时(t/h)",
"流量(t/h/万㎡)"
]; ];
let space = ["A1", "B1", "C1", "D1", "E1"]; let space = ["A1", "B1", "C1", "D1"];
let sheetTit = [ let sheetTit = [
"热单耗排行", "热单耗排行",
"度日数热耗排行", "度日数热耗排行",
...@@ -838,32 +899,76 @@ function exportTableToExcelAll() { ...@@ -838,32 +899,76 @@ function exportTableToExcelAll() {
]; ];
workbook = XLSX.utils.book_new(); workbook = XLSX.utils.book_new();
for (var i = 0; i < 12; i++) { for (var i = 0; i < 12; i++) {
worksheet = XLSX.utils.json_to_sheet(data[i]); ws = XLSX.utils.json_to_sheet(dataList[i]);
const border = {
top: {
style: "thin",
},
bottom: {
style: "thin",
},
left: {
style: "thin",
},
right: {
style: "thin",
},
};
const range = XLSX.utils.decode_range(ws["!ref"]);
const cellList = Object.keys(ws).filter((item) => item.indexOf("!") < 0);
for (let row = range.s.r; row <= range.e.r; row++) {
for (let col = range.s.c; col <= range.e.c; col++) {
const cell = XLSX.utils.encode_cell({ r: row, c: col });
if (cellList.indexOf(cell) < 0) {
ws[cell] = { t: "", v: "", s: { border } };
} else {
ws[cell].s = { border };
}
}
}
XLSX.utils.sheet_add_aoa( XLSX.utils.sheet_add_aoa(
worksheet, ws,
[["排名", "机组ID", "供热站名称", "机组名称", title[i]]], [["排名", "供热站名称", "机组名称", title[i]]],
{ {
origin: "A1", origin: "A1",
} }
); );
worksheet["!cols"] = [ ws["!cols"] = [
{ wch: 5 }, { wch: 5 },
{ wch: 20 }, { wch: 20 },
{ wch: 20 }, { wch: 20 },
{ wch: 20 }, { wch: 20 },
{ wch: 20 },
]; ];
worksheet["!cols"][1] = { hidden: true }; // ws["!cols"][1] = { hidden: true };
space.forEach((element) => { space.forEach((element) => {
worksheet[element].s = { ws[element].s = {
fill: { fill: {
fgColor: { rgb: "0097d5fd" }, fgColor: { rgb: "0097d5fd" },
}, },
border: {
bottom: {
color: "#000000",
style: "thin",
},
left: {
color: "#000000",
style: "thin",
},
right: {
color: "#000000",
style: "thin",
},
top: {
color: "#000000",
style: "thin",
},
},
}; };
}); });
XLSX.utils.book_append_sheet(workbook, worksheet, sheetTit[i]); XLSX.utils.book_append_sheet(workbook, ws, sheetTit[i]);
} }
excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" }); excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" });
...@@ -876,72 +981,27 @@ function exportTableToExcelAll() { ...@@ -876,72 +981,27 @@ function exportTableToExcelAll() {
} }
function timeFun() { function timeFun() {
var date = new Date(); const today = new Date();
var year = date.getFullYear(); const preday = new Date(today);
var dateArr = [ const prehour = new Date(today.getTime() - 60 * 60 * 1000);
date.getMonth() + 1, today.setDate(today.getDate());
date.getDate(), preday.setDate(preday.getDate() - 1);
date.getHours(), var hour = today.getHours();
date.getMinutes(), enertyInfo.startTime =
date.getSeconds(), preday.toISOString().split("T")[0] + " " + hour + ":00:00";
]; enertyInfo.endTime =
today.toISOString().split("T")[0] + " " + prehour.getHours() + ":00:00";
var startTimeDay = parseInt(dateArr[1] - 1);
var endTimeHour = parseInt(dateArr[2] - 1);
if (startTimeDay < 10) {
startTimeDay = "0" + startTimeDay;
}
if (endTimeHour < 10) {
endTimeHour = "0" + endTimeHour;
}
if (dateArr[0] < 10) {
dateArr[0] = "0" + dateArr[0];
}
if (dateArr[3] < 10) {
dateArr[3] = "0" + dateArr[3];
}
if (dateArr[4] < 10) {
dateArr[4] = "0" + dateArr[4];
}
let startTimes =
year +
"-" +
dateArr[0] +
"-" +
startTimeDay +
" " +
dateArr[2] +
":" +
dateArr[3] +
":" +
dateArr[4];
let endTimes =
year +
"-" +
dateArr[0] +
"-" +
dateArr[1] +
" " +
endTimeHour +
":" +
dateArr[3] +
":" +
dateArr[4];
enertyInfo.startTime = startTimes;
enertyInfo.endTime = endTimes;
} }
//换热站机组排名页概况 //换热站机组排名页概况
function postOverviewFun(enertySend) { function postOverviewFun(enertySend) {
fullscreenLoading.value = true;
postOverview(enertySend).then((res) => { postOverview(enertySend).then((res) => {
if (res.success === true) { if (res.success === true) {
overviewList.value = res.data[0]; overviewList.value = res.data[0];
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
fullscreenLoading.value = false; loading.value = false;
}); });
} }
...@@ -953,6 +1013,7 @@ function postTopHeatUCFun(enertySend) { ...@@ -953,6 +1013,7 @@ function postTopHeatUCFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -964,6 +1025,7 @@ function postTopDayHeatUCFun(enertySend) { ...@@ -964,6 +1025,7 @@ function postTopDayHeatUCFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -975,6 +1037,7 @@ function postTopWaterUCFun(enertySend) { ...@@ -975,6 +1037,7 @@ function postTopWaterUCFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -986,6 +1049,7 @@ function postTopElecUCFun(enertySend) { ...@@ -986,6 +1049,7 @@ function postTopElecUCFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -997,6 +1061,7 @@ function postTopFirsHWFun(enertySend) { ...@@ -997,6 +1061,7 @@ function postTopFirsHWFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -1008,6 +1073,7 @@ function postTopFirsFlowFun(enertySend) { ...@@ -1008,6 +1073,7 @@ function postTopFirsFlowFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -1019,6 +1085,7 @@ function postTopBHXLFun(enertySend) { ...@@ -1019,6 +1085,7 @@ function postTopBHXLFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -1030,6 +1097,7 @@ function postTopBHXLXJ1Fun(enertySend) { ...@@ -1030,6 +1097,7 @@ function postTopBHXLXJ1Fun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -1041,6 +1109,7 @@ function postTopSecondTempAvgFun(enertySend) { ...@@ -1041,6 +1109,7 @@ function postTopSecondTempAvgFun(enertySend) {
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
loading.value = false;
}); });
} }
...@@ -1078,6 +1147,7 @@ function sendClick() { ...@@ -1078,6 +1147,7 @@ function sendClick() {
} }
} }
function sendFun(enertySend) { function sendFun(enertySend) {
loading.value = true;
postOverviewFun(enertySend); postOverviewFun(enertySend);
postTopHeatUCFun(enertySend.value); postTopHeatUCFun(enertySend.value);
postTopDayHeatUCFun(enertySend.value); postTopDayHeatUCFun(enertySend.value);
...@@ -1108,9 +1178,7 @@ onMounted(() => { ...@@ -1108,9 +1178,7 @@ onMounted(() => {
timeFun(); timeFun();
sendFun(enertySend); sendFun(enertySend);
}); });
onUnmounted(() => { onUnmounted(() => {});
// window.removeEventListener("resize", setContentHeight);
});
function setContentHeight() { function setContentHeight() {
curheight.value = window.innerHeight - 160; curheight.value = window.innerHeight - 160;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment