|
@@ -159,6 +159,8 @@
|
|
|
<el-button size="small" icon="el-icon-download"
|
|
|
@click="toImage()">截图上传
|
|
|
</el-button>
|
|
|
+ <el-button size="small" icon="el-icon-s-flag" @click="showResponsibility()">责任制
|
|
|
+ </el-button>
|
|
|
</div>
|
|
|
<div class="z-info-btm-grp-right">
|
|
|
<el-button size="small" icon="el-icon-mic">会议
|
|
@@ -327,6 +329,72 @@
|
|
|
</el-button>
|
|
|
</el-form>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog title="责任制" :visible.sync="showResponsibilityDialog" v-if="showResponsibilityDialog" width="65%" @close="closeResponsibilityDialog()">
|
|
|
+ <el-form label-width="1500px">
|
|
|
+ <div class="bottom">
|
|
|
+ <!-- 左侧菜单栏 -->
|
|
|
+ <div class="bottomLeft">
|
|
|
+ <div class="leftItem d-l-con padding-box nowrap" v-for="(item,index) in depteventList">
|
|
|
+ <div class="bgt-info">
|
|
|
+ <div class="bgt-info-name" :class="{on:iconCurrentIndex==item.deptId}" @click="dutysystemSelect(item.deptId,item.deptName,item.id)">{{item.deptName}}</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 左侧菜单栏对应的右侧的内容 -->
|
|
|
+ <div class="bottomRight" ref="wrapper">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="danger"
|
|
|
+ v-if="depteventId!=null&&depteventId!=''"
|
|
|
+ @click="addLine">添加
|
|
|
+ </el-button>
|
|
|
+ <el-table
|
|
|
+ :data="dutysystemTableData"
|
|
|
+ style="width: 100%">
|
|
|
+ <el-table-column prop="id" label="主键" v-if="false">
|
|
|
+ <template slot-scope="scope" hidden>
|
|
|
+ <el-input v-model="scope.row.id" readonly placeholder="主键" ></el-input>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="name" label="姓名" >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input v-model="scope.row.name" placeholder="姓名" ></el-input>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="post" label="岗位">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input v-model="scope.row.post" placeholder="岗位"></el-input>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="telphone" label="手机号码">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input v-model="scope.row.telphone" placeholder="手机号码"></el-input>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="bookbuytime" label="操作">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="danger"
|
|
|
+ icon="el-icon-delete"
|
|
|
+ @click="handleDelete(scope.$index, scope.row)">删除
|
|
|
+ </el-button>
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="danger"
|
|
|
+ icon="el-icon-save"
|
|
|
+ @click="handleSave(scope.$index, scope.row)">保存
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <el-button size="mini" type="primary" class="fr_button" @click="closeResponsibilityDialog">确定
|
|
|
+ </el-button>
|
|
|
+ <div style="clear: both;"></div>
|
|
|
+ </el-form>
|
|
|
+ </el-dialog>
|
|
|
<el-dialog title="火险报告" :visible.sync="showEventConfirm_gd" v-if="showEventConfirm_gd" width="100%"
|
|
|
class="top-dialog" @close="cancelEventConfirm_gd()">
|
|
|
<div class="table-container">
|
|
@@ -893,7 +961,11 @@
|
|
|
sendTask,
|
|
|
listResourceByWz,
|
|
|
updateYjYuAn,
|
|
|
- uploadBase64
|
|
|
+ uploadBase64,
|
|
|
+ centereventtdepteventList,
|
|
|
+ dutysystemList,
|
|
|
+ dutysystemAdd,
|
|
|
+ dutysystemRemove
|
|
|
} from '@/api/forest'
|
|
|
import {
|
|
|
treeselectAll as deptTreeselect
|
|
@@ -1058,6 +1130,12 @@
|
|
|
eventLogList: [],
|
|
|
visuForestCloudYuAnBo: null,
|
|
|
eventDialog: false,
|
|
|
+ showResponsibilityDialog: false,//责任制弹窗
|
|
|
+ depteventList: [],//责任制部门列表
|
|
|
+ iconCurrentIndex:'',
|
|
|
+ dutysystemDeptName:'',
|
|
|
+ depteventId:'',
|
|
|
+ dutysystemTableData:[],
|
|
|
radius: 50, //资源搜索半径
|
|
|
resourcesList: [{
|
|
|
resourceName: '取水口',
|
|
@@ -1117,6 +1195,71 @@
|
|
|
calendarDay: null //首页日历选择
|
|
|
},
|
|
|
methods: {
|
|
|
+ /************************************责任制-开始****************************************/
|
|
|
+ addLine:function(){//添加负责人行数
|
|
|
+ var newValue = {
|
|
|
+ id:"",//主键
|
|
|
+ dept:"",//部门名称
|
|
|
+ depteventId:"",//事件部门关联责任人
|
|
|
+ name:"",//姓名
|
|
|
+ post:"",//岗位
|
|
|
+ telphone:"",//手机号
|
|
|
+ };
|
|
|
+ //添加新的行数
|
|
|
+ this.dutysystemTableData.push(newValue);
|
|
|
+ },
|
|
|
+ handleDelete:function(index,row){//删除负责人行数
|
|
|
+ let param = { ids: row.id }
|
|
|
+ dutysystemRemove(param).then(res => {
|
|
|
+ // this.dutysystemTableData.splice(index, 1)
|
|
|
+ this.$message.success(`删除成功!`)
|
|
|
+ this.dutysystemSelect(this.iconCurrentIndex,this.dutysystemDeptName,this.depteventId)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleSave:function(index,rowData){//保存负责人行数
|
|
|
+ rowData.dept=this.dutysystemDeptName
|
|
|
+ rowData.depteventId=this.depteventId
|
|
|
+ dutysystemAdd(rowData).then(res => {
|
|
|
+ this.$message.success(`保存成功!`)
|
|
|
+ this.dutysystemSelect(this.iconCurrentIndex,this.dutysystemDeptName,this.depteventId)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ dutysystemSelect:function(deptId,dutysystemDeptName,depteventId){//通过部门查询负责人信息
|
|
|
+ this.dutysystemDeptName=dutysystemDeptName
|
|
|
+ this.depteventId=depteventId
|
|
|
+ this.iconCurrentIndex=deptId
|
|
|
+ let param = { depteventId: depteventId }
|
|
|
+ dutysystemList(param).then(res => {
|
|
|
+ if(res.data!=null&&res.data.length>0){
|
|
|
+ this.dutysystemTableData=res.data
|
|
|
+ }else{
|
|
|
+ this.dutysystemTableData=[{
|
|
|
+ id:"",//主键
|
|
|
+ dept:this.dutysystemDeptName,//部门名称
|
|
|
+ depteventId:this.depteventId,//事件部门关联责任人
|
|
|
+ name:"",//姓名
|
|
|
+ post:"",//岗位
|
|
|
+ telphone:"",//手机号
|
|
|
+ }]
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ },
|
|
|
+ showResponsibility () {//弹出责任制弹窗
|
|
|
+ let param={eventCode:this.eventCode}
|
|
|
+ centereventtdepteventList(param).then(res => {
|
|
|
+ this.depteventList=res.data
|
|
|
+ this.showResponsibilityDialog = true
|
|
|
+ })
|
|
|
+ },
|
|
|
+ closeResponsibilityDialog () {//责任制关闭
|
|
|
+ this.dutysystemTableData = []
|
|
|
+ this.dutysystemDeptName = ''
|
|
|
+ this.depteventId = ''
|
|
|
+ this.iconCurrentIndex = ''
|
|
|
+ this.showResponsibilityDialog = false
|
|
|
+ },
|
|
|
+ /************************************责任制-结束****************************************/
|
|
|
showheatPlotting() {
|
|
|
if (!this.$refs.supermapDialog.isheatPlotting) {
|
|
|
this.$refs.supermapDialog.showheatPlotting(this.latitude, this.longitude) //火灾蔓延
|
|
@@ -1227,7 +1370,6 @@
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- debugger
|
|
|
return imageList
|
|
|
},
|
|
|
// 获取文件名称
|
|
@@ -2249,4 +2391,94 @@
|
|
|
padding: .5rem 2rem;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ .bottom {
|
|
|
+ width: 100%;
|
|
|
+ height: calc(100% - 80px);
|
|
|
+ display: flex;
|
|
|
+
|
|
|
+ .bottomLeft {
|
|
|
+ width: 288px;
|
|
|
+ height: 500px;
|
|
|
+ overflow-y: auto;
|
|
|
+
|
|
|
+ .leftItem {
|
|
|
+ width: 100%;
|
|
|
+ height: 50px;
|
|
|
+ line-height: 50px;
|
|
|
+ text-align: center;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .bottomRight {
|
|
|
+ width: calc(100% - 288px);
|
|
|
+ height: 500px;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding: 36px 36px 0 36px;
|
|
|
+ overflow-y: auto;
|
|
|
+
|
|
|
+ .bottomRightContent {
|
|
|
+ width: 100%;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding-bottom: 36px;
|
|
|
+
|
|
|
+ .bottomRightContentHead {
|
|
|
+ height: 25px;
|
|
|
+ font-family: PingFang SC;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 600;
|
|
|
+ font-size: 24px;
|
|
|
+ line-height: 25px;
|
|
|
+ text-transform: capitalize;
|
|
|
+ color: rgba(0, 0, 0, 0.85);
|
|
|
+ margin-bottom: 32px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .bottomRightContentBody {
|
|
|
+ .el-col {
|
|
|
+ position: relative;
|
|
|
+ margin-bottom: 18px;
|
|
|
+
|
|
|
+ .circle {
|
|
|
+ display: inline-block;
|
|
|
+ width: 6px;
|
|
|
+ height: 6px;
|
|
|
+ background: #4677f6;
|
|
|
+ border-radius: 50%;
|
|
|
+ position: absolute;
|
|
|
+ top: 8px;
|
|
|
+ left: 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ .word {
|
|
|
+ margin-left: 12px;
|
|
|
+ font-family: PingFang SC;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: normal;
|
|
|
+ font-size: 14px;
|
|
|
+ color: #4677f6;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+
|
|
|
+ .word:hover {
|
|
|
+ text-decoration: underline;
|
|
|
+ }
|
|
|
+
|
|
|
+ .topPlace {
|
|
|
+ position: absolute;
|
|
|
+ top: 1px;
|
|
|
+ margin-left: 8px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .bottomRightContentFooter {
|
|
|
+ height: 1px;
|
|
|
+ width: 100%;
|
|
|
+ margin-top: 14px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
</style>
|