Browse Source

Merge branch 'develop' of http://39.106.31.193:9211/mengff/jihe-hs into develop

wangqin
hui 1 year ago
parent
commit
36299c577b
  1. 13
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/DrivingGuidance/components/DeviceControlDialog.vue
  2. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/DrivingGuidance/index.vue
  3. 141
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/InfoBoard/index.vue
  4. 7
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue
  5. 106
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js
  6. 4
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/httpList.js
  7. 56
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/index.vue

13
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/DrivingGuidance/components/DeviceControlDialog.vue

@ -143,10 +143,7 @@ export default {
handler(bool) { handler(bool) {
if (!bool) return; if (!bool) return;
request({ request.post(`business/device/functions/${this.deviceId}/${52}`, {})
url: `business/device/functions/${this.deviceId}/${51}`,
method: "post",
})
.then(async (result) => { .then(async (result) => {
if (result.code != 200) return; if (result.code != 200) return;
@ -154,7 +151,7 @@ export default {
const formData = this.$refs.FormConfigRef?.formData; const formData = this.$refs.FormConfigRef?.formData;
const data = result.data; const data = result.data[0];
switch (data.mode) { switch (data.mode) {
case "00": case "00":
@ -204,11 +201,7 @@ export default {
* *
* https://www.showdoc.com.cn/2450725213006196/10877717880262686 * https://www.showdoc.com.cn/2450725213006196/10877717880262686
*/ */
request({ request.post(`business/device/functions/${this.deviceId}/${functionId}`, result)
url: `business/device/functions/${this.deviceId}/${functionId}`,
method: "post",
params: result,
})
.then((result) => { .then((result) => {
if (result.code != 200) return Message.error(`设备操作失败!`); if (result.code != 200) return Message.error(`设备操作失败!`);

2
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/DrivingGuidance/index.vue

@ -15,7 +15,7 @@
</div> </div>
</div> </div>
<DeviceControlDialog v-model="deviceControlVisible" :deviceId="dialogData.iotDeviceId" /> <DeviceControlDialog v-model="deviceControlVisible" :deviceId="dialogData.iotDeviceId || '8697-1'" />
</Dialog> </Dialog>
</template> </template>

141
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/InfoBoard/index.vue

@ -1,5 +1,5 @@
<template> <template>
<div> <div class="mask">
<transition> <transition>
<div v-if="visible" class="dialog_info"> <div v-if="visible" class="dialog_info">
<div class="dialog_info_left"> <div class="dialog_info_left">
@ -179,7 +179,7 @@ import { getTemplateList } from '@/api/board/template'
export default { export default {
name: 'InfoBoard', name: 'InfoBoard',
data(){ data() {
return { return {
dialogTit: '门架式可变信息标志YK16+270', dialogTit: '门架式可变信息标志YK16+270',
isShowTemplate: false, isShowTemplate: false,
@ -204,8 +204,8 @@ export default {
{ id: 1005, bt: '突发事件', mbList: [{ id: 309, txt: '救援 拨打96659', w: 768, h: 160, col: '#FFFF00', fz: 60, pdl: 0, pdt: 0, fm: '黑体' }] }, { id: 1005, bt: '突发事件', mbList: [{ id: 309, txt: '救援 拨打96659', w: 768, h: 160, col: '#FFFF00', fz: 60, pdl: 0, pdt: 0, fm: '黑体' }] },
{ id: 1006, bt: '警情播报', mbList: [{ id: 309, txt: '救援 拨打96659', w: 768, h: 160, col: '#FFFF00', fz: 60, pdl: 0, pdt: 0, fm: '黑体' }] } { id: 1006, bt: '警情播报', mbList: [{ id: 309, txt: '救援 拨打96659', w: 768, h: 160, col: '#FFFF00', fz: 60, pdl: 0, pdt: 0, fm: '黑体' }] }
], ],
activeNames:[1001 , 1002], activeNames: [1001, 1002],
activeTab:"first", activeTab: "first",
moBanDataList: [{ moBanDataList: [{
dictCode: 1001, dictCode: 1001,
dictLabel: "日常通用", dictLabel: "日常通用",
@ -217,9 +217,9 @@ export default {
{ {
content: "谨慎驾驶 注意安全", content: "谨慎驾驶 注意安全",
formatStyle: 0, formatStyle: 0,
fontSize:"24", fontSize: "24",
fontType:"微软雅黑", fontType: "微软雅黑",
fontColor:"0000FF" fontColor: "0000FF"
} }
] ]
} }
@ -273,10 +273,10 @@ export default {
{ id: 5002, txt: '光圈', numL: 16, numR: 15 }, { id: 5002, txt: '光圈', numL: 16, numR: 15 },
{ id: 5003, txt: '聚焦', numL: 14, numR: 13 } { id: 5003, txt: '聚焦', numL: 14, numR: 13 }
], ],
showEmit:false, showEmit: false,
selectedBdMsg:[], selectedBdMsg: [],
selectedSize:"", selectedSize: "",
editDialog: { editDialog: {
mode: "", mode: "",
type: "", type: "",
@ -284,22 +284,22 @@ export default {
tpl: {} tpl: {}
}, },
scrollOptions, scrollOptions,
templateAvailable:null, templateAvailable: null,
tplCategory: [], // tplCategory: [], //
templateAll:[] templateAll: []
} }
}, },
props:{ props: {
visible:{ visible: {
type:Boolean, type: Boolean,
default:false default: false
}, },
device: { device: {
type:Object, type: Object,
default:null default: null
} }
}, },
watch:{ watch: {
device: { device: {
handler(newV) { handler(newV) {
this.____getDeviceInfo(); this.____getDeviceInfo();
@ -307,13 +307,13 @@ export default {
immediate: false immediate: false
} }
}, },
components: { addBoard, editBoard, BoardPreview, BoardTplPreview, BoardInfoEditor, vuescroll}, components: { addBoard, editBoard, BoardPreview, BoardTplPreview, BoardInfoEditor, vuescroll },
created() { created() {
this.____getTemplateCategory(); this.____getTemplateCategory();
this.____getAllTemplate(); this.____getAllTemplate();
// this.getTemplateSeries(); // this.getTemplateSeries();
}, },
computed:{ computed: {
}, },
mounted() { mounted() {
// //
@ -343,7 +343,7 @@ export default {
}); });
}, },
____getDeviceInfo(){ ____getDeviceInfo() {
this.selectedSize = JSON.parse(this.device.otherConfig).screenSize; this.selectedSize = JSON.parse(this.device.otherConfig).screenSize;
this.____setAvailableTemplate(); this.____setAvailableTemplate();
@ -411,7 +411,7 @@ export default {
} }
}, },
____refreshPageData(para){}, ____refreshPageData(para) { },
// //
@ -452,8 +452,8 @@ export default {
let arr = node.screenSize.split("*"); let arr = node.screenSize.split("*");
let scale = this.getScrollSz(+arr[0]); let scale = this.getScrollSz(+arr[0]);
let obj = { let obj = {
'width':`${+arr[0] / scale}px`, 'width': `${+arr[0] / scale}px`,
'height':`${+arr[1] / scale}px`, 'height': `${+arr[1] / scale}px`,
'justify-content': this.getTextAlign(node.tcontents[0].formatStyle) 'justify-content': this.getTextAlign(node.tcontents[0].formatStyle)
} }
return obj; return obj;
@ -462,14 +462,14 @@ export default {
let fSize = +node.tcontents[0].fontSize; let fSize = +node.tcontents[0].fontSize;
let scale = this.getScrollSz(fSize); let scale = this.getScrollSz(fSize);
let obj = { let obj = {
'font-size': `${fSize/scale}px`, 'font-size': `${fSize / scale}px`,
'color': '#' + node.tcontents[0].fontColor, 'color': '#' + node.tcontents[0].fontColor,
'font-family': node.tcontents[0].fontType 'font-family': node.tcontents[0].fontType
} }
return obj; return obj;
}, },
// //
boardDataConvert(origin){ boardDataConvert(origin) {
let rst = origin.map(item => { let rst = origin.map(item => {
return { return {
...item, ...item,
@ -901,8 +901,6 @@ export default {
</script> </script>
<style lang='scss' scoped> <style lang='scss' scoped>
.templateBox { .templateBox {
width: 100%; width: 100%;
height: 100%; height: 100%;
@ -986,8 +984,16 @@ export default {
border-top: none; border-top: none;
padding: 0 0.5vw; padding: 0 0.5vw;
} }
} }
.mask {
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
z-index: 999999999;
}
.map_dialog { .map_dialog {
width: 510px; width: 510px;
@ -998,6 +1004,7 @@ export default {
top: 0px; top: 0px;
transform: translate(-110%, -110%); transform: translate(-110%, -110%);
} }
.dialog_info { .dialog_info {
width: 950px; width: 950px;
height: 600px; height: 600px;
@ -1009,11 +1016,13 @@ export default {
justify-content: space-around; justify-content: space-around;
align-items: flex-end; align-items: flex-end;
} }
.dialog_info_left { .dialog_info_left {
width: 510px; width: 510px;
height: 100%; height: 100%;
background-color: #114c66; background-color: #114c66;
} }
.dialog_info_right { .dialog_info_right {
width: 430px; width: 430px;
height: 556px; height: 556px;
@ -1023,6 +1032,7 @@ export default {
overflow-y: scroll; overflow-y: scroll;
position: relative; position: relative;
} }
.dialog_head { .dialog_head {
width: 100%; width: 100%;
height: 48px; height: 48px;
@ -1035,15 +1045,18 @@ export default {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
.tit { .tit {
color: #3de8ff; color: #3de8ff;
font-size: 18px; font-size: 18px;
} }
.btnCls { .btnCls {
width: 13px; width: 13px;
height: 13px; height: 13px;
cursor: pointer; cursor: pointer;
} }
.deco { .deco {
width: 55%; width: 55%;
height: 5px; height: 5px;
@ -1052,17 +1065,20 @@ export default {
top: 0; top: 0;
} }
} }
.dialogContent { .dialogContent {
width: 100%; width: 100%;
height: 300px; height: 300px;
padding: 10px 40px 10px 10px; padding: 10px 40px 10px 10px;
position: relative; position: relative;
} }
.dialogContent_box { .dialogContent_box {
width: 100%; width: 100%;
// height: 100%; // height: 100%;
overflow-y: scroll; overflow-y: scroll;
} }
.dialogContent_l { .dialogContent_l {
width: 355px; width: 355px;
// height: 4.91vh; // height: 4.91vh;
@ -1072,6 +1088,7 @@ export default {
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.dialogContent_r { .dialogContent_r {
width: 96px; width: 96px;
// height: 4.91vh; // height: 4.91vh;
@ -1080,6 +1097,7 @@ export default {
justify-content: space-around; justify-content: space-around;
align-items: center; align-items: center;
} }
.dialogContent_l_xsq { .dialogContent_l_xsq {
width: 256px; width: 256px;
height: 100%; height: 100%;
@ -1098,33 +1116,39 @@ export default {
height: 2.96vh; height: 2.96vh;
cursor: pointer; cursor: pointer;
} }
.dialogContent_r_btn1 { .dialogContent_r_btn1 {
background-image: url('~@/assets/screen/xtb/gg.png'); background-image: url('~@/assets/screen/xtb/gg.png');
background-size: 100% 100%; background-size: 100% 100%;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
} }
.dialogContent_r_btn2 { .dialogContent_r_btn2 {
background-image: url('~@/assets/screen/xtb/xx.png'); background-image: url('~@/assets/screen/xtb/xx.png');
background-size: 100% 100%; background-size: 100% 100%;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
} }
.dialogContent_r_btn3 { .dialogContent_r_btn3 {
background-image: url('~@/assets/screen/xtb/zz.png'); background-image: url('~@/assets/screen/xtb/zz.png');
background-size: 100% 100%; background-size: 100% 100%;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
} }
.dialogContent_box_item { .dialogContent_box_item {
margin-bottom: 0.5vh; margin-bottom: 0.5vh;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.dialogContent_bottom { .dialogContent_bottom {
width: 105%; width: 105%;
height: 16.52vh; height: 16.52vh;
} }
.show_bottom_tab_item { .show_bottom_tab_item {
width: 50%; width: 50%;
padding: 0.5vh 0; padding: 0.5vh 0;
@ -1132,21 +1156,25 @@ export default {
// flex-wrap: wrap; // flex-wrap: wrap;
// align-items: center; // align-items: center;
} }
.show_bottom_tab_box { .show_bottom_tab_box {
width: 100%; width: 100%;
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
align-items: center; align-items: center;
} }
.show_bottom_tab_item_l { .show_bottom_tab_item_l {
color: #3de8ff; color: #3de8ff;
font-size: 14px; font-size: 14px;
} }
.show_bottom_tab_item_r { .show_bottom_tab_item_r {
color: #fff; color: #fff;
font-size: 14px; font-size: 14px;
margin-left: 0.5vw; margin-left: 0.5vw;
} }
.sideSwitch { .sideSwitch {
position: absolute; position: absolute;
right: 0%; right: 0%;
@ -1159,31 +1187,38 @@ export default {
opacity: 1; opacity: 1;
text-align: center; text-align: center;
cursor: pointer; cursor: pointer;
.img { .img {
width: 15px; width: 15px;
height: 10px; height: 10px;
border: none; border: none;
transition: transform 0.3s ease; /* 过渡效果 */ transition: transform 0.3s ease;
/* 过渡效果 */
} }
.txt { .txt {
color: #fff; color: #fff;
font-size: 13px; font-size: 13px;
} }
} }
.dialogContent_box_empty { .dialogContent_box_empty {
font-size: 14px; font-size: 14px;
text-align: center; text-align: center;
color: #fff; color: #fff;
} }
.dialog_info_right_tit { .dialog_info_right_tit {
color: #fff; color: #fff;
font-size: 14px; font-size: 14px;
margin-bottom: 0.5vh; margin-bottom: 0.5vh;
} }
.dialog_info_right_show { .dialog_info_right_show {
width: 100%; width: 100%;
// height: 28vh; // height: 28vh;
} }
.dialogContent_bottom_btn { .dialogContent_bottom_btn {
width: 100%; width: 100%;
height: 5vh; height: 5vh;
@ -1192,6 +1227,7 @@ export default {
align-items: center; align-items: center;
text-align: center; text-align: center;
} }
.show_bottom_btn_add { .show_bottom_btn_add {
width: 90px; width: 90px;
height: 23px; height: 23px;
@ -1204,6 +1240,7 @@ export default {
margin-right: 0.5vw; margin-right: 0.5vw;
cursor: pointer; cursor: pointer;
} }
.show_bottom_btn_del { .show_bottom_btn_del {
width: 90px; width: 90px;
height: 23px; height: 23px;
@ -1215,31 +1252,37 @@ export default {
opacity: 1; opacity: 1;
cursor: pointer; cursor: pointer;
} }
.info_right_camera { .info_right_camera {
width: 100%; width: 100%;
height: calc(100% - 4vh); height: calc(100% - 4vh);
padding: 1vh 0.5vw; padding: 1vh 0.5vw;
} }
.info_right_camera_top { .info_right_camera_top {
width: 100%; width: 100%;
height: 20vh; height: 20vh;
} }
.info_right_camera_bom { .info_right_camera_bom {
width: 100%; width: 100%;
padding: 1vh 0; padding: 1vh 0;
height: calc(100% - 20vh); height: calc(100% - 20vh);
display: flex; display: flex;
} }
.camera_bom_left { .camera_bom_left {
width: 50%; width: 50%;
height: 100%; height: 100%;
padding: 2vh 0; padding: 2vh 0;
border-right: 1px dashed #285a71; border-right: 1px dashed #285a71;
} }
.camera_bom_right { .camera_bom_right {
width: 50%; width: 50%;
height: 100%; height: 100%;
} }
.camera_bom_left_item { .camera_bom_left_item {
width: 100%; width: 100%;
color: #fff; color: #fff;
@ -1247,24 +1290,29 @@ export default {
font-size: 14px; font-size: 14px;
padding-bottom: 1.5vh; padding-bottom: 1.5vh;
} }
.camera_bom_left_item_txt { .camera_bom_left_item_txt {
width: 31%; width: 31%;
color: #3de8ff; color: #3de8ff;
} }
.camera_bom_left_item_val { .camera_bom_left_item_val {
color: #fff; color: #fff;
font-size: 13px; font-size: 13px;
} }
.camera_bom_right_t { .camera_bom_right_t {
width: 100%; width: 100%;
height: 60%; height: 60%;
position: relative; position: relative;
} }
.camera_bom_right_b { .camera_bom_right_b {
width: 100%; width: 100%;
height: 40%; height: 40%;
// background-color: deeppink; // background-color: deeppink;
} }
.camera_bom_right_t_box { .camera_bom_right_t_box {
width: 2vw; width: 2vw;
height: 4vh; height: 4vh;
@ -1276,6 +1324,7 @@ export default {
border-radius: 50%; border-radius: 50%;
border: 1px solid #2191b1; border: 1px solid #2191b1;
} }
.camera_bom_right_t_h_po { .camera_bom_right_t_h_po {
width: 1vw; width: 1vw;
height: 5vh; height: 5vh;
@ -1288,12 +1337,14 @@ export default {
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
} }
.camera_bom_right_b_btn { .camera_bom_right_b_btn {
width: 100%; width: 100%;
padding: 0vh 2vw 1vh 2vw; padding: 0vh 2vw 1vh 2vw;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.camera_bom_right_b_btn_l { .camera_bom_right_b_btn_l {
width: 1.2vw; width: 1.2vw;
height: 2.4vh; height: 2.4vh;
@ -1304,9 +1355,11 @@ export default {
background-position: center; background-position: center;
cursor: pointer; cursor: pointer;
} }
.camera_bom_right_b_btn_c { .camera_bom_right_b_btn_c {
color: #fff; color: #fff;
} }
.camera_bom_right_b_btn_r { .camera_bom_right_b_btn_r {
width: 1.2vw; width: 1.2vw;
height: 2.4vh; height: 2.4vh;
@ -1317,6 +1370,7 @@ export default {
background-position: center; background-position: center;
cursor: pointer; cursor: pointer;
} }
// background-color: #104b65; // background-color: #104b65;
// background-image: url('~@/assets/screen/xtb/qbbtit.png'); // background-image: url('~@/assets/screen/xtb/qbbtit.png');
// background-size: 100% 100%; // background-size: 100% 100%;
@ -1325,18 +1379,24 @@ export default {
/* 通用滚动条样式 */ /* 通用滚动条样式 */
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 3px; /* 设置滚动条宽度 */ width: 3px;
height: 3px; /* 设置滚动条高度 */ /* 设置滚动条宽度 */
height: 3px;
/* 设置滚动条高度 */
} }
::-webkit-scrollbar-track { ::-webkit-scrollbar-track {
background-color: #114c66; /* 设置滚动条轨道颜色 */ background-color: #114c66;
/* 设置滚动条轨道颜色 */
} }
::-webkit-scrollbar-thumb { ::-webkit-scrollbar-thumb {
background-color: #9abce0; /* 设置滚动条滑块颜色 */ background-color: #9abce0;
border-radius: 4px; /* 设置滚动条滑块圆角 */ /* 设置滚动条滑块颜色 */
border-radius: 4px;
/* 设置滚动条滑块圆角 */
} }
::v-deep .el-tabs__nav-wrap::after { ::v-deep .el-tabs__nav-wrap::after {
background-color: #316076; background-color: #316076;
} }
@ -1344,12 +1404,15 @@ export default {
::v-deep .el-tabs__item.is-active { ::v-deep .el-tabs__item.is-active {
color: #3de8ff !important; color: #3de8ff !important;
} }
::v-deep .el-tabs__item { ::v-deep .el-tabs__item {
color: #fff !important; color: #fff !important;
} }
::v-deep .el-tabs__active-bar { ::v-deep .el-tabs__active-bar {
background-color: #3de8ff !important; background-color: #3de8ff !important;
} }
::v-deep .el-collapse-item__header { ::v-deep .el-collapse-item__header {
color: #fff; color: #fff;
height: 28px; height: 28px;
@ -1357,10 +1420,12 @@ export default {
border: none; border: none;
padding-left: 0.5vw; padding-left: 0.5vw;
} }
::v-deep .el-collapse { ::v-deep .el-collapse {
color: #fff; color: #fff;
border: none; border: none;
} }
::v-deep .el-collapse-item__wrap { ::v-deep .el-collapse-item__wrap {
color: #fff; color: #fff;
will-change: height; will-change: height;
@ -1371,17 +1436,21 @@ export default {
margin-top: 0.5vh; margin-top: 0.5vh;
border: none; border: none;
} }
::v-deep .el-collapse-item__content { ::v-deep .el-collapse-item__content {
margin-bottom: 0; margin-bottom: 0;
padding: 0.5vh 0.5vw; padding: 0.5vh 0.5vw;
} }
::v-deep .el-collapse-item { ::v-deep .el-collapse-item {
margin-bottom: 1vh; margin-bottom: 1vh;
} }
::v-deep .el-input--mini .el-input__icon { ::v-deep .el-input--mini .el-input__icon {
line-height: 20px; line-height: 20px;
color: #fff; color: #fff;
} }
::v-deep .el-input--mini .el-input__inner { ::v-deep .el-input--mini .el-input__inner {
height: 20px; height: 20px;
line-height: 20px; line-height: 20px;

7
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue

@ -28,7 +28,8 @@
<!-- <ControlCamera :data="dialogConfig.data" :visible="dialogConfig.visibleType === 0" /> --> <!-- <ControlCamera :data="dialogConfig.data" :visible="dialogConfig.visibleType === 0" /> -->
<!-- 摄像机 G35 K094+079 下行可控 枪机 可打开--> <!-- 摄像机 G35 K094+079 下行可控 枪机 可打开-->
<!-- <Camera :data="dialogConfig.data" :visible="dialogConfig.visibleType === 1" /> --> <!-- <Camera :data="dialogConfig.data" :visible="dialogConfig.visibleType === 1" /> -->
<component :dialogData="dialogConfig.data" :is="dialogConfig.component" @change="handleCameraChange" /> <component :dialogData="dialogConfig.data" visible :device="dialogConfig.data" :is="dialogConfig.component"
@change="handleCameraChange" />
</Bg1> </Bg1>
</template> </template>
@ -41,6 +42,7 @@ import Bg1 from "@screen/components/Decorations/bg-1.vue"
import ControlCamera from "./../Dialogs/ControlCamera/index.vue" import ControlCamera from "./../Dialogs/ControlCamera/index.vue"
import DrivingGuidance from "./../Dialogs/DrivingGuidance/index.vue" import DrivingGuidance from "./../Dialogs/DrivingGuidance/index.vue"
import Camera from "./../Dialogs/Camera/index.vue"; import Camera from "./../Dialogs/Camera/index.vue";
import InfoBoard from "./../InfoBoard"
export default { export default {
name: 'RoadAndEvents', name: 'RoadAndEvents',
@ -48,6 +50,7 @@ export default {
ControlCamera, ControlCamera,
Camera, Camera,
DrivingGuidance, DrivingGuidance,
InfoBoard,
Bg1 Bg1
}, },
data() { data() {
@ -61,7 +64,7 @@ export default {
// 0 ControlCamera | 1 Camera // 0 ControlCamera | 1 Camera
component: void 0, component: void 0,
data: void 0, data: void 0,
// component: DrivingGuidance, // component: ControlCamera,
// data: { // data: {
// camId: "57937", // camId: "57937",
// } // }

106
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js

@ -33,11 +33,64 @@ export const eventMap = {
// status: "0", // status: "0",
// }; // };
const data = await getDeviceList(1); // const data = await getDeviceList(1);
const data = [
{
longitude: 116.268564,
latitude: 35.73115,
otherConfig: '{"ptzCtrl":0}',
},
{
longitude: 116.258178,
latitude: 35.720996,
},
{
longitude: 116.255542,
latitude: 35.717335,
},
{
longitude: 116.252883,
latitude: 35.713114,
},
{
longitude: 116.249416,
latitude: 35.707627,
},
];
if (!data) return;
cacheRemoveFunc.DriveTestEquipment_Camera_Remove?.();
cacheRemoveFunc.DriveTestEquipment_Camera_Remove = await setMarkToMap.call(
this,
item,
data,
(extData) => {
try {
this.dialogConfig = {
// 0 有(球机) 1 ⽆(枪机)
component: cameraCtrlMap[JSON.parse(extData.otherConfig)?.ptzCtrl],
data: extData,
};
} catch (error) {}
}
);
},
async "路测设备/摄像机_close"() {
cacheRemoveFunc.DriveTestEquipment_Camera_Remove?.();
},
async "路测设备/行车诱导_close"() {
cacheRemoveFunc.Driving_Guidance_Remove?.();
},
async "路测设备/行车诱导"(item) {
const data = await getDeviceList(12);
// const data = [ // const data = [
// { // {
// longitude: 116.268564, // longitude: 116.268564,
// latitude: 35.73115, // latitude: 35.73115,
// otherConfig: '{"ptzCtrl":0}',
// }, // },
// { // {
// longitude: 116.258178, // longitude: 116.258178,
@ -54,49 +107,66 @@ export const eventMap = {
// { // {
// longitude: 116.249416, // longitude: 116.249416,
// latitude: 35.707627, // latitude: 35.707627,
// ptzCtrl: 0,
// }, // },
// ]; // ];
if (!data) return; if (!data) return;
cacheRemoveFunc.DriveTestEquipment_Camera_Remove?.(); cacheRemoveFunc.Driving_Guidance_Remove?.();
cacheRemoveFunc.DriveTestEquipment_Camera_Remove = await setMarkToMap.call( cacheRemoveFunc.Driving_Guidance_Remove = await setMarkToMap.call(
this, this,
item, item,
data, data,
(extData) => { (extData) => {
try {
this.dialogConfig = { this.dialogConfig = {
// 0 有(球机) 1 ⽆(枪机) component: "DrivingGuidance",
component: cameraCtrlMap[JSON.parse(extData.otherConfig)?.ptzCtrl],
data: extData, data: extData,
}; };
} catch (error) {}
} }
); );
}, },
async "路测设备/摄像机_close"() { async "路测设备/情报板_close"() {
cacheRemoveFunc.DriveTestEquipment_Camera_Remove?.(); cacheRemoveFunc.Info_Board_Remove?.();
},
async "路测设备/行车诱导_close"() {
cacheRemoveFunc.Driving_Guidance_Remove?.();
}, },
async "路测设备/行车诱导"(item) { async "路测设备/情报板"(item) {
const data = await getDeviceList(12); const data = await getDeviceList(2);
// const data = [
// {
// longitude: 116.268564,
// latitude: 35.73115,
// otherConfig: '{"ptzCtrl":0}',
// },
// {
// longitude: 116.258178,
// latitude: 35.720996,
// },
// {
// longitude: 116.255542,
// latitude: 35.717335,
// },
// {
// longitude: 116.252883,
// latitude: 35.713114,
// },
// {
// longitude: 116.249416,
// latitude: 35.707627,
// },
// ];
if (!data) return; if (!data) return;
cacheRemoveFunc.Driving_Guidance_Remove?.(); cacheRemoveFunc.Info_Board_Remove?.();
cacheRemoveFunc.Driving_Guidance_Remove = await setMarkToMap.call( cacheRemoveFunc.Info_Board_Remove = await setMarkToMap.call(
this, this,
item, item,
data, data,
(extData) => { (extData) => {
this.dialogConfig = { this.dialogConfig = {
component: "DrivingGuidance", component: "InfoBoard",
data: extData, data: extData,
}; };
} }

4
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/httpList.js

@ -74,7 +74,7 @@ export function controlCamera(camId, cmdType) {
export async function getRoadInfoByStakeMark(stakeMarkId) { export async function getRoadInfoByStakeMark(stakeMarkId) {
const stakeMarkInfo = await request({ const stakeMarkInfo = await request({
// url: `/business/stakeMark/${stakeMarkId}`, // url: `/business/stakeMark/${stakeMarkId}`,
url: `/business/stakeMark`, url: `/business/stakeMark/query`,
method: "get", method: "get",
params: { params: {
id: stakeMarkId, id: stakeMarkId,
@ -82,7 +82,7 @@ export async function getRoadInfoByStakeMark(stakeMarkId) {
}, },
}); });
if (!stakeMarkInfo.data?.sectionId) return {}; if (!stakeMarkInfo.data[0]?.sectionId) return {};
const roadSectionInfo = await request({ const roadSectionInfo = await request({
url: `/business/roadSection/${stakeMarkInfo.data.sectionId}`, url: `/business/roadSection/${stakeMarkInfo.data.sectionId}`,

56
ruoyi-ui/src/views/JiHeExpressway/pages/Home/index.vue

@ -15,7 +15,7 @@
<ConditionStatistics class="content-r card-menu" /> <ConditionStatistics class="content-r card-menu" />
</section> </section>
<InfoBoard :visible.sync="isShowInfoBoard" :device="selectedDevice"></InfoBoard> <!-- <InfoBoard :visible.sync="isShowInfoBoard" :device="selectedDevice"></InfoBoard> -->
<footer class="footer card-menu"> <footer class="footer card-menu">
<div class="footer-title"> <div class="footer-title">
@ -37,7 +37,7 @@ import ConditionStatistics from "./components/ConditionStatistics/index.vue";
import RoadAndEvents from "./components/RoadAndEvents/index.vue"; import RoadAndEvents from "./components/RoadAndEvents/index.vue";
import AMapContainer from "./components/AMapContainer/index.vue"; import AMapContainer from "./components/AMapContainer/index.vue";
import InfoBoard from "./components/InfoBoard" // import InfoBoard from "./components/InfoBoard"
export default { export default {
name: 'Home', name: 'Home',
@ -47,12 +47,12 @@ export default {
Thumbnail, Thumbnail,
RoadAndEvents, RoadAndEvents,
AMapContainer, AMapContainer,
InfoBoard // InfoBoard
}, },
data() { data() {
return { return {
isShowInfoBoard: false, isShowInfoBoard: false,
selectedDevice:null selectedDevice: null
} }
}, },
provide() { provide() {
@ -77,30 +77,30 @@ export default {
} }
}, },
onClickItem(item) { onClickItem(item) {
if (item.title.includes("情报板")) { // if (item.title.includes("")) {
this.isShowInfoBoard = true; // this.isShowInfoBoard = true;
this.selectedDevice = { // this.selectedDevice = {
"id": 904, // "id": 904,
"iotDeviceId": "81221-65535", // "iotDeviceId": "81221-65535",
"groupId": null, // "groupId": null,
"productId": 0, // "productId": 0,
"stakeMarkId": "k71+600", // "stakeMarkId": "k71+600",
"direction": "1", // "direction": "1",
"deviceName": "大学城入口站前板", // "deviceName": "",
"deviceType": 2, // "deviceType": 2,
"installationDate": null, // "installationDate": null,
"productionDate": null, // "productionDate": null,
"durableYears": null, // "durableYears": null,
"installationSite": null, // "installationSite": null,
"useState": null, // "useState": null,
"otherConfig": "{\"screenSize\":\"160*80\"}", // "otherConfig": "{\"screenSize\":\"160*80\"}",
"remark": null, // "remark": null,
"createTime": "2024-01-17T22:50:56.000+08:00", // "createTime": "2024-01-17T22:50:56.000+08:00",
"updateTime": null, // "updateTime": null,
"longitude": null, // "longitude": null,
"latitude": null // "latitude": null
} // }
} // }
} }
} }
} }

Loading…
Cancel
Save