diff --git a/.env.development b/.env.development index 2088cd3..c07c55a 100644 --- a/.env.development +++ b/.env.development @@ -6,10 +6,10 @@ VITE_APP_ENV = 'development' # 开发环境 #VITE_APP_BASE_API = 'https://fuyuanshen.com/backend' - VITE_APP_BASE_API = 'https://www.cnxhyc.com/jq' - +# VITE_APP_BASE_API = 'https://www.cnxhyc.com/jq' +VITE_APP_BASE_API = 'http://192.168.110.56:8000' #代永飞接口 -#VITE_APP_BASE_API = 'http://192.168.2.23:8000' +# VITE_APP_BASE_API = 'http://457102h2d6.qicp.vip:24689' # 应用访问路径 例如使用前缀 /admin/ diff --git a/src/api/controlCenter/controlPanel/670.ts b/src/api/controlCenter/controlPanel/670.ts index 1b4d552..438e082 100644 --- a/src/api/controlCenter/controlPanel/670.ts +++ b/src/api/controlCenter/controlPanel/670.ts @@ -26,6 +26,14 @@ function SosSetting (data: any) { data: data }); }; +//批量强制报警 +function SosSettingBatch(data:any){ + return request({ + url: `/api/xinghan/device/SOSGradeSettingsBatch`, + method: 'post', + data: data + }); +} //静电探测档位控制 function staticPowerSetting (data: any) { @@ -62,5 +70,6 @@ export default { SosSetting:SosSetting, staticPowerSetting:staticPowerSetting, deviceRealTimeStatus:deviceRealTimeStatus, - SendMessage:SendMessage + SendMessage:SendMessage, + SosSettingBatch:SosSettingBatch }; \ No newline at end of file diff --git a/src/api/largeScreen/mapOpt.ts b/src/api/largeScreen/mapOpt.ts index 32c2d7d..a13db08 100644 --- a/src/api/largeScreen/mapOpt.ts +++ b/src/api/largeScreen/mapOpt.ts @@ -7,11 +7,11 @@ function initMap(click) { map = new AMap.Map("map", { viewMode: '2D', //默认使用 2D 模式 zoom: 11, //地图级别 - center: [116.396477 , 39.909278], //地图中心点 + center: [116.396477, 39.909278], //地图中心点 mapStyle: "amap://styles/darkblue" }); - map.on('click', function (evt) { + map.on('click', function (evt) { // alert('您点击的位置:'+evt.lnglat.lng+' , '+ evt.lnglat.lat); if (click) { click(evt.lnglat); @@ -35,7 +35,7 @@ function initMap(click) { //添加一个点 function AddPoint(point, index, dragEnd, click, iconImg) { - + return new Promise((resolve, reject) => { try { if (!point) { @@ -65,7 +65,8 @@ function AddPoint(point, index, dragEnd, click, iconImg) { title: point.isAlarming ? '正在报警:' + point.deviceName : point.deviceName, text: index, class: 'point', - extData: point + extData: point, + anchor:'bottom-center' }); marker.setMap(map); @@ -101,30 +102,12 @@ function setCenter(lon, latitude) { } function calcCenter() { + - if (!layPoints || layPoints.length === 0) { - throw new Error("坐标数组不能为空"); - } - - // 计算所有经度和纬度的总和 - const total = layPoints.reduce((sum, point) => { - return { - lng: sum.lng + parseFloat(point.lng), - lat: sum.lat + parseFloat(point.lat) - }; - }, { lng: 0, lat: 0 }); - - // 计算平均值得到中心点 - const center = { - lng: total.lng / layPoints.length, - lat: total.lat / layPoints.length - }; - - return center; } //画多边形 function DrawPoy(points) { - + return new Promise((resolve, reject) => { if (!map) { reject("map未初始化"); @@ -179,6 +162,7 @@ function DrawPoy(points) { } //画圆形 function DrawCicle(points, raduis, dragEnd) { + return new Promise((resolve, reject) => { if (!map) { reject("map未初始化"); @@ -201,7 +185,7 @@ function DrawCicle(points, raduis, dragEnd) { reject("圆的中心点不正确") return; } - layPoints.push({ lng: coordinates[0].lng, lat: points.coordinates[0].lat }); + let circle = new AMap.Circle({ center: [points.coordinates[0].lng, points.coordinates[0].lat], radius: raduis ? raduis : 1000, //半径 @@ -217,6 +201,7 @@ function DrawCicle(points, raduis, dragEnd) { zIndex: 50, }) map.add(circle); + layPoints.push({ lng: points.coordinates[0].lng, lat: points.coordinates[0].lat }); resolve("添加圆成功"); }); diff --git a/src/views/controlCenter/670/index.vue b/src/views/controlCenter/670/index.vue index 4d1dffc..32b717a 100644 --- a/src/views/controlCenter/670/index.vue +++ b/src/views/controlCenter/670/index.vue @@ -472,6 +472,16 @@ const getList = () => { Status.sosMode = res.data.staSOSGrade; Status.staticPower = res.data.staDetectGrade; Status.lightMode = res.data.staLightGrade; + if(!deviceDetail.value.personnelInfo){ + deviceDetail.value.personnelInfo={ + 'id': null, + 'deviceId': null, + 'name': null, + 'position': null, + 'unitName': null, + 'code': null + } + } } }); }; @@ -538,6 +548,8 @@ const sendTextMessage = async () => { batchId: '' }; + + api.SendMessage(json).then((res) => { if (res.code === 200) { ElMessage.closeAll(); diff --git a/src/views/controlCenter/controlPanel/index.vue b/src/views/controlCenter/controlPanel/index.vue index 3033723..56b769d 100644 --- a/src/views/controlCenter/controlPanel/index.vue +++ b/src/views/controlCenter/controlPanel/index.vue @@ -165,6 +165,8 @@ import apiTypeAll from '@/api/equipmentManagement/device/index'; import { deviceQuery, deviceVO } from '@/api/controlCenter/controlPanel/types'; import Amap from "./components/map.vue"; import { generateShortId, getDeviceStatus } from '@/utils/function'; +import eqControl from '@/api/controlCenter/controlPanel/eqControl'; + const router = useRouter(); const route = useRoute(); // 新增:用于获取URL中的query参数 const { proxy } = getCurrentInstance() as ComponentInternalInstance; @@ -380,6 +382,7 @@ const submitForm = async () => { return } try { + sendTextLoading.value = true; // 2. 准备请求数据 const deviceIds = ids.value.map(item => item.id); @@ -392,10 +395,11 @@ const submitForm = async () => { typeName: typeName, batchId: batchId, deviceImeiList: deviceImeiList, - sendMsg: form.value.messageToSend + sendMsg: form.value.messageToSend, + instructValue:"" }; // 3.人员信息 - const registerRes = await api.deviceSendMessage(data); + const registerRes = await eqControl.deviceSendMessage(data); if (registerRes.code !== 200) { proxy?.$modal.msgWarning(registerRes.msg) return @@ -454,9 +458,10 @@ const forceAlarm = async () => { typeName: typeName, batchId: batchId, deviceImeiList: deviceImeiList, - instructValue: '1', //强制报警1,解除报警0 + instructValue: '1' //强制报警1,解除报警0 + } - const registerRes = await api.sendAlarmMessage(data); + const registerRes = await eqControl.sendAlarmMessage(data); if (registerRes.code !== 200) { proxy?.$modal.msgWarning(registerRes.msg) return diff --git a/src/views/homeIndex/components/MapComponent.vue b/src/views/homeIndex/components/MapComponent.vue index 7a2afd5..3cba925 100644 --- a/src/views/homeIndex/components/MapComponent.vue +++ b/src/views/homeIndex/components/MapComponent.vue @@ -12,8 +12,8 @@ -
- +
+
@@ -34,19 +34,16 @@
{{ devType }}
- - -
+
-
- +
+
-
{ - // map.setFitView(); - let center=map.calcCenter(); - map.setCenter(center.lng,center.lat); + Promise.allSettled(promise).then((res) => { + map.setFitView(); }); } else { console.error('接口getDeviceLocationInfo出现了未知的异常', res); @@ -390,7 +385,7 @@ function getTypes() { if (res.data.length) { types.value = res.data.map((v) => { return { - value: v.id, + value: v.deviceTypeId, label: v.typeName }; }); @@ -520,7 +515,8 @@ function showCheck(type) { onMounted(() => { map.initMap(hideCheck).then((res) => { - setInterval(getPoints,300000); + getPoints(); + setInterval(getPoints, 300000); }); getTypes(); @@ -691,15 +687,15 @@ onMounted(() => { display: none !important; } -.iconContent:hover .arrow{ -display: none; -} - -.iconContent .clear{ +.iconContent:hover .arrow { display: none; } -.iconContent:hover .clear{ +.iconContent .clear { + display: none; +} + +.iconContent:hover .clear { display: block; }