Merge remote-tracking branch 'origin/安全环保检查发起优化' into liujun-2024-02-04-相关方新流程上线后新提需求

czks-cmt-gwj地图合并
liujun 2024-02-27 12:07:58 +08:00
commit 7af7094e5e
14 changed files with 199 additions and 28 deletions

View File

@ -5,7 +5,7 @@
"author": "", "author": "",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js --host 192.168.151.43", "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js --host 192.168.0.247",
"start": "npm run dev", "start": "npm run dev",
"unit": "jest --config test/unit/jest.conf.js --coverage", "unit": "jest --config test/unit/jest.conf.js --coverage",
"e2e": "node test/e2e/runner.js", "e2e": "node test/e2e/runner.js",
@ -27,7 +27,7 @@
"md5": "^2.3.0", "md5": "^2.3.0",
"moment": "^2.29.3", "moment": "^2.29.3",
"motion": "^10.16.4", "motion": "^10.16.4",
"mqtt": "^4.2.1", "mqtt": "4.2.1",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"relation-graph": "^1.1.0", "relation-graph": "^1.1.0",
"v-viewer": "^1.6.3", "v-viewer": "^1.6.3",

View File

@ -282,7 +282,7 @@ export default {
}, },
goDetail(id, FIRE_RECORD_ID) { goDetail(id, FIRE_RECORD_ID) {
this.setActiveName('RecordInfo') this.setActiveName('RecordList')
const info = this.getInfo() const info = this.getInfo()
info.FIRE_CHECK_ID = id info.FIRE_CHECK_ID = id
info.FIRE_RECORD_ID = FIRE_RECORD_ID info.FIRE_RECORD_ID = FIRE_RECORD_ID

View File

@ -243,8 +243,8 @@ export default {
created() { created() {
this.FIRE_CHECK_ID = this.getInfo().FIRE_CHECK_ID this.FIRE_CHECK_ID = this.getInfo().FIRE_CHECK_ID
this.FIRE_RECORD_ID = this.getInfo().FIRE_RECORD_ID this.FIRE_RECORD_ID = this.getInfo().FIRE_RECORD_ID
this.SHOW_OR_EDIT = this.$parent.SHOW_OR_EDIT this.SHOW_OR_EDIT = this.getInfo().SHOW_OR_EDIT
this.recordBase = Object.assign({}, this.$parent.row) this.recordBase = Object.assign({}, this.getInfo().row)
this.getData() this.getData()
this.getSignImgs(this.FIRE_RECORD_ID) this.getSignImgs(this.FIRE_RECORD_ID)
}, },
@ -310,7 +310,7 @@ export default {
this.$refs.information.init(id) this.$refs.information.init(id)
}, },
back() { back() {
this.$parent.activeName = 'RecordList' this.setActiveName('RecordList')
}, },
// //
getData() { getData() {

View File

@ -125,6 +125,7 @@ export default {
this.getList() this.getList()
this.hasButton() this.hasButton()
}, },
inject: ['setActiveName', 'getInfo', 'setInfo'],
methods: { methods: {
getRowKey(row) { getRowKey(row) {
return row.CHECKRECORD_ID return row.CHECKRECORD_ID
@ -142,7 +143,7 @@ export default {
{ {
STARTTIME: this.dates[0], STARTTIME: this.dates[0],
ENDTIME: this.dates[1], ENDTIME: this.dates[1],
FIRE_CHECK_ID: this.$parent.FIRE_CHECK_ID, FIRE_CHECK_ID: this.getInfo().FIRE_CHECK_ID,
KEYWORDS: this.KEYWORDS, KEYWORDS: this.KEYWORDS,
STATUS: this.STATUS STATUS: this.STATUS
} }
@ -198,15 +199,17 @@ export default {
}, },
// //
goCheck(row, id, FIRE_RECORD_ID) { goCheck(row, id, FIRE_RECORD_ID) {
this.$parent.FIRE_CHECK_ID = id const info = this.getInfo()
this.$parent.FIRE_RECORD_ID = FIRE_RECORD_ID info.FIRE_CHECK_ID = id
this.$parent.SHOW_OR_EDIT = 'SHOW' info.FIRE_RECORD_ID = FIRE_RECORD_ID
this.$parent.row = row info.SHOW_OR_EDIT = 'SHOW'
this.$parent.activeName = 'RecordInfo' info.row = row
this.setInfo(info)
this.setActiveName('RecordInfo')
}, },
// //
back() { back() {
this.$parent.activeName = 'List' this.setActiveName('FireRecord')
}, },
hasButton: function() { hasButton: function() {
var keys = 'checkrecord:add,checkrecord:del,checkrecord:edit,toExcel' var keys = 'checkrecord:add,checkrecord:del,checkrecord:edit,toExcel'

View File

@ -6,9 +6,10 @@ import List from './components/list'
import FireRecord from './components/fireRecord.vue' import FireRecord from './components/fireRecord.vue'
import FireList from './components/fireList.vue' import FireList from './components/fireList.vue'
import RecordInfo from './components/recordInfo.vue' import RecordInfo from './components/recordInfo.vue'
import RecordList from './components/recordList.vue'
export default { export default {
components: { components: {
List, FireRecord, FireList, RecordInfo List, FireRecord, FireList, RecordInfo, RecordList
}, },
data() { data() {
return { return {

View File

@ -378,7 +378,7 @@ export default {
this.checkList = data.checkList this.checkList = data.checkList
this.hImgs = data.hImgs this.hImgs = data.hImgs
this.rImgs = data.rImgs this.rImgs = data.rImgs
this.cImgs = data.cImgs this.cImgs = data.cImgs || data.checkList[0].cImgs
this.sImgs = data.sImgs this.sImgs = data.sImgs
console.log(this.hImgs) console.log(this.hImgs)
this.$nextTick(() => { this.$nextTick(() => {

View File

@ -801,6 +801,21 @@ export default {
// //
confirm() { confirm() {
for (let i = 0; i < this.inspectorList.length; i++) { for (let i = 0; i < this.inspectorList.length; i++) {
requestFN(
'/outsourced/checkDepartment',
{
departmentId: this.form.JURISDICTION_UNIT
}
).then((data) => {
if (data.data.errInfo === 'fail') {
this.$message({
message: '勿选其他公司部门!',
type: 'error'
})
}
resolve(true)
}).catch((e) => {
});
if (this.inspectorList[i].INSPECTION_USER_ID == '') { if (this.inspectorList[i].INSPECTION_USER_ID == '') {
this.$message.warning('第' + (i + 1) + '行必须添加处罚人') this.$message.warning('第' + (i + 1) + '行必须添加处罚人')
return return

View File

@ -47,7 +47,7 @@
<breakgroundCfdD v-if="type === 'BREAKGROUND' && corpInfoId === '635917e77af8461691d5da5507b56347'" :id="id" :type="type"/> <breakgroundCfdD v-if="type === 'BREAKGROUND' && corpInfoId === '635917e77af8461691d5da5507b56347'" :id="id" :type="type"/>
<hoistingCfdD v-if="type === 'HOISTING' && corpInfoId === '635917e77af8461691d5da5507b56347'" :id="id" :type="type"/> <hoistingCfdD v-if="type === 'HOISTING' && corpInfoId === '635917e77af8461691d5da5507b56347'" :id="id" :type="type"/>
<peoplePositionCfdD v-if="type === 'peoplePosition'" :id="id" :type="type" :infoname="infoname"/> <peoplePositionCfdD v-if="type === 'peoplePosition'" :id="id" :type="type" :infoname="infoname"/>
<peoplePositionCmt v-if="type === 'peoplePosition00005'" :id="id" :type="type" :infoname="infoname"/> <peoplePositionCmt v-if="type === 'peoplePositionCmt'" :id="id" :type="type" :infoname="infoname"/>
<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"/>

View File

@ -25,7 +25,6 @@
<div class="level-title titles"> <div class="level-title titles">
<h1>八项作业</h1> <h1>八项作业</h1>
</div> </div>
<tr> <tr>
<td colspan="4" style="padding: 0;"> <td colspan="4" style="padding: 0;">
<table class="table-vi"> <table class="table-vi">

View File

@ -290,7 +290,9 @@ import axios from 'axios'
import md5 from 'md5' import md5 from 'md5'
const imosPlayer = window.imosPlayer const imosPlayer = window.imosPlayer
var PI = 3.1415926535897932384626
var a = 6378245.0 //
var ee = 0.00669342162296594323 // 椭球的偏心率。//判断是否在国内在中国国内的经纬度才需要做偏移
const iframeObj = null const iframeObj = null
export default { export default {
components: { components: {
@ -1084,6 +1086,7 @@ export default {
], ],
pointBoxNine: [], pointBoxNine: [],
ninePerLocArr: [], ninePerLocArr: [],
cmtPerArr: [],
/* 曹妃甸使用参数结束*/ /* 曹妃甸使用参数结束*/
/* 一公司人员定位*/ /* 一公司人员定位*/
@ -1404,8 +1407,18 @@ export default {
this.dialog.infoname = infoname this.dialog.infoname = infoname
return return
} }
if (this.gangkouActive === '00005' && point_id.substring(0, 1) !== '1') { if (this.gangkouActive === '00005' && point_type === 'peoplePositionCmt') {
// if (this.gangkouActive === '00004' && point_type.indexOf('') !== -1 && point_id.substring(0, 1) === '0' || point_id.substring(0, 1) === '5') { const { label, point_type, id, corpInfoId, name, infoname } = pick.id._monitoItems.data
this.dialog.visible = true
this.dialog.title = label
this.dialog.type = point_type
this.dialog.id = id
this.dialog.name = name
this.dialog.infoname = infoname
this.dialog.corpInfoId = corpInfoId
}else if (this.gangkouActive === '00005' && point_id.substring(0, 1) !== '1' && point_id !== '6aa255d41602497fa0f934a822820df4') {
console.log(point_type)
console.log(point_id)
const { label, point_type, data_id, infoname, name, code } = pick.id._monitoItems.data const { label, point_type, data_id, infoname, name, code } = pick.id._monitoItems.data
this.dialog.visible = true this.dialog.visible = true
this.dialog.title = label this.dialog.title = label
@ -1414,7 +1427,6 @@ export default {
this.dialog.name = name this.dialog.name = name
this.dialog.id = point_type.substring(3) === 'CAMERA' ? code : point_type.substring(3) === 'platcamera' ? code : data_id this.dialog.id = point_type.substring(3) === 'CAMERA' ? code : point_type.substring(3) === 'platcamera' ? code : data_id
this.dialog.infoname = infoname this.dialog.infoname = infoname
console.log(this.dialog)
return return
} }
if (point_type.indexOf('标记点') !== -1) { if (point_type.indexOf('标记点') !== -1) {
@ -1937,6 +1949,21 @@ export default {
this.clearMqttPoint('czksperson') this.clearMqttPoint('czksperson')
} }
} }
if (this.gangkouActive === '00005' && urlType === 'peoplePosition') {
if (this.timer) {
clearInterval(this.timer)
}
this.bottomOptionsList[pindex].list[index].check = false
this.clearCmtMqttPoint('person')
if (this.fwebsocket && this.fwebsocket.url) {
this.perLocArr = []
this.cmtPerArr = []
this.ninePerLocArr = []
this.carLocArr = []
this.fwebsocket.close()
this.fwebsocket = {}
}
}
// websocket 使 // websocket 使
if (this.gangkouActive === '00004' && urlType === 'peoplePosition') { if (this.gangkouActive === '00004' && urlType === 'peoplePosition') {
// if (this.fwebsocket) { // if (this.fwebsocket) {
@ -1983,6 +2010,10 @@ export default {
this.czksPeoplePosition() this.czksPeoplePosition()
return return
} }
if (this.gangkouActive === '00005' && urlType === 'peoplePosition') {
this.cmtPosition()
return
}
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 { } else {
@ -2088,6 +2119,7 @@ export default {
ry_drag.getPosition(this.perLocArr[i]) ry_drag.getPosition(this.perLocArr[i])
} else { } else {
ry_drag.addEntity(this.perLocArr[i]) ry_drag.addEntity(this.perLocArr[i])
this.mqttPoint['cfdrydw' + this.perLocArr[i].cardNo] = this.perLocArr[i].cardNo this.mqttPoint['cfdrydw' + this.perLocArr[i].cardNo] = this.perLocArr[i].cardNo
} }
} }
@ -2263,6 +2295,115 @@ export default {
this.connecting = false this.connecting = false
this.subscribeSuccess = false this.subscribeSuccess = false
}, },
// websocket
cmtPosition() {
const _this = this
console.info(config.cmtPositionUrl)
if (window.WebSocket) {
this.fwebsocket = new WebSocket(encodeURI('ws://' + config.cmtPositionUrl)) // oladressmain.jsp
this.fwebsocket.onopen = () => {
console.info('人员定位监听成功')
}
this.fwebsocket.onerror = function() {
console.info('连接失败')
}
this.fwebsocket.onclose = function() {
console.info('onclose')
}
this.fwebsocket.onmessage = function(message) {
const mockData = JSON.parse(message.data)
console.log(mockData)
//
const cmtPer = _this.cmtPerArr
.filter(item => {
const index = mockData.findIndex(item1 => {
return item.id.toString() === item1.cardno.toString()
})
return index !== -1
})
//
for (const item of mockData) {
const wgs84 = _this.gcj02towgs84(parseFloat(item.longitude), parseFloat(item.latitude))
item.longitude = wgs84[0]
item.latitude = wgs84[1]
const index = cmtPer.findIndex(item1 => {
return item1.id.toString() === item.cardno.toString()
})
const pointColor = _this.isPointxyWithinTheArea(_this.pointBox, item.longitude, item.latitude)
if (index !== -1) {
cmtPer[index].x = item.longitude
cmtPer[index].y = item.latitude
cmtPer[index].icon_type = 'img4_0' + pointColor
ry_drag.getPosition(cmtPer[index])
} else {
const perLoc = {
id: item.cardno,
name: item.name,
x: item.longitude,
y: item.latitude,
point_type: 'peoplePositionCmt',
icon_type: 'img4_0' + pointColor
}
cmtPer.push(perLoc)
ry_drag.delEntity(perLoc)
ry_drag.addEntity(perLoc)
var qianzhui = 'person'
_this.allOrientationPoint[qianzhui + item.cardno] = item.cardno
// qianzhui
}
}
// ninePerLocArr
_this.cmtPerArr = cmtPer
}
}
},
beforeDestroy() {
if (this.timer) {
clearInterval(this.timer)
}
if (this.fwebsocket && this.fwebsocket.url) {
this.fwebsocket.close()
}
},
out_of_china(lng, lat) {
return (lng < 72.004 || lng > 137.8347 || (lat < 0.8293 || lat > 55.8271 || false))
},
//
transformlng(lng, lat) {
var ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * Math.sqrt(Math.abs(lng))
ret += ((20.0 * Math.sin(6.0 * lng * PI) + 20.0 * Math.sin(2.0 * lng * PI)) * 2.0) / 3.0
ret += ((20.0 * Math.sin(lng * PI) + 40.0 * Math.sin((lng / 3.0) * PI)) * 2.0) / 3.0
ret += ((150.0 * Math.sin((lng / 12.0) * PI) + 300.0 * Math.sin((lng / 30.0) * PI)) * 2.0) / 3.0
return ret
},
//
transformlat(lng, lat) {
var ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * Math.sqrt(Math.abs(lng))
ret += ((20.0 * Math.sin(6.0 * lng * PI) + 20.0 * Math.sin(2.0 * lng * PI)) * 2.0) / 3.0
ret += ((20.0 * Math.sin(lat * PI) + 40.0 * Math.sin((lat / 3.0) * PI)) * 2.0) / 3.0
ret += ((160.0 * Math.sin((lat / 12.0) * PI) + 320 * Math.sin((lat * PI) / 30.0)) * 2.0) / 3.0
return ret
},
gcj02towgs84(lng, lat) {
if (this.out_of_china(lng, lat)) {
return [lng, lat]
} else {
var dlat = this.transformlat(lng - 105.0, lat - 35.0)
var dlng = this.transformlng(lng - 105.0, lat - 35.0)
var radlat = lat / 180.0 * PI
var magic = Math.sin(radlat)
magic = 1 - ee * magic * magic
var sqrtmagic = Math.sqrt(magic)
dlat = (dlat * 180.0) / ((a * (1 - ee)) / (magic * sqrtmagic) * PI)
dlng = (dlng * 180.0) / (a / sqrtmagic * Math.cos(radlat) * PI)
const mglat = lat + dlat
const mglng = lng + dlng
return [lng * 2 - mglng, lat * 2 - mglat]
}
},
// //
czksPeoplePosition() { czksPeoplePosition() {
const _this = this const _this = this
@ -2416,6 +2557,14 @@ export default {
delete this.mqttPoint[key] delete this.mqttPoint[key]
} }
}, },
//
clearCmtMqttPoint(prefix) {
for (const mqttPointKey in this.allOrientationPoint) {
const key = prefix ? prefix + this.allOrientationPoint[mqttPointKey] : mqttPointKey
viewer.entities.removeById(this.allOrientationPoint[key])
delete this.allOrientationPoint[key]
}
},
// //
doSubscribe() { doSubscribe() {
const { topic, qos } = this.subscription const { topic, qos } = this.subscription

View File

@ -291,5 +291,9 @@ export default class DragEntity {
this.viewer.entities.add(target) this.viewer.entities.add(target)
} }
} }
delEntity(point) {
this.viewer.entities.remove(point)
}
} }

View File

@ -67,7 +67,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="ACCIDENTS_NAME" label="事故类型" /> <el-table-column prop="ACCIDENTS_NAME" label="事故类型" />
<el-table-column prop="USER_ID" label="管控责任人" /> <el-table-column prop="USER_NAME" label="管控责任人" />
<el-table-column label="操作" align="center" width="200"> <el-table-column label="操作" align="center" width="200">
<template slot-scope="{row}"> <template slot-scope="{row}">
<el-button type="success" icon="el-icon-view" size="mini" @click="goDetails(row)"></el-button> <el-button type="success" icon="el-icon-view" size="mini" @click="goDetails(row)"></el-button>
@ -85,7 +85,7 @@
<td class="tbg">管控部门</td> <td class="tbg">管控部门</td>
<td>{{ pd.DEPT_NAME }}</td> <td>{{ pd.DEPT_NAME }}</td>
<td class="tbg">管控责任人</td> <td class="tbg">管控责任人</td>
<td>{{ pd.USER_ID }}</td> <td>{{ pd.USER_NAME || pd.USER_ID }}</td>
</tr> </tr>
<tr> <tr>
<td class="tbg">风险点单元</td> <td class="tbg">风险点单元</td>

View File

@ -519,8 +519,8 @@ export default {
).then((data) => { ).then((data) => {
if (data.message != null) { if (data.message != null) {
this.INSPECTION_DEPARTMENT_ID = '' this.INSPECTION_DEPARTMENT_ID = ''
this.INSPECTOR_List = []
this.INSPECTION_USER_ID = '' this.INSPECTION_USER_ID = ''
this.form.inspectorList.splice(i,1)
this.$message.error(data.message) this.$message.error(data.message)
} else { } else {
// //
@ -544,9 +544,9 @@ export default {
}).catch((e) => { }).catch((e) => {
}) })
} }
this.form.inspectorList = [] // this.form.inspectorList = []
this.form.inspectorList.push({ INSPECTION_INSPECTOR_ID: item.INSPECTION_INSPECTOR_ID, INSPECTION_DEPARTMENT_ID: item.INSPECTION_DEPARTMENT_ID, INSPECTION_USER_ID: '', USER_SIDE: item.USER_SIDE }) // this.form.inspectorList.push({ INSPECTION_INSPECTOR_ID: item.INSPECTION_INSPECTOR_ID, INSPECTION_DEPARTMENT_ID: item.INSPECTION_DEPARTMENT_ID, INSPECTION_USER_ID: '', USER_SIDE: item.USER_SIDE })
this.INSPECTOR_List.push([]) // this.INSPECTOR_List.push([])
}, },
// //
getInspectorList(DEPARTMENT_ID, i) { getInspectorList(DEPARTMENT_ID, i) {

View File

@ -11,7 +11,7 @@ const config = {
weburlNaiwang: 'http://192.168.192.201:8992/', // 附件服务器地址, weburlNaiwang: 'http://192.168.192.201:8992/', // 附件服务器地址,
httpurlNaiwang: 'http://192.168.192.201:8992//qa-prevention-gwj/', // 附件服务器地址, httpurlNaiwang: 'http://192.168.192.201:8992//qa-prevention-gwj/', // 附件服务器地址,
perRealTimeLocUrl: '192.168.210.32:8084/netty/test.io', perRealTimeLocUrl: '192.168.210.32:8084/netty/test.io',
cmtperRealTimeLocUrl: '192.168.0.247:8899', cmtPositionUrl: '172.16.11.146:8899',
cfdfileUrl: 'http://60.2.209.238:8991/file', cfdfileUrl: 'http://60.2.209.238:8991/file',
xfgUrl: 'https://skqhdg.porthebei.com:9006/static/qrcode/views/xgf_hgz/index.html', xfgUrl: 'https://skqhdg.porthebei.com:9006/static/qrcode/views/xgf_hgz/index.html',
messageUrl: 'http://192.168.151.56:8082/static/qrcode/views/xgf_hgz/index.html' messageUrl: 'http://192.168.151.56:8082/static/qrcode/views/xgf_hgz/index.html'