2023-07-12 09:56:31 +08:00
|
|
|
|
<template>
|
2024-03-25 11:47:22 +08:00
|
|
|
|
<ScaleBox :width="1920" :height="1080" bgc="transparent" :delay="100" :isFlat="false" @scaleChange="scaleChange">
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<!-- <div class="container"> -->
|
|
|
|
|
|
<div class="largeScreen" ref="dataScreenRef" style="width: 100%;height: 100%;">
|
|
|
|
|
|
<div class="header">
|
|
|
|
|
|
<!-- <div class="hearderIcon"><img src="@/assets/images/jxjLogo.png" alt="" /></div> -->
|
|
|
|
|
|
<span class="projectTitle">
|
|
|
|
|
|
<!-- 新建宁波项目要打开 -->
|
|
|
|
|
|
<p v-if="COMPANY === 'xjnb'">智慧工地项目监管平台</p>
|
|
|
|
|
|
<p v-else>数字化项目监管平台</p>
|
|
|
|
|
|
<!-- <p>江坑110kv变电站智慧工地</p> -->
|
|
|
|
|
|
</span>
|
2023-12-28 18:15:42 +08:00
|
|
|
|
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<span class="projectSmallTitle">
|
|
|
|
|
|
<p>{{ projectTimeInfo.name || "" }}</p>
|
|
|
|
|
|
</span>
|
|
|
|
|
|
<div class="rightIcon" @click.stop>
|
|
|
|
|
|
<div class="time">{{ nowTime }}</div>
|
|
|
|
|
|
<!-- <div class="Icon">
|
2023-07-12 09:56:31 +08:00
|
|
|
|
<img src="@/assets/images/dustNoise/jobIcon.png" alt="" />
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="Icon">
|
|
|
|
|
|
<img src="@/assets/images/dustNoise/ysbfIcon.png" alt="" />
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="Icon">
|
|
|
|
|
|
<img src="@/assets/images/dustNoise/sjzxIcon.png" alt="" />
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="Icon">
|
|
|
|
|
|
<img src="@/assets/images/dustNoise/dpIcon.png" alt="" />
|
2023-07-28 19:43:56 +08:00
|
|
|
|
</div> -->
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<div class="Icon">
|
|
|
|
|
|
<img src="@/assets/images/dustNoise/tbsjIcon.png" alt="" />
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="Icon" @click="showUserBox = !showUserBox">
|
|
|
|
|
|
<img src="@/assets/images/dustNoise/ryIcon.png" alt="" />
|
|
|
|
|
|
</div>
|
2023-07-28 19:43:56 +08:00
|
|
|
|
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<!-- <el-dropdown trigger="click">
|
2023-07-28 19:43:56 +08:00
|
|
|
|
|
|
|
|
|
|
<template #dropdown>
|
|
|
|
|
|
<div class="userDialog" @click="loginOut">退出登录</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-dropdown> -->
|
2023-09-05 10:36:23 +08:00
|
|
|
|
</div>
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<div class="userBox" v-show="showUserBox">
|
|
|
|
|
|
<div class="userItem">
|
|
|
|
|
|
<div class="sanJiao"></div>
|
|
|
|
|
|
<div class="userIcon">
|
|
|
|
|
|
<div class="icon"><img src="@/assets/images/dustNoise/userIcon.png" /></div>
|
|
|
|
|
|
<div class="userName">{{ adminName }}</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="loginOut" @click="jumpBgd">
|
|
|
|
|
|
<div class="loginOutIcon"><img src="@/assets/images/dustNoise/jumpIcon.png" /></div>
|
|
|
|
|
|
<div class="userName">项目后台</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="loginOut" @click="loginOut">
|
|
|
|
|
|
<div class="loginOutIcon"><img src="@/assets/images/dustNoise/loginOut.png" /></div>
|
|
|
|
|
|
<div class="userName">退出登录</div>
|
2023-09-04 14:43:33 +08:00
|
|
|
|
</div>
|
2023-07-28 19:43:56 +08:00
|
|
|
|
</div>
|
2023-07-12 09:56:31 +08:00
|
|
|
|
</div>
|
2024-03-25 20:57:41 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div class="menuList">
|
|
|
|
|
|
<div v-for="(item, index) in menuList" :key="index" class="menStyle">
|
|
|
|
|
|
<div class="subMenu" :index="item.modulePath" :class="{ active: activeTab === item.modulePath }">
|
|
|
|
|
|
<span @click="navigateTo(item, 1)">{{ item.moduleName }}</span>
|
|
|
|
|
|
</div>
|
2023-09-05 14:38:58 +08:00
|
|
|
|
</div>
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<div class="subMenuList" v-if="itemList != null && itemList.length >= 1">
|
|
|
|
|
|
<el-scrollbar class="scrollItem">
|
|
|
|
|
|
<div class="subMenuItem">
|
2024-03-30 12:12:52 +08:00
|
|
|
|
<div class="subItem" :style="COMPANY === 'hfqc' ? 'width:120px' : ''" v-for="(data, i) in itemList" :key="i" :index="data.companyPath" @click="navigateTo(data, 2)">
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<span style="white-space: nowrap" :class="{ active2: activeTab2 === data.companyPath }">{{ data.menuName }}</span>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-scrollbar>
|
2023-07-12 09:56:31 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2024-03-25 20:57:41 +08:00
|
|
|
|
<div class="contentDate" v-if="itemList != null && itemList.length >= 1">
|
|
|
|
|
|
<span
|
|
|
|
|
|
>自{{ projectTimeInfo.contractPeriodStartTime }}起开始计算,至今日{{ nowDate }}为<span class="numColor">{{
|
|
|
|
|
|
projectPassDay
|
|
|
|
|
|
}}</span
|
|
|
|
|
|
>个日历天</span
|
|
|
|
|
|
>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="dataBoardContent">
|
|
|
|
|
|
<router-view></router-view>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<!-- </div> -->
|
2023-09-05 10:36:23 +08:00
|
|
|
|
</ScaleBox>
|
2023-07-12 09:56:31 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
|
2023-07-14 11:24:26 +08:00
|
|
|
|
<script lang="ts" setup>
|
2023-09-05 10:36:23 +08:00
|
|
|
|
import ScaleBox from "vue3-scale-box";
|
2024-03-25 20:57:41 +08:00
|
|
|
|
import { ref, reactive, onMounted, onBeforeUnmount, computed } from "vue";
|
2023-11-13 10:04:05 +08:00
|
|
|
|
import { getTaskTimeDetail } from "@/api/modules/schedulePlan";
|
2023-12-28 18:15:42 +08:00
|
|
|
|
import { jumpLargeUserInfoApi } from "@/api/modules/login";
|
2024-03-30 09:02:56 +08:00
|
|
|
|
import { JSYCMenu, XJNBMenu, AHSAMenu, HFQCMenu } from "@/config/staticMenu";
|
2023-12-28 18:15:42 +08:00
|
|
|
|
import { COMPANY } from "@/config/config";
|
|
|
|
|
|
|
2023-07-12 09:56:31 +08:00
|
|
|
|
import { useRouter } from "vue-router";
|
2023-07-28 19:43:56 +08:00
|
|
|
|
import { GlobalStore } from "@/stores";
|
|
|
|
|
|
const store = GlobalStore();
|
2023-07-14 11:24:26 +08:00
|
|
|
|
let nowTime = ref("2023-04-16 09:22:12" as any);
|
2023-11-13 10:04:05 +08:00
|
|
|
|
|
|
|
|
|
|
let nowDate = ref("2023.11.16" as any);
|
|
|
|
|
|
|
|
|
|
|
|
let projectPassDay = ref(0 as any);
|
|
|
|
|
|
//获取项目信息
|
|
|
|
|
|
const projectTimeInfo = ref({} as any);
|
2024-03-25 20:57:41 +08:00
|
|
|
|
const contentWidth = ref(0);
|
|
|
|
|
|
const contentHeight = ref(0);
|
|
|
|
|
|
const calculateAspectRatio = () => {
|
|
|
|
|
|
const container = document.querySelector('.largeScreen');
|
|
|
|
|
|
// const containerWidth = document.body.offsetWidth;
|
|
|
|
|
|
const containerWidth = document.documentElement.offsetWidth;
|
|
|
|
|
|
// const containerWidth: number = (<HTMLElement>container).offsetWidth;
|
|
|
|
|
|
// const containerHeight = document.body.offsetHeight;
|
|
|
|
|
|
const containerHeight = document.documentElement.offsetHeight;
|
|
|
|
|
|
// const containerHeight: number = (<HTMLElement>container).offsetHeight;
|
|
|
|
|
|
console.log(containerWidth, containerHeight)
|
|
|
|
|
|
const aspectRatio = 16 / 9; // 16:9 比例
|
|
|
|
|
|
const containerAspectRatio = containerWidth / containerHeight;
|
|
|
|
|
|
if (containerAspectRatio > aspectRatio) {
|
|
|
|
|
|
// 以高度为基准,按比例计算宽度
|
|
|
|
|
|
contentHeight.value = containerHeight;
|
|
|
|
|
|
contentWidth.value = Math.floor(containerHeight * aspectRatio);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
// 以宽度为基准,按比例计算高度
|
|
|
|
|
|
contentWidth.value = containerWidth;
|
|
|
|
|
|
contentHeight.value = Math.floor(containerWidth / aspectRatio);
|
|
|
|
|
|
}
|
|
|
|
|
|
console.log('contentWidth',contentWidth.value)
|
|
|
|
|
|
console.log('contentHeight',contentHeight.value)
|
|
|
|
|
|
};
|
2024-03-22 13:51:57 +08:00
|
|
|
|
const scaleChange = (data:any) => {
|
2024-03-28 11:30:42 +08:00
|
|
|
|
store.globalScale = data;
|
2024-03-22 13:51:57 +08:00
|
|
|
|
}
|
2023-11-13 10:04:05 +08:00
|
|
|
|
const getProjectInfo = async () => {
|
|
|
|
|
|
getNowDate();
|
|
|
|
|
|
const res: any = await getTaskTimeDetail({ projectSn: store.sn });
|
|
|
|
|
|
console.log("获取项目信息", res);
|
|
|
|
|
|
projectTimeInfo.value = res.result;
|
|
|
|
|
|
projectPassDay.value = calculateDaysPassed(projectTimeInfo.value.contractPeriodStartTime);
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
function calculateDaysPassed(startDate: any) {
|
|
|
|
|
|
const start = new Date(startDate);
|
|
|
|
|
|
const today = new Date();
|
|
|
|
|
|
const timeDiff = today.getTime() - start.getTime();
|
|
|
|
|
|
const daysPassed = Math.floor(timeDiff / (1000 * 60 * 60 * 24));
|
|
|
|
|
|
return daysPassed;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function getNowDate() {
|
|
|
|
|
|
const date = new Date();
|
|
|
|
|
|
const year = date.getFullYear();
|
|
|
|
|
|
const month = ("0" + (date.getMonth() + 1)).slice(-2);
|
|
|
|
|
|
const day = ("0" + date.getDate()).slice(-2);
|
|
|
|
|
|
const formattedDate = `${year}-${month}-${day}`;
|
|
|
|
|
|
nowDate.value = formattedDate;
|
|
|
|
|
|
// console.log(formattedDate); // 输出 "2021-06-01"
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2023-07-28 19:43:56 +08:00
|
|
|
|
let showUserBox = ref(false as any);
|
|
|
|
|
|
let adminName = ref("" as any);
|
2023-10-23 09:54:37 +08:00
|
|
|
|
// let menuList = ref([
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "工程概况",
|
|
|
|
|
|
// modulePath: "/projectOverview"
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "智慧党建",
|
|
|
|
|
|
// modulePath: "/smartPartyBuilding"
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "扬尘噪声",
|
|
|
|
|
|
// modulePath: "/headNoise"
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "劳务管理",
|
|
|
|
|
|
// modulePath: "/laborManagement"
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "视频管理",
|
|
|
|
|
|
// modulePath: "/videoManagement"
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "配电箱监测",
|
|
|
|
|
|
// modulePath: "/distributionMonitoring"
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// moduleName: "AI预警",
|
|
|
|
|
|
// modulePath: "/aIEarlyWarning"
|
|
|
|
|
|
// }
|
|
|
|
|
|
// ]);
|
2023-09-04 14:43:33 +08:00
|
|
|
|
let menuList = ref([
|
2023-09-06 14:05:12 +08:00
|
|
|
|
{
|
2023-09-06 11:28:22 +08:00
|
|
|
|
moduleName: "综合管理",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
modulePath: "/projectOverview",
|
2023-09-06 11:28:22 +08:00
|
|
|
|
menuList: [
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "工程概况",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
companyPath: "/projectOverview"
|
2023-09-06 11:28:22 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "智慧党建",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
companyPath: "/smartPartyBuilding"
|
2023-09-06 14:05:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
]
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
moduleName: "数字工地",
|
2023-10-21 15:27:13 +08:00
|
|
|
|
modulePath: "/videoManagement",
|
2023-09-06 14:05:12 +08:00
|
|
|
|
menuList: [
|
2023-09-08 09:59:15 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "视频管理",
|
|
|
|
|
|
companyPath: "/videoManagement"
|
|
|
|
|
|
},
|
2023-09-06 14:05:12 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "AI预警",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
companyPath: "/aIEarlyWarning"
|
2023-09-06 11:28:22 +08:00
|
|
|
|
},
|
2023-09-06 14:05:12 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "地磅管理",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
companyPath: "/loadometerManage"
|
2023-09-08 09:59:15 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "车辆管理",
|
|
|
|
|
|
companyPath: "/vehicleManagement"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "配电箱监测",
|
|
|
|
|
|
companyPath: "/distributionMonitoring"
|
2023-09-12 10:14:05 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "标养室监测",
|
|
|
|
|
|
companyPath: "/standardCureRoom"
|
2023-11-24 17:09:02 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "车辆定位",
|
|
|
|
|
|
companyPath: "/carPosition"
|
2024-03-21 20:36:28 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "机械设备定位",
|
|
|
|
|
|
companyPath: "/equipmentPosition"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "智能安全帽",
|
|
|
|
|
|
companyPath: "/smartSafeHat"
|
2023-09-06 14:05:12 +08:00
|
|
|
|
}
|
2023-09-06 11:28:22 +08:00
|
|
|
|
]
|
|
|
|
|
|
},
|
2023-09-08 16:53:53 +08:00
|
|
|
|
{
|
|
|
|
|
|
moduleName: "劳务管理",
|
2024-01-17 15:59:48 +08:00
|
|
|
|
modulePath: "/laborManagement",
|
|
|
|
|
|
menuList: [
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "劳务管理",
|
|
|
|
|
|
companyPath: "/laborManagement"
|
|
|
|
|
|
}
|
|
|
|
|
|
]
|
2023-09-08 16:53:53 +08:00
|
|
|
|
},
|
2023-09-05 10:36:23 +08:00
|
|
|
|
{
|
|
|
|
|
|
moduleName: "安全管理",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
modulePath: "/securityManagement",
|
2023-09-05 10:36:23 +08:00
|
|
|
|
menuList: [
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "安全管理",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
companyPath: "/securityManagement"
|
2023-09-13 17:09:45 +08:00
|
|
|
|
},
|
2023-09-19 18:40:38 +08:00
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/foundationPitMonitor",
|
|
|
|
|
|
menuName: "基坑监测"
|
|
|
|
|
|
},
|
2023-09-20 09:37:06 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "隧道定位监测",
|
|
|
|
|
|
companyPath: "/tunnelPosition"
|
|
|
|
|
|
},
|
2023-09-13 17:09:45 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "临边防护",
|
|
|
|
|
|
companyPath: "/edgeProtection"
|
2023-09-15 17:40:49 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "有毒气体监测",
|
|
|
|
|
|
companyPath: "/toxicGasMonitor"
|
2023-09-20 09:24:45 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "高支模监测",
|
|
|
|
|
|
companyPath: "/highFormwork"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "高边坡监测",
|
|
|
|
|
|
companyPath: "/highSlope"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "烟感监测",
|
|
|
|
|
|
companyPath: "/smokeSensor"
|
2023-09-27 09:25:07 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "安全教育",
|
|
|
|
|
|
companyPath: "/safeEducation"
|
2023-09-05 14:38:58 +08:00
|
|
|
|
}
|
2023-09-05 10:36:23 +08:00
|
|
|
|
]
|
|
|
|
|
|
},
|
2023-09-06 11:28:22 +08:00
|
|
|
|
{
|
|
|
|
|
|
moduleName: "质量管理",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
modulePath: "/qualityManagement",
|
2023-09-06 11:28:22 +08:00
|
|
|
|
menuList: [
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "质量管理",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
companyPath: "/qualityManagement"
|
2023-10-08 18:18:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "混凝土测温",
|
|
|
|
|
|
companyPath: "/concreteMonitor"
|
2023-11-13 10:04:05 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "进度计划",
|
|
|
|
|
|
companyPath: "/schedulePlan"
|
2023-09-06 11:28:22 +08:00
|
|
|
|
}
|
|
|
|
|
|
]
|
|
|
|
|
|
},
|
2023-09-08 09:59:15 +08:00
|
|
|
|
{
|
2023-09-08 16:53:53 +08:00
|
|
|
|
moduleName: "绿色施工",
|
2023-10-23 09:54:37 +08:00
|
|
|
|
modulePath: "/headNoise",
|
2023-09-08 16:53:53 +08:00
|
|
|
|
menuList: [
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "扬尘噪声",
|
|
|
|
|
|
companyPath: "/headNoise"
|
2023-09-27 09:25:07 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/electricityMonitor",
|
|
|
|
|
|
menuName: "用电监测"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/waterMonitor",
|
|
|
|
|
|
menuName: "用水监测"
|
2023-10-12 18:07:19 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/sewageMonitor",
|
|
|
|
|
|
menuName: "污水监测"
|
2023-09-08 16:53:53 +08:00
|
|
|
|
}
|
|
|
|
|
|
]
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
moduleName: "大型机械",
|
|
|
|
|
|
modulePath: "/towerCraneMonitoring",
|
|
|
|
|
|
menuList: [
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "塔吊监测",
|
|
|
|
|
|
companyPath: "/towerCraneMonitoring"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
menuName: "升降机监测",
|
|
|
|
|
|
companyPath: "/elevatorMonitoring"
|
2023-09-28 15:02:13 +08:00
|
|
|
|
},
|
2023-10-12 18:07:19 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "卸料平台",
|
|
|
|
|
|
companyPath: "/unloadPlatform"
|
|
|
|
|
|
},
|
2023-09-28 15:02:13 +08:00
|
|
|
|
{
|
|
|
|
|
|
menuName: "混凝土拌合站",
|
|
|
|
|
|
companyPath: "/concreteMixingPlant"
|
|
|
|
|
|
},
|
2023-10-08 18:18:31 +08:00
|
|
|
|
{
|
2023-10-12 18:07:19 +08:00
|
|
|
|
menuName: "龙门吊监测",
|
|
|
|
|
|
companyPath: "/gantryCrane"
|
2023-10-23 17:52:14 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/erectCrane",
|
|
|
|
|
|
menuName: "架桥机"
|
2023-10-30 14:36:10 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/hangBasket",
|
|
|
|
|
|
menuName: "挂篮监测"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/pressureTestMachine",
|
|
|
|
|
|
menuName: "压力试验机"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/universalTestMachine",
|
|
|
|
|
|
menuName: "万能试验机"
|
2023-11-24 17:09:02 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/compressionIntegrate",
|
|
|
|
|
|
menuName: "抗压一体机"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/asphaltMixer",
|
|
|
|
|
|
menuName: "沥青拌合站"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/waterStabilizedMixer",
|
|
|
|
|
|
menuName: "水稳拌合站"
|
2024-01-17 15:59:48 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/intelligentTension",
|
|
|
|
|
|
menuName: "智能张拉"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/intelligentGrout",
|
|
|
|
|
|
menuName: "智能压浆"
|
|
|
|
|
|
},
|
2024-01-25 16:32:33 +08:00
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/roadPaving",
|
|
|
|
|
|
menuName: "路面摊铺"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
companyPath: "/roadCompaction",
|
|
|
|
|
|
menuName: "路面压实"
|
|
|
|
|
|
}
|
2023-09-08 16:53:53 +08:00
|
|
|
|
]
|
2023-09-08 09:59:15 +08:00
|
|
|
|
},
|
2023-09-04 14:43:33 +08:00
|
|
|
|
{ moduleName: "BIM模型", modulePath: "/bImModel" }
|
|
|
|
|
|
]);
|
2023-09-05 10:36:23 +08:00
|
|
|
|
const itemList = ref([]);
|
|
|
|
|
|
const activeTab = ref(0);
|
|
|
|
|
|
const activeTab2 = ref(0);
|
2023-07-14 11:24:26 +08:00
|
|
|
|
const router = useRouter();
|
2024-03-25 20:57:41 +08:00
|
|
|
|
const getAspectRatioStyle = computed(() => ({
|
|
|
|
|
|
width: `${contentWidth.value}px`,
|
|
|
|
|
|
height: `${contentHeight.value}px`
|
|
|
|
|
|
}))
|
2023-09-05 10:36:23 +08:00
|
|
|
|
//获取动态tab
|
|
|
|
|
|
const getAllModelMenu = () => {
|
|
|
|
|
|
let half = store.projectDateAuth.moduleList;
|
|
|
|
|
|
half.forEach((item: any) => {
|
|
|
|
|
|
if (item.moduleType == 4) {
|
|
|
|
|
|
menuList.value.push(item);
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
console.log("筛选出的数据看板路由", menuList.value);
|
|
|
|
|
|
};
|
2024-03-30 10:25:50 +08:00
|
|
|
|
const dataBoardContent = document.querySelector(".dataBoardContent");
|
2023-09-05 10:36:23 +08:00
|
|
|
|
const navigateTo = (path, type) => {
|
|
|
|
|
|
console.log("点击的路由---", path, type);
|
|
|
|
|
|
if (type == 1) {
|
|
|
|
|
|
activeTab.value = path.modulePath;
|
2023-10-23 09:54:37 +08:00
|
|
|
|
activeTab2.value = path.modulePath;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
itemList.value = path.menuList;
|
|
|
|
|
|
router.push(path.modulePath);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
activeTab2.value = path.companyPath;
|
|
|
|
|
|
router.push(path.companyPath);
|
2023-07-12 09:56:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
};
|
2023-09-04 14:43:33 +08:00
|
|
|
|
onMounted(async () => {
|
2024-01-25 16:32:33 +08:00
|
|
|
|
if (window.location.href.indexOf("token") != -1) {
|
|
|
|
|
|
console.log("免登录跳转进来了吗----", window.location.href.indexOf("token"));
|
|
|
|
|
|
const newToken = window.location.href.split("token=")[1];
|
|
|
|
|
|
const data: any = await jumpLargeUserInfoApi({ token: newToken });
|
|
|
|
|
|
console.log("跳转请求的数据----", data.result);
|
|
|
|
|
|
store.setSN(data.result.sn);
|
|
|
|
|
|
store.setToken(data.result.token);
|
|
|
|
|
|
store.setAccount(data.result.account);
|
|
|
|
|
|
store.setAccountType(data.result.accountType);
|
|
|
|
|
|
store.setProjectDateAuth(data.menuAuthority);
|
|
|
|
|
|
}
|
2023-12-28 18:15:42 +08:00
|
|
|
|
if (COMPANY === "jsyc") {
|
|
|
|
|
|
menuList.value = JSYCMenu;
|
|
|
|
|
|
}
|
2024-01-08 10:08:51 +08:00
|
|
|
|
if (COMPANY === "xjnb") {
|
|
|
|
|
|
menuList.value = XJNBMenu;
|
|
|
|
|
|
}
|
2024-01-17 15:59:48 +08:00
|
|
|
|
if (COMPANY === "ahsa") {
|
|
|
|
|
|
menuList.value = AHSAMenu;
|
|
|
|
|
|
}
|
2024-03-30 09:02:56 +08:00
|
|
|
|
if (COMPANY === "hfqc") {
|
|
|
|
|
|
menuList.value = HFQCMenu;
|
|
|
|
|
|
}
|
2023-12-28 18:15:42 +08:00
|
|
|
|
|
|
|
|
|
|
console.log("配置菜单", menuList.value);
|
2024-01-17 15:59:48 +08:00
|
|
|
|
console.log("当前跳转的路由", router.currentRoute.value);
|
2023-09-05 10:36:23 +08:00
|
|
|
|
// await getAllModelMenu();
|
2023-10-23 17:52:14 +08:00
|
|
|
|
// activeTab2.value = router.currentRoute.value;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
activeTab.value = menuList.value[0].modulePath;
|
2023-10-23 09:54:37 +08:00
|
|
|
|
activeTab2.value = menuList.value[0].modulePath;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
itemList.value = menuList.value[0].menuList;
|
2023-09-04 14:43:33 +08:00
|
|
|
|
//数据看板跳转免登录
|
2023-12-28 18:15:42 +08:00
|
|
|
|
navigateTo(menuList.value[0], 1);
|
2023-09-05 10:36:23 +08:00
|
|
|
|
|
2023-07-28 19:43:56 +08:00
|
|
|
|
// console.log("进入页面, ");
|
|
|
|
|
|
adminName.value = store.account;
|
|
|
|
|
|
// console.log("store数据", store.account);
|
2023-09-05 10:36:23 +08:00
|
|
|
|
// menuClick(menuList.value[0], activeIndex.value);
|
2023-07-14 11:24:26 +08:00
|
|
|
|
getNowTime();
|
2023-07-28 19:43:56 +08:00
|
|
|
|
document.addEventListener("click", bodyCloseMenus);
|
2023-09-08 16:53:53 +08:00
|
|
|
|
const subMenus = document.querySelectorAll(".menStyle");
|
2024-03-30 09:02:56 +08:00
|
|
|
|
if (subMenus.length >= 5 && COMPANY !== 'hfqc') {
|
2023-09-08 16:53:53 +08:00
|
|
|
|
subMenus[4].style.marginLeft = "30%";
|
|
|
|
|
|
}
|
2024-03-30 09:02:56 +08:00
|
|
|
|
if (COMPANY === 'hfqc'){
|
|
|
|
|
|
subMenus[3].style.marginLeft = "44%";
|
|
|
|
|
|
}
|
2023-12-28 18:15:42 +08:00
|
|
|
|
await getProjectInfo();
|
2024-03-25 20:57:41 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
calculateAspectRatio();
|
|
|
|
|
|
window.addEventListener('resize', calculateAspectRatio);
|
2023-07-14 11:24:26 +08:00
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
let timer = ref(null as any);
|
|
|
|
|
|
onBeforeUnmount(() => {
|
|
|
|
|
|
clearInterval(timer);
|
2023-07-28 19:43:56 +08:00
|
|
|
|
document.removeEventListener("click", bodyCloseMenus);
|
2024-03-25 20:57:41 +08:00
|
|
|
|
window.removeEventListener('resize', calculateAspectRatio);
|
2023-07-14 11:24:26 +08:00
|
|
|
|
});
|
|
|
|
|
|
|
2023-07-28 19:43:56 +08:00
|
|
|
|
function bodyCloseMenus() {
|
|
|
|
|
|
if (showUserBox.value === true) {
|
|
|
|
|
|
showUserBox.value = false;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2023-07-14 11:24:26 +08:00
|
|
|
|
function getNowTime() {
|
|
|
|
|
|
let speed = 1000;
|
|
|
|
|
|
let theNowTime = function () {
|
|
|
|
|
|
nowTime.value = timeNumber();
|
|
|
|
|
|
};
|
|
|
|
|
|
timer.value = setInterval(theNowTime, speed);
|
|
|
|
|
|
}
|
|
|
|
|
|
function timeNumber() {
|
|
|
|
|
|
let today = new Date();
|
|
|
|
|
|
let date = today.getFullYear() + "-" + twoDigits(today.getMonth() + 1) + "-" + twoDigits(today.getDate());
|
|
|
|
|
|
let time = twoDigits(today.getHours()) + ":" + twoDigits(today.getMinutes()) + ":" + twoDigits(today.getSeconds());
|
|
|
|
|
|
return date + " " + time;
|
|
|
|
|
|
}
|
|
|
|
|
|
function twoDigits(val: any) {
|
|
|
|
|
|
if (val < 10) return "0" + val;
|
|
|
|
|
|
return val;
|
|
|
|
|
|
}
|
2023-07-28 19:43:56 +08:00
|
|
|
|
|
|
|
|
|
|
function loginOut() {
|
|
|
|
|
|
localStorage.removeItem("GlobalState");
|
|
|
|
|
|
location.reload();
|
|
|
|
|
|
router.push("/login");
|
|
|
|
|
|
}
|
2023-09-04 14:43:33 +08:00
|
|
|
|
//跳转后台
|
|
|
|
|
|
function jumpBgd() {
|
2024-01-17 15:59:48 +08:00
|
|
|
|
// 标准版——跳转演示平台项目后台
|
2023-12-28 18:15:42 +08:00
|
|
|
|
if (COMPANY == "") {
|
2024-04-01 16:28:40 +08:00
|
|
|
|
window.location.replace("http://jxj.zhgdyun.com:100/#/login?token=" + store.token);
|
2023-12-28 18:15:42 +08:00
|
|
|
|
} else {
|
|
|
|
|
|
// 新项目通用(百色服务器)
|
2024-04-01 19:00:31 +08:00
|
|
|
|
window.location.replace("http://101.43.164.214:11111/#/login?token=" + store.token);
|
|
|
|
|
|
// window.location.replace("http://192.168.34.138:8080/#/login?token=" + store.token);
|
2023-12-28 18:15:42 +08:00
|
|
|
|
}
|
2023-09-04 14:43:33 +08:00
|
|
|
|
}
|
2023-07-12 09:56:31 +08:00
|
|
|
|
</script>
|
|
|
|
|
|
|
2023-07-28 19:43:56 +08:00
|
|
|
|
<style>
|
|
|
|
|
|
.el-popper__arrow {
|
|
|
|
|
|
background-color: #112d59;
|
|
|
|
|
|
}
|
|
|
|
|
|
</style>
|
|
|
|
|
|
|
2023-07-12 09:56:31 +08:00
|
|
|
|
<style lang="scss" scoped>
|
2024-03-25 20:57:41 +08:00
|
|
|
|
.container {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
}
|
2023-07-12 09:56:31 +08:00
|
|
|
|
.largeScreen {
|
|
|
|
|
|
background: url("@/assets/images/bigImg.gif") no-repeat;
|
|
|
|
|
|
background-size: 100% 100%;
|
2024-03-25 20:57:41 +08:00
|
|
|
|
position: relative;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
.header {
|
2023-09-07 11:27:21 +08:00
|
|
|
|
width: 100%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
height: 12%;
|
|
|
|
|
|
background: url("@/assets/images/headerImg.webp") no-repeat;
|
|
|
|
|
|
background-size: 100% 100%;
|
2023-12-28 18:15:42 +08:00
|
|
|
|
// .projectTitle {
|
|
|
|
|
|
// display: flex;
|
|
|
|
|
|
// align-items: center;
|
|
|
|
|
|
// justify-content: center;
|
|
|
|
|
|
// font-size: 44px;
|
|
|
|
|
|
// color: #fff;
|
|
|
|
|
|
// font-family: YouSheBiaoTiHei;
|
|
|
|
|
|
// }
|
2023-07-12 09:56:31 +08:00
|
|
|
|
.projectTitle {
|
2023-12-28 18:15:42 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
font-size: 38px;
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
font-family: YouSheBiaoTiHei;
|
|
|
|
|
|
}
|
|
|
|
|
|
.projectSmallTitle {
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
top: 6%;
|
|
|
|
|
|
width: 100%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: center;
|
2023-12-28 18:15:42 +08:00
|
|
|
|
font-size: 20px;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
color: #fff;
|
|
|
|
|
|
font-family: YouSheBiaoTiHei;
|
|
|
|
|
|
}
|
|
|
|
|
|
.rightIcon {
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
width: 30%;
|
|
|
|
|
|
left: 70%;
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
top: 1%;
|
2024-03-25 20:57:41 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
.time {
|
2023-09-08 16:53:53 +08:00
|
|
|
|
font-size: 13px;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
font-family: sadigitalNumber;
|
2024-03-25 20:57:41 +08:00
|
|
|
|
margin: 0.5% 33% 0 6%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
.Icon {
|
|
|
|
|
|
margin-right: 2%;
|
|
|
|
|
|
cursor: pointer;
|
2023-09-08 09:59:15 +08:00
|
|
|
|
width: 25px;
|
|
|
|
|
|
margin-top: 1%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.menuList {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
height: 6%;
|
|
|
|
|
|
color: #ccc;
|
|
|
|
|
|
line-height: 55px;
|
|
|
|
|
|
margin: -4% auto 0 2%;
|
|
|
|
|
|
font-family: pmzd;
|
2024-02-21 18:52:31 +08:00
|
|
|
|
> div {
|
2023-09-05 10:36:23 +08:00
|
|
|
|
position: relative;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
margin-top: 1%;
|
|
|
|
|
|
height: 60%;
|
2023-10-30 14:36:10 +08:00
|
|
|
|
width: 9%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
}
|
2023-09-08 09:59:15 +08:00
|
|
|
|
|
2023-09-05 10:36:23 +08:00
|
|
|
|
.subMenu {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
display: flex;
|
2023-09-12 10:14:05 +08:00
|
|
|
|
font-size: 20px;
|
2023-09-08 09:59:15 +08:00
|
|
|
|
|
2023-09-05 10:36:23 +08:00
|
|
|
|
span {
|
|
|
|
|
|
width: 90%;
|
|
|
|
|
|
height: 10%;
|
|
|
|
|
|
margin-left: 2%;
|
|
|
|
|
|
line-height: 40px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-09-08 09:59:15 +08:00
|
|
|
|
|
2023-09-05 10:36:23 +08:00
|
|
|
|
.subMenuList {
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
width: 98%;
|
|
|
|
|
|
height: 4%;
|
2024-01-17 15:59:48 +08:00
|
|
|
|
// display: flex;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
margin-top: 5%;
|
2023-09-08 16:53:53 +08:00
|
|
|
|
font-size: 14px;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
font-family: none;
|
|
|
|
|
|
background: url("@/assets/images/subTabImg.gif") no-repeat;
|
|
|
|
|
|
background-size: 100% 100%;
|
2024-02-21 18:52:31 +08:00
|
|
|
|
.scrollItem {
|
|
|
|
|
|
width: 73%;
|
|
|
|
|
|
height: max-content;
|
|
|
|
|
|
margin-top: -2%;
|
2024-01-17 15:59:48 +08:00
|
|
|
|
margin-left: 2%;
|
2024-02-21 18:52:31 +08:00
|
|
|
|
.subMenuItem {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
.subItem {
|
|
|
|
|
|
width: 100px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
}
|
|
|
|
|
|
.subItem:not(:last-child) {
|
|
|
|
|
|
margin-right: 0.3%;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-09-05 10:36:23 +08:00
|
|
|
|
}
|
2024-01-17 15:59:48 +08:00
|
|
|
|
// :nth-child(1) {
|
|
|
|
|
|
// margin-left: 2%;
|
|
|
|
|
|
// }
|
2023-09-05 10:36:23 +08:00
|
|
|
|
}
|
2023-07-12 09:56:31 +08:00
|
|
|
|
}
|
2023-09-05 14:38:58 +08:00
|
|
|
|
.contentDate {
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
float: right;
|
|
|
|
|
|
margin-right: 2%;
|
|
|
|
|
|
font-size: 14px;
|
2023-09-06 11:28:22 +08:00
|
|
|
|
.numColor {
|
2023-09-05 14:38:58 +08:00
|
|
|
|
color: #82fbea;
|
|
|
|
|
|
font-family: sadigitalNumber;
|
|
|
|
|
|
font-size: 24px;
|
2023-09-06 11:28:22 +08:00
|
|
|
|
font-weight: bold;
|
2023-09-05 14:38:58 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2023-07-12 09:56:31 +08:00
|
|
|
|
.dataBoardContent {
|
2023-09-05 10:36:23 +08:00
|
|
|
|
height: 81%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
// height: calc(100% - 15px - 50px - 60px - 20px);
|
2023-09-05 10:36:23 +08:00
|
|
|
|
margin: 75px auto 16px auto;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
width: calc(100% - 40px);
|
|
|
|
|
|
// background-color: #01131F;
|
|
|
|
|
|
// opacity: 0.9;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.active {
|
2023-09-05 10:36:23 +08:00
|
|
|
|
display: inline-block;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
height: 100%;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
width: 90%;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
background: url("@/assets/images/dustNoise/menuImg.png") no-repeat;
|
|
|
|
|
|
background-size: 100% 100%;
|
2023-09-05 10:36:23 +08:00
|
|
|
|
color: #fff;
|
|
|
|
|
|
}
|
|
|
|
|
|
.active2 {
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
font-family: none;
|
2023-10-30 14:36:10 +08:00
|
|
|
|
font-size: 16px;
|
2023-07-12 09:56:31 +08:00
|
|
|
|
}
|
2023-07-28 19:43:56 +08:00
|
|
|
|
.userDialog {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
width: 70px;
|
|
|
|
|
|
height: 25px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
background-color: #112d59;
|
|
|
|
|
|
color: #5d75a0;
|
2023-09-08 16:53:53 +08:00
|
|
|
|
font-size: 12px;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.userBox {
|
|
|
|
|
|
.userItem {
|
|
|
|
|
|
position: absolute;
|
2023-09-08 09:59:15 +08:00
|
|
|
|
width: 110px;
|
2023-09-04 14:43:33 +08:00
|
|
|
|
height: 100px;
|
2023-09-08 09:59:15 +08:00
|
|
|
|
right: 2%;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
top: 4%;
|
|
|
|
|
|
background: #112d59;
|
|
|
|
|
|
border-radius: 0px 0px 0px 0px;
|
|
|
|
|
|
border: 0px solid #405e97;
|
2023-09-08 09:59:15 +08:00
|
|
|
|
z-index: 9;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
.sanJiao {
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
width: 0;
|
|
|
|
|
|
height: 0;
|
|
|
|
|
|
right: 0%;
|
|
|
|
|
|
top: -10%;
|
|
|
|
|
|
border-left: 6px solid transparent; /* 左边框透明 */
|
|
|
|
|
|
border-right: 6px solid transparent; /* 右边框透明 */
|
|
|
|
|
|
border-bottom: 6px solid #405e97; /* 底部边框颜色 */
|
|
|
|
|
|
transform: rotate(0deg); /* 旋转45度 */
|
|
|
|
|
|
}
|
|
|
|
|
|
.userIcon {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: space-evenly;
|
|
|
|
|
|
height: 38px;
|
|
|
|
|
|
border-bottom: 1px solid #405e97;
|
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
.icon {
|
|
|
|
|
|
width: 18px;
|
|
|
|
|
|
height: 18px;
|
|
|
|
|
|
img {
|
|
|
|
|
|
width: 100&;
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.userName {
|
|
|
|
|
|
width: 40px;
|
2023-09-08 16:53:53 +08:00
|
|
|
|
font-size: 12px;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
font-family: Source Han Sans CN-Regular, Source Han Sans CN;
|
|
|
|
|
|
color: #a9bce6;
|
2023-09-08 09:59:15 +08:00
|
|
|
|
white-space: nowrap;
|
2023-09-08 16:53:53 +08:00
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
text-overflow: ellipsis;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.loginOut {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: space-evenly;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
height: 26px;
|
2023-09-04 14:43:33 +08:00
|
|
|
|
padding-left: 5px;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
cursor: pointer;
|
2023-09-04 14:43:33 +08:00
|
|
|
|
height: 30px;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
.loginOutIcon {
|
|
|
|
|
|
width: 12px;
|
|
|
|
|
|
height: 12px;
|
|
|
|
|
|
img {
|
|
|
|
|
|
width: 100&;
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.userName {
|
|
|
|
|
|
width: 50px;
|
2023-09-08 16:53:53 +08:00
|
|
|
|
font-size: 12px;
|
2023-07-28 19:43:56 +08:00
|
|
|
|
font-family: Source Han Sans CN-Regular, Source Han Sans CN;
|
|
|
|
|
|
color: #a9bce6;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.loginOut:hover {
|
|
|
|
|
|
background-color: #2758c0;
|
|
|
|
|
|
}
|
2023-09-20 09:37:06 +08:00
|
|
|
|
.hearderIcon {
|
|
|
|
|
|
left: 1%;
|
|
|
|
|
|
top: 1%;
|
2023-10-30 14:36:10 +08:00
|
|
|
|
height: 3%;
|
|
|
|
|
|
width: 8%;
|
2023-09-20 09:37:06 +08:00
|
|
|
|
position: absolute;
|
|
|
|
|
|
img {
|
|
|
|
|
|
width: 100%;
|
2023-10-30 14:36:10 +08:00
|
|
|
|
height: 100%;
|
|
|
|
|
|
object-fit: contain;
|
2023-09-20 09:37:06 +08:00
|
|
|
|
}
|
2023-09-19 18:47:23 +08:00
|
|
|
|
}
|
2023-07-12 09:56:31 +08:00
|
|
|
|
</style>
|