Merge branch 'bjxz-rain' of http://139.9.66.234:18023/yjlHub/zhgdlarge into bjxz-rain
This commit is contained in:
commit
3059dfeda5
@ -4,8 +4,8 @@ NODE_ENV = 'development'
|
||||
# 本地环境接口地址(/api/index.ts文件中使用)
|
||||
# 后端本地
|
||||
# VITE_API_URL = 'http://192.168.34.221:19111'
|
||||
# VITE_API_URL = 'http://192.168.34.221:9111' #雄哥本地
|
||||
VITE_API_URL = 'http://182.90.224.237:51234' #雄哥远程
|
||||
VITE_API_URL = 'http://192.168.34.221:9111' #雄哥本地
|
||||
# VITE_API_URL = 'http://182.90.224.237:51234' #雄哥远程
|
||||
# VITE_API_URL = 'http://192.168.34.221:28889'
|
||||
# VITE_API_URL = 'http://121.196.214.246/api'
|
||||
# VITE_API_URL = 'http://jxj.zhgdyun.com:100'
|
||||
@ -29,6 +29,8 @@ VITE_API_URL = 'http://182.90.224.237:51234' #雄哥远程
|
||||
# VITE_API_URL = 'http://jxj.zhgdyun.com:19812'
|
||||
# 苏立信
|
||||
# VITE_API_URL = 'http://101.43.164.214:11111'
|
||||
# 中科安信
|
||||
# VITE_API_URL = 'http://8.136.222.164:8808'
|
||||
# 上传
|
||||
VITE_ULD_API_URL = 'http://192.168.34.155:8012/onlinePreview?url='
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@ NODE_ENV = "production"
|
||||
# VITE_API_URL = "http://183.249.224.118:9003"
|
||||
|
||||
# 百色 新项目通用地址
|
||||
VITE_API_URL = 'http://101.43.164.214:11111'
|
||||
# VITE_API_URL = 'http://101.43.164.214:11111'
|
||||
|
||||
# 七参数标准版(演示平台)
|
||||
# VITE_API_URL = 'http://jxj.zhgdyun.com:9809'
|
||||
@ -25,6 +25,8 @@ VITE_API_URL = 'http://101.43.164.214:11111'
|
||||
# VITE_API_URL = 'http://42.180.188.17:11211' #测试环境
|
||||
# 苏立信
|
||||
# VITE_API_URL = 'http://101.43.164.214:11111'
|
||||
# 中科安信
|
||||
VITE_API_URL = 'http://8.136.222.164:8808'
|
||||
|
||||
# 打包
|
||||
VITE_ULD_API_URL = 'http://jxj.zhgdyun.com:8012/onlinePreview?url='
|
||||
|
||||
4834
package-lock.json
generated
4834
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
BIN
src/assets/images/green_flag_bg.png
Normal file
BIN
src/assets/images/green_flag_bg.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.3 KiB |
BIN
src/assets/images/warning.gif
Normal file
BIN
src/assets/images/warning.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.4 MiB |
@ -28,7 +28,7 @@ export const BASE_IMAGE_URL = import.meta.env.VITE_BASE_IMAGE_URL;
|
||||
// export const COMPANY: string = "zsbf"; //中水北方
|
||||
// export const COMPANY: string = "as"; //鞍山项目
|
||||
// export const COMPANY: string = "agjt"; //鞍钢集团
|
||||
export const COMPANY: string = "agjtCommand"; //鞍钢集团指挥部大屏
|
||||
// export const COMPANY: string = "agjtCommand"; //鞍钢集团指挥部大屏
|
||||
// export const COMPANY: string = "slx"; //苏立信项目
|
||||
// export const COMPANY: string = "hfqc"; //合肥启程项目
|
||||
// export const COMPANY: string = "jsyc"; // 江苏盐城项目
|
||||
@ -37,3 +37,4 @@ export const COMPANY: string = "agjtCommand"; //鞍钢集团指挥部大屏
|
||||
// export const COMPANY: string = "phmw"; //鄱湖美湾医疗、医美产业集群项目 (需要去src\routers\modules\staticRouter.ts更换首页)
|
||||
// export const COMPANY: string = "xjnb"; // 新建宁波项目
|
||||
// export const COMPANY: string = "ahsa"; // 安徽水安项目
|
||||
export const COMPANY: string = "zkax"; // 中科安信项目
|
||||
|
||||
@ -1320,4 +1320,27 @@ export const ZHZRFMenu: Array<any> = [
|
||||
]
|
||||
},
|
||||
|
||||
]; //中海·臻如府
|
||||
]; //中海·臻如府
|
||||
// 中科安信大屏
|
||||
export const ZKAXMenu: Array<any> = [
|
||||
{
|
||||
moduleName: "首页概览",
|
||||
modulePath: "/projectOverview"
|
||||
},
|
||||
{
|
||||
moduleName: "劳务管理",
|
||||
modulePath: "/laborManagement"
|
||||
},
|
||||
{
|
||||
moduleName: "质量管理",
|
||||
modulePath: "/qualityManagement"
|
||||
},
|
||||
{
|
||||
moduleName: "安全管理",
|
||||
modulePath: "/securityManagement"
|
||||
},
|
||||
{
|
||||
menuName: "进度计划",
|
||||
companyPath: "/schedulePlan"
|
||||
}
|
||||
];
|
||||
@ -50,12 +50,26 @@
|
||||
<span :style="statScore.radio > 0 ? 'color:#0db027' : 'color:#f77c7d'">{{ statScore.radio > 0 ? "↑" : "↓" }} </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="score-div" @click="openDialogData({ index: 9, title: '月度安全综合评分' })">
|
||||
<div :class="['score-div', statScore.total >= 80 ? 'scoreBg1':statScore.total >= 60 ? 'scoreBg2':'scoreBg3']" @click="openDialogData({ index: 9, title: '月度安全综合评分' })">
|
||||
<div class="score-part">
|
||||
<span>{{ statScore.total }}</span>
|
||||
<span>分</span>
|
||||
</div>
|
||||
<span>安全评分</span>
|
||||
<div class="scoreInner scoreTextBg1" v-if="statScore.total >= 80">
|
||||
<span style="font-size:18px">安全评分</span>
|
||||
<div class="scoreReview" >优秀</div>
|
||||
<div class="scoreStar"></div>
|
||||
</div>
|
||||
<div class="scoreInner scoreTextBg2" v-if="statScore.total >= 60 && statScore.total < 80">
|
||||
<span style="font-size:18px">安全评分</span>
|
||||
<div class="scoreReview">一般</div>
|
||||
<div class="scoreStar"></div>
|
||||
</div>
|
||||
<div class="scoreInner scoreTextBg3" v-if="statScore.total < 60">
|
||||
<span style="font-size:18px">安全评分</span>
|
||||
<div class="scoreReview">差</div>
|
||||
<div class="scoreStar"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="classify-div">
|
||||
<div class="classify-div-item" @click="openDialogData({ index: 1, title: '危大工程' })">
|
||||
@ -288,13 +302,20 @@ onMounted(async () => {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.scoreBg1{background-image: radial-gradient(circle, rgb(46, 200, 49) 0px, rgba(255, 255, 255, 0) 115px);}
|
||||
.scoreBg2{background-image: radial-gradient(circle, rgb(255,175,0) 0px, rgba(255, 255, 255, 0) 115px);}
|
||||
.scoreBg3{background-image: radial-gradient(circle, rgb(200, 46, 56) 0px, rgba(255, 255, 255, 0) 115px);}
|
||||
.scoreTextBg1{background-image: radial-gradient(circle, rgb(46, 200, 49) 0px, rgba(255, 255, 255, 0) 40px);}
|
||||
.scoreTextBg2{background-image: radial-gradient(circle, rgb(255,175,0) 0px, rgba(255, 255, 255, 0) 40px);}
|
||||
.scoreTextBg3{background-image: radial-gradient(circle, rgb(200, 46, 56) 0px, rgba(255, 255, 255, 0) 40px);}
|
||||
.centerTop {
|
||||
// background-color: darkred;
|
||||
.top-content {
|
||||
height: 100%;
|
||||
position: relative;
|
||||
background-image: url("@/assets/images/commandScreen/top-bg.png");
|
||||
background-position: center;
|
||||
// background-position: center;
|
||||
background-position: -28px;
|
||||
background-repeat: no-repeat;
|
||||
|
||||
.content-div {
|
||||
@ -386,21 +407,22 @@ onMounted(async () => {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.score-div {
|
||||
|
||||
color: white;
|
||||
position: absolute;
|
||||
// bottom: 210px;
|
||||
// left: 383px;
|
||||
width: 30%;
|
||||
height: 30%;
|
||||
bottom: 33%;
|
||||
height: 45%;
|
||||
bottom: 30%;
|
||||
left: 35.5%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
|
||||
.score-part {
|
||||
margin-top: 60px;
|
||||
span:nth-child(1) {
|
||||
font-size: 72px;
|
||||
}
|
||||
@ -414,6 +436,36 @@ onMounted(async () => {
|
||||
color: white;
|
||||
font-size: 18px;
|
||||
}
|
||||
.scoreInner{
|
||||
text-align: center;
|
||||
margin-top: -10px;
|
||||
width: 90%;
|
||||
// height: 100px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
// background-color: red;
|
||||
.scoreReview{
|
||||
opacity: 0.7;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 50px;
|
||||
// background-color: blue;
|
||||
}
|
||||
.scoreStar{
|
||||
// background-color: purple;
|
||||
// margin-top: 20px;
|
||||
width: 28%;
|
||||
height: 40px;
|
||||
background: url("@/assets/images/green_flag_bg.png") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
|
||||
transform: translateY(-20px);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.classify-div {
|
||||
|
||||
@ -69,7 +69,7 @@ const mqttMSG = () => {
|
||||
const result = JSON.parse(message);
|
||||
openPeopleCountDialog({
|
||||
index: 10,
|
||||
title: "查看",
|
||||
title: "人员呼叫",
|
||||
timeOut: 60,
|
||||
timeFlag: null,
|
||||
show: true,
|
||||
@ -90,7 +90,7 @@ onMounted(() => {
|
||||
// setTimeout(() => {
|
||||
// openPeopleCountDialog({
|
||||
// index: 10,
|
||||
// title: "查看",
|
||||
// title: "人员呼叫",
|
||||
// timeOut: 10,
|
||||
// timeFlag: null,
|
||||
// show: true,
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
<template>
|
||||
s<template>
|
||||
<div class="leftBottom">
|
||||
<div class="header">
|
||||
<div class="hLeft">项目人员考勤</div>
|
||||
@ -139,7 +139,7 @@
|
||||
<script setup lang="ts">
|
||||
import { onMounted, ref } from "vue";
|
||||
import * as echarts from "echarts";
|
||||
import ECharts from "vue-echarts";
|
||||
// import ECharts from "vue-echarts";
|
||||
import { selectQualityStatisticsApi } from "@/api/modules/projectOverview";
|
||||
import {
|
||||
getPersonTypeAndEduStatisticsApi,
|
||||
@ -311,7 +311,10 @@ function drawBar() {
|
||||
if (!attendanceRhbRate) {
|
||||
attendanceRhbRate = "--";
|
||||
} else {
|
||||
attendanceRhbRate = attendanceRhbRate + "%";
|
||||
if(attendanceRhbRate > 0) attendanceRhbRate = "<span style='color:blue;margin-right:5px'>↑</span>"+Math.abs(attendanceRhbRate)+"%"
|
||||
if(attendanceRhbRate < 0) attendanceRhbRate = "<span style='color:darkred;margin-right:5px'>↓</span>"+Math.abs(attendanceRhbRate)+"%"
|
||||
if(attendanceRhbRate == 0) attendanceRhbRate = "0%"
|
||||
// attendanceRhbRate = attendanceRhbRate + "%";
|
||||
}
|
||||
console.log(params);
|
||||
console.log(123123, projectCompanyWorkTotalList.value[params.dataIndex].attendancePersonRate);
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="ctContent" style="position: relative">
|
||||
<div id="echartsSafe" style="width: 100%; height: 100%"></div>
|
||||
<div id="echartsSafe" style="width: 100%; height: 100%;transform:translateY(-13px)"></div>
|
||||
<div class="safetext1" v-if="dataList.length != 0">状态统计(较昨日)</div>
|
||||
<div class="safetext2" v-if="dataList.length != 0">风险统计(较昨日)</div>
|
||||
<div class="notoDta" v-if="dataCode != 200">
|
||||
@ -341,7 +341,7 @@ function drawEchart() {
|
||||
type: "plain",
|
||||
orient: "vertical",
|
||||
right: "0%",
|
||||
top: "20%",
|
||||
top: "25%",
|
||||
align: "left",
|
||||
itemGap: 14,
|
||||
itemWidth: 8, // 设置宽度
|
||||
@ -409,7 +409,7 @@ function drawEchart() {
|
||||
type: "plain",
|
||||
orient: "vertical",
|
||||
left: "35%",
|
||||
top: "20%",
|
||||
top: "25%",
|
||||
align: "left",
|
||||
itemGap: 14,
|
||||
itemWidth: 8, // 设置宽度
|
||||
|
||||
@ -53,12 +53,14 @@
|
||||
<p>暂无数据</p>
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="tabList">
|
||||
|
||||
|
||||
<!-- <div class="tabList">
|
||||
<div>排名</div>
|
||||
<div v-if="activeIndex === '1' || activeIndex === '2'">姓名</div>
|
||||
<div v-if="activeIndex === '0'">分包单位</div>
|
||||
<div v-if="activeIndex === '0' || activeIndex === '2'">整改数量</div>
|
||||
<div v-if="activeIndex === '1'">发起隐患数</div>
|
||||
<div v-if="activeIndex === '0' || activeIndex === '1'">整改数量</div>
|
||||
<div v-if="activeIndex === '2'">发起隐患数</div>
|
||||
<div>整改率</div>
|
||||
<div>及时整改率</div>
|
||||
</div>
|
||||
@ -78,6 +80,81 @@
|
||||
<img src="@/assets/images/noData.png" alt="" />
|
||||
<p>暂无数据</p>
|
||||
</div>
|
||||
</div> -->
|
||||
<div v-if="activeIndex === '0'">
|
||||
<div class="tabList">
|
||||
<div>排名</div>
|
||||
<div>分包单位</div>
|
||||
<div>整改数量</div>
|
||||
<div>整改率</div>
|
||||
<div>及时整改率</div>
|
||||
</div>
|
||||
<div class="listBox">
|
||||
|
||||
<el-scrollbar>
|
||||
<div v-for="(item, index) in tabList" :key="index" class="listStyle">
|
||||
<div>{{ index + 1 }}</div>
|
||||
<div :title="item.enterpriseName">{{ item.enterpriseName }}</div>
|
||||
<div>{{ item.createDangerNum || item.rectifiedNum}}</div>
|
||||
<div>{{ item.rectifiedNumRatio }}</div>
|
||||
<div>{{ item.rectifiedNumRatioTimely }}</div>
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<div class="notoDta" v-if="tabList.length == 0">
|
||||
<img src="@/assets/images/noData.png" alt="" />
|
||||
<p>暂无数据</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="activeIndex === '1'">
|
||||
<div class="tabList">
|
||||
<div>排名</div>
|
||||
<div>姓名</div>
|
||||
<div>整改数量</div>
|
||||
<div>整改率</div>
|
||||
<div>及时整改率</div>
|
||||
</div>
|
||||
<div class="listBox">
|
||||
|
||||
<el-scrollbar>
|
||||
<div v-for="(item, index) in tabList" :key="index" class="listStyle">
|
||||
<div>{{ index + 1 }}</div>
|
||||
<div>{{ item.workerName }}</div>
|
||||
<div>{{ item.createDangerNum || item.rectifiedNum}}</div>
|
||||
<div>{{ item.rectifiedNumRatio }}</div>
|
||||
<div>{{ item.rectifiedNumRatioTimely }}</div>
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<div class="notoDta" v-if="tabList.length == 0">
|
||||
<img src="@/assets/images/noData.png" alt="" />
|
||||
<p>暂无数据</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="activeIndex === '2'">
|
||||
<div class="tabList">
|
||||
<div>排名</div>
|
||||
<div>姓名</div>
|
||||
<div>发起隐患数</div>
|
||||
<div>整改率</div>
|
||||
<div>及时整改率</div>
|
||||
</div>
|
||||
<div class="listBox">
|
||||
|
||||
<el-scrollbar>
|
||||
<div v-for="(item, index) in tabList" :key="index" class="listStyle">
|
||||
<div>{{ index + 1 }}</div>
|
||||
<div>{{ item.workerName }}</div>
|
||||
<div>{{ item.createDangerNum }}</div>
|
||||
<div>{{ item.rectifiedNumRatio }}</div>
|
||||
<div>{{ item.rectifiedNumRatioTimely }}</div>
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<div class="notoDta" v-if="tabList.length == 0">
|
||||
<img src="@/assets/images/noData.png" alt="" />
|
||||
<p>暂无数据</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -57,6 +57,7 @@
|
||||
<div v-else-if="showIndex == 10">
|
||||
<div class="list-detail" v-for="ele in mapsDetail.filter((option: any) => option.show)" :key="ele.id">
|
||||
<div :class="postData.type == 1 ? 'dialog-content' : postData.type == 2 ? 'dialog-content-show' : 'dialog-content-more'">
|
||||
<div class="warning-bg"></div>
|
||||
<div class="dialog-title">
|
||||
<!-- <div class="title-img"><img src="@/assets/images/titleIcon.png" alt="" /></div> -->
|
||||
<div class="title-text">
|
||||
@ -72,7 +73,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="political-outlook">
|
||||
<myMap :mapsDetail="ele" :key="ele.id" tip="查看"></myMap>
|
||||
<myMap :mapsDetail="ele" :key="ele.id" :tip="ele.title"></myMap>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -201,6 +202,17 @@ onMounted(async () => {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.warning-bg {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
background-image: url(@/assets/images/warning.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
position: absolute;
|
||||
top: -190px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
.flex {
|
||||
display: -webkit-box;
|
||||
}
|
||||
|
||||
@ -97,7 +97,7 @@ import ScaleBox from "vue3-scale-box";
|
||||
import { ref, reactive, onMounted, onBeforeUnmount, computed } from "vue";
|
||||
import { getTaskTimeDetail } from "@/api/modules/schedulePlan";
|
||||
import { jumpLargeUserInfoApi } from "@/api/modules/login";
|
||||
import { JSYCMenu, XJNBMenu, AHSAMenu, HFQCMenu,ASMenu,AGJTMenu,SLXMenu } from "@/config/staticMenu";
|
||||
import { JSYCMenu, XJNBMenu, AHSAMenu, HFQCMenu,ASMenu,AGJTMenu,SLXMenu,ZKAXMenu } from "@/config/staticMenu";
|
||||
import { COMPANY } from "@/config/config";
|
||||
|
||||
import { useRouter } from "vue-router";
|
||||
@ -486,7 +486,9 @@ onMounted(async () => {
|
||||
if (COMPANY === "slx") {
|
||||
menuList.value = SLXMenu;
|
||||
}
|
||||
|
||||
if (COMPANY === "zkax") {
|
||||
menuList.value = ZKAXMenu;
|
||||
}
|
||||
console.log("配置菜单", menuList.value);
|
||||
console.log("当前跳转的路由", router.currentRoute.value);
|
||||
// await getAllModelMenu();
|
||||
|
||||
@ -97,7 +97,7 @@ import ScaleBox from "vue3-scale-box";
|
||||
import { ref, reactive, onMounted, onBeforeUnmount, computed } from "vue";
|
||||
import { getTaskTimeDetail } from "@/api/modules/schedulePlan";
|
||||
import { jumpLargeUserInfoApi } from "@/api/modules/login";
|
||||
import { JSYCMenu, XJNBMenu, AHSAMenu, HFQCMenu,ASMenu,AGJTMenu,SLXMenu,ZSBFMenu,ZHZRFMenu } from "@/config/staticMenu";
|
||||
import { JSYCMenu, XJNBMenu, AHSAMenu, HFQCMenu,ASMenu,AGJTMenu,SLXMenu,ZSBFMenu,ZHZRFMenu, ZKAXMenu } from "@/config/staticMenu";
|
||||
import { COMPANY } from "@/config/config";
|
||||
|
||||
import { useRouter } from "vue-router";
|
||||
@ -492,7 +492,9 @@ onMounted(async () => {
|
||||
if (COMPANY === "zhzrf") {
|
||||
menuList.value = ZHZRFMenu;
|
||||
}
|
||||
|
||||
if (COMPANY === "zkax") {
|
||||
menuList.value = ZKAXMenu;
|
||||
}
|
||||
console.log("配置菜单", menuList.value);
|
||||
console.log("当前跳转的路由", router.currentRoute.value);
|
||||
// await getAllModelMenu();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user