Merge branch 'shenzhen-dev' of http://139.9.66.234:18023/yjlHub/zhgdlarge into shenzhen-dev

This commit is contained in:
Vce 2024-06-20 18:54:14 +08:00
commit 0e4e286388
18 changed files with 165 additions and 90 deletions

View File

@ -3,9 +3,9 @@ NODE_ENV = 'development'
# 本地环境接口地址(/api/index.ts文件中使用) # 本地环境接口地址(/api/index.ts文件中使用)
# 后端本地 # 后端本地
# VITE_API_URL = 'http://192.168.34.155:19111' VITE_API_URL = 'http://192.168.34.155:19111'
# VITE_API_URL = 'http://192.168.34.221:9111' #雄哥本地 # VITE_API_URL = 'http://192.168.34.221:9111' #雄哥本地
VITE_API_URL = 'http://182.90.224.237:51234' #雄哥远程 # VITE_API_URL = 'http://182.90.224.237:51234' #雄哥远程
# VITE_API_URL = 'http://192.168.34.221:28889' # VITE_API_URL = 'http://192.168.34.221:28889'
# VITE_API_URL = 'http://121.196.214.246/api' # VITE_API_URL = 'http://121.196.214.246/api'
# VITE_API_URL = 'http://jxj.zhgdyun.com:100' # VITE_API_URL = 'http://jxj.zhgdyun.com:100'

View File

@ -22,13 +22,13 @@ NODE_ENV = "production"
# VITE_API_URL = 'http://182.90.224.237:15551' # VITE_API_URL = 'http://182.90.224.237:15551'
# agjt # agjt
# VITE_API_URL = 'http://42.180.188.17:9809' #生产环境 # VITE_API_URL = 'http://42.180.188.17:9809' #生产环境
# VITE_API_URL = 'http://42.180.188.17:11211' #测试环境 VITE_API_URL = 'http://42.180.188.17:11211' #测试环境
# 苏立信/重庆市南岸区 # 苏立信/重庆市南岸区
# VITE_API_URL = 'http://101.43.164.214:11111' # VITE_API_URL = 'http://101.43.164.214:11111'
# 中科安信 # 中科安信
# VITE_API_URL = 'http://8.136.222.164:8808' # VITE_API_URL = 'http://8.136.222.164:8808'
# 中科佳成 # 中科佳成
VITE_API_URL = 'http://1.13.185.209:8089' # VITE_API_URL = 'http://1.13.185.209:8089'
# 打包 # 打包
VITE_ULD_API_URL = 'http://jxj.zhgdyun.com:8012/onlinePreview?url=' VITE_ULD_API_URL = 'http://jxj.zhgdyun.com:8012/onlinePreview?url='

View File

