flx:提交作业管控模块

This commit is contained in:
Rain_ 2025-07-14 14:41:33 +08:00
parent a90ff18543
commit 9c4a83d943
24 changed files with 1770 additions and 5 deletions

View File

@ -4,8 +4,8 @@ NODE_ENV = 'development'
# 本地环境接口地址(/api/index.ts文件中使用)
# 后端本地
# VITE_API_URL = 'http://192.168.34.155:28890' #彭杰鞍钢本地
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.155:19111'
VITE_API_URL = 'http://192.168.34.221:8111' #雄哥本地
# VITE_API_URL = 'http://192.168.34.221:19112' #雄哥本地
# VITE_API_URL = 'http://192.168.34.221:28890' #雄哥本地
# VITE_API_URL = 'http://182.90.224.237:51234' #雄哥远程

11
package-lock.json generated
View File

@ -28,6 +28,7 @@
"element-china-area-data": "^5.0.2",
"element-plus": "^2.2.30",
"ezuikit-js": "^7.7.8",
"hls.js": "^1.6.7",
"jquery": "^3.7.1",
"jquery-ui": "^1.13.2",
"jquery-ui-dist": "^1.13.2",
@ -8912,6 +8913,11 @@
"xtend": "~4.0.1"
}
},
"node_modules/hls.js": {
"version": "1.6.7",
"resolved": "https://registry.npmmirror.com/hls.js/-/hls.js-1.6.7.tgz",
"integrity": "sha512-QW2fnwDGKGc9DwQUGLbmMOz8G48UZK7PVNJPcOUql1b8jubKx4/eMHNP5mGqr6tYlJNDG1g10Lx2U/qPzL6zwQ=="
},
"node_modules/homedir-polyfill": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
@ -23322,6 +23328,11 @@
}
}
},
"hls.js": {
"version": "1.6.7",
"resolved": "https://registry.npmmirror.com/hls.js/-/hls.js-1.6.7.tgz",
"integrity": "sha512-QW2fnwDGKGc9DwQUGLbmMOz8G48UZK7PVNJPcOUql1b8jubKx4/eMHNP5mGqr6tYlJNDG1g10Lx2U/qPzL6zwQ=="
},
"homedir-polyfill": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",

View File

@ -40,6 +40,7 @@
"element-china-area-data": "^5.0.2",
"element-plus": "^2.2.30",
"ezuikit-js": "^7.7.8",
"hls.js": "^1.6.7",
"jquery": "^3.7.1",
"jquery-ui": "^1.13.2",
"jquery-ui-dist": "^1.13.2",

View File

@ -0,0 +1,32 @@
import http from "@/api";
const BASEURL = import.meta.env.VITE_API_URL;
// 统计工作票
export const getWorkTicketCountWorkTicketApi = (params: {}) => {
return http.post(BASEURL + `/xmgl/workTicket/countWorkTicket`, params);
};
// 分页列表查询工作票信息
export const getWorkTicketPageApi = (params: {}) => {
return http.get(BASEURL + `/xmgl/workTicket/page`, params);
};
// 树形分页列表查询工作票类型信息
export const getWorkTicketTypeTreePageApi = (params: {}) => {
return http.get(BASEURL + `/xmgl/workTicketType/tree/page`, params);
};
// 通过id查询工作票信息
export const getWorkTicketQueryByIdApi = (params: {}) => {
return http.get(BASEURL + `/xmgl/workTicket/queryById`, params);
};
// 列表查询工作票历史记录信息
export const getWorkTicketHistoryListApi = (params: {}) => {
return http.get(BASEURL + `/xmgl/workTicketHistory/list`, params);
};
// 根据itemId查询视频播放url
export const getVideoItemInfoPoliceCameraItemApi = (params: {}) => {
return http.post(BASEURL + `/xmgl/policeCameraItem/getVideoItemInfo`, params);
};
// 分页列表查询执法记录仪设备列表信息
export const getPoliceCameraItemPageApi = (params: {}) => {
return http.get(BASEURL + `/xmgl/policeCameraItem/page`, params);
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 678 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

View File

@ -112,6 +112,11 @@ export const staticRouter: RouteRecordRaw[] = [
name: "工程概况-2",
component: () => import("@/views/sevenLargeScreen/comprehensiveManage/projectOverviewL/index.vue")
},
{
path: "/homeworkControlProcess",
name: "作业过程管控",
component: () => import("@/views/sevenLargeScreen/homeworkControlProcess/index.vue")
},
// {
// path: "/projectOverviewer",
// name: "工程概况-1",

View File

@ -465,7 +465,7 @@ const getList = async () => {
const res = await getCurrentDayAirQualityApi({ projectSn: store.sn });
console.log("获取环境监测数据", res);
if (res.result) {
analysisData.value = res.result.analysisData;
analysisData.value = res.result.analysisData ? res.result.analysisData : "";
}
drawChart();
};

View File

@ -461,7 +461,7 @@ const getList = async () => {
console.log("获取环境监测数据", res);
if (res.result) {
analysisType.value = res.result.analysisType;
analysisData.value = res.result.analysisData;
analysisData.value = res.result.analysisData ? res.result.analysisData : "";
}
console.log("analysisType", analysisType.value);
console.log("analysisData", analysisData.value);

View File

@ -0,0 +1,72 @@
<template>
<div class="hls-player">
<video
ref="video"
:controls="controls"
:autoplay="autoplay"
:muted="muted"
:poster="poster"
style="width: 100%; height: 100%"
playsinline
webkit-playsinline
></video>
</div>
</template>
<script>
import Hls from "hls.js";
export default {
name: "HlsPlayer",
props: {
src: { type: String, required: true },
controls: { type: Boolean, default: true },
autoplay: { type: Boolean, default: false },
muted: { type: Boolean, default: false },
poster: { type: String, default: "" },
},
data() {
return {
hls: null,
};
},
mounted() {
this.initPlayer();
},
beforeDestroy() {
this.destroyPlayer();
},
watch: {
src(newVal) {
this.initPlayer();
},
},
methods: {
initPlayer() {
this.destroyPlayer();
const video = this.$refs.video;
if (Hls.isSupported()) {
this.hls = new Hls();
this.hls.loadSource(this.src);
this.hls.attachMedia(video);
} else if (video.canPlayType("application/vnd.apple.mpegurl")) {
video.src = this.src;
}
},
destroyPlayer() {
if (this.hls) {
this.hls.destroy();
this.hls = null;
}
},
},
};
</script>
<style scoped>
.hls-player {
width: 100%;
height: 100%;
background: #000;
}
</style>

File diff suppressed because it is too large Load Diff

View File

@ -461,7 +461,7 @@ const getList = async () => {
console.log("获取环境监测数据", res);
if (res.result) {
analysisType.value = res.result.analysisType;
analysisData.value = res.result.analysisData;
analysisData.value = res.result.analysisData ? res.result.analysisData : "";
}
console.log("analysisType", analysisType.value);
console.log("analysisData", analysisData.value);