|
@@ -59,6 +59,7 @@
|
|
|
</div> -->
|
|
|
<!-- 底部工具栏end -->
|
|
|
<div class="fire-m">
|
|
|
+ <el-button size="small" icon="el-icon-s-grid" @click="showTVWallDiaLog()">火点联动</el-button>
|
|
|
<el-button size="small" icon="el-icon-upload" @click="showheatPlotting()">火灾蔓延</el-button>
|
|
|
</div>
|
|
|
<!-- 地图 -->
|
|
@@ -159,10 +160,10 @@
|
|
|
size="small" icon="el-icon-download" @click="updateCentereventTEventcatalogueStatus('cz',true)">处置
|
|
|
</el-button>
|
|
|
</div>
|
|
|
- <div class="z-info-btm-grp-right">
|
|
|
- <el-button size="small" icon="el-icon-mic" @click="Meeting()">会议
|
|
|
- </el-button>
|
|
|
- </div>
|
|
|
+ <!--<div class="z-info-btm-grp-right">-->
|
|
|
+ <!--<el-button size="small" icon="el-icon-mic" @click="Meeting()">会议-->
|
|
|
+ <!--</el-button>-->
|
|
|
+ <!--</div>-->
|
|
|
</div>
|
|
|
<div class="z-info-btm-input">
|
|
|
<el-input type="textarea" v-model="eventLog"
|
|
@@ -239,10 +240,15 @@
|
|
|
<div class="z-info-btm-input-btn"
|
|
|
v-else-if="eventStatusValue=='forest_event_status_5'&&statusFlag=='1'">
|
|
|
<el-button size="small"
|
|
|
- icon="el-icon-success" style="text-align:left"
|
|
|
+ icon="el-icon-success" style="text-align:left" v-if="eventType == 1"
|
|
|
@click="updateCentereventTEventcatalogueStatus('gd',false)">
|
|
|
填报
|
|
|
</el-button>
|
|
|
+ <el-button size="small"
|
|
|
+ icon="el-icon-success" style="text-align:left" v-if="eventType != 1"
|
|
|
+ @click="updateCentereventTEventcatalogueStatus('gd',true)">
|
|
|
+ 归档
|
|
|
+ </el-button>
|
|
|
<el-button size="small" icon="el-icon-chat-dot-square" @click="sendEventLog()">发送
|
|
|
</el-button>
|
|
|
</div>
|
|
@@ -271,7 +277,7 @@
|
|
|
class="top-dialog"
|
|
|
@close="cancelEventConfirm()">
|
|
|
<el-form label-width="80px">
|
|
|
- <el-form-item label="火灾半径" v-if="eventStatusButton=='qs' &&eventTypeXl==null">
|
|
|
+ <el-form-item label="火灾半径" v-if="eventStatusButton=='qs' && eventTypeXl==null">
|
|
|
<el-input type="number" v-model="sendHuoZaiBanJing" placeholder="请输入火灾半径"/>
|
|
|
</el-form-item>
|
|
|
<el-form-item :label="deptNameitem">
|
|
@@ -466,8 +472,8 @@
|
|
|
</el-form>
|
|
|
</el-dialog>
|
|
|
<!-- 会议弹窗 start -->
|
|
|
- <el-dialog title="视频会议" :visible.sync="showResponsibilityDialog" v-if="showResponsibilityDialog" width="65%"
|
|
|
- @close="closeResponsibilityDialog()">
|
|
|
+ <el-dialog title="视频会议" :visible.sync="showMeetingMsgDialog" v-if="showMeetingMsgDialog" width="65%"
|
|
|
+ @close="closeMeetingMsgDialog()">
|
|
|
<el-form label-width="1500px">
|
|
|
<div class="bottom">
|
|
|
<!-- 左侧菜单栏 -->
|
|
@@ -1057,6 +1063,7 @@
|
|
|
<el-dialog title="人员选择" :visible.sync="showFindUserByDept" width="40%">
|
|
|
<findUserByDept v-if="showFindUserByDept" ref="findUserByDept" :deptId="iconCurrentIndex" @addSelection="addSelection"></findUserByDept>
|
|
|
</el-dialog>
|
|
|
+ <TVWall ref="TVWall"></TVWall>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -1068,6 +1075,7 @@ import vBottomMenu from '@/components/vBottomMenu.vue' //一体化公共底部
|
|
|
import eventLogUpload from '@/views/eventLogUpload.vue' //日志上传文件
|
|
|
import areaSupermap from '@/components/supermap'//区域标记地图
|
|
|
import TcPlayer from '@/components/TcPlayer' //视频预览
|
|
|
+import TVWall from '@/components/TVWall.vue' //电视墙弹窗
|
|
|
import findUserByDept from '@/views/findUserByDept' //责任人选择弹框
|
|
|
import {
|
|
|
getEventDetail,
|
|
@@ -1086,7 +1094,7 @@ import {
|
|
|
dutysystemRemove,
|
|
|
sendMessage,
|
|
|
userFeginlist,
|
|
|
- eventHandling
|
|
|
+ eventHandling, initByCameras
|
|
|
} from '@/api/forest'
|
|
|
import {
|
|
|
treeselectAll as deptTreeselect
|
|
@@ -1116,12 +1124,55 @@ export default {
|
|
|
vBottomMenu,
|
|
|
supermapDialog,
|
|
|
eventLogUpload,
|
|
|
+ TVWall,
|
|
|
areaSupermap,
|
|
|
TcPlayer,
|
|
|
findUserByDept
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ aa:[
|
|
|
+ {
|
|
|
+ "switchTab":"2",
|
|
|
+ "treeLabels":[
|
|
|
+ {
|
|
|
+ "id":null,
|
|
|
+ "labelCode":"999",
|
|
|
+ "labelName":"电视墙",
|
|
|
+ "parentLabelCode":""
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id":"spcamera00288",
|
|
|
+ "labelCode":"22030300001321100289",
|
|
|
+ "labelName":"四平市伊通县西苇椽子沟村",
|
|
|
+ "parentLabelCode":"999"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "labelChannels":[
|
|
|
+ {
|
|
|
+ "labelCode":"22030300001321100289",
|
|
|
+ "channelDates":[
|
|
|
+ {
|
|
|
+ "channelCode":"22030300001321100289",
|
|
|
+ "channelName":"四平市伊通县西苇椽子沟村可见光",
|
|
|
+ "channelSn":null,
|
|
|
+ "cameraType":null,
|
|
|
+ "online":"1",
|
|
|
+ "cameraCode":null
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "channelCode":"22030300001321100290",
|
|
|
+ "channelName":"四平市伊通县西苇椽子沟村热成像",
|
|
|
+ "channelSn":null,
|
|
|
+ "cameraType":null,
|
|
|
+ "online":"1",
|
|
|
+ "cameraCode":null
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
showFindUserByDept: false,//责任人选择框
|
|
|
/** ----------------------------------摄像头预览开始------------------------------------- */
|
|
|
//大华
|
|
@@ -1277,6 +1328,7 @@ export default {
|
|
|
visuForestCloudYuAnBo: null,
|
|
|
eventDialog: false,
|
|
|
showResponsibilityDialog: false,//责任制弹窗
|
|
|
+ showMeetingMsgDialog: false,//发送会议短信弹窗
|
|
|
depteventList: [],//责任制部门列表
|
|
|
iconCurrentIndex: '',
|
|
|
dutysystemDeptName: '',
|
|
@@ -1434,6 +1486,13 @@ export default {
|
|
|
this.iconCurrentIndex = ''
|
|
|
this.showResponsibilityDialog = false
|
|
|
},
|
|
|
+ closeMeetingMsgDialog() {//会议弹窗关闭
|
|
|
+ this.dutysystemTableData = []
|
|
|
+ this.dutysystemDeptName = ''
|
|
|
+ this.depteventId = ''
|
|
|
+ this.iconCurrentIndex = ''
|
|
|
+ this.showMeetingMsgDialog = false
|
|
|
+ },
|
|
|
addResponsibilityDialog() {//责任制保存
|
|
|
let reg_user = /^[\u4e00-\u9fa5]{2,4}$/; //2-4个中文字符正则
|
|
|
let reg_tel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/; //11位手机号码正则
|
|
@@ -1459,33 +1518,7 @@ export default {
|
|
|
this.closeResponsibilityDialog();
|
|
|
})
|
|
|
},
|
|
|
- sendMsg() {// 视频会议发送短信
|
|
|
- let reg_user = /^[\u4e00-\u9fa5]{2,4}$/; //2-4个中文字符正则
|
|
|
- let reg_tel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/; //11位手机号码正则
|
|
|
- for(let i in this.dutysystemTableData){
|
|
|
- if(!reg_user.test(this.dutysystemTableData[i].name)){
|
|
|
- this.$message.error(`请输入正确姓名!`)
|
|
|
- return;
|
|
|
- }
|
|
|
- if(!reg_tel.test(this.dutysystemTableData[i].telphone)){
|
|
|
- this.$message.error(`请输入正确手机号码!`)
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- if(this.dutysystemTableData[i].id==null || this.dutysystemTableData[i].id==''){
|
|
|
- this.dutysystemTableData[i].dept = this.dutysystemDeptName;
|
|
|
- this.dutysystemTableData[i].depteventId = this.depteventId;
|
|
|
- }
|
|
|
- }
|
|
|
- const param = {centereventTDutySystemList:this.dutysystemTableData,eventCode:this.eventCode,eventName:this.eventName,eventId:this.eventId}
|
|
|
- sendMessage(param).then(res => {
|
|
|
- this.$message.success(`短信发送成功!`)
|
|
|
- this.dutysystemSelect(this.iconCurrentIndex, this.dutysystemDeptName, this.depteventId);
|
|
|
- this.closeResponsibilityDialog();
|
|
|
- })
|
|
|
- },
|
|
|
/************************************责任制-结束****************************************/
|
|
|
-
|
|
|
showheatPlotting() {
|
|
|
// if (!this.$refs.supermapDialog.isheatPlotting) {
|
|
|
// this.$refs.supermapDialog.showheatPlotting(this.latitude, this.longitude)
|
|
@@ -1496,6 +1529,27 @@ export default {
|
|
|
this.eventDialog = false;
|
|
|
this.$emit('getFirespread', this.eventCode);
|
|
|
},
|
|
|
+ showTVWallDiaLog() {
|
|
|
+ this.initByCameras()
|
|
|
+ // this.$refs.TVWall.showTVWall();
|
|
|
+
|
|
|
+ },
|
|
|
+ initByCameras()
|
|
|
+ {
|
|
|
+ const params=Object.assign({})
|
|
|
+ params.longitude=this.longitude;
|
|
|
+ params.latitude=this.latitude;
|
|
|
+ params.type='1'
|
|
|
+ initByCameras(params).then(res=>
|
|
|
+ {
|
|
|
+ this.$refs.TVWall.showTVWall1(this.longitude,this.latitude,res.data);
|
|
|
+ this.$refs.supermap.isEditableLayers = false
|
|
|
+ this.$refs.bottomMenu.showChild = false
|
|
|
+ this.$refs.bottomMenu.showBanChild = false
|
|
|
+ this.$refs.bottomMenu.showChangChild = false
|
|
|
+ })
|
|
|
+
|
|
|
+ },
|
|
|
showUpdateYjYuAn() {
|
|
|
listYuAn().then(res => {
|
|
|
//关联预案列表
|
|
@@ -1631,7 +1685,7 @@ export default {
|
|
|
this.sendDeptName = null
|
|
|
this.sendUserFegin = []
|
|
|
this.sendEventType = null
|
|
|
- this.sendHuoZaiBanJing = null
|
|
|
+ this.sendHuoZaiBanJing = 0
|
|
|
this.sendGuanLianYuAn = null
|
|
|
this.longitude = null
|
|
|
this.latitude = null
|
|
@@ -1654,7 +1708,7 @@ export default {
|
|
|
this.sendDeptName = null
|
|
|
this.sendUserFegin = []
|
|
|
this.sendEventType = null
|
|
|
- this.sendHuoZaiBanJing = null
|
|
|
+ this.sendHuoZaiBanJing = 0
|
|
|
this.sendGuanLianYuAn = null
|
|
|
this.sendTaskTitle = null
|
|
|
this.sendTaskSource = null
|
|
@@ -1900,30 +1954,33 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
} else if (eventStatus == 'gd') {
|
|
|
- let double = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/; //数字和两位小数
|
|
|
- let number = /^[+]{0,1}(\d+)$/g; //正整数
|
|
|
+ if(that.eventType == 1){
|
|
|
+ let double = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/; //数字和两位小数
|
|
|
+ let number = /^[+]{0,1}(\d+)$/g; //正整数
|
|
|
|
|
|
- if(!double.test(that.table2.areaTotal)){
|
|
|
- that.$message.error(`面积只能填写到小数后两位!`)
|
|
|
- return
|
|
|
- }
|
|
|
- if(!number.test(that.table2.peopleTotal)){
|
|
|
- that.$message.error(`人员请填写正整数!`)
|
|
|
- return
|
|
|
- }
|
|
|
- if(that.table2.forestComposition == '' || that.table2.forestComposition==null){
|
|
|
- that.$message.error(`林木组成不能为空!`)
|
|
|
- return
|
|
|
- }
|
|
|
- if(that.table2.forestToken == '' || that.table2.forestToken==null){
|
|
|
- that.$message.error(`林令不能为空!`)
|
|
|
- return
|
|
|
- }
|
|
|
+ if(!double.test(that.table2.areaTotal)){
|
|
|
+ that.$message.error(`面积只能填写到小数后两位!`)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(!number.test(that.table2.peopleTotal)){
|
|
|
+ that.$message.error(`人员请填写正整数!`)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(that.table2.forestComposition == '' || that.table2.forestComposition==null){
|
|
|
+ that.$message.error(`林木组成不能为空!`)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(that.table2.forestToken == '' || that.table2.forestToken==null){
|
|
|
+ that.$message.error(`林令不能为空!`)
|
|
|
+ return
|
|
|
+ }
|
|
|
if(that.table2.porosities == '' || that.table2.porosities==null){
|
|
|
- that.$message.error(`疏密度不能为空!`)
|
|
|
- return
|
|
|
+ that.$message.error(`疏密度不能为空!`)
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
+
|
|
|
//事件处理流程--归档
|
|
|
let param = {
|
|
|
deptId: that.deptId,
|
|
@@ -1952,10 +2009,6 @@ export default {
|
|
|
return
|
|
|
}
|
|
|
if (eventStatus == 'qs') {
|
|
|
- if (that.sendHuoZaiBanJing == '' || that.sendHuoZaiBanJing == null) {
|
|
|
- that.$message.error(`请输入火灾半径!`)
|
|
|
- return
|
|
|
- }
|
|
|
if (that.sendEventType == '' || that.sendEventType == null) {
|
|
|
that.$message.error(`请选择事件类型!`)
|
|
|
return
|
|
@@ -2459,6 +2512,32 @@ export default {
|
|
|
},
|
|
|
/** ----------------------------------海康摄像头预览结束------------------------------------- */
|
|
|
/** ----------------------------------视频会议开始------------------------------------- */
|
|
|
+ sendMsg() {// 视频会议发送短信
|
|
|
+ let reg_user = /^[\u4e00-\u9fa5]{2,4}$/; //2-4个中文字符正则
|
|
|
+ let reg_tel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/; //11位手机号码正则
|
|
|
+ for(let i in this.dutysystemTableData){
|
|
|
+ if(!reg_user.test(this.dutysystemTableData[i].name)){
|
|
|
+ this.$message.error(`请输入正确姓名!`)
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(!reg_tel.test(this.dutysystemTableData[i].telphone)){
|
|
|
+ this.$message.error(`请输入正确手机号码!`)
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if(this.dutysystemTableData[i].id==null || this.dutysystemTableData[i].id==''){
|
|
|
+ this.dutysystemTableData[i].dept = this.dutysystemDeptName;
|
|
|
+ this.dutysystemTableData[i].depteventId = this.depteventId;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ const param = {centereventTDutySystemList:this.dutysystemTableData,eventCode:this.eventCode,eventName:this.eventName,eventId:this.eventId}
|
|
|
+ sendMessage(param).then(res => {
|
|
|
+ this.$message.success(res.msg);
|
|
|
+ this.dutysystemSelect(this.iconCurrentIndex, this.dutysystemDeptName, this.depteventId);
|
|
|
+ this.showMeetingMsgDialog = false;
|
|
|
+ this.joinMeeting();
|
|
|
+ })
|
|
|
+ },
|
|
|
joinMeeting(){
|
|
|
let hwMeetingUrl;
|
|
|
selectConfigKey('hwMeetingUrl').then(res => {
|
|
@@ -2466,16 +2545,15 @@ export default {
|
|
|
window.open(hwMeetingUrl+"/joinConferences/"+this.eventId+"/"+this.eventName+"的会议"+"/"+Cookies.get("nickName"));
|
|
|
})
|
|
|
},
|
|
|
- /** ----------------------------------视频会议结束------------------------------------- */
|
|
|
- /** ----------------------------------点击视频会议开始弹窗 --------------------------*/
|
|
|
- Meeting() {//弹出责任制弹窗
|
|
|
+ Meeting() {//弹出发送会议短信弹窗
|
|
|
let param = { eventCode: this.eventCode }
|
|
|
centereventtdepteventList(param).then(res => {
|
|
|
this.depteventList = res.data
|
|
|
- this.showResponsibilityDialog = true
|
|
|
+ this.showMeetingMsgDialog = true
|
|
|
this.initDutysystemTableData();
|
|
|
})
|
|
|
},
|
|
|
+ /** ----------------------------------视频会议结束------------------------------------- */
|
|
|
}
|
|
|
}
|
|
|
|