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

hyx_2024-9-9_prevention
huangyuxuan 2024-09-09 16:33:43 +08:00
commit d2d3d2d6f8
13 changed files with 376 additions and 118 deletions

View File

@ -309,7 +309,6 @@ export default {
} }
}, },
setShowModel(model) { setShowModel(model) {
console.log("test===========================")
this.$store.dispatch('permission/setShowModel', model) this.$store.dispatch('permission/setShowModel', model)
}, },
toggleSideBar() { toggleSideBar() {

View File

@ -732,27 +732,27 @@ export default {
callback() callback()
}) })
} }
var hasEmail = (rule, value, callback) => { // var hasEmail = (rule, value, callback) => {
if (value) { // if (value) {
requestFN( // requestFN(
'/user/hasEmail', // '/user/hasEmail',
{ // {
EMAIL: value, // EMAIL: value,
USERNAME: this.form.USERNAME // USERNAME: this.form.USERNAME
} // }
).then((data) => { // ).then((data) => {
if (data.result == 'success') { // if (data.result == 'success') {
callback() // callback()
} else { // } else {
callback(new Error('邮箱重复')) // callback(new Error(''))
} // }
}).catch((e) => { // }).catch((e) => {
//
}) // })
} else { // } else {
callback() // callback()
} // }
} // }
return { return {
ISCHECK: false, ISCHECK: false,
dayTime: [], dayTime: [],

View File

@ -96,7 +96,7 @@
</template> </template>
<el-button v-show="edit" type="primary" icon="el-icon-edit" size="mini" @click="handleEdit(row)"></el-button> <el-button v-show="edit" type="primary" icon="el-icon-edit" size="mini" @click="handleEdit(row)"></el-button>
<el-button v-show="del && row.ISMAIN=='0'" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete(row.USER_ID, row.NAME, row.ISPUSH)"></el-button> <el-button v-show="del && row.ISMAIN=='0'" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete(row.USER_ID, row.NAME, row.ISPUSH)"></el-button>
<el-button v-if="row.ISPUSH == '0'" type="primary" icon="el-icon-position" size="mini" @click="goPush(row)"></el-button> <!-- <el-button v-if="row.ISPUSH == '0'" type="primary" icon="el-icon-position" size="mini" @click="goPush(row)"></el-button>-->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -797,8 +797,7 @@ export default {
SHIFTDUTYONE: this.SHIFTDUTYONE, SHIFTDUTYONE: this.SHIFTDUTYONE,
SHIFTDUTYTWO: this.SHIFTDUTYTWO, SHIFTDUTYTWO: this.SHIFTDUTYTWO,
IS_HAZARDCONFIRMER: this.IS_HAZARDCONFIRMER, IS_HAZARDCONFIRMER: this.IS_HAZARDCONFIRMER,
USER_ID: this.USER_ID, USER_ID: this.USER_ID
ISPUSH: '1'
} }
).then((data) => { ).then((data) => {
this.listLoading = false this.listLoading = false

View File

@ -95,7 +95,8 @@
</template> </template>
<el-button v-show="edit" type="primary" icon="el-icon-edit" size="mini" @click="handleEdit(row)"></el-button> <el-button v-show="edit" type="primary" icon="el-icon-edit" size="mini" @click="handleEdit(row)"></el-button>
<el-button v-show="del && row.ISMAIN=='0'" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete(row.USER_ID, row.NAME, row.ISPUSH)"></el-button> <el-button v-show="del && row.ISMAIN=='0'" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete(row.USER_ID, row.NAME, row.ISPUSH)"></el-button>
<el-button v-if="row.ISPUSH == '0' | row.ISPUSH == undefined" type="primary" icon="el-icon-position" size="mini" @click="goPush(row)"></el-button> <!--暂时隐藏推送功能-->
<!-- <el-button v-if="row.ISPUSH == '0' | row.ISPUSH == undefined" type="primary" icon="el-icon-position" size="mini" @click="goPush(row)"></el-button>-->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@ -73,7 +73,7 @@
<el-tag v-else type="danger"></el-tag> <el-tag v-else type="danger"></el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="380"> <el-table-column label="操作" width="450">
<template slot-scope="{row}"> <template slot-scope="{row}">
<el-button <el-button
v-show="true" v-show="true"
@ -97,6 +97,14 @@
size="mini" size="mini"
@click="handleDelete(row)">删除 @click="handleDelete(row)">删除
</el-button> </el-button>
<!-- 新增按钮检查记录二维码 -->
<el-button
class="tiffany-btn"
icon="el-icon-document"
type="info"
size="mini"
@click="handleShowRecordQr(row)">检查记录二维码
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -143,6 +151,22 @@
<el-button v-print="'#printTest'" type="primary"> </el-button> <el-button v-print="'#printTest'" type="primary"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="dialogRecordFormShow" title="查看检查记录二维码" width="680px" class="top-dialog">
<div id="recordPrintTest" style="border: 1px solid #fff;">
<div class="level-title" style="margin-top:20px">
<h1>检查记录二维码</h1>
</div>
<div class="table-qrcode">
<vue-qr :text="recordQrcodeStr" :margin="0" :size="300" color-dark="#000" color-light="#fff" />
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogRecordFormShow = false"> </el-button>
<el-button v-print="'#recordPrintTest'" type="primary"> </el-button>
</div>
</el-dialog>
<el-dialog v-loading ="listLoading" :visible.sync="dialogEditUser" title="批量修改负责人" width="800px"> <el-dialog v-loading ="listLoading" :visible.sync="dialogEditUser" title="批量修改负责人" width="800px">
<el-form ref="firefightingBatchEditDept" :model="dialogEditUserForm" :rules="dialogEditUserRules" label-width="150px"> <el-form ref="firefightingBatchEditDept" :model="dialogEditUserForm" :rules="dialogEditUserRules" label-width="150px">
<el-row> <el-row>
@ -157,7 +181,6 @@
<el-button @click="dialogEditUser = false"> </el-button> <el-button @click="dialogEditUser = false"> </el-button>
<el-button type="primary" @click="dialogEditUserConfirm"> </el-button> <el-button type="primary" @click="dialogEditUserConfirm"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@ -171,9 +194,7 @@ import waves from '@/directive/waves' // waves directive
import SelectTree from '@/components/SelectTree' import SelectTree from '@/components/SelectTree'
export default { export default {
components: { Pagination, SelectTree, vueQr }, components: { Pagination, SelectTree, vueQr },
directives: { waves }, directives: { waves },
data() { data() {
return { return {
@ -181,7 +202,9 @@ export default {
addBtnType: true, addBtnType: true,
listLoading: true, listLoading: true,
dialogFormShow: false, dialogFormShow: false,
dialogRecordFormShow: false,
qrcodeStr: '', qrcodeStr: '',
recordQrcodeStr: '',
qrInfo: {}, qrInfo: {},
add: false, add: false,
del: false, del: false,
@ -246,39 +269,36 @@ export default {
handleShowQr(ROW) { handleShowQr(ROW) {
this.dialogFormShow = true this.dialogFormShow = true
this.qrInfo = ROW this.qrInfo = ROW
// 2024-07-22 H5created by liu jun
this.qrcodeStr = this.config.weburlWaiwang + 'static/qrcode/views/bsbw/point_list.html?id=' + ROW.FIRE_POINT_ID this.qrcodeStr = this.config.weburlWaiwang + 'static/qrcode/views/bsbw/point_list.html?id=' + ROW.FIRE_POINT_ID
// const json = { },
// MANAGER_TYPE: 'fireListManager', handleShowRecordQr(ROW) {
// FIRE_POINT_ID: ROW.FIRE_POINT_ID this.dialogRecordFormShow = true
// } const json = {
// const jsonStr = JSON.stringify(json) MANAGER_TYPE: 'fireListManager',
// this.qrcodeStr = jsonStr USER_ID: ROW.USER_ID,
DEPARTMENT_ID: ROW.DEPARTMENT_ID
}
this.recordQrcodeStr = JSON.stringify(json)
}, },
handleEdit(FIRE_POINT_ID) { handleEdit(FIRE_POINT_ID) {
this.$parent.FIRE_POINT_ID = FIRE_POINT_ID this.$parent.FIRE_POINT_ID = FIRE_POINT_ID
this.$parent.activeName = 'Edit' this.$parent.activeName = 'Edit'
}, },
selectable(row, index) { selectable(row, index) {
// return row.DEVICE_COUNT == 0
return true return true
}, },
getRowKey(row) { getRowKey(row) {
return row.FIRE_POINT_ID return row.FIRE_POINT_ID
}, },
//
handleAdd() { handleAdd() {
this.$parent.activeName = 'Edit' this.$parent.activeName = 'Edit'
this.$parent.FIRE_POINT_ID = '' this.$parent.FIRE_POINT_ID = ''
this.$parent.FIRE_POINT_CODE = '' this.$parent.FIRE_POINT_CODE = ''
this.$parent.FIRE_POINT_NAME = '' this.$parent.FIRE_POINT_NAME = ''
}, },
//
getQuery() { getQuery() {
// this.$refs.multipleTable.clearSelection()
this.getList() this.getList()
}, },
//
getList(pid) { getList(pid) {
this.listLoading = true this.listLoading = true
this.varList = [] this.varList = []
@ -299,7 +319,8 @@ export default {
}).catch((e) => { }).catch((e) => {
this.listLoading = false this.listLoading = false
}) })
}, goKeyReset() { },
goKeyReset() {
this.FIRE_POINT_NAME = '' this.FIRE_POINT_NAME = ''
this.FIRE_POINT_CODE = '' this.FIRE_POINT_CODE = ''
this.IS_PUNCTUATION = '' this.IS_PUNCTUATION = ''
@ -345,7 +366,6 @@ export default {
this.listLoading = false this.listLoading = false
}) })
}, },
//
getTreeData() { getTreeData() {
requestFN( requestFN(
'/department/listTreeV2', '/department/listTreeV2',
@ -355,7 +375,6 @@ export default {
}).catch((e) => { }).catch((e) => {
}) })
}, },
//
handleEditUser(row) { handleEditUser(row) {
this.editDataIds = [] this.editDataIds = []
if (row.FIRE_POINT_ID) { if (row.FIRE_POINT_ID) {
@ -505,15 +524,15 @@ export default {
} }
</script> </script>
<style scoped > <style scoped>
.returnBtn { .returnBtn {
float: right; float: right;
} }
.app-container { .app-container {
display: flex; /**/ display: flex;
align-items: baseline; align-items: baseline;
} }
.table-qrcode{ .table-qrcode {
text-align: center; text-align: center;
padding-top: 20px; padding-top: 20px;
width: 100%; width: 100%;

View File

@ -81,7 +81,8 @@
</el-table-column> </el-table-column>
<el-table-column prop="STATE" label="审核状态" > <el-table-column prop="STATE" label="审核状态" >
<template slot-scope="{row}"> <template slot-scope="{row}">
{{ translate(row.STATE.toString(), statusList) }} <template v-if="row.IS_FORCED_END ===1"> </template>
<template v-else > {{ translate(row.STATE.toString(), statusList) }} </template>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="examineUserName" label="审核人" > <el-table-column prop="examineUserName" label="审核人" >
@ -89,11 +90,12 @@
{{ row.examineUserName || row.examineDeptName }} {{ row.examineUserName || row.examineDeptName }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" width="200"> <el-table-column label="操作" align="center" width="300">
<template slot-scope="{row}"> <template slot-scope="{row}">
<!-- <el-button :disabled="row.STATE !='11'" type="primary" icon="el-icon-document" size="mini" @click="goDetail(row.HOTWORKAPPLICATION_ID,'apply')"></el-button>--> <!-- <el-button :disabled="row.STATE !='11'" type="primary" icon="el-icon-document" size="mini" @click="goDetail(row.HOTWORKAPPLICATION_ID,'apply')"></el-button>-->
<!-- <el-button :disabled="row.STATE !='-2'" type="primary" icon="el-icon-document" size="mini" @click="goDetail(row.HOTWORKAPPLICATION_ID,'repulse')"></el-button>--> <!-- <el-button :disabled="row.STATE !='-2'" type="primary" icon="el-icon-document" size="mini" @click="goDetail(row.HOTWORKAPPLICATION_ID,'repulse')"></el-button>-->
<el-button icon="el-icon-view" size="mini" @click="goInfo(row.HOTWORKAPPLICATION_ID,'see')"></el-button> <el-button icon="el-icon-view" size="mini" @click="goInfo(row.HOTWORKAPPLICATION_ID,'see')"></el-button>
<el-button v-if="(row.CREATOR == loginUserID || loginUserID == '1' || loginRoleNumber == 'R20201225624685') && row.STATE != 11" type="primary" icon="el-icon-document" size="mini" @click="forcedEnd(row.HOTWORKAPPLICATION_ID,row.STATE)"></el-button>
<!--<el-button v-if="row.STATE=='-6' && row.CREATOR == loginUserID" type="danger" icon="el-icon-delete" plain @click="batchDel(row.HOTWORKAPPLICATION_ID)"></el-button>--> <!--<el-button v-if="row.STATE=='-6' && row.CREATOR == loginUserID" type="danger" icon="el-icon-delete" plain @click="batchDel(row.HOTWORKAPPLICATION_ID)"></el-button>-->
<el-button v-if="(row.CREATOR == loginUserID || loginUserID == '1' || loginRoleNumber == 'R20201225624685') && row.STATE != 11" type="danger" icon="el-icon-delete" plain @click="batchDel(row.HOTWORKAPPLICATION_ID)"></el-button> <el-button v-if="(row.CREATOR == loginUserID || loginUserID == '1' || loginRoleNumber == 'R20201225624685') && row.STATE != 11" type="danger" icon="el-icon-delete" plain @click="batchDel(row.HOTWORKAPPLICATION_ID)"></el-button>
</template> </template>
@ -184,7 +186,7 @@ export default {
{ id: '36', name: '安委会办公室待审批' }, { id: '36', name: '安委会办公室待审批' },
{ id: '37', name: '安全总监待审批' }, { id: '37', name: '安全总监待审批' },
{ id: '10', name: '延时监火' }, { id: '10', name: '延时监火' },
{ id: '11', name: '归档' }, { id: '11', name: '归档' }, // 1.,2.
{ id: '-1', name: '审核不通过' }, { id: '-1', name: '审核不通过' },
{ id: '-2', name: '特级不通过' }, { id: '-2', name: '特级不通过' },
{ id: '-3', name: '关闭归档' }, { id: '-3', name: '关闭归档' },
@ -294,6 +296,7 @@ export default {
this.$parent.HOTWORKAPPLICATION_ID = id this.$parent.HOTWORKAPPLICATION_ID = id
this.$parent.HOTWORKAPPLICATION_TYPE = type this.$parent.HOTWORKAPPLICATION_TYPE = type
}, },
getDictTreeData() { getDictTreeData() {
return new Promise((resolve) => { return new Promise((resolve) => {
requestFN( requestFN(
@ -354,6 +357,35 @@ export default {
}) })
}).catch(() => { }).catch(() => {
}) })
},
forcedEnd(id, STATE) { //
this.$confirm('确定要强制结束吗?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.listLoading = true
requestFN(
'/hotworkapplication/forcedEnd',
{
HOTWORKAPPLICATION_ID: id,
STATE: STATE,
loginUserId: this.loginUserID
}
).then(() => {
this.$message({
message: '结束成功',
type: 'success'
})
this.listLoading = false
this.varList = []
this.listQuery.page = 1
this.getList()
}).catch((e) => {
this.listLoading = false
})
}).catch(() => {
})
} }
} }
} }

View File

@ -55,7 +55,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="block4"> <div v-if="corpInfoId !== '21590a00ea5e462e9ee44dd332dddc26'" class="block4">
<layout-title title="报警列表"/> <layout-title title="报警列表"/>
<div class="content"> <div class="content">
<div class="table"> <div class="table">
@ -72,6 +72,25 @@
</div> </div>
</div> </div>
</div> </div>
<div v-if="corpInfoId === '21590a00ea5e462e9ee44dd332dddc26'" class="block4">
<layout-title title="报警列表"/>
<div class="content">
<div class="table">
<div class="tr">
<div class="td">报警类型</div>
<div class="td">报警时间</div>
<div class="td">触发人</div>
<div class="td">报警地点</div>
</div>
<div v-for="(item,index) in block4List" :key="index" class="tr">
<div class="td">{{ item.alarmName }}</div>
<div class="td">{{ item.alarmTime }}</div>
<div class="td">{{ item.foulUserName }}</div>
<div class="td">{{ item.place }}</div>
</div>
</div>
</div>
</div>
</div> </div>
</template> </template>
@ -173,37 +192,59 @@ export default {
}, },
getData() { getData() {
requestFN( requestFN(
'/map/getAllDwMessage', '/map/getAllDwMessage', { corpId: this.corpInfoId }
{ corpId: this.corpInfoId }
).then((data) => { ).then((data) => {
this.block4List = data.alarmList.list //
this.block1OptionsList = [ if (this.corpInfoId === '035958e685cf4850bc40151c5e0617a6') {
{ this.block4List = data.alarmList.list
title: '在线设备数', this.block1OptionsList = [
img: require('../../../assets/map/renyuan/ico1.png'), {
count: data.orthermessage.onlineDeviceNum title: '在线设备数',
}, img: require('../../../assets/map/renyuan/ico1.png'),
{ count: data.orthermessage.onlineDeviceNum
title: '在线人员', },
img: require('../../../assets/map/renyuan/img1ico1.png'), {
count: data.orthermessage.infoList.UwbBQ.num title: '在线人员',
}, img: require('../../../assets/map/renyuan/img1ico1.png'),
{ count: data.orthermessage.infoList.UwbBQ.num
title: '在线基站数', },
img: require('../../../assets/map/renyuan/ico3.png'), {
count: data.orthermessage.infoList.UwbJiZhan.num title: '在线基站数',
}, img: require('../../../assets/map/renyuan/ico3.png'),
{ count: data.orthermessage.infoList.UwbJiZhan.num
title: '在线摄像头数', },
img: require('../../../assets/map/renyuan/ico4.png'), {
count: data.orthermessage.infoList.HKcamera.num title: '在线摄像头数',
}, img: require('../../../assets/map/renyuan/ico4.png'),
{ count: data.orthermessage.infoList.HKcamera.num
title: '在线报警设备数', },
img: require('../../../assets/map/renyuan/ico5.png'), {
count: data.orthermessage.infoList.tklyr.num title: '在线报警设备数',
} img: require('../../../assets/map/renyuan/ico5.png'),
] count: data.orthermessage.infoList.tklyr.num
}
]
}
if (this.corpInfoId === '21590a00ea5e462e9ee44dd332dddc26') {
this.block1OptionsList = [
{
title: '总设备数',
img: require('../../../assets/map/renyuan/img1ico1.png'),
count: data.orthermessage.onlineDeviceNum
},
{
title: '在线人员数',
img: require('../../../assets/map/renyuan/img1ico1.png'),
count: data.orthermessage.lockNum
},
{
title: '离线人数',
img: require('../../../assets/map/renyuan/img1ico1.png'),
count: data.orthermessage.unLockNum
}
]
this.block4List = data.orthermessage.alarmList
}
}).catch((e) => { }).catch((e) => {
this.$message.error(e) this.$message.error(e)
}) })

View File

@ -1,5 +1,5 @@
<template> <template>
<div class="app-container print-work" style="width: 100%;"> <div class="app-container print-work">
<div class="level-title"> <div class="level-title">
<h1>人员信息</h1> <h1>人员信息</h1>
</div> </div>
@ -29,12 +29,12 @@
<td>{{ otherInfo?otherInfo.postName:'' }}</td> <td>{{ otherInfo?otherInfo.postName:'' }}</td>
</tr> </tr>
</table> </table>
<table class="table-ui"> <!-- 一公司人员定位页面 -->
<table v-if="corpId === '035958e685cf4850bc40151c5e0617a6'" class="table-ui">
<tr> <tr>
<td class="bbg-transparent">姓名</td> <td class="bbg-transparent">姓名</td>
<td >{{ info?info.userName:'' }}</td> <td >{{ info?info.userName:'' }}</td>
</tr> </tr>
<tr> <tr>
<td class="bbg-transparent">定位卡号:</td> <td class="bbg-transparent">定位卡号:</td>
<td >{{ info?info.id:'' }}</td> <td >{{ info?info.id:'' }}</td>
@ -48,6 +48,25 @@
<td>{{ info?info.departmentName:'' }}</td> <td>{{ info?info.departmentName:'' }}</td>
</tr> </tr>
</table> </table>
<!-- 九公司人员定位页面 -->
<table v-if="corpId === '21590a00ea5e462e9ee44dd332dddc26'" class="table-ui">
<tr>
<td class="bbg-transparent">姓名</td>
<td >{{ (info && info.name) ? info.name : '未绑定人员' }}</td>
</tr>
<tr>
<td class="bbg-transparent">定位卡号:</td>
<td >{{ info?info.id:'' }}</td>
</tr>
<tr>
<td class="bbg-transparent">定位卡电量</td>
<td >{{ info?info.battery:'' }}</td>
</tr>
<tr>
<td class="bbg-transparent">公司</td>
<td>{{ info?info.corpName:'' }}</td>
</tr>
</table>
</div> </div>
</template> </template>

View File

@ -182,6 +182,18 @@
</template> </template>
</template> </template>
</template> </template>
<transition
enter-active-class="animate__animated animate__fadeInDown"
leave-active-class="animate__animated animate__fadeOutUp"
>
<div v-if="isPeopleTrajectory" class="people_trajectory">
<el-select v-model="peopleTrajectoryValue" popper-class="people_trajectory_select">
<el-option v-for="item in onePerLocArr" :key="item.id" :value="item.id" :label="item.id"/>
</el-select>
<el-button class="search_btn" @click="addTrajectory"></el-button>
<el-button class="reset_btn" @click="()=>{removeTrajectory();peopleTrajectoryValue = ''}">重置</el-button>
</div>
</transition>
</div> </div>
</transition> </transition>
<div class="right_options"> <div class="right_options">
@ -656,26 +668,17 @@ export default {
checkImg: require('../../assets/map/gangkou_index/buttom/ico21_on.png'), checkImg: require('../../assets/map/gangkou_index/buttom/ico21_on.png'),
containAuthorization: [], containAuthorization: [],
eliminateAuthorization: [] eliminateAuthorization: []
},
{
label: '人员轨迹',
dialog_width: '1200px',
check: false,
type: 'peopleTrajectory',
img: require('../../assets/map/gangkou_index/buttom/ico29.png'),
checkImg: require('../../assets/map/gangkou_index/buttom/ico29_on.png'),
containAuthorization: [],
eliminateAuthorization: []
} }
// {
// label: '',
// dialog_width: '1200px',
// check: false,
// type: 'platcamera',
// img: require('../../assets/map/gangkou_index/buttom/ico26.png'),
// checkImg: require('../../assets/map/gangkou_index/buttom/ico26_on.png'),
// containAuthorization: [],
// eliminateAuthorization: []
// }
// {
// label: '',
// dialog_width: '1200px',
// check: false,
// img: require('../../assets/map/gangkou_index/buttom/ico22.png'),
// checkImg: require('../../assets/map/gangkou_index/buttom/ico22_on.png'),
// containAuthorization: [],
// eliminateAuthorization: []
// }
] ]
}, },
{ {
@ -1091,7 +1094,9 @@ export default {
longitude: '', longitude: '',
latitude: '' latitude: ''
}, },
trajectoryEntityCollection: {} trajectoryEntityCollection: {},
isPeopleTrajectory: false,
peopleTrajectoryValue: ''
} }
}, },
mounted() { mounted() {
@ -1226,12 +1231,13 @@ export default {
} }
}, Cesium.ScreenSpaceEventType.RIGHT_CLICK) }, Cesium.ScreenSpaceEventType.RIGHT_CLICK)
}, },
addTrajectory(point_id, corpInfoId) { addTrajectory() {
this.removeTrajectory()
requestFN( requestFN(
'/map/getPersonTrace', '/map/getPersonTrace',
{ {
id: point_id, id: this.peopleTrajectoryValue,
corpId: corpInfoId corpId: this.CORP_INFO_ID
} }
).then((data) => { ).then((data) => {
if (data.list) { if (data.list) {
@ -1671,6 +1677,7 @@ export default {
this.bottomOptionsList[i].list[j].check = false this.bottomOptionsList[i].list[j].check = false
} }
} }
this.isPeopleTrajectory = false
} }
}, },
clearAllBottomOptionsItemsEntityCollection() { clearAllBottomOptionsItemsEntityCollection() {
@ -1757,10 +1764,22 @@ export default {
} }
this.carLocArr = [] this.carLocArr = []
} }
if (urlType === 'peopleTrajectory') {
this.isPeopleTrajectory = false
}
if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '035958e685cf4850bc40151c5e0617a6' && urlType === 'peoplePosition') { if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '035958e685cf4850bc40151c5e0617a6' && urlType === 'peoplePosition') {
this.doUnSubscribe() this.doUnSubscribe()
this.clearMqttPoint('+/UwbBQ/') this.clearMqttPoint('+/UwbBQ/')
this.removeTrajectory() this.removeTrajectory()
for (let i = 0; i < this.bottomOptionsList[pindex].list.length; i++) {
if (this.bottomOptionsList[pindex].list[i].type === 'peopleTrajectory') {
if (this.bottomOptionsList[pindex].list[i].check) {
this.bottomOptionsList[pindex].list[i].check = false
this.isPeopleTrajectory = false
break
}
}
}
} }
if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '21590a00ea5e462e9ee44dd332dddc26' && urlType === 'peoplePosition') { if (this.gangkouActive === '00003' && this.CORP_INFO_ID === '21590a00ea5e462e9ee44dd332dddc26' && urlType === 'peoplePosition') {
this.clearRYDWPoint('+/UwbBQ/') this.clearRYDWPoint('+/UwbBQ/')
@ -1778,6 +1797,23 @@ export default {
} }
}) })
} else { } else {
if (urlType === 'peopleTrajectory') {
let flag = false
for (let i = 0; i < this.bottomOptionsList[pindex].list.length; i++) {
if (this.bottomOptionsList[pindex].list[i].type === 'peoplePosition') {
if (!this.bottomOptionsList[pindex].list[i].check) {
flag = true
break
}
}
}
if (flag) {
this.$message.warning('请先选择人员定位!!!')
return
} else {
this.isPeopleTrajectory = true
}
}
this.bottomOptionsList[pindex].list[index].check = true this.bottomOptionsList[pindex].list[index].check = true
if (this.gangkouActive === '00004') { if (this.gangkouActive === '00004') {
this.cfdBottomOptionsList[pindex].list[index].check = true this.cfdBottomOptionsList[pindex].list[index].check = true
@ -2341,10 +2377,10 @@ export default {
_this.fwebsocket = new WebSocket(encodeURI(wsUrl)) _this.fwebsocket = new WebSocket(encodeURI(wsUrl))
_this.fwebsocket.onmessage = function(message) { _this.fwebsocket.onmessage = function(message) {
console.info('接收消息') console.info('接收消息')
const peopleList = JSON.parse(message.data).data.data const peopleList = JSON.parse(message.data)
for (let i = 0; i < peopleList.length; i++) { for (let i = 0; i < peopleList.length; i++) {
const item = peopleList[i] const item = peopleList[i]
if ((!item) || (item.ts === 1)) continue if ((!item)) continue
// //
const index = _this.onePerLocArr.findIndex(item1 => { const index = _this.onePerLocArr.findIndex(item1 => {
return item1.id.toString() === item.id.toString() return item1.id.toString() === item.id.toString()
@ -2360,6 +2396,7 @@ export default {
} else { } else {
const perLoc = { const perLoc = {
id: item.id, id: item.id,
name: item.name,
x: x, x: x,
y: y, y: y,
icon_type: 'img4_0' + pointColor, icon_type: 'img4_0' + pointColor,
@ -3099,9 +3136,52 @@ export default {
transform: translateY(0); transform: translateY(0);
} }
} }
.people_trajectory{
position: absolute;
top: -60px;
left: 0;
width: 400px;
padding: 10px;
background-image: linear-gradient(to right, rgb(31 62 129 / 57%) 0%, rgb(17 93 255 / 40%) 50%, rgb(31 62 129 / 57%) 100%);
.search_btn{
background-color: #1563e3;
color: #fff;
border-color: #1563e3;
}
.reset_btn{
background-color: #558be5;
color: #fff;
border-color: #558be5;
}
}
</style> </style>
<style> <style>
.cesium-viewer-toolbar, .cesium-viewer-fullscreenContainer, .cesium-infoBox-visible { .cesium-viewer-toolbar, .cesium-viewer-fullscreenContainer, .cesium-infoBox-visible {
display: none !important; display: none !important;
} }
.people_trajectory .el-input__inner{
background-color: #100693 !important;
border-color: #100693 !important;
color: #fff !important;
}
.people_trajectory_select{
background-color: #100693 !important;
border-color: #100693 !important;
}
.people_trajectory_select .el-select-dropdown__item{
color: #fff !important;
}
.people_trajectory_select .el-select-dropdown__item.hover{
background-color: #2111ec !important;
color: #fff !important;
}
.people_trajectory_select .popper__arrow{
border-top-color: #100693 !important;
border-bottom-color: #100693 !important;
}
.people_trajectory_select .popper__arrow::after{
border-top-color: #100693 !important;
border-bottom-color: #100693 !important;
}
</style> </style>

View File

@ -30,6 +30,16 @@ export default class DragEntity {
heightReference: Cesium.HeightReference.CLAMP_TO_GROUND, heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
disableDepthTestDistance: Number.POSITIVE_INFINITY disableDepthTestDistance: Number.POSITIVE_INFINITY
}, },
label: {
text: point.name ? point.name : point.id,
font: '13px sans-serif',
pixelOffset: new Cesium.Cartesian2(0, -55),
showBackground: true,
// eslint-disable-next-line new-cap
backgroundColor: new Cesium.Color.fromCssColorString('rgba(20, 58, 142, 1)'),
backgroundPadding: new Cesium.Cartesian2(7, 5),
disableDepthTestDistance: Number.POSITIVE_INFINITY
},
orientation: new Cesium.VelocityOrientationProperty(point.property), orientation: new Cesium.VelocityOrientationProperty(point.property),
monitoItems: { monitoItems: {
@ -43,7 +53,9 @@ export default class DragEntity {
this.viewer.clock.clockRange = Cesium.ClockRange.CLAMPED this.viewer.clock.clockRange = Cesium.ClockRange.CLAMPED
this.viewer.clock.shouldAnimate = false this.viewer.clock.shouldAnimate = false
} }
delEntity(point) {
this.viewer.entities.remove(point)
}
getPosition(point) { getPosition(point) {
if (this.viewer.clock.shouldAnimate === false) { if (this.viewer.clock.shouldAnimate === false) {
this.viewer.clock.shouldAnimate = true this.viewer.clock.shouldAnimate = true

View File

@ -595,7 +595,7 @@ export default {
this.$refs.form.validate(valid => { this.$refs.form.validate(valid => {
if (valid) { if (valid) {
requestFN( requestFN(
'/hidden/finalcheck', '/safetyenvironmental/V2/finalcheck',
{ {
HIDDEN_ID: this.HIDDEN_ID, HIDDEN_ID: this.HIDDEN_ID,
FINAL_CHECKDESCR: this.form.FINAL_CHECKDESCR, FINAL_CHECKDESCR: this.form.FINAL_CHECKDESCR,

View File

@ -330,7 +330,7 @@ export default {
hiddenCount(INSPECTION_ID) { hiddenCount(INSPECTION_ID) {
this.listLoading = true this.listLoading = true
requestFN( requestFN(
'/safetyenvironmentalexplain/hiddencount', '/safetyenvironmental/V2/hiddencount',
{ {
INSPECTION_ID: INSPECTION_ID INSPECTION_ID: INSPECTION_ID
} }

View File

@ -13,6 +13,16 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="是否为相关方" prop="IS_XGF">
<el-radio-group id="IS_XGF" ref="IS_XGF" v-model="form.IS_XGF" @change="getXgfTreeData">
<el-radio :label="'1'" ></el-radio>
<el-radio :label="'0'" ></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="被检查单位" prop="INSPECTED_DEPARTMENT_ID"> <el-form-item label="被检查单位" prop="INSPECTED_DEPARTMENT_ID">
@ -86,7 +96,7 @@
<el-col :span="11"> <el-col :span="11">
<el-form-item label="检查人员" prop="INSPECTION_USER_ID"> <el-form-item label="检查人员" prop="INSPECTION_USER_ID">
<el-select v-model="item.INSPECTION_USER_ID" clearable placeholder="请选择检查人员" @change="changeHiddenUserList"> <el-select v-model="item.INSPECTION_USER_ID" clearable placeholder="请选择检查人员" @change="changeHiddenUserList">
<el-option v-for="data in INSPECTOR_List[index]" :key="data.USER_ID" :label="data.NAME" :value="data.USER_ID" /> <el-option v-for="data in INSPECTED_SITEUSER_List" :key="data.USER_ID" :label="data.NAME" :value="data.USER_ID" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -421,7 +431,8 @@ export default {
CONFIRM_MESSAGE_SIGN: '', CONFIRM_MESSAGE_SIGN: '',
CONFIRM_MESSAGE_TIME: '', CONFIRM_MESSAGE_TIME: '',
situationList: [{ INSPECTION_SITUATION_ID: '', SITUATION: '' }], // situationList: [{ INSPECTION_SITUATION_ID: '', SITUATION: '' }], //
hiddenList: [{ ...this.hiddenForm }] // hiddenList: [{ ...this.hiddenForm }], //
IS_XGF: '' //
}, },
hiddenCurIndex: -1, hiddenCurIndex: -1,
hdFile: [], // hdFile: [], //
@ -519,7 +530,7 @@ export default {
this.INSPECTED_SITEUSER_List = [] this.INSPECTED_SITEUSER_List = []
} }
if (newVal != null && newVal != '') { if (newVal != null && newVal != '') {
this.getUserList(newVal) this.getXgfUserList(newVal)
} }
}, },
immediate: false immediate: false
@ -587,8 +598,9 @@ export default {
this.INSPECTOR_List.push([]) this.INSPECTOR_List.push([])
}, },
updateInspecteDept(DEPARTMENT_ID, i) { updateInspecteDept(DEPARTMENT_ID, i) {
this.form.inspectorList[i].INSPECTION_USER_ID = '' // this.form.inspectorList[i].INSPECTION_USER_ID = ''
this.getInspectorList(DEPARTMENT_ID, i) // this.getInspectorList(DEPARTMENT_ID, i)
this.getXgfUserList(DEPARTMENT_ID)
}, },
// //
getInspectorList(DEPARTMENT_ID, i) { getInspectorList(DEPARTMENT_ID, i) {
@ -1039,6 +1051,50 @@ export default {
}) })
}) })
}, },
//
getXgfTreeData(value) {
console.info(value)
if (value == '1') {
requestFN(
'/department/getXgfListTree',
{}
).then((data) => {
this.treeData = this.listTransTree(JSON.parse(data.zTreeNodes), 'id', 'pId', 'nodes')
this.treeDataInspectDept = this.listTransTree(JSON.parse(data.zTreeNodes), 'id', 'pId', 'nodes')
}).catch((e) => {
})
} else {
requestFN(
'/department/listTree',
{}
).then((data) => {
this.treeData = this.listTransTree(JSON.parse(data.zTreeNodes), 'id', 'pId', 'nodes')
this.treeDataInspectDept = this.listTransTree(JSON.parse(data.zTreeNodes), 'id', 'pId', 'nodes')
}).catch((e) => {
})
}
},
//
getXgfUserList(DEPARTMENT_ID) {
console.info(this.form.IS_XGF)
if (this.form.IS_XGF == '1') {
requestFN(
'/user/xgfListAll',
{ DEPARTMENT_ID: DEPARTMENT_ID }
).then((data) => {
this.INSPECTED_SITEUSER_List = data.userList
}).catch((e) => {
})
} else {
requestFN(
'/user/listAll',
{ DEPARTMENT_ID: DEPARTMENT_ID }
).then((data) => {
this.INSPECTED_SITEUSER_List = data.userList
}).catch((e) => {
})
}
},
// //
getHiddenReginTreeList() { getHiddenReginTreeList() {
return new Promise((resolve) => { return new Promise((resolve) => {