Commit 00f525ab authored by 王亚晖's avatar 王亚晖
parents 7fa491c4 2647dee0
...@@ -78,6 +78,20 @@ export const postSecTrafficUc = params => { ...@@ -78,6 +78,20 @@ export const postSecTrafficUc = params => {
}) })
} }
//板换效率趋势一
export const postFirEffiTrendUc = params => {
return http.post(`/api/analysis/external/FirEffiTrendUc`, params).then(res => res).catch(function (error) {
console.log(error);
})
}
//板换效率趋势二
export const postSecEffiTrendUc = params => {
return http.post(`/api/analysis/external/SecEffiTrendUc`, params).then(res => res).catch(function (error) {
console.log(error);
})
}
//热量分析报表 //热量分析报表
export const postHeatAnalysis = params => { export const postHeatAnalysis = params => {
return http.post(`/api/analysis/report/HeatAnalysis`, params).then(res => res).catch(function (error) { return http.post(`/api/analysis/report/HeatAnalysis`, params).then(res => res).catch(function (error) {
......
<template> <template>
<el-scrollbar> <el-scrollbar>
<div class="ams-el-menu"> <div class="ams-el-menu">
<!-- <div class="menu-search"> <div class="menu-search">
<el-select placement="bottom" v-model="searchValue" clearable filterable remote reserve-keyword <el-select placement="bottom" v-model="searchValue" clearable filterable
:placeholder="'请输入关键字搜索...'" :remote-method="remoteMethod" @change="selectChange" :loading="loading"> :placeholder="'请输入关键字搜索...'" @change="save(searchValue)">
<template #prefix><i class="el-icon-search"></i></template> <template #prefix><i class="el-icon-search"></i></template>
<el-option v-for="item in menus" :key="item.menuId" :label="item.menuName" :value="item.menuName" /> <el-option v-for="item in options" :key="item.menuId" :label="item.menuName" :value="item.navigateUrl" />
</el-select> </el-select>
</div> --> </div>
<el-menu unique-opened :collapse-transition='false' :collapse='$store.state.iscollapse' router :default-active="defaultActive" active-text-color="#409EFF" background-color="#32363f" text-color="#fff"> <el-menu unique-opened :collapse-transition='false' :collapse='$store.state.iscollapse' router :default-active="defaultActive" active-text-color="#409EFF" background-color="#32363f" text-color="#fff">
<!-- 一级菜单 --> <!-- 一级菜单 -->
...@@ -78,15 +78,28 @@ ...@@ -78,15 +78,28 @@
import { import {
Menu as IconMenu Menu as IconMenu
} from '@element-plus/icons-vue' } from '@element-plus/icons-vue'
import { useRouter } from 'vue-router';
// const searchValue = ref(''); const searchValue = ref();
// const proxy = getCurrentInstance(); const router = useRouter();
// const props = defineProps(['meun', 'thisIndex']); const options = ref([]);
// const emit = defineEmits(['subEvent']);
// const options = ref([]);
// const loading = ref(false);
const store = useStore() const store = useStore()
setTimeout(() => {
getoptions(); // 调用你的函数
}, 2000);
function getoptions(){
var menus = store.state.menus;
for(let i = 0;i < 100;i++){
if(menus[i] === undefined)break;
for(let j = 0;j < 100;j++){
if(menus[i].childs[j] === undefined)break;
options.value.push(menus[i].childs[j])
}
}
}
//定义默认展开 //定义默认展开
let defaultActive = ref('/home') let defaultActive = ref('/home')
...@@ -115,5 +128,11 @@ ...@@ -115,5 +128,11 @@
defaultActive.value=path defaultActive.value=path
window.sessionStorage.setItem('activePath',path) window.sessionStorage.setItem('activePath',path)
} }
const save=(routePath)=>{
defaultActive.value=routePath
window.sessionStorage.setItem('activePath',routePath)
router.push({ path: routePath});
}
</script> </script>
\ No newline at end of file
<template> <template>
<div <div class="contentBlock" id="contentBlock">
class="contentBlock"
id="contentBlock"
v-loading="loading"
element-loading-background="rgba(122, 122, 122, 0.6)"
>
<div class="contentBlockInn" v-if="pageInit"> <div class="contentBlockInn" v-if="pageInit">
<div class="flexBlock"> <div class="flexBlock">
<el-card class="card-contianer" style="width: 46%"> <el-card class="card-contianer" style="width: 46%">
...@@ -85,6 +80,7 @@ ...@@ -85,6 +80,7 @@
style="width: 90%" style="width: 90%"
format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss"
time-format="HH:mm:ss" time-format="HH:mm:ss"
unlink-panels
@change="seltimeFun" @change="seltimeFun"
:disabled="selTimeF" :disabled="selTimeF"
/> />
...@@ -152,57 +148,68 @@ ...@@ -152,57 +148,68 @@
</table> </table>
</el-card> </el-card>
<el-card class="card-contianer subTitBlockM" style="width: 33%"> <el-card class="card-contianer subTitBlockM" style="width: 33%">
<div <div v-if="gYCompanyEnergyInit">
style="font-size: 120%; text-align: center; font-weight: bolder" <div
> style="
{{ gYCompanyEnergy.value.enterpriseName }} font-size: 120%;
</div> text-align: center;
<table cellpadding="0" cellspacing="0"> font-weight: bolder;
<tr> "
<td style="width: 60px">热耗</td> >
<td> {{ gYCompanyEnergy.value.enterpriseName }}
<div> </div>
<table cellpadding="0" cellspacing="0" style="margin-top: 15%">
<tr>
<td style="width: 60px">热耗</td>
<td>
<div>
<span
>{{
gYCompanyEnergy.value.heatUc.toFixed(4)
}}W/㎡</span
>
</div>
</td>
<td>水耗</td>
<td>
<span <span
>{{ gYCompanyEnergy.value.heatUc.toFixed(4) }}W/㎡</span >{{
gYCompanyEnergy.value.waterUc.toFixed(2)
}}kg/㎡</span
> >
</div> </td>
<!-- <div><span>40W/㎡</span></div> --> </tr>
</td> <tr>
<td>水耗</td> <td style="height: 20px"></td>
<td> <td></td>
<span <td></td>
>{{ gYCompanyEnergy.value.waterUc.toFixed(2) }}kg/㎡</span <td></td>
> </tr>
</td> <tr>
</tr> <td style="width: 60px">
<tr> <div>度日数</div>
<td style="height: 20px"></td> 热耗
<td></td> </td>
<td></td> <td>
<td></td> <div>
</tr> <span
<tr> >{{
<td style="width: 60px"> gYCompanyEnergy.value.dayHeatUc.toFixed(4)
<div>度日数</div> }}W/㎡*℃</span
热耗 >
</td> </div>
<td> </td>
<div> <td>电耗</td>
<td>
<span <span
>{{ >{{
gYCompanyEnergy.value.dayHeatUc.toFixed(4) gYCompanyEnergy.value.elecUc.toFixed(4)
}}W/㎡*℃</span }}WH/㎡</span
> >
</div> </td>
</td> </tr>
<td>电耗</td> </table>
<td> </div>
<span
>{{ gYCompanyEnergy.value.elecUc.toFixed(4) }}WH/㎡</span
>
</td>
</tr>
</table>
</el-card> </el-card>
<el-card class="card-contianer" style="width: 33%"> <el-card class="card-contianer" style="width: 33%">
<div class="echartLayer1" id="echartLayer1"></div> <div class="echartLayer1" id="echartLayer1"></div>
...@@ -312,6 +319,7 @@ import { ...@@ -312,6 +319,7 @@ import {
} from "../../api/overview"; } from "../../api/overview";
let timerID = ref(); let timerID = ref();
const pageInit = ref(false); const pageInit = ref(false);
const gYCompanyEnergyInit = ref(false);
const areaList = reactive({ const areaList = reactive({
supplyYear: "2024-2025", supplyYear: "2024-2025",
runDay: 0, runDay: 0,
...@@ -353,6 +361,7 @@ function postArealistFun() { ...@@ -353,6 +361,7 @@ function postArealistFun() {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
postGYPipeRealFun(); postGYPipeRealFun();
postGYCompanyEnergyFun();
}); });
} }
...@@ -376,19 +385,19 @@ function postAllHeatFun() { ...@@ -376,19 +385,19 @@ function postAllHeatFun() {
loading.value = false; loading.value = false;
ElMessage.error(res.message); ElMessage.error(res.message);
} }
postGYCompanyEnergyFun(); //postGYCompanyEnergyFun();
postGYWeatherFun();
}); });
} }
function postGYCompanyEnergyFun() { function postGYCompanyEnergyFun() {
postGYCompanyEnergy().then((res) => { postGYCompanyEnergy(params).then((res) => {
if (res.success === true) { if (res.success === true) {
gYCompanyEnergy.value = res.data[0]; gYCompanyEnergy.value = res.data[0];
} else { } else {
loading.value = false;
ElMessage.error(res.message); ElMessage.error(res.message);
} }
postGYWeatherFun(); gYCompanyEnergyInit.value = true;
}); });
} }
......
...@@ -88,28 +88,11 @@ ...@@ -88,28 +88,11 @@
<el-option label="换热站板换效率" :value="7" /> <el-option label="换热站板换效率" :value="7" />
<el-option label="换热站二网均温" :value="8" /> <el-option label="换热站二网均温" :value="8" />
<el-option label="二网温差" :value="9" /> <el-option label="二网温差" :value="9" />
<el-option label="二网均温" :value="8" />
<el-option label="二网万平米流量" :value="11" /> <el-option label="二网万平米流量" :value="11" />
<el-option label="板换效率趋势一" :value="12" />
<el-option label="板换效率趋势二" :value="13" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="用量环比类型" v-show="energyTypeDis">
<el-select
v-model="enertyInfo.energyType"
placeholder="请选择"
>
<el-option label="耗水" :value="2" />
<el-option label="耗热" :value="3" />
<el-option label="耗电" :value="4" />
</el-select>
</el-form-item> -->
<!-- <el-form-item>
<el-button type="primary" @click="sendClick" style="margin: 15px 0 0 0;">查询</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="exportTableToExcel" style="margin: 15px 0 0 0;"
>导出表格</el-button
>
</el-form-item> -->
<div style="position: absolute; right: 2%"> <div style="position: absolute; right: 2%">
<el-button <el-button
type="primary" type="primary"
...@@ -168,6 +151,8 @@ import { ...@@ -168,6 +151,8 @@ import {
postSecAvgTUc, postSecAvgTUc,
postSecAbsTUc, postSecAbsTUc,
postSecTrafficUc, postSecTrafficUc,
postFirEffiTrendUc,
postSecEffiTrendUc,
} from "../../api/analysis"; } from "../../api/analysis";
const options = reactive([]); const options = reactive([]);
const enterpriseId = ref(); const enterpriseId = ref();
...@@ -260,7 +245,7 @@ function exportTableToExcel() { ...@@ -260,7 +245,7 @@ function exportTableToExcel() {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8", type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8",
}); });
const downloadUrl = URL.createObjectURL(dataBlob); const downloadUrl = URL.createObjectURL(dataBlob);
saveAs(dataBlob, "tableData.xlsx"); saveAs(dataBlob, "换热站趋势图.xlsx");
ElMessage.success("导出成功!请稍后。。。"); ElMessage.success("导出成功!请稍后。。。");
} }
...@@ -410,6 +395,12 @@ function sendClick() { ...@@ -410,6 +395,12 @@ function sendClick() {
case 11: case 11:
postSecTrafficUcFun(); //二网万平米流量 postSecTrafficUcFun(); //二网万平米流量
break; break;
case 12:
postFirEffiTrendUcFun();
break;
case 13:
postSecEffiTrendUcFun();
break;
} }
enertyTab.value = "能耗值(" + company.value + ")"; enertyTab.value = "能耗值(" + company.value + ")";
} else { } else {
...@@ -621,6 +612,36 @@ function postSecTrafficUcFun() { ...@@ -621,6 +612,36 @@ function postSecTrafficUcFun() {
}); });
} }
function postFirEffiTrendUcFun() {
tabloading.value = true;
postFirEffiTrendUc(enertyInfo).then((res) => {
echarts.dispose(document.getElementById("echartsLayer"));
if (res.success === true) {
pageInitFun(res);
} else if (res.status == 9) {
setInterval(function () {
tabloading.value = false;
this.postFirEffiTrendUcFun();
}, 600000);
}
});
}
function postSecEffiTrendUcFun() {
tabloading.value = true;
postSecEffiTrendUc(enertyInfo).then((res) => {
echarts.dispose(document.getElementById("echartsLayer"));
if (res.success === true) {
pageInitFun(res);
} else if (res.status == 9) {
setInterval(function () {
tabloading.value = false;
this.postFirEffiTrendUcFun();
}, 600000);
}
});
}
function pageInitFun(res) { function pageInitFun(res) {
tableData.length = 0; tableData.length = 0;
res.data.hourWater.forEach((element) => { res.data.hourWater.forEach((element) => {
......
...@@ -59,7 +59,6 @@ ...@@ -59,7 +59,6 @@
collapse-tags collapse-tags
:show-all-levels="false" :show-all-levels="false"
placeholder="请选择" placeholder="请选择"
@change="transferIdChange"
/> />
</el-form-item> </el-form-item>
<el-form-item label="开始月份" v-show="enertyInfo.interval == 1"> <el-form-item label="开始月份" v-show="enertyInfo.interval == 1">
...@@ -351,12 +350,6 @@ function getEnterprise() { ...@@ -351,12 +350,6 @@ function getEnterprise() {
} }
} }
function transferIdChange() {
// if (enertyInfo.transferId.length > 10) {
// ElMessage.error("换热机组最多只能选择10个");
// }
}
function exportTableToExcel() { function exportTableToExcel() {
let arr = []; let arr = [];
let exlData = []; let exlData = [];
...@@ -379,7 +372,6 @@ function exportTableToExcel() { ...@@ -379,7 +372,6 @@ function exportTableToExcel() {
} }
); );
worksheet["!cols"] = [{ wch: 20 }, { wch: 20 }, { wch: 20 }, { wch: 20 }]; worksheet["!cols"] = [{ wch: 20 }, { wch: 20 }, { wch: 20 }, { wch: 20 }];
// worksheet["!rows"] = [{ hpx: 20 }];
worksheet["A1"].s = { worksheet["A1"].s = {
fill: { fill: {
...@@ -513,6 +505,10 @@ function postExternalYOYFun() { ...@@ -513,6 +505,10 @@ function postExternalYOYFun() {
ElMessage.error("开始日期不能晚于或等于结束日期"); ElMessage.error("开始日期不能晚于或等于结束日期");
return false; return false;
} }
if ((endDay.value - startDay.value) > 6) {
ElMessage.error("查询日期区间不能超过7天");
return false;
}
let dayArr = []; let dayArr = [];
let dayn = endDay.value - startDay.value; let dayn = endDay.value - startDay.value;
let startDayn = startDay.value; let startDayn = startDay.value;
......
...@@ -118,7 +118,12 @@ ...@@ -118,7 +118,12 @@
<el-table <el-table
:data="tableData" :data="tableData"
empty-text="暂无数据" empty-text="暂无数据"
class="eltable"
style="width: 100%; margin-top: 10px" style="width: 100%; margin-top: 10px"
:summary-method="getSummaries"
show-summary
stripe
:header-cell-style="{ backgroundColor: '#dfe8f6', color: '#213547' }"
> >
<el-table-column type="index" width="60" label="序号" align="center"> <el-table-column type="index" width="60" label="序号" align="center">
</el-table-column> </el-table-column>
...@@ -530,4 +535,17 @@ table.botList td { ...@@ -530,4 +535,17 @@ table.botList td {
height: auto !important; height: auto !important;
} }
} }
.eltable {
height: 64vh;
}
@media (min-width: 1700px) {
.eltable {
height: 72vh;
}
}
@media (min-width: 2560px) {
.eltable {
height: 79vh;
}
}
</style> </style>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
...@@ -57,12 +57,6 @@ ...@@ -57,12 +57,6 @@
style="margin: 15px 0 0 10px" style="margin: 15px 0 0 10px"
>打印</el-button >打印</el-button
> >
<!--<el-button
type="primary"
@click="exportTableToExcel"
style="margin: 15px 0 0 10px"
>打印预览</el-button
>-->
<el-button <el-button
type="primary" type="primary"
@click="exportTableToExcel" @click="exportTableToExcel"
...@@ -97,7 +91,15 @@ ...@@ -97,7 +91,15 @@
</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"
class="eltable"
:summary-method="getSummaries"
show-summary
stripe
:header-cell-style="{ backgroundColor: '#dfe8f6', color: '#213547' }"
>
<el-table-column prop="sn" label="序号" width="60" align="center" /> <el-table-column prop="sn" label="序号" width="60" align="center" />
<el-table-column prop="jurisdictionName" label="片区" /> <el-table-column prop="jurisdictionName" label="片区" />
<el-table-column prop="transferName" label="换热站名称" /> <el-table-column prop="transferName" label="换热站名称" />
...@@ -121,7 +123,7 @@ ...@@ -121,7 +123,7 @@
id="exlBlock" id="exlBlock"
cellpadding="0" cellpadding="0"
cellspacing="1" cellspacing="1"
style="margin-top: 5px; background-color: #99bbe8" style="margin-top: 5px"
> >
<tr> <tr>
<td colspan="2">起始时间:{{ enertyInfo.startTime }}</td> <td colspan="2">起始时间:{{ enertyInfo.startTime }}</td>
...@@ -302,8 +304,7 @@ function timeFun() { ...@@ -302,8 +304,7 @@ function timeFun() {
const preday = new Date(today); const preday = new Date(today);
preday.setDate(preday.getDate() - 1); preday.setDate(preday.getDate() - 1);
today.setDate(today.getDate()); today.setDate(today.getDate());
enertyInfo.startTime = enertyInfo.startTime = preday.toISOString().split("T")[0];
preday.toISOString().split("T")[0];
enertyInfo.endTime = today.toISOString().split("T")[0]; enertyInfo.endTime = today.toISOString().split("T")[0];
} }
...@@ -365,7 +366,12 @@ function postTransferEnergyFun() { ...@@ -365,7 +366,12 @@ function postTransferEnergyFun() {
loading.value = true; loading.value = true;
postTransferEnergy(enertyInfo).then((res) => { postTransferEnergy(enertyInfo).then((res) => {
if (res.success === true) { if (res.success === true) {
tableData.value = res.data; res.data.forEach((item, index) => {
item.area = item.area.toFixed(4);
if (item.transferName != "总计") {
tableData.value.push(item);
}
});
} else { } else {
ElMessage.error(res.message); ElMessage.error(res.message);
} }
...@@ -403,13 +409,7 @@ onUnmounted(() => {}); ...@@ -403,13 +409,7 @@ onUnmounted(() => {});
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.contentBlock { .contentBlock {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ffffff; background-color: #ffffff;
overflow: auto;
} }
table { table {
width: 100%; width: 100%;
...@@ -465,4 +465,17 @@ table.botList td { ...@@ -465,4 +465,17 @@ table.botList td {
height: auto !important; height: auto !important;
} }
} }
.eltable {
height: 60vh;
}
@media (min-width: 1700px) {
.eltable {
height: 68vh;
}
}
@media (min-width: 2560px) {
.eltable {
height: 76vh;
}
}
</style> </style>
\ No newline at end of file
<template> <template>
<div id="ams-container"> <div id="ams-container" @click="closeContextMenu">
<div class="ams-aside" :style="{ width: menuWidth + 'px' }"> <div class="ams-aside" :style="{ width: menuWidth + 'px' }">
<div class="header" :style="{ width: menuWidth - 1 + 'px' }"> <div class="header" :style="{ width: menuWidth - 1 + 'px' }">
<img <img
...@@ -292,6 +292,7 @@ ...@@ -292,6 +292,7 @@
class="demo-tabs mytab" class="demo-tabs mytab"
@tab-remove="removeTab" @tab-remove="removeTab"
@tab-change="changeTabsHandle" @tab-change="changeTabsHandle"
@contextmenu.prevent.native="openContextMenu($event)"
> >
<el-tab-pane <el-tab-pane
:closable="item.path !== '/RealSupply'" :closable="item.path !== '/RealSupply'"
...@@ -302,6 +303,16 @@ ...@@ -302,6 +303,16 @@
> >
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
<ul
v-show="contextMenuVisible"
:style="{left:left+'px',top:top+'px'}"
class="contextmenu"
>
<li @click="closeAllTabs">关闭所有</li>
<li @click="closeLeftTabs()">关闭左边</li>
<li @click="closeRigthTabs()">关闭右边</li>
<li @click="closeOtherTabs()">关闭其他</li>
</ul>
</div> </div>
<div :style="{ height: mainHeight + 'px' }"> <div :style="{ height: mainHeight + 'px' }">
<!--, width: mainWidth +'px' --> <!--, width: mainWidth +'px' -->
...@@ -353,6 +364,29 @@ ...@@ -353,6 +364,29 @@
background-color: #0065d5; background-color: #0065d5;
color: #ffffff; color: #ffffff;
} }
.contextmenu {
width: 100px;
margin: 0;
border: 1px solid #ccc;
background: #fff;
z-index: 3000;
position: absolute;
list-style-type: none;
padding: 5px 0;
border-radius: 4px;
font-size: 14px;
color: #333;
box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.2);
}
.contextmenu li {
margin: 0;
padding: 7px 16px;
}
.contextmenu li:hover {
background: #f2f2f2;
cursor: pointer;
}
</style> </style>
<script lang="ts"> <script lang="ts">
...@@ -607,7 +641,6 @@ export default defineComponent({ ...@@ -607,7 +641,6 @@ export default defineComponent({
//标签删除函数 //标签删除函数
const removeTab = (path) => { const removeTab = (path) => {
console.log(path);
let isTabs = activeTable.value; let isTabs = activeTable.value;
const tabs = editableTabs.value; const tabs = editableTabs.value;
//删除的是 激活菜单,将激活选项设为 上一个或下一个标签的 path //删除的是 激活菜单,将激活选项设为 上一个或下一个标签的 path
...@@ -799,7 +832,7 @@ export default defineComponent({ ...@@ -799,7 +832,7 @@ export default defineComponent({
http http
.post("/api/alarm/GetAlarmMsg", AlarmInfo.value, false) .post("/api/alarm/GetAlarmMsg", AlarmInfo.value, false)
.then((result) => { .then((result) => {
if (result.data !== null && sta.value === 0) { if (result.data.lenth === 0 && sta.value === 0) {
sta.value = 1; sta.value = 1;
title.value = result.data[0].title; title.value = result.data[0].title;
msg.value = result.data[0].msg; msg.value = result.data[0].msg;
...@@ -832,7 +865,7 @@ export default defineComponent({ ...@@ -832,7 +865,7 @@ export default defineComponent({
} }
function countalarm() { function countalarm() {
http.post("/api/alarm/GetAlarmMsg", AlarmInfo.value).then((result) => { http.post("/api/alarm/GetAlarmMsg", AlarmInfo.value).then((result) => {
if (result.data !== null && consta.value === 0) { if (result.data.lenth === 0 && consta.value === 0) {
consta.value = 1; consta.value = 1;
counttitle.value = result.data[1].title; counttitle.value = result.data[1].title;
countmsg.value = result.data[1].msg; countmsg.value = result.data[1].msg;
...@@ -920,6 +953,113 @@ export default defineComponent({ ...@@ -920,6 +953,113 @@ export default defineComponent({
} }
} }
getuserdata(); getuserdata();
var left = ref();
var top = ref();
var currentContextTabId = ref();
//标签右击事件
function openContextMenu(e) {
if (e.srcElement.id) {
currentContextTabId.value = e.srcElement.id.split("-")[1];
contextMenuVisible.value = true;
// this.$store.commit("saveCurContextTabId", currentContextTabId);
left.value = e.clientX-200;
top.value = e.clientY - 70;
}
}
// 关闭所有标签页
function closeAllTabs() {
editableTabs.value = [
{
title: "首页-实时热源",
path: "/RealSupply",
},
];
//本地存储
window.sessionStorage.setItem(
"tabList",
JSON.stringify(editableTabs.value)
);
//路由跳转
router.push('/RealSupply');
contextMenuVisible.value = false;
}
// 关闭其它标签页
function closeOtherTabs() {
editableTabs.value = editableTabs.value.filter(
(item) => item.path === currentContextTabId.value || item.path === '/RealSupply'
);
//本地存储
window.sessionStorage.setItem(
"tabList",
JSON.stringify(editableTabs.value)
);
//路由跳转
router.push(currentContextTabId.value);
contextMenuVisible.value = false;
}
// 关闭contextMenu
function closeContextMenu() {
contextMenuVisible.value = false;
}
// 关闭左侧标签页
function closeLeftTabs() {
let isTabs = currentContextTabId.value;
const tabs = editableTabs.value;
tabs.forEach((item, index) => {
if (item.path == currentContextTabId.value) {
//找到了需要删除的菜单
//获取上一个或下一个标签
const nextTab = tabs[index - 1];
if(nextTab && nextTab.path == activeTable.value){
activeTable.value = '/RealSupply';
}
if (nextTab) {
isTabs = nextTab.path;
}
}
});
editableTabs.value = editableTabs.value.filter(
(item) => item.path != isTabs || item.path === '/RealSupply'
);
//本地存储
window.sessionStorage.setItem(
"tabList",
JSON.stringify(editableTabs.value)
);
//路由跳转
router.push(activeTable.value);
contextMenuVisible.value = false;
}
// 关闭右侧标签页
function closeRigthTabs() {
let isTabs = activeTable.value;
const tabs = editableTabs.value;
tabs.forEach((item, index) => {
if (item.path == currentContextTabId.value) {
//找到了需要删除的菜单
//获取上一个或下一个标签
const nextTab = tabs[index + 1];
if(nextTab && nextTab.path == activeTable.value){
activeTable.value = '/RealSupply';
}
if (nextTab) {
isTabs = nextTab.path;
editableTabs.value = editableTabs.value.filter(
(item) => item.path != isTabs || item.path === '/RealSupply'
);
}
}
});
//本地存储
window.sessionStorage.setItem(
"tabList",
JSON.stringify(editableTabs.value)
);
//路由跳转
router.push(activeTable.value);
contextMenuVisible.value = false;
}
return { return {
menuWidth, menuWidth,
...@@ -958,6 +1098,14 @@ export default defineComponent({ ...@@ -958,6 +1098,14 @@ export default defineComponent({
showenterpriseName, showenterpriseName,
savepass, savepass,
funsel, funsel,
openContextMenu,
left,
top,
closeAllTabs,
closeOtherTabs,
closeContextMenu,
closeRigthTabs,
closeLeftTabs
}; };
}, },
methods: { methods: {
......
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