diff --git a/.env.development b/.env.development index 0ebd414..ac7d406 100644 --- a/.env.development +++ b/.env.development @@ -4,7 +4,7 @@ NODE_ENV = 'development' # 本地环境接口地址(/api/index.ts文件中使用) # 后端本地 # 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://192.168.34.221:28889' # VITE_API_URL = 'http://121.196.214.246/api' diff --git a/src/api/modules/agjtOverviewApi.ts b/src/api/modules/agjtOverviewApi.ts index 9794ec8..e2f5171 100644 --- a/src/api/modules/agjtOverviewApi.ts +++ b/src/api/modules/agjtOverviewApi.ts @@ -20,7 +20,21 @@ export const videoFullCountFullApi = (params: {}, showLoading: boolean) => { export const getStatByStateApi = (params: {}, showLoading: boolean) => { return http.get(BASEURL + `/xmgl/xzFlow/getStatByState`, params, { headers: { noLoading: showLoading } }); }; - +// 审批数据汇总详情 export const getStatDetailByStateApi = (params: {}, showLoading: boolean) => { return http.get(BASEURL + `/xmgl/xzFlow/getStatDetailByState`, params, { headers: { noLoading: showLoading } }); }; + +// 获取企业数据统计 +export const getEnterpriseInfoListApi = (params: {}, showLoading: boolean) => { + return http.post(BASEURL + `/xmgl/enterpriseInfo/list`, params, { headers: { noLoading: showLoading } }); +}; +// 获取数据统计总数 +export const getStatsEnterpriseWeekApi = (params: {}, showLoading: boolean) => { + return http.post(BASEURL + `/xmgl/enterpriseInfo/statsEnterpriseWeek`, params, { headers: { noLoading: showLoading } }); +}; + +// 区域人员数量分析 +export const getCountWorkerNumByRegionApi = (params: {}, showLoading: boolean) => { + return http.post(BASEURL + `/xmgl/safetyHatData/countWorkerNumByRegion`, params, { headers: { noLoading: showLoading } }); +}; diff --git a/src/routers/modules/staticRouter.ts b/src/routers/modules/staticRouter.ts index de898ea..1ac7204 100644 --- a/src/routers/modules/staticRouter.ts +++ b/src/routers/modules/staticRouter.ts @@ -24,9 +24,9 @@ export const staticRouter: RouteRecordRaw[] = [ { path: "/large", name: "大屏", - component: () => import("@/views/sevenLargeScreen/indexL.vue"), //七参数标准版 + // component: () => import("@/views/sevenLargeScreen/indexL.vue"), //七参数标准版 // component: () => import("@/views/commandScreen/indexCommand.vue"), //指挥部大屏 - // component: () => import("@/views/agjtLiveScreen/indexLive.vue"), //鞍钢现场大屏 + component: () => import("@/views/agjtLiveScreen/indexLive.vue"), //鞍钢现场大屏 // component: () => import("@/views/overviewScreen/indexCommand.vue"), //总览大屏 // component: () => import("@/views/agjtProjectKanban/indexL.vue"), //鞍钢集团项目看板大屏 // component: () => import("@/views/sevenLargeScreen/indexL_syhy.vue"), // 只有一级路由(盘锦、嘉兴、鄱湖美湾医疗项目需切换至该首页) diff --git a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerBottom.vue b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerBottom.vue index 25de491..726ba9c 100644 --- a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerBottom.vue +++ b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerBottom.vue @@ -9,23 +9,23 @@
未履职人员 - {{performanceAnalysisObj.notPerformNum || 0}}/{{performanceAnalysisObj.inServiceNum || 0}} + {{ performanceAnalysisObj.notPerformNum || 0 }}/{{ performanceAnalysisObj.inServiceNum || 0 }}
项目经理 - {{performanceAnalysisObj.xmjlNotPerformNum || 0}}/{{performanceAnalysisObj.xmjlInServiceNum || 0}} + {{ performanceAnalysisObj.xmjlNotPerformNum || 0 }}/{{ performanceAnalysisObj.xmjlInServiceNum || 0 }}
安全员 - {{performanceAnalysisObj.aqyNotPerformNum || 0}}/{{performanceAnalysisObj.aqyInServiceNum || 0}} + {{ performanceAnalysisObj.aqyNotPerformNum || 0 }}/{{ performanceAnalysisObj.aqyInServiceNum || 0 }}
质量员 - {{performanceAnalysisObj.zlyNotPerformNum || 0}}/{{performanceAnalysisObj.zlyInServiceNum || 0}} + {{ performanceAnalysisObj.zlyNotPerformNum || 0 }}/{{ performanceAnalysisObj.zlyInServiceNum || 0 }}
监理 - {{performanceAnalysisObj.jlNotPerformNum || 0}}/{{performanceAnalysisObj.jlInServiceNum || 0}} + {{ performanceAnalysisObj.jlNotPerformNum || 0 }}/{{ performanceAnalysisObj.jlInServiceNum || 0 }}
@@ -42,11 +42,11 @@
{{ item.enterpriseName || "" }}
-
{{item.notPerformNum || 0}}/{{item.inServiceNum || 0}}
-
{{item.xmjlNotPerformNum || 0}}/{{item.xmjlInServiceNum || 0}}
-
{{item.aqyNotPerformNum || 0}}/{{item.aqyInServiceNum || 0}}
-
{{item.zlyNotPerformNum || 0}}/{{item.zlyInServiceNum || 0}}
-
{{item.jlNotPerformNum || 0}}/{{item.jlInServiceNum || 0}}
+
{{ item.notPerformNum || 0 }}/{{ item.inServiceNum || 0 }}
+
{{ item.xmjlNotPerformNum || 0 }}/{{ item.xmjlInServiceNum || 0 }}
+
{{ item.aqyNotPerformNum || 0 }}/{{ item.aqyInServiceNum || 0 }}
+
{{ item.zlyNotPerformNum || 0 }}/{{ item.zlyInServiceNum || 0 }}
+
{{ item.jlNotPerformNum || 0 }}/{{ item.jlInServiceNum || 0 }}
@@ -60,15 +60,15 @@
低风险 - {{statsEnterpriseRiskObj.lowRiskNum}} + {{ statsEnterpriseRiskObj.lowRiskNum }}
中风险 - {{statsEnterpriseRiskObj.mediumRiskNum}} + {{ statsEnterpriseRiskObj.mediumRiskNum }}
高风险 - {{statsEnterpriseRiskObj.highRiskNum}} + {{ statsEnterpriseRiskObj.highRiskNum }}
@@ -107,34 +107,34 @@ import { performanceAnalysisApi, statsEnterpriseRiskApi } from "@/api/modules/ag const store = GlobalStore(); const activeTab = ref(0); const performanceAnalysisObj = ref({ - aqyInServiceNum:0, - aqyNotPerformNum:0, - enterpriseName:0, - inServiceNum:0, - jlInServiceNum:0, - jlNotPerformNum:0, - notPerformNum:0, - xmjlInServiceNum:0, - xmjlNotPerformNum:0, - zlyInServiceNum:0, - zlyNotPerformNum:0 -}) -const performanceAnalysisList = ref([] as any) + aqyInServiceNum: 0, + aqyNotPerformNum: 0, + enterpriseName: 0, + inServiceNum: 0, + jlInServiceNum: 0, + jlNotPerformNum: 0, + notPerformNum: 0, + xmjlInServiceNum: 0, + xmjlNotPerformNum: 0, + zlyInServiceNum: 0, + zlyNotPerformNum: 0 +}); +const performanceAnalysisList = ref([] as any); const statsEnterpriseRiskObj = ref({ lowRiskNum: 0, mediumRiskNum: 0, highRiskNum: 0 -}) -const statsEnterpriseRiskList = ref([] as any) +}); +const statsEnterpriseRiskList = ref([] as any); // tab切换 -const activeChange = (index:any) => { +const activeChange = (index: any) => { activeTab.value = index; - if(index == 0){ - performanceAnalysisFn(true) + if (index == 0) { + performanceAnalysisFn(true); } else { - statsEnterpriseRiskFn(true) + statsEnterpriseRiskFn(true); } -} +}; // 人员情况 const performanceAnalysisFn = async (showLoading: boolean) => { const res: any = await performanceAnalysisApi( @@ -165,13 +165,13 @@ const statsEnterpriseRiskFn = async (showLoading: boolean) => { lowRiskNum: 0, mediumRiskNum: 0, highRiskNum: 0 - } - statsEnterpriseRiskList.value.map((item:any) => { - dealData.lowRiskNum += item.lowRiskNum - dealData.mediumRiskNum += item.mediumRiskNum - dealData.highRiskNum += item.highRiskNum - }) - statsEnterpriseRiskObj.value = dealData + }; + statsEnterpriseRiskList.value.map((item: any) => { + dealData.lowRiskNum += item.lowRiskNum; + dealData.mediumRiskNum += item.mediumRiskNum; + dealData.highRiskNum += item.highRiskNum; + }); + statsEnterpriseRiskObj.value = dealData; } }; onMounted(async () => { diff --git a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerTop.vue b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerTop.vue index 407ac48..9217c3c 100644 --- a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerTop.vue +++ b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/centerTop.vue @@ -88,13 +88,16 @@ const configWeekVideoListFn = async (showLoading: boolean) => { // 星期参数 const today = moment().format("d"); const weekParamsKey = ["sun", "mon", "tues", "wed", "thur", "fri", "sat"]; - projectData.value.videoUrl = res.result[0][weekParamsKey[+today]]; + projectData.value.videoUrl = res.result.length > 0 && res.result[0][weekParamsKey[+today]]; } }; const getVideoList = async () => { - let res: any = await selectLiveVideoListApi({ - projectSn: store.sn - }); + let res: any = await selectLiveVideoListApi( + { + projectSn: store.sn + }, + false + ); console.log(res, "445566"); if (res.result && res.result.extend1) { videoList.value = JSON.parse(res.result.extend1).result.videoList; @@ -116,7 +119,7 @@ const getVideoList = async () => { onMounted(async () => { if (COMPANY !== "agjt") showVideo.value = 2; await getVideoList(); - await configWeekVideoListFn(true); + configWeekVideoListFn(true); }); diff --git a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/index.vue b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/index.vue index 6e4be31..aaa67fa 100644 --- a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/index.vue +++ b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/index.vue @@ -10,10 +10,11 @@
- +
+ @@ -26,16 +27,23 @@ import centerBottom from "./centerBottom.vue"; import rightTop from "./rightTop.vue"; import rightCenter from "./rightCenter.vue"; import rightBottom from "./rightBottom.vue"; +import dataDialog from "@/views/commandScreen/dialogCompnnents/data-dialog.vue"; import { GlobalStore } from "@/stores"; -const store = GlobalStore(); import { getWorkerStatisticsCountApi, getProjectDetail } from "@/api/modules/projectOverview"; -import { ref, onMounted, onBeforeUnmount,nextTick } from "vue"; +import { ref, onMounted, onBeforeUnmount, nextTick } from "vue"; +const store = GlobalStore(); const statisticsCount = ref(null as any); - +// 弹窗 +const partyBuildRef = ref(); +const openPeopleCountDialog = (index: any) => { + console.log("~~~~~~~~~~~~~~", index); + partyBuildRef.value.openDialog(index); + // console.log(partyBuildRef.value); +}; const projectData = ref(null as any); //获取项目信息 const getProjectInfo = async () => { - const res = await getProjectDetail({ projectSn: store.sn }); + const res = await getProjectDetail({ projectSn: store.sn }, false); // console.log("获取项目信息", res); // console.log("获取工程类别", projectTypeEnum); projectData.value = res.result; @@ -54,39 +62,39 @@ const rightTopRef = ref(); const rightCenterRef = ref(); const rightBottomRef = ref(); const callChildFn = async () => { - nextTick( async ()=>{ - leftTopRef.value.projectTypeEnum() - centerTopRef.value.getQueryBySnData() - centerBottomRef.value.getProgressOption() - rightTopRef.value.getSafeInfo() - rightCenterRef.value.qualityInfo() - rightBottomRef.value.getList() - }) -} + nextTick(async () => { + leftTopRef.value.projectTypeEnum(); + centerTopRef.value.getQueryBySnData(); + centerBottomRef.value.getProgressOption(); + rightTopRef.value.getSafeInfo(); + rightCenterRef.value.qualityInfo(); + rightBottomRef.value.getList(); + }); +}; //定时器 const interval = ref(null as any); //定时调用 const startInterval = async () => { - interval.value= setInterval(() => { + interval.value = setInterval(() => { getPersonDetail(); getProjectInfo(); callChildFn(); }, 30 * 1000); -} +}; // 在组件销毁时清除 interval const destroyInterval = () => { if (interval.value) { clearInterval(interval.value); - } -} + } +}; // 在组件销毁时调用 destroyInterval 方法清除 interval onBeforeUnmount(() => { destroyInterval(); -}) -window.onbeforeunload = (e) => { +}); +window.onbeforeunload = () => { destroyInterval(); -} -onMounted( async () => { +}; +onMounted(async () => { getPersonDetail(); getProjectInfo(); // startInterval(); @@ -97,19 +105,24 @@ onMounted( async () => { width: 100%; height: 100%; display: flex; + .left { width: 26%; + .leftTop { height: 32%; } + .leftCenter { height: 33%; margin: 3% 0 3% 0; } + .leftBottom { height: 32%; } } + .center { width: 46%; margin: 0 1%; @@ -118,20 +131,24 @@ onMounted( async () => { height: 66%; margin-bottom: 2.1%; } + .centerBottom { height: 32%; } } + .right { width: 26%; .rightTop { height: 32%; } + .rightCenter { height: 33%; margin: 3% 0 3% 0; } + .rightBottom { height: 32%; } diff --git a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/leftCenter.vue b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/leftCenter.vue index eed70d2..9edbacf 100644 --- a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/leftCenter.vue +++ b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/leftCenter.vue @@ -234,7 +234,7 @@ const drawTwoEchart = () => { top: "20%", // bottom: "12%", align: "left", - itemGap: 10, + itemGap: 12, itemWidth: 30, // 设置宽度 itemHeight: 9, // 设置高度 symbolKeepAspect: false, diff --git a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightBottom.vue b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightBottom.vue index 8395bc8..02cf778 100644 --- a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightBottom.vue +++ b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightBottom.vue @@ -3,7 +3,7 @@
-
+
{{ item.dangerItemContent }}
整改结果: @@ -23,7 +23,7 @@
检查日期: - {{item.inspectTime || ""}} + {{ item.inspectTime || "" }}
@@ -62,7 +62,8 @@ const getXzSecurityQualitylnspectionRecordlist = async (tip: any) => { const res: any = await getXzSecurityQualitylnspectionRecordlistApi({ pageNo: tip == "search" ? 1 : pageNo.value, pageSize: 10, - projectSn: store.sn + projectSn: store.sn, + status: 60 }); if (tip == "more") { const newResult = res.result.page.records.map((item: any) => { diff --git a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightCenter.vue b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightCenter.vue index 641e2e2..7ad7806 100644 --- a/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightCenter.vue +++ b/src/views/agjtProjectKanban/comprehensiveManage/projectOverview/rightCenter.vue @@ -1,42 +1,44 @@