add:新增功能

This commit is contained in:
闫世杰 2025-01-13 17:30:22 +08:00
parent 15cedb056f
commit 4f1c730a88
18 changed files with 701 additions and 167 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/images/flow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 916 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 709 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

BIN
src/assets/images/norm.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -2,7 +2,7 @@ import axios from "axios";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import tools from "@/utils/tools"; import tools from "@/utils/tools";
import router from "../router"; import router from "../router";
axios.defaults.baseURL = 'https://jzzf.longyou.gov.cn:998/' // axios.defaults.baseURL = 'https://jzzf.longyou.gov.cn:998/'
axios.defaults.timeout = 120000; axios.defaults.timeout = 120000;

View File

@ -7,7 +7,8 @@
:show-close="false" :show-close="false"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
> @close="closeDialog"
>
<template #header="{ close, titleId, titleClass }"> <template #header="{ close, titleId, titleClass }">
<div class="my-header"> <div class="my-header">
<el-icon size="26" color="#fff" @click="closeDialog"> <el-icon size="26" color="#fff" @click="closeDialog">
@ -22,20 +23,17 @@
<img <img
src="@/assets/images/table_l.png" src="@/assets/images/table_l.png"
alt="" alt=""
style="margin-right: 10px" style="margin-right: 10px" />
/>
<div class="name">{{ data.title }}</div> <div class="name">{{ data.title }}</div>
<img <img
src="@/assets/images/table_r.png" src="@/assets/images/table_r.png"
alt="" alt=""
style="margin-left: 10px" style="margin-left: 10px" />
/>
</div> </div>
<img <img
class="title_botton" class="title_botton"
src="@/assets/images/table_c.png" src="@/assets/images/table_c.png"
alt="" alt="" />
/>
</div> </div>
</div> </div>
<div <div
@ -46,15 +44,13 @@
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
" ">
>
<video <video
id="videoPlayer" id="videoPlayer"
class="video-js vjs-default-skin" class="video-js vjs-default-skin"
controls controls
playsinline playsinline
autoplay="autoplay" autoplay="autoplay">
>
<source :src="attachmentLink" type="application/x-mpegURL" /> <source :src="attachmentLink" type="application/x-mpegURL" />
</video> </video>
</div> </div>
@ -119,14 +115,16 @@ watch(
// if (hlsUriSslNow.value != "" && props.hlsUriSsl != hlsUriSslNow.value) // if (hlsUriSslNow.value != "" && props.hlsUriSsl != hlsUriSslNow.value)
cameraShow.value = newVal; cameraShow.value = newVal;
hlsUriSslNow.value = props.hlsUriSsl; hlsUriSslNow.value = props.hlsUriSsl;
data.title = maskName(props.sxtname); data.title = maskName(props.sxtname);
attachmentLink.value = hlsUriSslNow.value; attachmentLink.value = hlsUriSslNow.value;
dp.value = null; dp.value = null;
//dom //dom
if (num.value) { if (num.value) {
// console.log(22222, document.getElementById("videoBox")); // console.log(22222, document.getElementById("videoBox"));
insertVideo(); nextTick(() => {
insertVideo();
});
} }
nextTick(() => { nextTick(() => {
setTimeout(() => { setTimeout(() => {

View File

@ -0,0 +1,219 @@
<template>
<div class="dialogPage">
<el-dialog
v-model="show"
width="80vw"
:show-close="false"
center
:close-on-click-modal="false"
:close-on-press-escape="false">
<template #header="{}">
<div class="my-header">
<el-icon size="26" color="#fff" @click="onClose">
<CircleCloseFilled />
</el-icon>
</div>
</template>
<div class="tabelPart">
<div class="bo">
<div class="title">
<div class="title_top">
<img
src="@/assets/images/table_l.png"
alt=""
style="margin-right: 10px" />
<div class="name">{{ title }}</div>
<img
src="@/assets/images/table_r.png"
alt=""
style="margin-left: 10px" />
</div>
<img
class="title_botton"
src="@/assets/images/table_c.png"
alt="" />
</div>
</div>
<div class="tabel-part-box">
<slot></slot>
</div>
</div>
</el-dialog>
</div>
</template>
<script setup>
import { defineProps, computed } from "vue";
import { CircleCloseFilled } from "@element-plus/icons-vue";
const emit = defineEmits(["update:show"]);
const props = defineProps({
show: {
type: Boolean,
default: () => {
return false;
},
},
title: {
type: String,
default: () => {
return "";
},
},
});
const show = computed({
get() {
return props.show;
},
set(val) {
emit("update:show", val);
},
});
const onClose = () => {
show.value = false;
};
</script>
<style lang="scss" scoped>
:deep(.el-dialog) {
--el-dialog-bg-color: none;
--el-dialog-width: 76% !important;
margin: 11vh auto !important;
}
.my-header {
display: flex;
flex-direction: row-reverse;
}
.tabelPart {
padding: 16px;
padding-bottom: 5px;
background: linear-gradient(
270deg,
rgba(0, 77, 131, 0.69) 0%,
rgba(0, 51, 83, 0.77) 50%,
rgba(0, 77, 131, 0.74) 100%
),
radial-gradient(
66% 40% at 50% 0%,
rgba(1, 150, 243, 0.55) 0%,
rgba(0, 116, 255, 0) 100%
);
box-shadow: inset 0px 0px 56px 0px rgba(100, 191, 255, 0.5);
border: 2px solid;
border-image: linear-gradient(
180deg,
rgba(21, 150, 255, 1),
rgba(0, 157, 227, 0)
)
2 2;
:deep(.el-table) {
--el-table-bg-color: none;
--el-table-tr-bg-color: none;
--el-table-header-bg-color: none;
background: none;
border: none;
--el-table-text-color: #fff;
--el-table-header-text-color: #fff;
}
// :deep(.el-table th) {
// text-align: center;
// }
.tabel-part-box {
margin: 30px 50px 50px;
padding: 26px;
min-height: 300px;
max-height: 56vh;
background: rgba(70, 114, 171, 0.36);
color: #fff;
font-family: PingFangSC, PingFang SC;
font-weight: 500;
font-size: 16px;
color: #ffffff;
line-height: 1.6;
letter-spacing: 3px;
overflow: auto;
&::-webkit-scrollbar {
display: none;
}
}
}
.pagePart {
height: 40px;
display: flex;
align-items: center;
justify-content: center;
:deep(.el-pagination) {
--el-pagination-button-disabled-bg-color: none;
--el-pagination-bg-color: none;
--el-pagination-button-bg-color: none;
--el-pagination-button-color: #fff;
color: #fff;
}
:deep(.el-pagination button:disabled) {
background-color: rgba(0, 116, 255, 0) !important;
}
:deep(.el-pagination > .is-last) {
color: #ffffff;
}
}
.bo {
width: 100%;
display: flex;
}
.title {
margin: 0px auto;
display: flex;
flex-direction: column;
&_top {
display: flex;
align-items: end;
justify-content: center;
img {
height: 33px;
width: 33px;
}
.name {
font-family: PangMenZhengDao, PangMenZhengDao;
font-weight: 600;
font-size: 22px;
color: #ffffff;
line-height: 27px;
text-align: center;
font-style: normal;
letter-spacing: 2px;
background: linear-gradient(180deg, #ffffff 0%, #51ffef 100%);
-webkit-background-clip: text;
/*将设置的背景颜色限制在文字中*/
-webkit-text-fill-color: transparent;
/*给文字设置成透明*/
}
}
&_botton {
margin-top: 5px;
height: 19px;
}
}
.custom-table-font {
font-size: 15px;
}
:deep(.el-table:not(.el-table--border) .el-table__cell) {
padding: 3px 0px;
}
:deep(.el-pagination) {
transform: scale(0.8);
}
:deep(.el-overlay-dialog) {
bottom: 0 !important;
overflow: hidden !important;
}
</style>

View File

@ -40,6 +40,16 @@ import j8_map from "@/assets/images/map/j8_map.png";
import j9_map from "@/assets/images/map/j9_map.png"; import j9_map from "@/assets/images/map/j9_map.png";
import j10_map from "@/assets/images/map/j10_map.png"; import j10_map from "@/assets/images/map/j10_map.png";
import j11_map from "@/assets/images/map/j11_map.png"; import j11_map from "@/assets/images/map/j11_map.png";
import xhyld from "@/assets/images/map/xhyld.png"
import gxjs from "@/assets/images/map/gxjs.png"
import gxst from "@/assets/images/map/gxst.png"
import js_grade_school from "@/assets/images/map/js_grade_school.png"
import js_high_school from "@/assets/images/map/js_high_school.png"
import js_junior_high from "@/assets/images/map/js_junior_high.png"
import js_kindergarten from "@/assets/images/map/js_kindergarten.png"
import js_gx from "@/assets/images/map/js_gx.png"
import zcd_map from "@/assets/images/map/zcd_map.png"
import st_map from "@/assets/images/map/st_map.png"
export { export {
zcd, zcd,
dqfwzx, dqfwzx,
@ -57,6 +67,9 @@ export {
whlt, whlt,
njsw, njsw,
xxg, xxg,
xhyld,
gxjs,
gxst,
j0, j0,
j1, j1,
j2, j2,
@ -83,4 +96,9 @@ export {
xqwy_map, xqwy_map,
cjrzj_map, cjrzj_map,
bmfwzx_map, bmfwzx_map,
js_grade_school,
js_high_school,
js_junior_high,
js_kindergarten, js_gx, zcd_map,
st_map
} }

File diff suppressed because it is too large Load Diff