@ -20,8 +20,9 @@
ref="upload" ref="upload"
class="upload-demo" class="upload-demo"
:action="BASEURL + '/upload/image'" :action="BASEURL + '/upload/image'"
:on-success="file => handleSuccess(file, index)" :on-success="(file: any) => handleSuccess(file, index)"
:beforeUpload="handleBeforeUploadVideo" :beforeUpload="handleBeforeUploadVideo"
:on-error="handleError"
name="files" name="files"
:show-file-list="false" :show-file-list="false"
> >
@ -46,6 +47,7 @@ import { onMounted, reactive, ref } from "vue";
import { UploadFilled } from "@element-plus/icons-vue"; import { UploadFilled } from "@element-plus/icons-vue";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import type { UploadInstance } from "element-plus"; import type { UploadInstance } from "element-plus";
import { showFullScreenLoading, tryHideFullScreenLoading } from "@/config/serviceLoading";
import { configWeekVideoSaveApi, configWeekVideoListApi } from "@/api/modules/agjtCommandApi"; import { configWeekVideoSaveApi, configWeekVideoListApi } from "@/api/modules/agjtCommandApi";
import { GlobalStore } from "@/stores"; import { GlobalStore } from "@/stores";
import moment from "moment"; import moment from "moment";
@ -139,6 +141,7 @@ function handleBeforeUploadVideo(file: any) {
console.log(file, "上传之前"); console.log(file, "上传之前");
let fileType = file.type.split("/")[0]; let fileType = file.type.split("/")[0];
if (fileType == "video") { if (fileType == "video") {
showFullScreenLoading();
return true; return true;
} else { } else {
ElMessage({ ElMessage({
@ -153,11 +156,17 @@ function handleBeforeUploadVideo(file: any) {
function handleSuccess(file: any, index: number) { function handleSuccess(file: any, index: number) {
if (file.code == 200 || file.status == "SUCCESS") { if (file.code == 200 || file.status == "SUCCESS") {
console.log(file, "上传成功"); console.log(file, "上传成功");
tryHideFullScreenLoading();
let url = file.data[0].imageUrl; let url = file.data[0].imageUrl;
// this.imgUrl = url; // this.imgUrl = url;
configWeekVideoEditFn(true, url, index); configWeekVideoEditFn(true, url, index);
} }
} }
//
function handleError() {
tryHideFullScreenLoading();
}
const closeDialog = () => { const closeDialog = () => {
dialogInfo.showDialog = false; dialogInfo.showDialog = false;
dialogInfo.postData = {}; dialogInfo.postData = {};

View File

@ -28,10 +28,10 @@ export const BASE_IMAGE_URL = import.meta.env.VITE_BASE_IMAGE_URL;
// export const COMPANY: string = "zsbf"; //中水北方 // export const COMPANY: string = "zsbf"; //中水北方
// export const COMPANY: string = "as"; //鞍山项目 // export const COMPANY: string = "as"; //鞍山项目
// export const COMPANY: string = "agjt"; //鞍钢集团 // export const COMPANY: string = "agjt"; //鞍钢集团
export const COMPANY: string = "agjtLive"; //鞍钢集团现场大屏 现场大屏所有接口暂时写死projectSn部署时需根据环境来切换相应的projectSn // export const COMPANY: string = "agjtLive"; //鞍钢集团现场大屏
// export const COMPANY: string = "agjtCommand"; //鞍钢集团指挥部大屏 // export const COMPANY: string = "agjtCommand"; //鞍钢集团指挥部大屏
// export const COMPANY: string = "agjtProjectKanban"; //鞍钢集团项目看板大屏 // export const COMPANY: string = "agjtProjectKanban"; //鞍钢集团项目看板大屏
// export const COMPANY: string = "agjtOverviewScreen"; //鞍钢集团项目总览 export const COMPANY: string = "agjtOverviewScreen"; //鞍钢集团项目总览
// export const COMPANY: string = "zkjc"; //中科佳成项目 // export const COMPANY: string = "zkjc"; //中科佳成项目
// export const COMPANY: string = "cqna"; //重庆南岸项目 // export const COMPANY: string = "cqna"; //重庆南岸项目
// export const COMPANY: string = "slx"; //苏立信项目 // export const COMPANY: string = "slx"; //苏立信项目

View File

@ -26,8 +26,8 @@ export const staticRouter: RouteRecordRaw[] = [
name: "大屏", name: "大屏",
// component: () => import("@/views/sevenLargeScreen/indexL.vue"), //七参数标准版 // component: () => import("@/views/sevenLargeScreen/indexL.vue"), //七参数标准版
// component: () => import("@/views/commandScreen/indexCommand.vue"), //指挥部大屏 // component: () => import("@/views/commandScreen/indexCommand.vue"), //指挥部大屏
component: () => import("@/views/agjtLiveScreen/indexLive.vue"), //鞍钢现场大屏 现场大屏所有接口暂时写死projectSn部署时需根据环境来切换相应的projectSn // component: () => import("@/views/agjtLiveScreen/indexLive.vue"), //鞍钢现场大屏
// component: () => import("@/views/overviewScreen/indexCommand.vue"), //总览大屏 component: () => import("@/views/overviewScreen/indexCommand.vue"), //总览大屏
// component: () => import("@/views/agjtProjectKanban/indexL.vue"), //鞍钢集团项目看板大屏 // component: () => import("@/views/agjtProjectKanban/indexL.vue"), //鞍钢集团项目看板大屏
// component: () => import("@/views/sevenLargeScreen/indexL_syhy.vue"), // 只有一级路由(盘锦、嘉兴、鄱湖美湾医疗项目需切换至该首页) // component: () => import("@/views/sevenLargeScreen/indexL_syhy.vue"), // 只有一级路由(盘锦、嘉兴、鄱湖美湾医疗项目需切换至该首页)
children: [ children: [

View File

@ -204,7 +204,7 @@ const drawTwoEchart = () => {
title: { title: {
text: stateInfo.dataDetail.num, text: stateInfo.dataDetail.num,
subtext: stateInfo.dataDetail.name, subtext: stateInfo.dataDetail.name,
x: "29%", x: "24%",
y: "40%", y: "40%",
textAlign: "center", textAlign: "center",
textStyle: { textStyle: {
@ -272,7 +272,8 @@ const drawTwoEchart = () => {
if (data == "无") return; if (data == "无") return;
let value = dataList.value[i].value; let value = dataList.value[i].value;
let percentage = dataList.value[i].percentage + "%"; let percentage = dataList.value[i].percentage + "%";
return "{name| " + data + "} {gap| }" + `{value|${value}} {gap| } {value1|${percentage}}`; const newData = data.length > 10 ? data.substr(0, 10) + "..." : data;
return "{name| " + newData + "} {gap| }" + `{value|${value}} {gap| } {value1|${percentage}}`;
} }
} }
} }
@ -285,7 +286,7 @@ const drawTwoEchart = () => {
name: "", name: "",
type: "pie", type: "pie",
radius: [100, 95], radius: [100, 95],
center: ["30%", "50%"], center: ["25%", "50%"],
hoverAnimation: false, hoverAnimation: false,
tooltip: { tooltip: {
trigger: "none" // tooltip.trigger 'none' trigger: "none" // tooltip.trigger 'none'
@ -426,7 +427,7 @@ const drawTwoEchart = () => {
name: "", name: "",
type: "pie", type: "pie",
radius: [60, 80], radius: [60, 80],
center: ["30%", "50%"], center: ["25%", "50%"],
hoverAnimation: true, hoverAnimation: true,
itemStyle: { itemStyle: {
borderWidth: 3, borderWidth: 3,
@ -449,7 +450,7 @@ const drawTwoEchart = () => {
{ {
type: "pie", type: "pie",
radius: ["52", "55"], radius: ["52", "55"],
center: ["30%", "50%"], center: ["25%", "50%"],
label: { label: {
show: false show: false
}, },

View File

@ -1,16 +1,22 @@
<template> <template>
<div class="leftTop"> <div class="leftTop">
<Card title="安全质量隐患报告"> <Card title="安全隐患报告">
<div class="box-content"> <div class="box-content">
<el-scrollbar class="list-box" ref="refScrollbar"> <el-scrollbar class="list-box" ref="refScrollbar">
<div v-for="item in list" class="listStyle" :key="item.id"> <div v-for="item in list" class="listStyle" :key="item.id">
<div>{{ item.dangerItemContent }}</div> <div>{{ item.dangerItemContent }}</div>
<div> <div style="display: flex">
<span>整改结果</span> <div style="width: 30%">
<span v-if="item.overTime" style="color: #e25f64">已逾期</span> <span>整改结果</span>
<span v-else :style="{ color: item.status ? statusNameFilter(item.status).color : '' }">{{ <span :style="{ color: item.status ? statusNameFilter(item.status).color : '' }">{{
item.status ? statusNameFilter(item.status).name : "" item.status ? statusNameFilter(item.status).name : ""
}}</span> }}</span>
</div>
<div class="text-ellipsis">
<span>责任单位</span>
<span>{{ item.enterpriseName || "" }}</span>
</div>
<span v-if="item.overTime" class="period">已逾期</span>
</div> </div>
<div> <div>
<div> <div>
@ -117,14 +123,16 @@ onMounted(async () => {
box-shadow: 0px 3px 4px 0px rgba(17, 141, 255, 0.5), inset 0px 0px 10px 0px #118dff; box-shadow: 0px 3px 4px 0px rgba(17, 141, 255, 0.5), inset 0px 0px 10px 0px #118dff;
border-radius: 0px 0px 0px 0px; border-radius: 0px 0px 0px 0px;
border: 1px solid; border: 1px solid;
opacity: 0.7; // opacity: 0.7;
// opacity: 0.9;
border-image: linear-gradient(359deg, rgba(17, 141, 255, 1), rgba(17, 141, 255, 0)) 1 1; border-image: linear-gradient(359deg, rgba(17, 141, 255, 1), rgba(17, 141, 255, 0)) 1 1;
padding: 9px 13px; padding: 9px 13px;
margin-bottom: 10px; margin-bottom: 10px;
position: relative;
> div:nth-child(1) { > div:nth-child(1) {
font-family: ABeeZee, ABeeZee; font-family: ABeeZee, ABeeZee;
font-weight: 400; font-weight: 400;
font-size: 16px; font-size: 14px;
color: #ffffff; color: #ffffff;
line-height: 16px; line-height: 16px;
font-style: normal; font-style: normal;
@ -134,7 +142,7 @@ onMounted(async () => {
> div:nth-child(2) { > div:nth-child(2) {
font-family: ABeeZee, ABeeZee; font-family: ABeeZee, ABeeZee;
font-weight: 400; font-weight: 400;
font-size: 13px; font-size: 11px;
color: #ffffff; color: #ffffff;
font-style: normal; font-style: normal;
text-transform: none; text-transform: none;
@ -143,12 +151,15 @@ onMounted(async () => {
> div:nth-child(3) { > div:nth-child(3) {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; // justify-content: space-between;
margin-bottom: 2px; margin-bottom: 2px;
> div:not(:last-child) {
width: 30%;
}
> div:nth-child(1) { > div:nth-child(1) {
font-family: ABeeZee, ABeeZee; font-family: ABeeZee, ABeeZee;
font-weight: 400; font-weight: 400;
font-size: 13px; font-size: 11px;
color: #ffffff; color: #ffffff;
font-style: normal; font-style: normal;
text-transform: none; text-transform: none;
@ -159,7 +170,7 @@ onMounted(async () => {
> div:not(:nth-child(1)) { > div:not(:nth-child(1)) {
font-family: ABeeZee, ABeeZee; font-family: ABeeZee, ABeeZee;
font-weight: 400; font-weight: 400;
font-size: 13px; font-size: 11px;
color: #8893a1; color: #8893a1;
font-style: normal; font-style: normal;
text-transform: none; text-transform: none;
@ -187,4 +198,19 @@ onMounted(async () => {
::v-deep .h-card .content { ::v-deep .h-card .content {
height: 80%; height: 80%;
} }
.text-ellipsis {
color: #fff;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
-o-text-overflow: ellipsis;
}
.period {
color: #e25f64;
margin-left: 6px;
position: absolute;
top: 8px;
right: 10px;
}
</style> </style>

View File

@ -5,7 +5,7 @@
<el-carousel-item v-for="item in enterpriseInfo.dataList" :key="item.enterpriseId" style="width: 100%; height: 100%"> <el-carousel-item v-for="item in enterpriseInfo.dataList" :key="item.enterpriseId" style="width: 100%; height: 100%">
<div class="box-content"> <div class="box-content">
<div class="top-content"> <div class="top-content">
<div class="top-content-left">{{ item.enterpriseName }}</div> <div class="top-content-left text-ellipsis">{{ item.enterpriseName }}</div>
<div class="top-content-right" style="text-align: right"> <div class="top-content-right" style="text-align: right">
<div class="line1" style="display: flex; justify-content: flex-end"> <div class="line1" style="display: flex; justify-content: flex-end">
<span style="margin-left: 15px">事故报警总数</span> <span style="margin-left: 15px">事故报警总数</span>
@ -75,7 +75,8 @@ const getEnterpriseInfoList = async (showLoading: boolean) => {
projectSn: store.sn, projectSn: store.sn,
enterpriseName: "", enterpriseName: "",
enterpriseTypeId: "", enterpriseTypeId: "",
userEnterpriseId: "" userEnterpriseId: "",
isCountMainEnterprise: 1
}, },
showLoading showLoading
); );
@ -106,6 +107,15 @@ onMounted(async () => {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.text-ellipsis {
font-size: 16px;
color: #fff;
flex: 1;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
-o-text-overflow: ellipsis;
}
.leftTop { .leftTop {
width: 100%; width: 100%;
height: 100%; height: 100%;
@ -235,12 +245,12 @@ onMounted(async () => {
.el-carousel__arrow--left { .el-carousel__arrow--left {
// top: 70px; // top: 70px;
left: -8px; left: -8px;
font-size: 15px; font-size: 16px;
} }
.el-carousel__arrow--right { .el-carousel__arrow--right {
// top: 70px; // top: 70px;
right: -8px; right: -8px;
font-size: 15px; font-size: 16px;
} }
} }
</style> </style>

View File

@ -16,7 +16,7 @@
<div class="contentTop contentMiddle"> <div class="contentTop contentMiddle">
<div class="ctHead" @click="onEchartsSafeTab(1)"> <div class="ctHead" @click="onEchartsSafeTab(1)">
<div> <div>
质量重大隐患超期未整改<text>{{ overdueMajorDangerCount }}</text 安全重大隐患超期未整改<text>{{ overdueMajorDangerCount }}</text
>占比<text>{{ overdueMajorDangerRate }}%</text> >占比<text>{{ overdueMajorDangerRate }}%</text>
</div> </div>
</div> </div>

View File

@ -199,7 +199,7 @@ const randerInfo = reactive({
titleInfo: { titleInfo: {
titleLeft: "未来三天事故风险概率预测", titleLeft: "未来三天事故风险概率预测",
titleRight: "查看各企业应急事故风险概率预测", titleRight: "查看各企业应急事故风险概率预测",
percentage: 80 percentage: 0
}, },
workerFlag: true, workerFlag: true,
workerList: [] as any[] workerList: [] as any[]
@ -257,7 +257,7 @@ const openDialogData = async () => {
titleInfo: { titleInfo: {
titleLeft: "未来三天事故风险概率预测", titleLeft: "未来三天事故风险概率预测",
// titleRight: "", // titleRight: "",
percentage: 80 percentage: item.area
}, },
workerFlag: true, workerFlag: true,
workerList: [ workerList: [
@ -296,7 +296,14 @@ const getRiskTrendByProject = async (showLoading: boolean, val: number) => {
res.result.monthlySafetyScoreRate, res.result.monthlySafetyScoreRate,
res.result.unclosedHiddenDangersRate res.result.unclosedHiddenDangersRate
]; ];
randerInfo.workerList = randerInfo.dataList[0].value; randerInfo.workerList = [
res.result.severeWeatherRate,
res.result.totalPersonnelRiskRate,
res.result.totalSpecialOperationsRiskRate,
res.result.monthlySafetyScoreRate,
res.result.unclosedHiddenDangersRate
];
randerInfo.titleInfo.percentage = res.result.area;
} }
activeIfo.activeIndex = val; activeIfo.activeIndex = val;
}; };

View File

@ -185,7 +185,7 @@ const randerInfo = reactive({
titleInfo: { titleInfo: {
titleLeft: "未来三天人员风险概率预测", titleLeft: "未来三天人员风险概率预测",
titleRight: "查看各企业人员风险概率预测", titleRight: "查看各企业人员风险概率预测",
percentage: 1 percentage: 0
}, },
workerFlag: true, workerFlag: true,
workerList: [] as any[] workerList: [] as any[]
@ -229,7 +229,7 @@ const openDialogData = async () => {
titleInfo: { titleInfo: {
titleLeft: "未来三天人员风险概率预测", titleLeft: "未来三天人员风险概率预测",
// titleRight: "", // titleRight: "",
percentage: 80 percentage: item.area
}, },
workerFlag: true, workerFlag: true,
workerList: [item.age, item.total, item.safe, item.workerType, item.security, item.exam] workerList: [item.age, item.total, item.safe, item.workerType, item.security, item.exam]
@ -520,6 +520,7 @@ const getWorkerRiskByProject = async (showLoading: boolean, val: number) => {
res.result.security, res.result.security,
res.result.exam res.result.exam
]; ];
randerInfo.titleInfo.percentage = res.result.area;
} }
activeIndex.value = val; activeIndex.value = val;
}; };

View File

@ -223,9 +223,9 @@ const openDialogData = async () => {
res.result.forEach((item: any, index: number) => { res.result.forEach((item: any, index: number) => {
resultList.push({ resultList.push({
id: `list${index}`, id: `list${index}`,
radius: "70%", radius: "60%",
isLegend: "top", isLegend: "top",
radarCenter: ["50%", "60%"], radarCenter: ["50%", "55%"],
dataList: [ dataList: [
{ {
value: [item.security, item.safe, item.levelRisk, item.limitTime], value: [item.security, item.safe, item.levelRisk, item.limitTime],
@ -242,7 +242,7 @@ const openDialogData = async () => {
titleInfo: { titleInfo: {
titleLeft: "未来三天安全隐患风险概率预测", titleLeft: "未来三天安全隐患风险概率预测",
// titleRight: "", // titleRight: "",
percentage: 80 percentage: item.area
}, },
workerFlag: true, workerFlag: true,
workerList: [item.security, item.safe, item.levelRisk, item.limitTime] workerList: [item.security, item.safe, item.levelRisk, item.limitTime]
@ -299,7 +299,7 @@ const randerInfo = reactive({
titleInfo: { titleInfo: {
titleLeft: "未来三天安全隐患风险概率预测", titleLeft: "未来三天安全隐患风险概率预测",
titleRight: "查看各企业安全隐患风险概率预测", titleRight: "查看各企业安全隐患风险概率预测",
percentage: 80 percentage: 0
}, },
workerFlag: true, workerFlag: true,
workerList: [] as any[] workerList: [] as any[]
@ -329,7 +329,7 @@ const randerInfo2 = reactive({
titleInfo: { titleInfo: {
titleLeft: "未来三天特殊作业风险概率预测", titleLeft: "未来三天特殊作业风险概率预测",
// titleRight: "", // titleRight: "",
percentage: 80 percentage: 0
}, },
workerFlag: true, workerFlag: true,
workerList: [] as any[] workerList: [] as any[]
@ -365,6 +365,7 @@ const getSafetyRiskByProject = async (showLoading: boolean, val: number) => {
console.log("隐患风险预测趋势", res.result); console.log("隐患风险预测趋势", res.result);
randerInfo.dataList[0].value = [res.result.security, res.result.safe, res.result.levelRisk, res.result.limitTime]; randerInfo.dataList[0].value = [res.result.security, res.result.safe, res.result.levelRisk, res.result.limitTime];
randerInfo.workerList = [res.result.security, res.result.safe, res.result.levelRisk, res.result.limitTime]; randerInfo.workerList = [res.result.security, res.result.safe, res.result.levelRisk, res.result.limitTime];
randerInfo.titleInfo.percentage = res.result.area;
} }
activeInfo.activeIndex = val; activeInfo.activeIndex = val;
}; };
@ -401,6 +402,7 @@ const getSpecialTrend = async (showLoading: boolean, val: number, isRight?: bool
} }
]; ];
randerInfo2.workerList = randerInfo2.dataList[0].value; randerInfo2.workerList = randerInfo2.dataList[0].value;
randerInfo2.titleInfo.percentage = res.result.area;
} }
activeInfo.activeIndex2 = val; activeInfo.activeIndex2 = val;
if (isRight) { if (isRight) {

View File

@ -180,10 +180,10 @@ onMounted(async () => {
align-items: center; align-items: center;
line-height: 30px; line-height: 30px;
height: 30px; height: 30px;
font-size: 11px; font-size: 8px;
.numberCard { .numberCard {
font-size: 12px; font-size: 11px;
padding: 0 8px; padding: 0 8px;
margin-left: 3px; margin-left: 3px;
font-weight: bold; font-weight: bold;

View File

@ -127,8 +127,8 @@ const tableTabInfo = reactive({
tableTabActive: "1" tableTabActive: "1"
}); });
const onClickTab = (item: any) => { const onClickTab = (item: any) => {
tableTabInfo.tableTabActive = item.enumType;
majorInfo.value.enumType = item.enumType; majorInfo.value.enumType = item.enumType;
tableTabInfo.tableTabActive = item.enumType;
}; };
const closeDialog = () => { const closeDialog = () => {

View File

@ -237,7 +237,7 @@ const getMemberCountList = async (tip: any) => {
idCard: searchForm.value.idCard, // idCard: searchForm.value.idCard, //
workerName: searchForm.value.name, // workerName: searchForm.value.name, //
pageNo: tip == "search" ? 1 : pageNo.value, pageNo: tip == "search" ? 1 : pageNo.value,
pageSize: 100 pageSize: 10
}; };
if (props.tip == "实时") { if (props.tip == "实时") {
requestData.presence = 1; requestData.presence = 1;
@ -841,7 +841,6 @@ function drawEchart3() {
} }
const getStatsByEnterprise = async () => { const getStatsByEnterprise = async () => {
const res: any = await getStatsByEnterpriseApi({ const res: any = await getStatsByEnterpriseApi({
pageNo: 1, pageNo: 1,
pageSize: 99999, pageSize: 99999,
@ -949,6 +948,8 @@ const onSupervise = async (row: any) => {
watch( watch(
() => props.majorInfo, () => props.majorInfo,
async newVal => { async newVal => {
pageNo.value = 1;
moreScroll.value = true;
await getStatsByEnterprise(); await getStatsByEnterprise();
await getCountQualityInspectionRecordRegion(); await getCountQualityInspectionRecordRegion();
await getStatsDangerType(); await getStatsDangerType();
@ -972,7 +973,8 @@ onMounted(async () => {
// //
if (scrollTop >= scrollHeight - clientHeight - 1) { if (scrollTop >= scrollHeight - clientHeight - 1) {
if (moreScroll.value) { if (moreScroll.value) {
getMemberCountList("more"); // getMemberCountList("more");
getXzSecurityQualitylnspectionRecordlist("more");
} }
} }
}); });

View File

@ -176,14 +176,14 @@ function getImageNormalityEchart() {
textAlign: "center", textAlign: "center",
textStyle: { textStyle: {
color: "#fff", color: "#fff",
fontSize: 38, fontSize: 32,
fontWeight: "normal", fontWeight: "normal",
// align: "center", // align: "center",
fontFamily: "ABeeZee, ABeeZee" fontFamily: "ABeeZee, ABeeZee"
}, },
subtextStyle: { subtextStyle: {
color: "#9BB7D4", color: "#9BB7D4",
fontSize: 16, fontSize: 14,
fontWeight: "normal", fontWeight: "normal",
fontFamily: "ABeeZee, ABeeZee" fontFamily: "ABeeZee, ABeeZee"
// align: "center" // align: "center"
@ -294,14 +294,14 @@ function getVideoNormalityEchart() {
textAlign: "center", textAlign: "center",
textStyle: { textStyle: {
color: "#fff", color: "#fff",
fontSize: 38, fontSize: 32,
fontWeight: "normal", fontWeight: "normal",
// align: "center", // align: "center",
fontFamily: "ABeeZee, ABeeZee" fontFamily: "ABeeZee, ABeeZee"
}, },
subtextStyle: { subtextStyle: {
color: "#9BB7D4", color: "#9BB7D4",
fontSize: 16, fontSize: 14,
fontWeight: "normal", fontWeight: "normal",
fontFamily: "ABeeZee, ABeeZee" fontFamily: "ABeeZee, ABeeZee"
// align: "center" // align: "center"

View File

@ -339,7 +339,7 @@ function drawBar2() {
title: { title: {
text: stateInfo.dataDetail.num, text: stateInfo.dataDetail.num,
subtext: stateInfo.dataDetail.name, subtext: stateInfo.dataDetail.name,
x: "29%", x: "24%",
y: "40%", y: "40%",
textAlign: "center", textAlign: "center",
textStyle: { textStyle: {
@ -407,7 +407,8 @@ function drawBar2() {
if (data == "无") return; if (data == "无") return;
let value = dataList.value[i].value; let value = dataList.value[i].value;
let percentage = dataList.value[i].percentage + "%"; let percentage = dataList.value[i].percentage + "%";
return "{name| " + data + "} {gap| }" + `{value|${value}} {gap| } {value1|${percentage}}`; const newData = data.length > 10 ? data.substr(0, 10) + "..." : data;
return "{name| " + newData + "} {gap| }" + `{value|${value}} {gap| } {value1|${percentage}}`;
} }
} }
} }
@ -420,7 +421,7 @@ function drawBar2() {
name: "", name: "",
type: "pie", type: "pie",
radius: [100, 95], radius: [100, 95],
center: ["30%", "50%"], center: ["25%", "50%"],
hoverAnimation: false, hoverAnimation: false,
tooltip: { tooltip: {
trigger: "none" // tooltip.trigger 'none' trigger: "none" // tooltip.trigger 'none'
@ -561,7 +562,7 @@ function drawBar2() {
name: "", name: "",
type: "pie", type: "pie",
radius: [60, 80], radius: [60, 80],
center: ["30%", "50%"], center: ["25%", "50%"],
hoverAnimation: true, hoverAnimation: true,
itemStyle: { itemStyle: {
borderWidth: 3, borderWidth: 3,
@ -584,7 +585,7 @@ function drawBar2() {
{ {
type: "pie", type: "pie",
radius: ["52", "55"], radius: ["52", "55"],
center: ["30%", "50%"], center: ["25%", "50%"],
label: { label: {
show: false show: false
}, },

View File

@ -44,7 +44,12 @@
<el-carousel @change="onChange" indicator-position="none" style="width: 100%; height: 100%"> <el-carousel @change="onChange" indicator-position="none" style="width: 100%; height: 100%">
<el-carousel-item v-for="item in enterpriseInfo.dataList" :key="item.enterpriseId" style="width: 100%; height: 100%"> <el-carousel-item v-for="item in enterpriseInfo.dataList" :key="item.enterpriseId" style="width: 100%; height: 100%">
<div class="enterprise-info"> <div class="enterprise-info">
<div>{{ item.enterpriseName }}</div> <!-- <el-tooltip class="text-ellipsis" effect="dark" content="Top Left prompts info" placement="top-start">
<div style="text-ellipsis">{{ item.enterpriseName }}</div>
</el-tooltip> -->
<div class="text-ellipsis">
{{ item.enterpriseName }}
</div>
<div class="line1" style="display: flex"> <div class="line1" style="display: flex">
<span style="margin-left: 15px">事故报警总数</span> <span style="margin-left: 15px">事故报警总数</span>
<div class="numberCard" v-for="(ele, i) in `${enterpriseInfo.dataInfo.emergencyNum}`" :key="i"> <div class="numberCard" v-for="(ele, i) in `${enterpriseInfo.dataInfo.emergencyNum}`" :key="i">
@ -666,8 +671,8 @@ function getManAnalysisEchart() {
}, },
// color: ["#2BA5FF", "#F97766", "#1EF1FF", "#1EF1FF"], // color: ["#2BA5FF", "#F97766", "#1EF1FF", "#1EF1FF"],
grid: { grid: {
left: "6%", left: "8%",
right: "6%", right: "8%",
top: "15%", top: "15%",
bottom: "5%", bottom: "5%",
containLabel: true containLabel: true
@ -713,31 +718,31 @@ function getManAnalysisEchart() {
} }
// type: 'value' // type: 'value'
}, },
// dataZoom: [ dataZoom: [
// { {
// id: "dataZoomX", id: "dataZoomX",
// type: "inside", type: "inside",
// xAxisIndex: [0], xAxisIndex: [0],
// brushSelect: false, brushSelect: false,
// zoomOnMouseWheel: false, zoomOnMouseWheel: false,
// moveOnMouseWheel: true, // moveOnMouseWheel: true, //
// moveOnMouseMove: true, // moveOnMouseMove: true, //
// preventDefaultMouseMove: false, preventDefaultMouseMove: false,
// // start:100, // start:100,
// startValue: riskList.value.length - 1, startValue: workerRegionInfo.dateList.length - 1,
// endValue: riskList.value.length - 6, endValue: workerRegionInfo.dateList.length - 4,
// // //
// width: 8, width: 8,
// // //
// // height: "80%", // height: "80%",
// // //
// right: 3, right: 3,
// // //
// handleSize: 0, handleSize: 0,
// filterMode: "empty" filterMode: "empty"
// // top: "top", // top: "top",
// } }
// ], ],
series: workerRegionInfo.workerRegionList.map((item: any) => { series: workerRegionInfo.workerRegionList.map((item: any) => {
const color1 = Math.floor(Math.random() * 256); const color1 = Math.floor(Math.random() * 256);
const color2 = Math.floor(Math.random() * 256); const color2 = Math.floor(Math.random() * 256);
@ -884,7 +889,8 @@ const getEnterpriseInfoList = async (showLoading: boolean) => {
projectSn: store.sn, projectSn: store.sn,
enterpriseName: "", enterpriseName: "",
enterpriseTypeId: "", enterpriseTypeId: "",
userEnterpriseId: "" userEnterpriseId: "",
isCountMainEnterprise: 1
}, },
showLoading showLoading
); );
@ -945,6 +951,15 @@ onMounted(async () => {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.text-ellipsis {
font-size: 16px;
color: #fff;
flex: 1;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
-o-text-overflow: ellipsis;
}
.manAnalysis-box { .manAnalysis-box {
height: 32%; height: 32%;
margin-top: 1%; margin-top: 1%;
@ -1136,13 +1151,14 @@ onMounted(async () => {
.el-carousel__arrow--left { .el-carousel__arrow--left {
// top: 70px; // top: 70px;
left: -8px; left: -12px;
font-size: 15px; font-size: 16px;
} }
.el-carousel__arrow--right { .el-carousel__arrow--right {
// top: 70px; // top: 70px;
right: -8px; right: -12px;
font-size: 15px; font-size: 16px;
} }
} }