对接指挥部大屏centerTop

This commit is contained in:
Vce 2024-05-12 01:52:37 +08:00
parent d984f715f8
commit 7a45df231f
3 changed files with 44 additions and 16 deletions

View File

@ -3,7 +3,9 @@ NODE_ENV = 'development'
# 本地环境接口地址(/api/index.ts文件中使用) # 本地环境接口地址(/api/index.ts文件中使用)
# 后端本地 # 后端本地
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://jxj.zhgdyun.com:61212' #杰哥远程
# VITE_API_URL = 'http://192.168.34.221:28888' # VITE_API_URL = 'http://192.168.34.221:28888'
# 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

@ -78,4 +78,12 @@ export const getAlarmRecordApi = (params: {}) => {
// 顶部数据接口 // 顶部数据接口
export const getAlarmTypeCountApi = (params: {}) => { export const getAlarmTypeCountApi = (params: {}) => {
return http.post(BASEURL + `/xmgl/aiStatistic/selectAiAnalyseHardWareAlarmTypeCount`, params, { headers: { noLoading: true } }); return http.post(BASEURL + `/xmgl/aiStatistic/selectAiAnalyseHardWareAlarmTypeCount`, params, { headers: { noLoading: true } });
};
// centerTop底部按钮显示数据接口
export const getStatsDirectorateBigScreenApi = (params: {}) => {
return http.post(BASEURL + `/xmgl/xzSecurityQualityInspectionRecord/statsDirectorateBigScreen`, params, { headers: { noLoading: true } });
};
// centerTop评分数据接口
export const getStatScoreApi = (params: {}) => {
return http.get(BASEURL + `/xmgl/xzSecurityQualityInspectionRecord/getStatScore`, params, { headers: { noLoading: true } });
}; };

View File

@ -3,70 +3,71 @@
<div class="top-content"> <div class="top-content">
<div class="content-div aq"> <div class="content-div aq">
<div class="circle-box"> <div class="circle-box">
<span>20</span> <span>{{statScore.hiddenDangerScore}}</span>
</div> </div>
<span>安全隐患治理</span> <span>安全隐患治理</span>
</div> </div>
<div class="content-div wd"> <div class="content-div wd">
<div class="circle-box"> <div class="circle-box">
<span>20</span> <span>{{statScore.dangerEngScore}}</span>
</div> </div>
<span>危大工程</span> <span>危大工程</span>
</div> </div>
<div class="content-div jy"> <div class="content-div jy">
<div class="circle-box"> <div class="circle-box">
<span>20</span> <!-- <span>{{statScore}}</span> -->
<span>25</span>
</div> </div>
<span>安全教育</span> <span>安全教育</span>
</div> </div>
<div class="content-div fx"> <div class="content-div fx">
<div class="circle-box"> <div class="circle-box">
<span>20</span> <span>{{statScore.riskScore}}</span>
</div> </div>
<span>风险管理</span> <span>风险管理</span>
</div> </div>
<div class="content-div zn"> <div class="content-div zn">
<div class="circle-box"> <div class="circle-box">
<span>20</span> <span>{{statScore.aiScore}}</span>
</div> </div>
<span>智能硬件分析</span> <span>AI警报</span>
</div> </div>
<div class="count-div"> <div class="count-div">
<div class="count-div-item"> <div class="count-div-item">
<span>上月安全综合评分</span> <span>上月安全综合评分</span>
<span>65</span> <span>{{statScore.lastMonthTotal}}</span>
<span></span> <span></span>
</div> </div>
<div class="count-div-item"> <div class="count-div-item">
<span>相较上月上升20%</span> <span>相较上月上升{{statScore.radio}}%</span>
<span></span> <span></span>
</div> </div>
</div> </div>
<div class="score-div" @click="openDialogData({index: 9, title: '月度安全综合评分'})"> <div class="score-div" @click="openDialogData({index: 9, title: '月度安全综合评分'})">
<div class="score-part"> <div class="score-part">
<span>78</span> <span>{{statScore.total}}</span>
<span></span> <span></span>
</div> </div>
<span>安全评分</span> <span>安全评分</span>
</div> </div>
<div class="classify-div"> <div class="classify-div">
<div class="classify-div-item" @click="openDialogData({index: 1, title: '危大工程'})"> <div class="classify-div-item" @click="openDialogData({index: 1, title: '危大工程'})">
<span>危大工程&nbsp;&nbsp;+20</span> <span>危大工程&nbsp;&nbsp;{{statsDirectorateBigScreen.dangerousEngineeringRecordNum}}</span>
</div> </div>
<div class="classify-div-item" @click="openDialogData({index: 2, title: '安全教育'})"> <div class="classify-div-item" @click="openDialogData({index: 2, title: '安全教育'})">
<span>安全教育&nbsp;&nbsp;+20</span> <span>安全教育&nbsp;&nbsp;{{statsDirectorateBigScreen.workerInfoAuditRecordNum}}</span>
</div> </div>
<div class="classify-div-item" @click="openDialogData({index: 3, title: '影响进度的因素'})"> <div class="classify-div-item" @click="openDialogData({index: 3, title: '影响进度的因素'})">
<span>极端恶劣天气&nbsp;&nbsp;+20</span> <span>极端恶劣天气&nbsp;&nbsp;{{statsDirectorateBigScreen.taskProgressContentNum}}</span>
</div> </div>
<div class="classify-div-item" @click="openDialogData({index: 4, title: '风险统计'})"> <div class="classify-div-item" @click="openDialogData({index: 4, title: '风险统计'})">
<span>风险统计&nbsp;&nbsp;+20</span> <span>风险统计&nbsp;&nbsp;{{statsDirectorateBigScreen.securityQualityInspectionRecordNum}}</span>
</div> </div>
<div class="classify-div-item" @click="openDialogData({index: 5, title: '安全隐患'})"> <div class="classify-div-item" @click="openDialogData({index: 5, title: '安全隐患'})">
<span>安全隐患&nbsp;&nbsp;+20</span> <span>安全隐患&nbsp;&nbsp;{{statsDirectorateBigScreen.securityQualityInspectionRecordNum}}</span>
</div> </div>
<div class="classify-div-item" @click="openDialogData({index: 6, title: 'AI警报'})"> <div class="classify-div-item" @click="openDialogData({index: 6, title: 'AI警报'})">
<span>AI警报&nbsp;&nbsp;+20</span> <span>AI警报&nbsp;&nbsp;{{statsDirectorateBigScreen.aiAnalyseHardWareAlarmRecordNum}}</span>
</div> </div>
</div> </div>
<div class="background-title"> <div class="background-title">
@ -83,6 +84,7 @@ import { GlobalStore } from "@/stores";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import { editProjectInfo, eidtProjectShowConfig, queryBySnData } from "@/api/modules/projectOverview"; import { editProjectInfo, eidtProjectShowConfig, queryBySnData } from "@/api/modules/projectOverview";
import { getStatsDirectorateBigScreenApi, getStatScoreApi } from "@/api/modules/agjtCommandApi";
import { selectLiveVideoListApi } from "@/api/modules/video"; import { selectLiveVideoListApi } from "@/api/modules/video";
import ckplayerComp from "./ckplayerComp.vue"; import ckplayerComp from "./ckplayerComp.vue";
import { COMPANY } from "@/config/config"; import { COMPANY } from "@/config/config";
@ -159,6 +161,20 @@ const getVideoList = async () => {
}, 2000); }, 2000);
} }
}; };
let statsDirectorateBigScreen = ref({} as any);
//centerTop
const getStatsDirectorateBigScreen = async () => {
const res = await getStatsDirectorateBigScreenApi({ projectSn: store.sn });
statsDirectorateBigScreen.value = res.result
};
let statScore = ref({} as any);
//centerTop
const getStatScore = async () => {
const res = await getStatScoreApi({ projectSn: store.sn });
console.log("获取项目信息6666666666666666666666666666666666", res);
statScore.value = res.result
};
function boxStyle(item: any) { function boxStyle(item: any) {
if (item.isActive) { if (item.isActive) {
@ -236,6 +252,8 @@ defineExpose({
onMounted(async () => { onMounted(async () => {
await getVideoList(); await getVideoList();
getQueryBySnData(); getQueryBySnData();
getStatsDirectorateBigScreen();
getStatScore();
}); });
</script> </script>