Merge remote-tracking branch 'origin/pet' into dev

5_7_地图同步
liujun 2024-05-20 18:10:45 +08:00
commit 962b9ec6d0
4 changed files with 81 additions and 14 deletions

View File

@ -11,7 +11,7 @@
<xf-point v-if="type === 'point'" :id="id" :type="type" :gangkou="gangkou"/> <xf-point v-if="type === 'point'" :id="id" :type="type" :gangkou="gangkou"/>
<xf-control v-if="type === 'xfbf01' || type ==='xfkzs01' || type ==='xfjyd01' || type ==='xfsy01'" :id="id" :type="type" :gangkou="gangkou"/> <xf-control v-if="type === 'xfbf01' || type ==='xfkzs01' || type ==='xfjyd01' || type ==='xfsy01'" :id="id" :type="type" :gangkou="gangkou"/>
<alarm-device v-if="type === 'alarm'" :id="id" :type="type" :gangkou="gangkou"/> <alarm-device v-if="type === 'alarm'" :id="id" :type="type" :gangkou="gangkou"/>
<mk-gate-machine v-if="type === 'CAR'||type ==='PERSON' || type ==='CAMERA'" :id="id" :type="type" :gangkou="gangkou"/> <mk-gate-machine v-if="type === 'CAR'||type ==='PERSON' || type ==='CAMERA'" :id="id" :type="type" :gangkou="gangkou" :corp-id="corpInfoId"/>
<mk-gate-machine-cfd v-if="type === 'CAR00004'||type ==='PERSON00004' " :id="id" :type="type" :gangkou="gangkou" :infoname="infoname"/> <mk-gate-machine-cfd v-if="type === 'CAR00004'||type ==='PERSON00004' " :id="id" :type="type" :gangkou="gangkou" :infoname="infoname"/>
<mk-gate-machine-cmt v-if="type === 'CAR00005'||type ==='PERSON00005' " :id="id" :type="type" :gangkou="gangkou" :infoname="infoname"/> <mk-gate-machine-cmt v-if="type === 'CAR00005'||type ==='PERSON00005' " :id="id" :type="type" :gangkou="gangkou" :infoname="infoname"/>
<zhong_da_info v-if="type === 'majordangersource'" :id="id" :type="type" :gangkou="gangkou"/> <zhong_da_info v-if="type === 'majordangersource'" :id="id" :type="type" :gangkou="gangkou"/>
@ -53,8 +53,8 @@
<carPositionCfdD v-if="type === 'carPosition'" :id="id" :type="type" :infoname="infoname"/> <carPositionCfdD v-if="type === 'carPosition'" :id="id" :type="type" :infoname="infoname"/>
<!--曹妃甸东 八项作业 曹实业详细页面 end--> <!--曹妃甸东 八项作业 曹实业详细页面 end-->
<peoplePositionNine v-if="type === 'peoplePositionNine'" :id="id" :type="type" :infoname="infoname"/> <peoplePositionNine v-if="type === 'peoplePositionNine'" :id="id" :type="type" :infoname="infoname"/>
<peoplePositionOne v-if="type === 'peoplePositionOne' && corpInfoId !== '035958e685cf4850bc40151c5e0617a6'" :id="id" :type="type" /> <peoplePositionOne v-if="type === 'peoplePositionOne' && !(corpInfoId === '035958e685cf4850bc40151c5e0617a6' || corpInfoId === '21590a00ea5e462e9ee44dd332dddc26')" :id="id" :type="type" />
<peoplePositionYGS v-if="type === 'peoplePositionOne' && corpInfoId === '035958e685cf4850bc40151c5e0617a6'" :id="id" :type="type" :corp-id="corpInfoId" /> <peoplePositionYGS v-if="type === 'peoplePositionOne' && (corpInfoId === '035958e685cf4850bc40151c5e0617a6' || corpInfoId === '21590a00ea5e462e9ee44dd332dddc26')" :id="id" :type="type" :corp-id="corpInfoId" />
<!-- 重点工程 start --> <!-- 重点工程 start -->
<outSourceInfo v-if="type === 'PROJECT'" :id="id" :type="type" /> <outSourceInfo v-if="type === 'PROJECT'" :id="id" :type="type" />
<outSourceVideoInfo v-if="type === 'VIDEO'" :id="id" :type="type" /> <outSourceVideoInfo v-if="type === 'VIDEO'" :id="id" :type="type" />
@ -111,7 +111,6 @@ import outSourceVideoInfo from './outSourceVideoInfo.vue'
import AlarmDevice from './alarmDevice' import AlarmDevice from './alarmDevice'
import meteorologicalMonitoring from './meteorologicalMonitoring.vue' import meteorologicalMonitoring from './meteorologicalMonitoring.vue'
export default { export default {
components: { components: {
AlarmDevice, AlarmDevice,

View File

@ -34,8 +34,8 @@
<td>{{ item.USERNAME }}</td> <td>{{ item.USERNAME }}</td>
<td>{{ item.TIME }}</td> <td>{{ item.TIME }}</td>
<td> <td>
<span v-if="item.STATE === '0'"></span> <span v-if="item.STATE === 0"></span>
<span v-if="item.STATE === '1'"></span> <span v-if="item.STATE === 1"></span>
</td> </td>
</tr> </tr>
</table> </table>
@ -79,6 +79,12 @@ export default {
gangkou: { gangkou: {
type: String, type: String,
default: '' default: ''
},
corpId: {
type: String,
default() {
return ''
}
} }
}, },
data() { data() {
@ -107,7 +113,8 @@ export default {
{ {
GATE_AREA_ID: this.id, GATE_AREA_ID: this.id,
TYPE: this.type, TYPE: this.type,
GANGKOU: this.gangkou GANGKOU: this.gangkou,
CORPINFO_ID: this.corpId
} }
).then((data) => { ).then((data) => {
Object.assign(this.info, data.pd) Object.assign(this.info, data.pd)
@ -143,7 +150,8 @@ export default {
{ {
GATE_AREA_ID: this.id, GATE_AREA_ID: this.id,
TYPE: this.type, TYPE: this.type,
GANGKOU: this.gangkou GANGKOU: this.gangkou,
CORPINFO_ID: this.corpId
} }
).then((data) => { ).then((data) => {
this.recordAllList = data.recordAllList this.recordAllList = data.recordAllList

View File

@ -41,7 +41,7 @@
</tr> </tr>
<tr> <tr>
<td class="bbg-transparent">定位卡电量</td> <td class="bbg-transparent">定位卡电量</td>
<td >{{ info?otherInfo.data[3].currentValBody.val:'' }}</td> <td >{{ info?(otherInfo?otherInfo.data[3].currentValBody.val:'*'):'' }}</td>
</tr> </tr>
<tr> <tr>
<td class="bbg-transparent">部门</td> <td class="bbg-transparent">部门</td>

View File

@ -1354,7 +1354,6 @@ export default {
url: '/mapapi/ware/upload/%E6%B2%A7%E5%B7%9E%E6%B8%AF%E4%B8%9C/%E6%B2%A7%E5%B7%9E%E6%B8%AF%E4%B8%9C/merge_tile.json' url: '/mapapi/ware/upload/%E6%B2%A7%E5%B7%9E%E6%B8%AF%E4%B8%9C/%E6%B2%A7%E5%B7%9E%E6%B8%AF%E4%B8%9C/merge_tile.json'
}) })
viewer.scene.primitives.add(czksksmt) viewer.scene.primitives.add(czksksmt)
}, },
leftDownAction() { leftDownAction() {
@ -2050,6 +2049,10 @@ export default {
this.clearMqttPoint('+/UwbBQ/') this.clearMqttPoint('+/UwbBQ/')
this.removeTrajectory() this.removeTrajectory()
} }
if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '21590a00ea5e462e9ee44dd332dddc26' && urlType === 'peoplePosition') {
this.clearRYDWPoint('+/UwbBQ/')
this.removeTrajectory()
}
this.bottomOptionsList[pindex].list[index].check = false this.bottomOptionsList[pindex].list[index].check = false
if (this.gangkouActive === '00004') { if (this.gangkouActive === '00004') {
this.cfdBottomOptionsList[pindex].list[index].check = false this.cfdBottomOptionsList[pindex].list[index].check = false
@ -2078,6 +2081,9 @@ export default {
} }
if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '035958e685cf4850bc40151c5e0617a6' && urlType === 'peoplePosition') { if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '035958e685cf4850bc40151c5e0617a6' && urlType === 'peoplePosition') {
!this.connecting ? this.createConnection(this.CORP_INFO_ID) : this.doSubscribe() !this.connecting ? this.createConnection(this.CORP_INFO_ID) : this.doSubscribe()
} else if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '21590a00ea5e462e9ee44dd332dddc26' && urlType === 'peoplePosition') {
// websocket
this.initRYDWWebsocket('21590a00ea5e462e9ee44dd332dddc26')
} else { } else {
requestFN( requestFN(
pointUrl, pointUrl,
@ -2344,7 +2350,7 @@ export default {
}, },
// //
isPointxyWithinTheArea(pointBox, x, y) { isPointxyWithinTheArea(pointBox = {}, x, y) {
if (this.forEachIsPointInPolygon(pointBox.redList, x, y)) { if (this.forEachIsPointInPolygon(pointBox.redList, x, y)) {
return '_1' return '_1'
} else if (this.forEachIsPointInPolygon(pointBox.orangeList, x, y)) { } else if (this.forEachIsPointInPolygon(pointBox.orangeList, x, y)) {
@ -2635,6 +2641,15 @@ export default {
delete this.mqttPoint[key] delete this.mqttPoint[key]
} }
}, },
clearRYDWPoint(prefix) {
this.fwebsocket.close()
for (const mqttPointKey in this.mqttPoint) {
const key = prefix ? prefix + this.mqttPoint[mqttPointKey] : mqttPointKey
viewer.entities.removeById(this.mqttPoint[key])
this.onePerLocArr = this.onePerLocArr.filter(item => item.data_id !== this.mqttPoint[key])
delete this.mqttPoint[key]
}
},
// //
clearCmtMqttPoint(prefix) { clearCmtMqttPoint(prefix) {
for (const mqttPointKey in this.allOrientationPoint) { for (const mqttPointKey in this.allOrientationPoint) {
@ -2806,6 +2821,51 @@ export default {
} }
} }
}, },
// websocket
initRYDWWebsocket(CORP_INFO_ID) {
// eslint-disable-next-line no-unused-vars
const _this = this
if (window.WebSocket) {
const wsUrl = config.noDwSysUrl + '/ltLocation/DW_' + new Date().getTime() + '_98'
_this.fwebsocket = new WebSocket(encodeURI(wsUrl))
_this.fwebsocket.onmessage = function(message) {
console.info('接收消息')
const peopleList = JSON.parse(message.data).data.data
console.log(peopleList)
for (let i = 0; i < peopleList.length; i++) {
const item = peopleList[i]
if ((!item)) continue
//
const index = _this.onePerLocArr.findIndex(item1 => {
return item1.id.toString() === item.id.toString()
})
const x = item.lon
const y = item.lat
const pointColor = _this.isPointxyWithinTheArea(this.pointBox, x, y)
if (index !== -1) {
_this.onePerLocArr[index].x = x
_this.onePerLocArr[index].y = y
_this.onePerLocArr[index].icon_type = 'img4_0' + pointColor
ry_drag.getPosition(_this.onePerLocArr[index])
} else {
const perLoc = {
id: item.id,
x: x,
y: y,
icon_type: 'img4_0' + pointColor,
data_id: item.id,
point_type: '标记点peoplePositionOne',
label: '人员定位',
corpInfoId: CORP_INFO_ID
}
_this.onePerLocArr.push(perLoc)
ry_drag.addEntity(perLoc)
_this.mqttPoint[_this.subscription.topic.substring(0, _this.subscription.topic.lastIndexOf('+')) + item.id] = item.id
}
}
}
}
},
radomPer(mockData) { radomPer(mockData) {
for (const item of mockData.data) { for (const item of mockData.data) {
item.longitude += 0.0003 * Math.random() item.longitude += 0.0003 * Math.random()
@ -3042,7 +3102,7 @@ export default {
}, },
// true // true
forEachIsPointInPolygon(polygonList, lng, lat) { forEachIsPointInPolygon(polygonList = [], lng, lat) {
return polygonList.some(item => { return polygonList.some(item => {
return this.isPointInPolygon(item.position, lng, lat) return this.isPointInPolygon(item.position, lng, lat)
}) })