提交
This commit is contained in:
1188
src/views/energy-system/advancedanalysis/airanalysis.vue
Normal file
1188
src/views/energy-system/advancedanalysis/airanalysis.vue
Normal file
File diff suppressed because it is too large
Load Diff
1191
src/views/energy-system/advancedanalysis/airanalysisstrategy.vue
Normal file
1191
src/views/energy-system/advancedanalysis/airanalysisstrategy.vue
Normal file
File diff suppressed because it is too large
Load Diff
1024
src/views/energy-system/advancedanalysis/costloadanalysis.vue
Normal file
1024
src/views/energy-system/advancedanalysis/costloadanalysis.vue
Normal file
File diff suppressed because it is too large
Load Diff
230
src/views/energy-system/advancedanalysis/dataintegrity.vue
Normal file
230
src/views/energy-system/advancedanalysis/dataintegrity.vue
Normal file
@@ -0,0 +1,230 @@
|
||||
<template>
|
||||
<div style="padding: 0.5%">
|
||||
<el-row :gutter="10" style="margin-bottom: 10px">
|
||||
<el-col :span="18.5">
|
||||
<timepicker
|
||||
@querfromdata="querfromdata"
|
||||
:interval="interval"
|
||||
></timepicker>
|
||||
</el-col>
|
||||
<el-col :span="5.5" style="float: right">
|
||||
<el-form :inline="true" :model="formInline" class="demo-form-inline">
|
||||
<el-form-item label="通讯状态:">
|
||||
<el-tag style="background: #339966; color: #fff" size="mini"
|
||||
>正常</el-tag
|
||||
>
|
||||
<el-tag style="background: #cc0000; color: #fff" size="mini"
|
||||
>中断</el-tag
|
||||
>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据完整性:">
|
||||
<el-tag
|
||||
style="background: #339966; color: #fff; width: 33px"
|
||||
size="mini"
|
||||
> </el-tag
|
||||
>
|
||||
</el-form-item>
|
||||
<el-form-item label=">=90%">
|
||||
<el-tag
|
||||
style="background: #ffcc33; color: #fff; width: 33px"
|
||||
size="mini"
|
||||
> </el-tag
|
||||
>
|
||||
</el-form-item>
|
||||
<el-form-item label="60%~90%">
|
||||
<el-tag
|
||||
style="background: #cc0000; color: #fff; width: 33px"
|
||||
size="mini"
|
||||
> </el-tag
|
||||
>
|
||||
</el-form-item>
|
||||
<el-form-item label=">60%"> </el-form-item>
|
||||
</el-form>
|
||||
</el-col>
|
||||
<el-table
|
||||
stripe
|
||||
:data="tableData"
|
||||
border
|
||||
v-loading="loading"
|
||||
:style="'width: 100%;height:' + tableheight + 'px'"
|
||||
:height="tableheight + 'px'"
|
||||
row-key="id"
|
||||
id="rebateSetTable"
|
||||
default-expand-all
|
||||
highlight-current-row
|
||||
:header-cell-style="{
|
||||
height: '25px',
|
||||
top: '0px',
|
||||
padding: '0px',
|
||||
}"
|
||||
:row-style="{ height: '25px' }"
|
||||
:cell-style="{ padding: '0px' }"
|
||||
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
|
||||
>
|
||||
<el-table-column prop="name" label="拓扑"></el-table-column>
|
||||
<el-table-column prop="comFlag" label="通讯状态" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-tag
|
||||
v-if="scope.row.comFlag == 1"
|
||||
style="color: #fff; background: #339966"
|
||||
>正常</el-tag
|
||||
>
|
||||
<el-tag
|
||||
v-if="scope.row.comFlag == 0"
|
||||
style="color: #fff; background: #cc0000"
|
||||
>中断</el-tag
|
||||
>
|
||||
<span v-if="scope.row.comFlag == null"></span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="integrity" label="数据完整性(%)" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-tag
|
||||
v-if="
|
||||
scope.row.integrity >= 90 &&
|
||||
scope.row.integrity !== 3.14159 &&
|
||||
scope.row.integrity !== -1
|
||||
"
|
||||
style="background: #339966; color: #fff"
|
||||
>{{ scope.row.integrity }}</el-tag
|
||||
>
|
||||
<el-tag
|
||||
v-if="
|
||||
scope.row.integrity < 60 &&
|
||||
scope.row.integrity !== 3.14159 &&
|
||||
scope.row.integrity !== -1
|
||||
"
|
||||
style="background: #cc0000; color: #fff"
|
||||
>{{ scope.row.integrity }}</el-tag
|
||||
>
|
||||
<el-tag
|
||||
v-if="
|
||||
scope.row.integrity < 90 &&
|
||||
scope.row.integrity >= 60 &&
|
||||
scope.row.integrity !== 3.14159 &&
|
||||
scope.row.integrity !== -1
|
||||
"
|
||||
style="background: #ffcc33; color: #fff"
|
||||
>{{ scope.row.integrity }}</el-tag
|
||||
>
|
||||
<el-tag
|
||||
v-if="scope.row.integrity === 3.14159"
|
||||
style="background: #ccc; color: #fff"
|
||||
>暂无数据</el-tag
|
||||
>
|
||||
<span
|
||||
v-if="scope.row.integrity === -1"
|
||||
style="background: #ccc; color: #fff"
|
||||
></span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-row>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getheight } from "@/assets/commjs/common";
|
||||
import api from "@/api/energy/sysconfig";
|
||||
import timepicker from "../../components/TimePicker/index4";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
device: 1,
|
||||
multipleSelection: [],
|
||||
tableheight: undefined,
|
||||
loading: true,
|
||||
tableData: [],
|
||||
formData: {},
|
||||
tablename: "tab1",
|
||||
treenode: "",
|
||||
interval: 4,
|
||||
formInline: {
|
||||
user: "",
|
||||
region: "",
|
||||
},
|
||||
};
|
||||
},
|
||||
components: {
|
||||
timepicker,
|
||||
},
|
||||
created() {},
|
||||
mounted() {
|
||||
this.device = window.devicePixelRatio;
|
||||
this.tableheight = window.sessionStorage.getItem('appheight') - 65
|
||||
|
||||
// if (this.device == 1) {
|
||||
// this.tableheight = getheight() * 2.22;
|
||||
// }
|
||||
// if (this.device == 1.25) {
|
||||
// this.tableheight = getheight() * 2.22;
|
||||
// }
|
||||
// if (this.device == 1.5) {
|
||||
// this.tableheight = getheight() * 1.93;
|
||||
// }
|
||||
},
|
||||
methods: {
|
||||
handleSelectionChange(val) {
|
||||
console.log(val);
|
||||
this.multipleSelection = val;
|
||||
},
|
||||
//时间格式转化
|
||||
dateFormat(dateData1, dateData2) {
|
||||
var timearr = [];
|
||||
var date = new Date(dateData1);
|
||||
var y = date.getFullYear();
|
||||
var m = date.getMonth() + 1;
|
||||
m = m < 10 ? "0" + m : m;
|
||||
var d = date.getDate();
|
||||
d = d < 10 ? "0" + d : d;
|
||||
var h = date.getHours();
|
||||
h = h < 10 ? "0" + h : h;
|
||||
var f = date.getMinutes();
|
||||
f = f < 10 ? "0" + f : f;
|
||||
var s = date.getSeconds();
|
||||
s = s < 10 ? "0" + s : s;
|
||||
this.formData.startTime = y + "-" + m + "-" + d;
|
||||
timearr.push(this.formData.startTime);
|
||||
var date = new Date(dateData2);
|
||||
var y = date.getFullYear();
|
||||
var m = date.getMonth() + 1;
|
||||
m = m < 10 ? "0" + m : m;
|
||||
var d = date.getDate();
|
||||
d = d < 10 ? "0" + d : d;
|
||||
var h = date.getHours();
|
||||
h = h < 10 ? "0" + h : h;
|
||||
var f = date.getMinutes();
|
||||
f = f < 10 ? "0" + f : f;
|
||||
var s = date.getSeconds();
|
||||
s = s < 10 ? "0" + s : s;
|
||||
this.formData.endTime = y + "-" + m + "-" + d;
|
||||
timearr.push(this.formData.endTime);
|
||||
return timearr;
|
||||
},
|
||||
querfromdata(data, timehbValue, interval) {
|
||||
this.interval = interval;
|
||||
this.loading = true;
|
||||
this.dateFormat(data[0], data[1]);
|
||||
// this.time = this.formData.searchBeginTime+'至'+this.formData.searchEndTime
|
||||
this.dataShuju();
|
||||
},
|
||||
dataShuju() {
|
||||
api.getIntegrityTree(this.formData).then((res) => {
|
||||
if (res.code === "A0000") {
|
||||
// this.tableData = res.data
|
||||
res.data.forEach((element) => {
|
||||
element.children.forEach((m) => {
|
||||
m.children.forEach((n) => {
|
||||
n.integrity = -1;
|
||||
});
|
||||
});
|
||||
});
|
||||
this.tableData = res.data;
|
||||
this.loading = false;
|
||||
}
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
</style>
|
||||
1019
src/views/energy-system/advancedanalysis/electricalcontrast.vue
Normal file
1019
src/views/energy-system/advancedanalysis/electricalcontrast.vue
Normal file
File diff suppressed because it is too large
Load Diff
1469
src/views/energy-system/advancedanalysis/electricenergy.vue
Normal file
1469
src/views/energy-system/advancedanalysis/electricenergy.vue
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,945 @@
|
||||
<template>
|
||||
<div style="padding: 0.5%">
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="24">
|
||||
<el-form :inline="true" :model="ruleForm" class="demo-form-inline" style='margin-left: 15px'>
|
||||
<el-form-item label="统计指标:">
|
||||
<el-select
|
||||
v-model="formData.tagType"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="负荷类型:">
|
||||
<el-select
|
||||
v-model="value2"
|
||||
multiple
|
||||
collapse-tags
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options2"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="值类型:">
|
||||
<el-select
|
||||
v-model="formData.valType"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options1"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="统计类型:">
|
||||
<el-select
|
||||
v-model="formData.statisticType"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options3"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<!-- <el-button type="primary" style="float:right" @click="Indexstrategy">指标策略</el-button>
|
||||
<el-button type="primary" style="float:right;margin-right:1%" @click="loadtype">负荷策略</el-button> -->
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<timepicker
|
||||
v-if="falg"
|
||||
@querfromdata="querfromdata"
|
||||
:type="2"
|
||||
:interval="interval"
|
||||
:tablename="tablename"
|
||||
:thb="true"
|
||||
></timepicker>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="24">
|
||||
<div
|
||||
id="electrih"
|
||||
:style="
|
||||
'background:;width:100%;height:' + (tableheight-50) + 'px;'
|
||||
"
|
||||
></div>
|
||||
<div
|
||||
v-if="radio3 == '累计'"
|
||||
id="electri2"
|
||||
:style="
|
||||
'background:;width:100%;height:' + (tableheight-50) + 'px;'
|
||||
"
|
||||
></div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!--指标策略-->
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
title="指标策略"
|
||||
:visible.sync="dialogVisible"
|
||||
width="20%"
|
||||
:before-close="handleClose"
|
||||
>
|
||||
<span class="spantext">请勾选需要参与统计的指标:</span>
|
||||
<div class="border">
|
||||
<el-checkbox-group v-model="checkList" style="padding: 2%">
|
||||
<el-checkbox label="三相有功功率" class="check"></el-checkbox>
|
||||
<el-checkbox label="三相无功功率" class="check"></el-checkbox>
|
||||
<el-checkbox label="三相净有功电能" class="check"></el-checkbox>
|
||||
<el-checkbox label="电流总有效值" class="check"> </el-checkbox>
|
||||
<el-checkbox label="电压基波幅值" class="check"></el-checkbox>
|
||||
<el-checkbox label="电流基波幅值" class="check"></el-checkbox>
|
||||
<el-checkbox label="总有有功功率" class="check"></el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</div>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="dialogVisible = false"
|
||||
>保 存</el-button
|
||||
>
|
||||
</span>
|
||||
</el-dialog>
|
||||
<!--负荷策略-->
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
title="电度策略"
|
||||
:visible.sync="dialogVisible2"
|
||||
width="30%"
|
||||
:before-close="handleClose"
|
||||
>
|
||||
<span class="spantext">负荷设备树:</span>
|
||||
<el-row class="border2">
|
||||
<el-col :span="10">
|
||||
<el-tree
|
||||
:data="treedata"
|
||||
:props="defaultProps"
|
||||
default-expand-all
|
||||
style="height: 30vh; overflow-y: auto"
|
||||
:highlight-current="true"
|
||||
@node-click="handleNodeClick"
|
||||
></el-tree>
|
||||
</el-col>
|
||||
<el-col :span="14">
|
||||
<el-form
|
||||
ref="form"
|
||||
:model="form"
|
||||
label-width="80px"
|
||||
style="margin-top: 20%"
|
||||
>
|
||||
<el-form-item label="负荷名称">
|
||||
<el-input
|
||||
v-model="form.name"
|
||||
placeholder="请输入负荷名称"
|
||||
style="width: 86%"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="负荷终端">
|
||||
<el-select v-model="form.region" placeholder="请选择负荷终端">
|
||||
<el-option label="2号楼217宿舍" value="shanghai"></el-option>
|
||||
<el-option label="号楼218宿舍" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item style="margin-left: 10%">
|
||||
<el-button type="primary">删除</el-button>
|
||||
<el-button type="primary">新增</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogVisible2 = false">取 消</el-button>
|
||||
<el-button type="primary" @click="dialogVisible2 = false"
|
||||
>确 定</el-button
|
||||
>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import ElInputGroup from "@/components/ElInputGroup/el-input-group.vue";
|
||||
import { dicData } from "../../../assets/commjs/dictypeData";
|
||||
import { getappheight, getheight } from "../../../assets/commjs/common";
|
||||
import api from "@/api/energy/sysconfig";
|
||||
import timepicker from "../../components/TimePicker/index4";
|
||||
import echarts from "echarts";
|
||||
export default {
|
||||
components: {
|
||||
timepicker,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
falg: false,
|
||||
tablename: "tab2",
|
||||
dialogVisible: false,
|
||||
dialogVisible2: false,
|
||||
formData: {
|
||||
startTime: "",
|
||||
endTime: "",
|
||||
startTimeBi: "",
|
||||
endTimeBi: "",
|
||||
statisticType: 0,
|
||||
tagType: "",
|
||||
loadType: [],
|
||||
valType: "",
|
||||
},
|
||||
interval: 4,
|
||||
//统计指标
|
||||
//统计指标
|
||||
value: 0,
|
||||
options: [
|
||||
{ value: 0, label: "净有功电能" },
|
||||
{ value: 1, label: "三相无功功率" },
|
||||
],
|
||||
value1: 0,
|
||||
options1: [
|
||||
{ value: 0, label: "增量" },
|
||||
{ value: 1, label: "峰" },
|
||||
{ value: 2, label: "平" },
|
||||
{ value: 3, label: "谷" },
|
||||
],
|
||||
value3: 0,
|
||||
options3: [
|
||||
{ value: 0, label: "电度" },
|
||||
{ value: 1, label: "电费" },
|
||||
],
|
||||
value2: [],
|
||||
options2: [
|
||||
{ value: 0, label: "空调负荷" },
|
||||
{ value: 1, label: "办公负荷" },
|
||||
{ value: 2, label: "厨房负荷" },
|
||||
{ value: 3, label: "宿舍负荷" },
|
||||
{ value: 4, label: "光伏发电" },
|
||||
{ value: 5, label: "进线" },
|
||||
{ value: 6, label: "总负荷" },
|
||||
],
|
||||
tableData: [],
|
||||
checkList: [],
|
||||
device: 1,
|
||||
tableheight: undefined,
|
||||
treedata: [
|
||||
{
|
||||
id: 0,
|
||||
label: "空调负荷",
|
||||
children: [
|
||||
{
|
||||
id: 1,
|
||||
label: "1层1号监测点",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
label: "1层2号监测点",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
label: "办公负荷",
|
||||
id: 11,
|
||||
children: [
|
||||
{
|
||||
id: 12,
|
||||
label: "1号楼电梯",
|
||||
},
|
||||
{
|
||||
id: 13,
|
||||
label: "1号楼照明",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
label: "厨房负荷",
|
||||
id: 3,
|
||||
children: [
|
||||
{
|
||||
id: 31,
|
||||
label: "厨房",
|
||||
},
|
||||
{
|
||||
id: 32,
|
||||
label: "保安室",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
defaultProps: {
|
||||
children: "children",
|
||||
label: "label",
|
||||
},
|
||||
form: {
|
||||
name: "",
|
||||
region: "",
|
||||
},
|
||||
name: "kWh",
|
||||
name1: "",
|
||||
text: "环比",
|
||||
//subtext:'增量值',
|
||||
legend: [],
|
||||
xdata: [],
|
||||
ydata1: [],
|
||||
ydata2: [],
|
||||
ping: "",
|
||||
time: "",
|
||||
periodBeginTime: "",
|
||||
periodEndTime: "",
|
||||
timehuanbiValue: [],
|
||||
t: false,
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getTarget();
|
||||
},
|
||||
mounted() {
|
||||
// this.tableheight = getheight();
|
||||
// this.device = window.devicePixelRatio;
|
||||
// if (this.device == 1) {
|
||||
// this.tableheight = this.tableheight * 2.25;
|
||||
// }
|
||||
// if (this.device == 1.25) {
|
||||
// this.tableheight = this.tableheight * 1.8;
|
||||
// }
|
||||
// if (this.device == 1.5) {
|
||||
// this.tableheight = this.tableheight * 1.93;
|
||||
// }
|
||||
this.tableheight = window.sessionStorage.getItem('appheight') - 120
|
||||
this.$nextTick(() => {
|
||||
this.electritypeEcharts1();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
//获取指标数据
|
||||
getTarget() {
|
||||
var p = {
|
||||
statisticalName: "电度统计",
|
||||
};
|
||||
api.getEleStatisticalTree(p).then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
this.options = res.data.binds;
|
||||
this.formData.tagType = this.options[0].id;
|
||||
}
|
||||
this.getDetail();
|
||||
});
|
||||
},
|
||||
//获取负荷类型
|
||||
getDetail() {
|
||||
api.getEleLoadSetDetail().then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
var data = res.data;
|
||||
var arr = [];
|
||||
var arrId = [];
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var p = {
|
||||
name: data[i].loadName,
|
||||
id: data[i].loadId,
|
||||
};
|
||||
arrId.push(data[i].loadId);
|
||||
arr.push(p);
|
||||
}
|
||||
this.value2 = arrId;
|
||||
this.options2 = arr;
|
||||
}
|
||||
this.RateDetail();
|
||||
});
|
||||
},
|
||||
//字典获取数据
|
||||
RateDetail() {
|
||||
var code = "Rate_Type";
|
||||
this.options1 = dicData(code, []);
|
||||
this.options1.push({ id: "", name: "全部", label: "全部" });
|
||||
this.formData.valType = this.options1[0].id;
|
||||
this.falg = true;
|
||||
},
|
||||
//指标策略触发事件
|
||||
Indexstrategy() {
|
||||
this.dialogVisible = true;
|
||||
},
|
||||
//树节点触发事件
|
||||
handleNodeClick(data) {
|
||||
console.log(data);
|
||||
},
|
||||
//负荷策略触发事件
|
||||
loadtype() {
|
||||
this.dialogVisible2 = true;
|
||||
},
|
||||
//关闭事件
|
||||
handleClose() {
|
||||
this.dialogVisible = false;
|
||||
this.dialogVisible2 = false;
|
||||
},
|
||||
//切换事件
|
||||
checkbox(val) {
|
||||
this.radio3 = val;
|
||||
if (val == "增量") {
|
||||
this.$nextTick(() => {
|
||||
this.electritypeEcharts1();
|
||||
});
|
||||
} else {
|
||||
this.$nextTick(() => {
|
||||
this.electritypeEcharts2();
|
||||
});
|
||||
}
|
||||
},
|
||||
//时间格式化
|
||||
dateFormat(dateData1, dateData2) {
|
||||
var timearr = [];
|
||||
var date = new Date(dateData1);
|
||||
var y = date.getFullYear();
|
||||
var m = date.getMonth() + 1;
|
||||
m = m < 10 ? "0" + m : m;
|
||||
var d = date.getDate();
|
||||
d = d < 10 ? "0" + d : d;
|
||||
var h = date.getHours();
|
||||
h = h < 10 ? "0" + h : h;
|
||||
var f = date.getMinutes();
|
||||
f = f < 10 ? "0" + f : f;
|
||||
var s = date.getSeconds();
|
||||
s = s < 10 ? "0" + s : s;
|
||||
this.formData.searchBeginTime = y + "-" + m + "-" + d;
|
||||
timearr.push(this.formData.startTime);
|
||||
var date = new Date(dateData2);
|
||||
var y = date.getFullYear();
|
||||
var m = date.getMonth() + 1;
|
||||
m = m < 10 ? "0" + m : m;
|
||||
var d = date.getDate();
|
||||
d = d < 10 ? "0" + d : d;
|
||||
var h = date.getHours();
|
||||
h = h < 10 ? "0" + h : h;
|
||||
var f = date.getMinutes();
|
||||
f = f < 10 ? "0" + f : f;
|
||||
var s = date.getSeconds();
|
||||
s = s < 10 ? "0" + s : s;
|
||||
this.formData.searchEndTime = y + "-" + m + "-" + d;
|
||||
timearr.push(this.formData.endTime);
|
||||
return timearr;
|
||||
},
|
||||
querfromdata(data, timehbValue, interval) {
|
||||
this.interval = interval;
|
||||
|
||||
this.timeValue = data;
|
||||
console.log("日期" + this.timeValue);
|
||||
this.timehuanbiValue = timehbValue;
|
||||
console.log("环比" + this.timehuanbiValue);
|
||||
this.periodBeginTime = this.timehuanbiValue[0];
|
||||
this.periodEndTime = this.timehuanbiValue[1];
|
||||
console.log("开始" + this.periodBeginTime);
|
||||
console.log("结束" + this.periodEndTime);
|
||||
this.ping = this.periodBeginTime + "至" + this.periodEndTime;
|
||||
this.dateFormat(this.timeValue[0], this.timeValue[1]);
|
||||
this.time =
|
||||
this.formData.searchBeginTime + "至" + this.formData.searchEndTime;
|
||||
var arr = [];
|
||||
|
||||
var startTime = this.timeValue[0];
|
||||
var year1 = parseInt(startTime.substring(0, 4));
|
||||
// var month = parseInt(startTime.substring(5, 7))
|
||||
// arr.push(year1+'年'+month+'月')
|
||||
var startTimeb = this.periodBeginTime;
|
||||
var year2 = parseInt(startTimeb.substring(0, 4));
|
||||
// var month = parseInt(startTimeb.substring(5, 7))
|
||||
// arr.push(year2+'年'+month+'月')
|
||||
arr.push(this.time);
|
||||
arr.push(this.ping);
|
||||
this.legend = arr;
|
||||
for (var i = 0; i < this.options.length; i++) {
|
||||
if (this.formData.tagType == this.options[i].id) {
|
||||
this.name1 = this.options[i].name;
|
||||
}
|
||||
}
|
||||
|
||||
var data = {
|
||||
startTime: this.timeValue[0],
|
||||
endTime: this.timeValue[1],
|
||||
startTimeBi: this.periodBeginTime,
|
||||
endTimeBi: this.periodEndTime,
|
||||
tagType: this.formData.tagType,
|
||||
statisticType: this.formData.statisticType,
|
||||
loadType: this.value2,
|
||||
valType: this.formData.valType,
|
||||
};
|
||||
api.getElectStatistic(data).then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
var data = res.data;
|
||||
var xdata = [];
|
||||
var ydata1 = [];
|
||||
var ydata2 = [];
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
if (
|
||||
data[i].afterNum == data[i].beforeNum &&
|
||||
data[i].afterNum !== 0 &&
|
||||
data[i].beforeNum !== 0
|
||||
) {
|
||||
this.t = true;
|
||||
ydata1.push(data[i].beforeNum.toFixed(2));
|
||||
xdata.push(data[i].loadName);
|
||||
} else {
|
||||
this.t = false;
|
||||
xdata.push(data[i].loadName);
|
||||
if (data[i].afterNum == 3.14159) {
|
||||
data[i].afterNum = 0.5;
|
||||
}
|
||||
if (data[i].beforeNum == 3.14159) {
|
||||
data[i].beforeNum = 0.5;
|
||||
}
|
||||
ydata2.push(data[i].afterNum.toFixed(2));
|
||||
ydata1.push(data[i].beforeNum.toFixed(2));
|
||||
}
|
||||
}
|
||||
this.xdata = xdata;
|
||||
this.ydata1 = ydata1;
|
||||
this.ydata2 = ydata2;
|
||||
if (this.formData.statisticType == 0) {
|
||||
this.name = "kWh";
|
||||
} else {
|
||||
this.name = "元";
|
||||
}
|
||||
if (this.text === "环比" && year1 > year2 && !this.t) {
|
||||
this.text = "同比";
|
||||
this.electritypeEcharts1();
|
||||
} else if (this.text === "环比" && year1 === year2 && !this.t) {
|
||||
this.text = "环比";
|
||||
this.electritypeEcharts1();
|
||||
} else {
|
||||
if (this.t) {
|
||||
this.text = "";
|
||||
this.electritypeEcharts1();
|
||||
} else {
|
||||
this.text = "环比";
|
||||
this.electritypeEcharts1();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
// if(d !==''){
|
||||
// this.text='同比'
|
||||
// this.subtext='空调负荷'
|
||||
// this.xdata=['最大值','最小值','平均值']
|
||||
// this.ydata1=[89,35,45],
|
||||
// this.ydata2=[97.89,56.78,35,6]
|
||||
// this.loadtypeEcharts()
|
||||
// }
|
||||
},
|
||||
electritypeEcharts1() {
|
||||
let echarts = require("echarts");
|
||||
var myChart1 = echarts.init(document.getElementById("electrih"));
|
||||
// var xData=['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05', '2021-01-06', '2021-01-07', '2021-01-08', '2021-01-09', '2021-01-10', '2021-01-11', '2021-01-12', '2021-02-01', '2021-02-02', '2021-02-03', '2021-02-04']
|
||||
// var yData=[50, 75, 84, 65, 90, 56, 68,89, 67, 95, 69, 96,75, 58, 85, 65]
|
||||
var option1 = {
|
||||
title: {
|
||||
text: this.text,
|
||||
// subtext:this.subtext ,
|
||||
left: "center",
|
||||
},
|
||||
tooltip: {
|
||||
trigger: "axis",
|
||||
axisPointer: {
|
||||
type: "cross",
|
||||
crossStyle: {
|
||||
color: "#999",
|
||||
},
|
||||
},
|
||||
formatter: function (params) {
|
||||
var tips = "";
|
||||
tips +=
|
||||
'<span style="font-weight:bold;color:#0099CC">' +
|
||||
params[0].name +
|
||||
"</span></br/>";
|
||||
for (var i = 0; i < params.length; i++) {
|
||||
if (params[i].value == 0.5) {
|
||||
tips += params[i].seriesName + ":暂无数据<br/>";
|
||||
} else {
|
||||
tips +=
|
||||
params[i].seriesName +
|
||||
':<span style="font-weight:bold;color:#996600">' +
|
||||
params[i].value +
|
||||
"</span><br/>";
|
||||
}
|
||||
}
|
||||
return tips;
|
||||
},
|
||||
},
|
||||
grid: {
|
||||
left: "2%",
|
||||
right: "4%",
|
||||
bottom: "2%",
|
||||
top: "10%",
|
||||
containLabel: true,
|
||||
},
|
||||
toolbox: {
|
||||
feature: {
|
||||
//dataView: { show: true, readOnly: false },
|
||||
// magicType: { show: true, type: ['line', 'bar'] },
|
||||
//restore: { show: true },
|
||||
saveAsImage: { show: true },
|
||||
},
|
||||
},
|
||||
legend: {
|
||||
// orient: 'vertical',
|
||||
data: [
|
||||
{ name: this.legend[0], itemStyle: { color: "#FF9900" } },
|
||||
{ name: this.legend[1], itemStyle: { color: "#0099CC" } },
|
||||
],
|
||||
left: "left",
|
||||
// itemStyle: {
|
||||
// color:['#00CC33','#0099CC']
|
||||
// }
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: "category",
|
||||
data: this.xdata,
|
||||
axisPointer: {
|
||||
type: "shadow",
|
||||
},
|
||||
},
|
||||
],
|
||||
yAxis: [
|
||||
{
|
||||
type: "value",
|
||||
name: this.name1,
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
type: "dashed",
|
||||
color: "#55b9b4",
|
||||
},
|
||||
},
|
||||
//min: 0,
|
||||
// max: 100,
|
||||
//interval: 10,
|
||||
axisLabel: {
|
||||
formatter: "{value}" + this.name,
|
||||
},
|
||||
},
|
||||
],
|
||||
series: [
|
||||
{
|
||||
name: this.legend[1],
|
||||
barMaxWidth: 45,
|
||||
type: "bar",
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + 'kWh';
|
||||
// }
|
||||
// },
|
||||
data: this.ydata2,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: function (params) {
|
||||
if (params.value == 0.5) {
|
||||
return new echarts.graphic.LinearGradient(
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
[
|
||||
{
|
||||
offset: 1,
|
||||
color: "#999999",
|
||||
},
|
||||
],
|
||||
false
|
||||
);
|
||||
} else {
|
||||
return new echarts.graphic.LinearGradient(
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
[
|
||||
{
|
||||
offset: 1,
|
||||
color: "#0099CC",
|
||||
},
|
||||
],
|
||||
false
|
||||
);
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
label: {
|
||||
show: true,
|
||||
position: "top",
|
||||
// distance: 10,
|
||||
// color: '#fff'
|
||||
},
|
||||
},
|
||||
{
|
||||
name: this.legend[0],
|
||||
barMaxWidth: 45,
|
||||
type: "bar",
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + 'kWh';
|
||||
// }
|
||||
// },
|
||||
data: this.ydata1,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: function (params) {
|
||||
if (params.value == 0.5) {
|
||||
return new echarts.graphic.LinearGradient(
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
[
|
||||
{
|
||||
offset: 1,
|
||||
color: "#999999",
|
||||
},
|
||||
],
|
||||
false
|
||||
);
|
||||
} else {
|
||||
return new echarts.graphic.LinearGradient(
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
[
|
||||
{
|
||||
offset: 1,
|
||||
color: "#FF9900",
|
||||
},
|
||||
],
|
||||
false
|
||||
);
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
label: {
|
||||
show: true,
|
||||
position: "top",
|
||||
// distance: 10,
|
||||
// color: '#fff'
|
||||
},
|
||||
},
|
||||
],
|
||||
};
|
||||
myChart1.clear();
|
||||
|
||||
option1 && myChart1.setOption(option1, true)
|
||||
window.echartsArr.push(myChart1);
|
||||
},
|
||||
electritypeEcharts2() {
|
||||
let echarts = require("echarts");
|
||||
var myChart = echarts.init(document.getElementById("electri2"));
|
||||
var xData = [
|
||||
"2021-01-01",
|
||||
"2021-01-02",
|
||||
"2021-01-03",
|
||||
"2021-01-04",
|
||||
"2021-01-05",
|
||||
"2021-01-06",
|
||||
"2021-01-07",
|
||||
"2021-01-08",
|
||||
"2021-01-09",
|
||||
"2021-01-10",
|
||||
"2021-01-11",
|
||||
"2021-01-12",
|
||||
"2021-02-01",
|
||||
"2021-02-02",
|
||||
"2021-02-03",
|
||||
"2021-02-04",
|
||||
];
|
||||
var yData = [
|
||||
50, 75, 84, 65, 90, 56, 68, 89, 67, 95, 69, 96, 75, 58, 85, 65,
|
||||
];
|
||||
var option = {
|
||||
title: {
|
||||
text: "",
|
||||
},
|
||||
tooltip: {
|
||||
trigger: "axis",
|
||||
},
|
||||
grid: {
|
||||
left: "2%",
|
||||
right: "4%",
|
||||
bottom: "6%",
|
||||
top: "10%",
|
||||
containLabel: true,
|
||||
},
|
||||
legend: {},
|
||||
toolbox: {
|
||||
show: true,
|
||||
feature: {
|
||||
dataZoom: {
|
||||
yAxisIndex: "none",
|
||||
},
|
||||
//dataView: { readOnly: false },
|
||||
magicType: { type: ["line", "bar"] },
|
||||
//restore: {},
|
||||
saveAsImage: {},
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
type: "category",
|
||||
boundaryGap: false,
|
||||
data: [
|
||||
"2022-03-11 11:15",
|
||||
"11:30",
|
||||
"11:45",
|
||||
"12:00",
|
||||
"12:15",
|
||||
"12:30",
|
||||
"12:45",
|
||||
],
|
||||
},
|
||||
yAxis: {
|
||||
type: "value",
|
||||
axisLabel: {
|
||||
formatter: "{value} kW-h",
|
||||
},
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: "空调负荷",
|
||||
type: "line",
|
||||
data: [30, 61, 94, 125, 157, 189, 228],
|
||||
markPoint: {
|
||||
data: [
|
||||
{ type: "max", name: "Max" },
|
||||
{ type: "min", name: "Min" },
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "办公负荷",
|
||||
type: "line",
|
||||
data: [16, 27, 40, 51, 63, 75, 84],
|
||||
markPoint: {
|
||||
data: [
|
||||
{ type: "max", name: "Max" },
|
||||
{ type: "min", name: "Min" },
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "厨房负荷",
|
||||
type: "line",
|
||||
data: [6, 14, 21, 30, 38, 48, 57],
|
||||
markPoint: {
|
||||
data: [
|
||||
{ type: "max", name: "Max" },
|
||||
{ type: "min", name: "Min" },
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "宿舍负荷",
|
||||
type: "line",
|
||||
data: [3, 5, 9, 15, 18, 21, 24],
|
||||
markPoint: {
|
||||
data: [
|
||||
{ type: "max", name: "Max" },
|
||||
{ type: "min", name: "Min" },
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "光伏发电",
|
||||
type: "line",
|
||||
data: [43, 85, 129, 175, 218, 261, 304],
|
||||
markPoint: {
|
||||
data: [
|
||||
{ type: "max", name: "Max" },
|
||||
{ type: "min", name: "Min" },
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "进线",
|
||||
type: "line",
|
||||
data: [63, 125, 189, 255, 318, 381, 444],
|
||||
markPoint: {
|
||||
data: [
|
||||
{ type: "max", name: "Max" },
|
||||
{ type: "min", name: "Min" },
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
};
|
||||
var app = {
|
||||
currentIndex: -1,
|
||||
};
|
||||
setInterval(function () {
|
||||
var dataLen = option.series[0].data.length;
|
||||
|
||||
// 取消之前高亮的图形
|
||||
myChart.dispatchAction({
|
||||
type: "downplay",
|
||||
seriesIndex: 0,
|
||||
dataIndex: app.currentIndex,
|
||||
});
|
||||
app.currentIndex = (app.currentIndex + 1) % dataLen;
|
||||
//console.log(app.currentIndex);
|
||||
// 高亮当前图形
|
||||
myChart.dispatchAction({
|
||||
type: "highlight",
|
||||
seriesIndex: 0,
|
||||
dataIndex: app.currentIndex,
|
||||
});
|
||||
// 显示 tooltip
|
||||
myChart.dispatchAction({
|
||||
type: "showTip",
|
||||
seriesIndex: 0,
|
||||
dataIndex: app.currentIndex,
|
||||
});
|
||||
}, 1000);
|
||||
myChart.clear();
|
||||
myChart.setOption(option)
|
||||
window.echartsArr.push(myChart);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang='scss' scoped>
|
||||
.spantext {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.border {
|
||||
border: 1px solid rgb(15, 15, 15);
|
||||
height: 30vh;
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.check {
|
||||
margin-top: 2%;
|
||||
margin-left: 25%;
|
||||
}
|
||||
.border2 {
|
||||
border: 1px solid rgb(15, 15, 15);
|
||||
}
|
||||
::v-deep .el-tree {
|
||||
color: rgb(1, 15, 27);
|
||||
font-weight: bold;
|
||||
// background: rgba(87, 122, 133, 0.39);
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
1586
src/views/energy-system/advancedanalysis/loadanalysis.vue
Normal file
1586
src/views/energy-system/advancedanalysis/loadanalysis.vue
Normal file
File diff suppressed because it is too large
Load Diff
190
src/views/energy-system/advancedanalysis/onlinerate.vue
Normal file
190
src/views/energy-system/advancedanalysis/onlinerate.vue
Normal file
@@ -0,0 +1,190 @@
|
||||
<template>
|
||||
<div style="padding: 0.5%">
|
||||
<el-row :gutter="10" style="margin-bottom: 10px">
|
||||
<el-col :span="18.5">
|
||||
<timepicker
|
||||
@querfromdata="querfromdata"
|
||||
:interval="interval"
|
||||
:treenode="treenode"
|
||||
:tablename="tablename"
|
||||
></timepicker>
|
||||
</el-col>
|
||||
<el-col :span="5.5" style="float: right">
|
||||
<el-form :inline="true" :model="formInline" class="demo-form-inline">
|
||||
<el-form-item label="通讯状态:">
|
||||
<el-tag style="color: #fff; background: #396" size="mini">正常</el-tag>
|
||||
<el-tag style="color: #fff; background: #c00" size="mini">中断</el-tag>
|
||||
</el-form-item>
|
||||
<el-form-item label="终端在线率:">
|
||||
<el-tag style="width: 33px; color: #fff; background: #396" size="mini">
|
||||
|
||||
</el-tag>
|
||||
</el-form-item>
|
||||
<el-form-item label=">=90%">
|
||||
<el-tag style="width: 33px; color: #fff; background: #fc3" size="mini">
|
||||
|
||||
</el-tag>
|
||||
</el-form-item>
|
||||
<el-form-item label="60%~90%">
|
||||
<el-tag style="width: 33px; color: #fff; background: #c00" size="mini">
|
||||
|
||||
</el-tag>
|
||||
</el-form-item>
|
||||
<el-form-item label=">60%"></el-form-item>
|
||||
</el-form>
|
||||
</el-col>
|
||||
<el-table
|
||||
stripe
|
||||
:data="tableData"
|
||||
border
|
||||
v-loading="loading"
|
||||
:style="'width: 100%;height:' + tableheight + 'px'"
|
||||
:height="tableheight + 'px'"
|
||||
row-key="id"
|
||||
id="rebateSetTable"
|
||||
default-expand-all
|
||||
highlight-current-row
|
||||
:header-cell-style="{
|
||||
//background:'#5E95E8',
|
||||
//color:'#FFFFFF',
|
||||
height: '25px',
|
||||
top: '0px',
|
||||
padding: '0px'
|
||||
}"
|
||||
:row-style="{ height: '25px' }"
|
||||
:cell-style="{ padding: '0px' }"
|
||||
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
|
||||
>
|
||||
<el-table-column prop="name" label="拓扑"></el-table-column>
|
||||
<!-- <el-table-column prop="info" label="工程信息" align="center">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.info==null">/</span>
|
||||
<span v-if="scope.row.info !==null">{{scope.row.info}}</span>
|
||||
</template>
|
||||
</el-table-column> -->
|
||||
<el-table-column prop="comFlag" label="通讯状态" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.comFlag == 1" style="color: #fff; background: #396">正常</el-tag>
|
||||
<el-tag v-if="scope.row.comFlag == 0" style="color: #fff; background: #c00">中断</el-tag>
|
||||
<span v-if="scope.row.comFlag == 2">/</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="integrity" label="终端在线率(%)" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-tag
|
||||
v-if="scope.row.integrity >= 90 && scope.row.integrity !== 3.14159"
|
||||
style="color: #fff; background: #396"
|
||||
>
|
||||
{{ scope.row.integrity }}
|
||||
</el-tag>
|
||||
<el-tag
|
||||
v-if="scope.row.integrity < 60 && scope.row.integrity !== 3.14159"
|
||||
style="color: #fff; background: #c00"
|
||||
>
|
||||
{{ scope.row.integrity }}
|
||||
</el-tag>
|
||||
<el-tag
|
||||
v-if="
|
||||
scope.row.integrity < 90 && scope.row.integrity >= 60 && scope.row.integrity !== 3.14159
|
||||
"
|
||||
style="color: #fff; background: #fc3"
|
||||
>
|
||||
{{ scope.row.integrity }}
|
||||
</el-tag>
|
||||
<el-tag v-if="scope.row.integrity === 3.14159" style="color: #fff; background: #ccc">
|
||||
暂无数据
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-row>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getheight } from '@/assets/commjs/common'
|
||||
import api from '@/api/energy/sysconfig'
|
||||
import timepicker from '../../components/TimePicker/index4'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
device: 1,
|
||||
loading: true,
|
||||
tableheight: undefined,
|
||||
tableData: [],
|
||||
tablename: 'tab1',
|
||||
treenode: '',
|
||||
interval: 4,
|
||||
formData: {},
|
||||
formInline: {
|
||||
user: '',
|
||||
region: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
timepicker
|
||||
},
|
||||
created() {},
|
||||
mounted() {
|
||||
this.device = window.devicePixelRatio
|
||||
this.tableheight = window.sessionStorage.getItem('appheight') - 65
|
||||
},
|
||||
methods: {
|
||||
//时间格式转化
|
||||
dateFormat(dateData1, dateData2) {
|
||||
var timearr = []
|
||||
var date = new Date(dateData1)
|
||||
var y = date.getFullYear()
|
||||
var m = date.getMonth() + 1
|
||||
m = m < 10 ? '0' + m : m
|
||||
var d = date.getDate()
|
||||
d = d < 10 ? '0' + d : d
|
||||
var h = date.getHours()
|
||||
h = h < 10 ? '0' + h : h
|
||||
var f = date.getMinutes()
|
||||
f = f < 10 ? '0' + f : f
|
||||
var s = date.getSeconds()
|
||||
s = s < 10 ? '0' + s : s
|
||||
this.formData.startTime = y + '-' + m + '-' + d
|
||||
timearr.push(this.formData.startTime)
|
||||
var date = new Date(dateData2)
|
||||
var y = date.getFullYear()
|
||||
var m = date.getMonth() + 1
|
||||
m = m < 10 ? '0' + m : m
|
||||
var d = date.getDate()
|
||||
d = d < 10 ? '0' + d : d
|
||||
var h = date.getHours()
|
||||
h = h < 10 ? '0' + h : h
|
||||
var f = date.getMinutes()
|
||||
f = f < 10 ? '0' + f : f
|
||||
var s = date.getSeconds()
|
||||
s = s < 10 ? '0' + s : s
|
||||
this.formData.endTime = y + '-' + m + '-' + d
|
||||
timearr.push(this.formData.endTime)
|
||||
return timearr
|
||||
},
|
||||
querfromdata(data, timehbValue, interval) {
|
||||
this.interval = interval
|
||||
this.loading = true
|
||||
this.timeValue = data
|
||||
console.log('日期' + this.timeValue)
|
||||
this.timehuanbiValue = timehbValue
|
||||
console.log('环比' + this.timehuanbiValue)
|
||||
this.periodBeginTime = this.timehuanbiValue[0]
|
||||
this.periodEndTime = this.timehuanbiValue[1]
|
||||
console.log('开始' + this.periodBeginTime)
|
||||
console.log('结束' + this.periodEndTime)
|
||||
this.ping = this.periodBeginTime + '至' + this.periodEndTime
|
||||
this.dateFormat(this.timeValue[0], this.timeValue[1])
|
||||
// this.time = this.formData.searchBeginTime+'至'+this.formData.searchEndTime
|
||||
api.getOnlineRateTree(this.formData).then(res => {
|
||||
if (res.code === 'A0000') {
|
||||
this.tableData = res.data
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped></style>
|
||||
@@ -0,0 +1,23 @@
|
||||
<template>
|
||||
<div>
|
||||
光伏分析
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data(){
|
||||
return {
|
||||
|
||||
}
|
||||
},
|
||||
created(){
|
||||
|
||||
},
|
||||
mounted(){
|
||||
|
||||
},
|
||||
methods:{
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user