Commit 46f97192 authored by qjeslks's avatar qjeslks
parents 519d1794 85cab6d8
...@@ -20,3 +20,10 @@ export const postPrintHeatForecast = params => { ...@@ -20,3 +20,10 @@ export const postPrintHeatForecast = params => {
console.log(error); console.log(error);
}) })
} }
//换热站能耗报表
export const postTransferEnergy = params => {
return http.post(`/api/analysis/report/TransferEnergy`, params).then(res => res).catch(function (error) {
console.log(error);
})
}
\ No newline at end of file
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择开始时间" placeholder="选择开始时间"
style="width: 180px" style="width: 180px"
v-model="enertyInfo.printTime" v-model="enertyInfo.startTime"
/> />
</el-config-provider> </el-config-provider>
</td> </td>
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择结束时间" placeholder="选择结束时间"
style="width: 180px" style="width: 180px"
v-model="enertyInfo.printTime" v-model="enertyInfo.endTime"
/> />
</el-config-provider> </el-config-provider>
</td> </td>
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
<div class="btngrounp"> <div class="btngrounp">
<el-button <el-button
type="primary" type="primary"
@click="sendClick" @click="postTransferEnergyFun"
style="margin: 15px 0 0 0" style="margin: 15px 0 0 0"
>查询</el-button >查询</el-button
><el-button ><el-button
...@@ -70,39 +70,43 @@ ...@@ -70,39 +70,43 @@
<tr> <tr>
<th>面积</th> <th>面积</th>
<td style="text-align: left"> <td style="text-align: left">
<el-radio-group v-model="radio"> <el-radio-group v-model="enertyInfo.areaType">
<el-radio :value="3">计算面积</el-radio> <el-radio value="0">计算面积</el-radio>
<el-radio :value="6">实供建筑面积</el-radio> <el-radio value="1">实供建筑面积</el-radio>
</el-radio-group> </el-radio-group>
</td> </td>
</tr> </tr>
<tr> <tr>
<th>片区</th> <th>片区</th>
<td> <td style="text-align: left">
<el-radio-group v-model="radio"> <el-checkbox-group v-model="enertyInfo.jurisdictionIds">
<el-radio :value="3">港东南区</el-radio> <el-checkbox
<el-radio :value="6">港东北区</el-radio> v-for="(option, index) in options"
<el-radio :value="3">重阳里计量站</el-radio> :key="index"
<el-radio :value="6">行政区供热站</el-radio> :label="option.value"
<el-radio :value="3">福苑里供热站</el-radio> >
<el-radio :value="6">小王庄供热站</el-radio> {{ option.lable }}
<el-radio :value="3">港益供热站</el-radio> </el-checkbox>
</el-radio-group> </el-checkbox-group>
</td> </td>
</tr> </tr>
</table> </table>
<el-table :data="tableData" style="width: 100%; margin-top:10px;"> <el-table :data="tableData" style="width: 100%; margin-top: 10px">
<el-table-column prop="date" label="序号" width="60" /> <el-table-column prop="sn" label="序号" width="60" align="center" />
<el-table-column prop="name" label="片区" /> <el-table-column prop="jurisdictionName" label="片区" />
<el-table-column prop="address" label="换热站名称" /> <el-table-column prop="transferName" label="换热站名称" />
<el-table-column prop="date" label="面积" /> <el-table-column prop="area" label="面积" />
<el-table-column prop="date" label="热量(GJ)" /> <el-table-column prop="heat" label="热量(GJ)" />
<el-table-column prop="date" label="热耗(GJ/㎡)" /> <el-table-column prop="heatG" label="热耗(GJ/㎡)" />
<el-table-column prop="date" label="热耗(W/㎡)" /> <el-table-column prop="heatW" label="热耗(W/㎡)" />
<el-table-column prop="date" label="水量(T)" /> <el-table-column prop="water" label="水量(T)" />
<el-table-column prop="date" label="水耗(KG/㎡)" /> <el-table-column prop="waterUsed" label="水耗(KG/㎡)" />
<el-table-column prop="date" label="电量(KWH)" /> <el-table-column prop="electric" label="电量(KWH)" />
<el-table-column prop="date" label="电量(KWH/㎡)" style="width:180px;" /> <el-table-column
prop="electricUsed"
label="电量(KWH/㎡)"
style="width: 180px"
/>
</el-table> </el-table>
</el-card> </el-card>
</div> </div>
...@@ -111,19 +115,22 @@ ...@@ -111,19 +115,22 @@
<script setup> <script setup>
import { ref, reactive, onMounted, onUnmounted } from "vue"; import { ref, reactive, onMounted, onUnmounted } from "vue";
import http from "../../api/http"; import http from "../../api/http";
import store from "../../store/index";
import zhCn from "element-plus/dist/locale/zh-cn.mjs"; import zhCn from "element-plus/dist/locale/zh-cn.mjs";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import { saveAs } from "file-saver"; import { saveAs } from "file-saver";
import XLSX from "xlsx-js-style"; import XLSX from "xlsx-js-style";
import { postHeatForecast, postPrintHeatForecast } from "../../api/report"; import { postTransferEnergy } from "../../api/report";
const temp = ref([]); //24小时室外预测值 const radioTitle = ref("供热站");
const weather = ref([]); //当日气象信息 const options = reactive([]);
const predTemp = ref([]); //24小时室外体感预测值 const enterpriseId = ref(null);
const dataList = ref([]); //预测热量明细 const checkboxList = ref([]);
const dataTime = ref([]); //报表记录时间及总计 const tableData = ref([]);
const enertyInfo = reactive({ const enertyInfo = reactive({
printTime: null, jurisdictionIds: null,
queryTime: "2024-1-1 09:00:00", areaType: "0",
startTime: null,
endTime: null,
}); });
function timeFun() { function timeFun() {
var date = new Date(); var date = new Date();
...@@ -135,9 +142,9 @@ function timeFun() { ...@@ -135,9 +142,9 @@ function timeFun() {
date.getMinutes(), date.getMinutes(),
date.getSeconds(), date.getSeconds(),
]; ];
var endTimeHour = parseInt(dateArr[2] - 1); var endTimeDay = parseInt(dateArr[1] - 1);
if (endTimeHour < 10) { if (endTimeDay < 10) {
endTimeHour = "0" + endTimeHour; endTimeDay = "0" + endTimeDay;
} }
if (dateArr[0] < 10) { if (dateArr[0] < 10) {
dateArr[0] = "0" + dateArr[0]; dateArr[0] = "0" + dateArr[0];
...@@ -145,47 +152,56 @@ function timeFun() { ...@@ -145,47 +152,56 @@ function timeFun() {
if (dateArr[1] < 10) { if (dateArr[1] < 10) {
dateArr[1] = "0" + dateArr[1]; dateArr[1] = "0" + dateArr[1];
} }
if (dateArr[2] < 10) { enertyInfo.startTime = year + "-" + dateArr[0] + "-" + endTimeDay;
dateArr[2] = "0" + dateArr[2]; enertyInfo.endTime = year + "-" + dateArr[0] + "-" + dateArr[1];
console.log(enertyInfo);
}
//根据权限初始化单选列表
function initRadioList() {
var result = store.getters.getEnterprise();
if (result) {
enterpriseId.value = result[0].enterpriseId;
result.forEach((element) => {
if (element.enterpriseId === enterpriseId.value) {
if (
element.enterpriseId ===
"9BCA54BC-8F27-4849-8D7D-50C5099E1949".toLowerCase()
) {
radioTitle.value = "片区";
element.serviceCenterList.forEach((center) => {
center.supplyList.forEach((supply) => {
supply.jurisdictionList.forEach((jurisdiction) => {
options.push({
value: jurisdiction.jurisdictionId,
lable: jurisdiction.jurisdictionName,
});
});
});
});
} else {
radioTitle.value = "供热站";
element.supplyList.forEach((element) => {
options.push({
value: element.supplyId,
lable: element.supplyName,
});
});
} }
if (dateArr[3] < 10) {
dateArr[3] = "0" + dateArr[3];
} }
if (dateArr[4] < 10) { });
dateArr[4] = "0" + dateArr[4]; enertyInfo.jurisdictionIds = [options[0].value];
} }
let endTimes =
year + "-" + dateArr[0] + "-" + dateArr[1] + " " + endTimeHour + ":00:00";
// enertyInfo.printTime =
// year +
// "-" +
// dateArr[0] +
// "-" +
// dateArr[1] +
// " " +
// dateArr[2] +
// ":" +
// dateArr[3] +
// ":" +
// dateArr[4];
enertyInfo.queryTime = endTimes;
} }
function postHeatForecastFun() { function postTransferEnergyFun() {
if (enertyInfo.queryTime == null) { if (enertyInfo.startTime == null) {
ElMessage.error("请选择记录时间"); ElMessage.error("请选择开始时间");
return false; return false;
} }
let params = { postTransferEnergy(enertyInfo).then((res) => {
QueryTime: enertyInfo.queryTime,
};
postHeatForecast(params).then((res) => {
if (res.success === true) { if (res.success === true) {
temp.value = res.data.temp; tableData.value = res.data;
predTemp.value = res.data.predTemp;
weather.value = res.data.weather;
dataList.value = res.data.list;
dataTime.value = res.data.time;
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
...@@ -214,6 +230,8 @@ function postPrintHeatForecastFun() { ...@@ -214,6 +230,8 @@ function postPrintHeatForecastFun() {
} }
onMounted(() => { onMounted(() => {
timeFun(); timeFun();
initRadioList();
postTransferEnergyFun()
//postHeatForecastFun(); //postHeatForecastFun();
}); });
onUnmounted(() => {}); onUnmounted(() => {});
......
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