tanyanfei 5 年之前
父節點
當前提交
1a2e5e2a3f

+ 25 - 1
src/api.js

@@ -124,6 +124,18 @@ export default {
 	getRiskpointList: params => {
 		return axios.get(`${baseURL}/api/admin/riskpoint/list`,{params:params})
 	},
+	getRiskpoint: params => {
+		return axios.get(`${baseURL}/api/admin/riskpoint`,{params:params})
+	},
+	saveRiskpoint: params => {
+		return axios.post(`${baseURL}/api/admin/riskpoint`, params);
+	},
+	updateRiskpoint: params => {
+		return axios.put(`${baseURL}/api/admin/riskpoint`, params);
+	},
+	deleteRiskpoint: params => {
+		return axios.delete(`${baseURL}/api/admin/riskpoint`, {params:params});
+	},
 	//任务
 	getMonittaskList: params => {
 		return axios.get(`${baseURL}/api/admin/monittask/list`,{params:params})
@@ -131,5 +143,17 @@ export default {
 	saveMonittask: params => {
 		return axios.post(`${baseURL}/api/admin/monittask`, params);
 	},
-
+	updateMonittask: params => {
+		return axios.put(`${baseURL}/api/admin/monittask`, params);
+	},
+	//消息
+	getMessagesList: params => {
+		return axios.get(`${baseURL}/api/admin/messages/list`,{params:params})
+	},
+	deleteMessages: params => {
+		return axios.delete(`${baseURL}/api/admin/messages`, {params:params});
+	},
+	sendMessage: params => {
+		return axios.post(`${baseURL}/api/admin/messages`, params);
+	},
 }

二進制
src/images/rsk1.png


二進制
src/images/rsk2.png


+ 14 - 1
src/router.js

@@ -95,6 +95,19 @@ export default new Router({
         name: '风险点任务'
       }]
     },
-    
+    {
+      path: '/',
+      name: '消息管理',
+      change:1,
+      icon: 'el-icon-message',
+      component: () => import('./views/Home.vue'),
+      show: 1,
+      isLeaf: 0,
+      children: [{
+        path: '/notice',
+        component: () => import('./views/message/Index.vue'),
+        name: '通知消息'
+      }]
+    },
   ]
 })

+ 24 - 11
src/views/Index.vue

@@ -282,7 +282,7 @@ export default {
       };
       var option2 = {
         backgroundColor:'rgba(0,0,0,0)',
-        // color:['#3398dc'],
+        color:color,
         tooltip: {formatter: '{b}: {c}'},
         grid: {
             left: '1%',
@@ -309,16 +309,29 @@ export default {
 			  series: [{
           type: 'bar',
           barWidth: 20,
-          data:  [5, 20, 36, 10],
-          itemStyle: {
-                color: new echarts.graphic.LinearGradient(
-                    0, 0, 0, 1,
-                    [
-                        {offset: 0, color: '#7AF7FF'},
-                        {offset: 1, color: '#3687FF'}
-                    ]
-                )
-          },
+          data:  [
+            {
+              value:20,
+              itemStyle:{
+                color:color[0]
+              }
+            },{
+              value:60,
+              itemStyle:{
+                color:color[1]
+              }
+            },{
+              value:120,
+              itemStyle:{
+                color:color[2]
+              }
+            },{
+              value:204,
+              itemStyle:{
+                color:color[3]
+              }
+            },
+          ],
         }]
       };
       var option3 = {

+ 38 - 25
src/views/Index1.vue

@@ -300,27 +300,40 @@ export default {
                 }
             },
             },
-                series: [{
-            type: 'bar',
-            barWidth: 20,
-            data:  [5, 20, 36, 10],
-            itemStyle: {
-                    color: new echarts.graphic.LinearGradient(
-                        0, 0, 0, 1,
-                        [
-                            {offset: 0, color: '#7AF7FF'},
-                            {offset: 1, color: '#3687FF'}
-                        ]
-                    )
-            },
+            series: [{
+                type: 'bar',
+                barWidth: 20,
+                data:  [
+                    {
+                    value:20,
+                    itemStyle:{
+                        color:color[0]
+                    }
+                    },{
+                    value:60,
+                    itemStyle:{
+                        color:color[1]
+                    }
+                    },{
+                    value:120,
+                    itemStyle:{
+                        color:color[2]
+                    }
+                    },{
+                    value:204,
+                    itemStyle:{
+                        color:color[3]
+                    }
+                    },
+                ],
             }]
         };
         var option3 = {
-            backgroundColor:'rgba(0,0,0,0)',
-                title: {
-                    text: ''
-            },
-            color:['#dc402c','#fcd865'],
+                backgroundColor:'rgba(0,0,0,0)',
+                    title: {
+                        text: ''
+                },
+                color:['#dc402c','#fcd865'],
                 tooltip: {formatter: '{b}: {c} ({d}%)'},
                 legend: {
                 y:'bottom',
@@ -329,13 +342,13 @@ export default {
                     data:['重大风险','一般风险']
                 },
                 series: [{
-            type: 'pie',
-            radius: ['55%', '60%'],
-            label: {
-                normal: {
-                    show: false
-                },
-            },
+                    type: 'pie',
+                    radius: ['55%', '60%'],
+                    label: {
+                        normal: {
+                            show: false
+                        },
+                    },
                     data: [
                                 {value: 3,name:'重大风险'},
                                 {value: 10,name:'一般风险'},

+ 6 - 6
src/views/company/Company.vue

@@ -41,11 +41,11 @@
                 label="公司名称">
                 </el-table-column>
                 <el-table-column
-                prop="subject_item" 
+                prop="area" 
                 label="区域">
                 </el-table-column>
                 <el-table-column
-                prop="signup_limit" 
+                prop="parent_name" 
                 label="上级单位">
                 </el-table-column>
                 <el-table-column
@@ -55,9 +55,9 @@
                 <el-table-column
                 prop="remark" width="70px"
                 label="状态">
-                <template>
-                    <el-tag type="success">启用</el-tag>
-                    <!-- <el-tag type="danger">禁用</el-tag> -->
+                <template slot-scope="scope">
+                    <el-tag v-if='scope.row.is_active' type="success">启用</el-tag>
+                    <el-tag v-else type="danger">停用</el-tag>
                 </template>
                 </el-table-column>
                 <el-table-column
@@ -68,7 +68,7 @@
                 prop="zip"  width="220"
                 label="操作">
                 <template slot-scope="scope">
-                    <el-button icon="el-icon-view" size="mini"  type="success">查看</el-button>
+                    <!-- <el-button icon="el-icon-view" size="mini"  type="success">查看</el-button> -->
                     <el-button icon="el-icon-edit" @click="$router.push({path:'/company/add',query:{id:scope.row.id}})" size="mini" type="warning">编辑</el-button>
                     <el-button icon="el-icon-delete" @click="del(scope.row.id)" size="mini"  type="danger">删除</el-button>
                 </template>

+ 2 - 2
src/views/company/Department.vue

@@ -54,7 +54,7 @@
                     node-key="id"   :props='props'
                     :expand-on-click-node="false">
                     <span class="custom-tree-node" slot-scope="{ node, data }" @click="change(data)" >
-                        <span v-if='id==node.id' class="label_name active">{{ node.label }}</span>
+                        <span v-if='id==data.id' class="label_name active">{{ node.label }}</span>
                         <span v-else class="label_name">{{ node.label }}</span>
                     </span>
                 </el-tree>
@@ -237,7 +237,7 @@ export default {
             parm.enterprise_id=this.id
             this.$api.getDepartmentList(parm).then(res=>{
                 this.loading=false;
-                this.list=res.data.data;
+                this.list=res.data.data.list;
                 this.total=res.data.data.total
             })
         },

+ 1 - 1
src/views/government/Index.vue

@@ -83,7 +83,7 @@
                 </el-form>
                 <el-button type="primary" @click="show=1,form={parent_id:null,is_active:false}" icon="el-icon-circle-plus" size="mini" style="width:100%;margin-bottom:10px;">新增政府单位</el-button>
                 <el-tree  
-                    :data="data"
+                    :data="data" default-expand-all 
                     node-key="id"  :props='props'
                     :expand-on-click-node="false">
                     <span class="custom-tree-node" slot-scope="{ node, data }" @click.stop="() => edit(data)" >

+ 183 - 0
src/views/message/Index.vue

@@ -0,0 +1,183 @@
+<style lang="scss">
+    
+</style>
+<template>
+    <section>
+        <p>消息管理  >  通知消息</p>
+        <div class="filter">
+            <el-form   :inline="true" size="small" label-position="left">
+                <el-form-item>
+                        <el-input clearable placeholder="请输入内容搜索" v-model="form.name"></el-input>
+                </el-form-item>
+                <el-form-item>
+                       <el-button @click="form.page=1,getData()" type="primary" icon="el-icon-search">搜索</el-button>
+                       <el-button @click="dialogFormVisible=true,message={send_type:1}" type="primary">发送消息</el-button>
+                </el-form-item>
+            </el-form>
+        </div>
+
+
+        <el-table
+                class="table"
+                :data="list" height="64vh"
+                border  v-loading="loading"
+                style="width: 100%">
+                <el-table-column
+                type="selection" fixed="left"
+                width="40">
+                </el-table-column>
+                <el-table-column
+                prop="sender_user_name" 
+                label="消息发送者">
+                </el-table-column>
+                <el-table-column
+                prop="title" 
+                label="消息标题">
+                </el-table-column>
+                <el-table-column
+                prop="content" 
+                label="消息内容">
+                </el-table-column>
+                <el-table-column
+                prop="ctime"  
+                label="发送时间">
+                <!-- <template>
+                    <el-tag type="success">启用</el-tag>
+                </template> -->
+                </el-table-column>
+                <el-table-column fixed="right"
+                prop="zip"  width="220"
+                label="操作">
+                <template slot-scope="scope">
+                    <el-button icon="el-icon-view" size="mini"  type="success">查看</el-button>
+                    <el-button icon="el-icon-delete" @click="del(scope.row.id)" size="mini"  type="danger">删除</el-button>
+                </template>
+                </el-table-column>
+        </el-table>
+        <Page  ref="pageButton"  :total='total' @pageChange='gopage'/>
+
+        <el-dialog title="发送消息" :visible.sync="dialogFormVisible" width="500px" :close-on-click-modal='false' :close-on-press-escape='false'>
+            <el-form  label-width="100px">
+                <el-form-item label="发送方式">
+                    <el-radio v-model="message.send_type" :label="1">群发</el-radio>
+                    <el-radio v-model="message.send_type" :label="2">单发</el-radio>
+                </el-form-item>
+                <el-form-item v-if="message.send_type==1" label="区域">
+                    <el-select clearable v-model="message.area" placeholder="请选择">
+                            <el-option v-for="(item,index) in area" :key="index" :label="item" :value="item"></el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item v-if="message.send_type==1" label="公司类型">
+                    <el-select clearable v-model="message.category" placeholder="请选择">
+                            <el-option v-for="(item,index) in category" :key="index" :label="item" :value="item"></el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item v-if="message.send_type==2" label="发送对象">
+                    <el-select clearable v-model="message.recever_ids" placeholder="请选择">
+                            <el-option v-for="(item,index) in company" :key="index" :label="item.name" :value="item.id"></el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="消息标题">
+                    <el-input clearable  v-model="message.title"></el-input>
+                </el-form-item>
+                <el-form-item label="消息内容">
+                    <el-input clearable type="textarea" v-model="message.content"></el-input>
+                </el-form-item>
+                <el-form-item label="附件">
+                    <input @change="upload('attach')" id='attach' type="file">
+                </el-form-item>
+            </el-form>
+            <div slot="footer" class="dialog-footer">
+                <el-button size="small" @click="dialogFormVisible = false">取 消</el-button>
+                <el-button size="small" type="primary" @click="send">确 定</el-button>
+            </div>
+        </el-dialog>
+    </section>
+</template>
+<script>
+import Page from '../../components/Page';
+export default {
+  components:{
+        Page
+  },
+  data(){
+    return{
+      dialogFormVisible:false,
+      form:{name:'',page:1,page_size:20,message_type:'notice'},
+      message:{send_type:1},
+      activeName:"1",
+      total:1,
+      list:[],
+      loading:false,
+      category:[],
+      area:[],
+      company:[]
+    }
+  },
+  methods:{
+        gopage(size){
+            if(size){
+                this.form.page_size=size
+            }
+            this.form.page=this.$refs.pageButton.page
+            this.getData()
+        },
+        getData(){
+            var parm=this.form;
+            this.loading=true
+            this.$api.getMessagesList(parm).then(res=>{
+                this.list=res.data.data.list
+                this.total=res.data.data.total
+                this.loading=false
+                this.area=this.store.area;
+                this.category=this.store.categorys;
+            })
+            this.$api.getEnterpriseAll().then(res=>{
+                this.company=res.data.data;
+            })
+        },
+        del(id){
+                this.$confirm('确定删除吗', '提示', {
+                        type: 'warning'
+                    }).then(() => {
+                    this.$api.deleteMessages({id:id}).then((res)=>{
+                            this.$message({
+                                message: '删除成功',
+                                type: 'success'
+                            })
+                            this.getData()
+                    })
+                })
+        },
+        upload(type){
+            var file=document.getElementById(type).files;
+            var data=new FormData();
+                data.append("file",file[0])
+            this.$api.uploadFile(data).then(res=>{
+                if(res.data.code==0){
+                        let form=this.message;
+                        this.$set(form,type,res.data.data.url)
+                        this.$message({message: '上传成功!',type: 'success'});
+                    }else{
+                        this.$message.error(res.data.message);
+                    }
+            })
+        },
+        send(){
+            let parm=this.message;
+            this.$api.sendMessage(parm).then(res=>{
+                    if(res.data.code==0){
+                        this.$message({message: '发送成功!',type: 'success'});
+                        this.getData();
+                        this.dialogFormVisible=false;
+                    }else{
+                        this.$message.error(res.data.message);
+                    }
+            })
+        }
+  },
+  created(){
+      this.getData()
+  }
+}
+</script>

+ 106 - 12
src/views/task/Danger.vue

@@ -19,8 +19,16 @@
                     .label_name{
                         font-size: 14px;
                     }
+                    .rsk{
+                        color: #DF5706;
+                        img{
+                            position: relative;
+                            top:2px;
+                        }
+                    }
                     .edit{
                         float: right;
+                        width: 80px;
                         i{
                             font-weight: bolder;
                             font-size: 14px;
@@ -67,15 +75,17 @@
             <li>
                 <el-form size="small" >
                     <el-form-item>
-                        <el-input suffix-icon="el-icon-search" v-model="input1" placeholder="公司名称"></el-input>
+                        <el-input suffix-icon="el-icon-search" v-model="filterText"  placeholder="公司名称"></el-input>
                     </el-form-item>
                 </el-form>
                 <el-tree  
-                    :data="data" :props='props'
-                    node-key="id" 
+                    :data="data" :props='props' 
+                    node-key="id"  default-expand-all 
                     :expand-on-click-node="false">
                     <span class="custom-tree-node" slot-scope="{ node, data }" @click.stop="() => edit(data)" >
-                        <span class="label_name"><i class="el-icon-film"></i> {{ node.label }}</span>
+                        <span v-if='data.type=="ent"' class="label_name"><i  class="el-icon-film"></i>{{ node.label }}</span> 
+                        <span v-if='data.type=="rsk"' class="label_name rsk"><img  width="15" src="../../images/rsk2.png" alt="">  {{ node.label }}</span>                           
+                        <span v-if='!data.type' class="label_name rsk" style="color:#F49C0B;"><img  width="15" src="../../images/rsk1.png" alt="">  {{ node.label }}</span>  
                         <span class="edit">
                             <el-button
                                 type="text"
@@ -83,6 +93,18 @@
                                 @click.stop="() => append(data)">
                                 <i class="el-icon-plus"></i>
                             </el-button>
+                            <el-button v-if='data.type!="ent"'
+                                type="text"
+                                size="mini"
+                                @click.stop="() => edit(data)">
+                                <i class="el-icon-edit"></i>
+                            </el-button>
+                            <el-button v-if='data.type!="ent"'
+                                type="text"
+                                size="mini"
+                                @click.stop="() => remove(data)">
+                                <i class="el-icon-delete"></i>
+                            </el-button>
                         </span>
                     </span>
                         
@@ -91,7 +113,7 @@
             <li>
                 <el-form class="form" label-width="90px" label-position='right' size="small">
                     <el-form-item label="公司名称">
-                        <el-input v-model="form.name"></el-input>
+                        <el-input v-model="form.enterprise_name" disabled></el-input>
                         <span class="req">*</span>
                     </el-form-item>
                     <el-form-item label="风险点名称" >
@@ -99,11 +121,11 @@
                         <span class="req">*</span>
                     </el-form-item>
                     <el-form-item label="备注">
-                        <el-input :rows="4" type="textarea" v-model="form.intro"></el-input>
+                        <el-input :rows="4" type="textarea" v-model="form.remark"></el-input>
                     </el-form-item>
                     <el-form-item>
-                        <el-button  type="primary">保存</el-button>
-                        <el-button  type="info">取消</el-button>
+                        <el-button @click="save" type="primary">保存</el-button>
+                        <el-button @click="form={}" type="info">取消</el-button>
                     </el-form-item>
                 </el-form>
             </li>
@@ -115,20 +137,92 @@
 export default {
 	data() {
 		return {
-            input1:'',
+            filterText:'',
             data:[],
             form:{},
             props:{
                 label:'name'
             },
 		};
-	},
+    },
+    watch: {
+      filterText(val) {
+        this.getData();
+      }
+    },
 	methods: {
         getData(){
-            this.$api.getRiskpointList().then(res=>{
+            this.$api.getRiskpointList({name:this.filterText}).then(res=>{
                 this.data=res.data.data
             })
-        }
+        },
+        edit(data){
+            this.$api.getRiskpoint({id:data.id}).then(res=>{
+                let data=res.data.data;
+                this.form=data
+            })
+        },
+        append(data){
+            // this.show=1;
+            if(data.type == 'ent'){
+                this.form={
+                        enterprise_name:data.name,
+                        enterprise_id:data.id,
+                        name:''
+                }
+            }else{
+                this.$api.getRiskpoint({id:data.id}).then(res=>{
+                    let data=res.data.data;
+                    this.form={
+                        parent_id:data.id,
+                        parent_name:data.name,
+                        enterprise_name:data.enterprise_name,
+                        enterprise_id:data.enterprise_id,
+                        name:''
+                    }
+                })
+            }
+            
+        },
+        remove(data){
+           this.$confirm('确定删除?', '提示', {
+                    type: 'warning'
+                }).then(() => {
+                   this.$api.deleteRiskpoint({id:data.id}).then(res=>{
+                        this.$message({message: '删除成功!',type: 'success'});
+                        this.getData()
+                    })
+            })
+          
+        },
+        save(){
+          var parm=this.form;
+          if(!parm.name){
+                this.$message.error('请输入风险点名称');
+                return;
+          }
+          if(parm.id){
+              this.$api.updateRiskpoint(parm).then(res=>{
+                  if(res.data.code==0){
+                      this.$message({message: '修改成功!',type: 'success'});
+                      this.getData()
+                      this.form={}
+                  }else{
+                      this.$message.error(res.data.message);
+                  }
+              })
+          }else{
+              this.$api.saveRiskpoint(parm).then(res=>{
+                  if(res.data.code==0){
+                      this.$message({message: '添加成功!',type: 'success'});
+                      this.getData()
+                      this.form={}
+                  }else{
+                      this.$message.error(res.data.message);
+                  }
+              })
+          }
+        },
     },
 	created(){
         this.getData();

+ 101 - 30
src/views/task/DangerTask.vue

@@ -22,9 +22,20 @@
                     .el-tree-node__content{
                         height: 32px;
                     }
+                    
                     .label_name{
                         font-size: 14px;
                     }
+                    .rsk{
+                        color: #DF5706;
+                        img{
+                            position: relative;
+                            top:2px;
+                        }
+                    }
+                    .active .label_name{
+                        color:#1989FA !important;
+                    }
                     .edit{
                         float: right;
                         i{
@@ -73,15 +84,24 @@
             <li>
                 <el-form size="small" >
                     <el-form-item>
-                        <el-input suffix-icon="el-icon-search" v-model="input1" placeholder="公司名称"></el-input>
+                        <el-input suffix-icon="el-icon-search" v-model="filterText" placeholder="公司名称"></el-input>
                     </el-form-item>
                 </el-form>
                 <el-tree  
                     :data="data" :props='props'
-                    node-key="id" 
+                    node-key="id"  default-expand-all 
                     :expand-on-click-node="false">
-                    <span class="custom-tree-node" slot-scope="{ node, data }" @click.stop="() => edit(data)" >
-                        <span class="label_name"><i class="el-icon-film"></i> {{ node.label }}</span>
+                    <span  class="custom-tree-node" slot-scope="{ node, data }" @click="() => edit(data)" >
+                        <span v-if='form.riskpoint_id==data.id' class="active">
+                            <span v-if='data.type=="ent"' class="label_name"><i  class="el-icon-film"></i>{{ node.label }}</span> 
+                            <span v-if='data.type=="rsk"' class="label_name rsk"><img  width="15" src="../../images/rsk2.png" alt="">  {{ node.label }}</span>                           
+                            <span v-if='!data.type' class="label_name rsk" style="color:#F49C0B;"><img  width="15" src="../../images/rsk1.png" alt="">  {{ node.label }}</span>  
+                        </span>
+                        <span v-else>
+                            <span v-if='data.type=="ent"' class="label_name"><i  class="el-icon-film"></i>{{ node.label }}</span> 
+                            <span v-if='data.type=="rsk"' class="label_name rsk"><img  width="15" src="../../images/rsk2.png" alt="">  {{ node.label }}</span>                           
+                            <span v-if='!data.type' class="label_name rsk" style="color:#F49C0B;"><img  width="15" src="../../images/rsk1.png" alt="">  {{ node.label }}</span>  
+                        </span>
                     </span>
                         
                 </el-tree>
@@ -93,7 +113,7 @@
                         </el-form-item>
                         <el-form-item>
                             <el-button @click="form.page=1,getData()" type="primary" icon="el-icon-search">搜索</el-button>
-                            <el-button  @click="dialogFormVisible=true"  type="primary">创建任务</el-button>
+                            <el-button  @click="addTask"  type="primary">创建任务</el-button>
                             <el-button  @click="$router.push({path:'/company/add'})"  type="primary">批量导入任务</el-button>
                         </el-form-item>
                     </el-form>
@@ -104,9 +124,9 @@
                             style="width: 100%">
                             <el-table-column   align="center" label="风险点划分">
                                 <el-table-column  label="编码及子项"  align="center">
-                                    <el-table-column  label="一级子项"></el-table-column>
-                                    <el-table-column  label="二级子项"></el-table-column>
-                                    <el-table-column  label="三级子项"></el-table-column>
+                                    <el-table-column prop="riskpoint_item1" label="一级子项"></el-table-column>
+                                    <el-table-column prop="riskpoint_item2" label="二级子项"></el-table-column>
+                                    <el-table-column prop="riskpoint_item3" label="三级子项"></el-table-column>
                                     <el-table-column width="200" align="center" prop="name" label="风险描述"></el-table-column>
                                 </el-table-column>
                             </el-table-column>
@@ -140,48 +160,50 @@
                     
     </div>
     <el-dialog title="创建任务" :visible.sync="dialogFormVisible" width="70vw" :close-on-click-modal='false' :close-on-press-escape='false'>
-        <el-form :model="form" label-width="100px" :inline="true">
+        <el-form :model="rsk" label-width="100px" :inline="true">
             <el-form-item label="责任人">
-                <el-input clearable   v-model="form.held_person_id"></el-input>
+                <el-input clearable   v-model="rsk.held_person"></el-input>
             </el-form-item>
             <el-form-item label="责任人电话">
-                <el-input clearable   v-model="form.held_person_phone"></el-input>
+                <el-input clearable   v-model="rsk.held_person_phone"></el-input>
             </el-form-item>
             <el-form-item label="风险描述">
-                <el-input clearable  v-model="form.name"></el-input>
+                <el-input clearable  v-model="rsk.name"></el-input>
             </el-form-item>
             <el-form-item label="导致后果">
-                <el-input clearable  v-model="form.danger_result"></el-input>
+                <el-input clearable  v-model="rsk.danger_result"></el-input>
             </el-form-item>
             <el-form-item label="风险级别">
-                <el-input clearable  v-model="form.risk_level"></el-input>
+                <el-input clearable  v-model="rsk.risk_level"></el-input>
             </el-form-item>
             <el-form-item label="工程技术">
-                <el-input clearable  v-model="form.monit_tec"></el-input>
+                <el-input clearable  v-model="rsk.monit_tec"></el-input>
             </el-form-item>
             <el-form-item label="管控措施">
-                <el-input clearable  v-model="form.monit_method"></el-input>
+                <el-input clearable  v-model="rsk.monit_method"></el-input>
             </el-form-item>
             <el-form-item label="培训教育">
-                <el-input clearable  v-model="form.monit_edu"></el-input>
+                <el-input clearable  v-model="rsk.monit_edu"></el-input>
             </el-form-item>
             <el-form-item label="个体防护">
-                <el-input clearable  v-model="form.single_defense"></el-input>
+                <el-input clearable  v-model="rsk.single_defense"></el-input>
             </el-form-item>
             <el-form-item label="应急处理">
-                <el-input clearable  v-model="form.emerg_handle"></el-input>
+                <el-input clearable  v-model="rsk.emerg_handle"></el-input>
             </el-form-item>
             <el-form-item label="法律依据">
-                <el-input clearable  v-model="form.name"></el-input>
+                <el-input clearable  v-model="rsk.rec_stand"></el-input>
             </el-form-item>
             <el-form-item label="新增管控措施">
-                <el-input clearable  v-model="form.name"></el-input>
+                <el-input clearable  v-model="rsk.other_method"></el-input>
             </el-form-item>
             <el-form-item label="管控周期">
-                <el-input clearable  v-model="form.cycle"></el-input>
+                <el-input clearable  v-model="rsk.cycle"></el-input>
             </el-form-item>
             <el-form-item label="所属部门">
-                <el-input clearable  v-model="form.department_id"></el-input>
+                <el-select clearable v-model="rsk.department_id" placeholder="请选择">
+                    <el-option v-for="item in departmentList" :key='item.id' :label="item.name" :value="item.id"></el-option>
+                </el-select>
             </el-form-item>
             
         </el-form>
@@ -200,18 +222,25 @@ export default {
     },
 	data() {
 		return {
-            input1:'',
+            filterText:'',
             dialogFormVisible:false,
-            form:{name:'',page:1,page_size:20},
+            form:{name:'',page:1,page_size:20,riskpoint_id:''},
+            rsk:{},
             list:[{name:'2333'}],
             data:[],
             props:{
                 label:'name'
             },
             total:1,
-            loading:false
+            loading:false,
+            departmentList:[]
 		};
-	},
+    },
+    watch: {
+      filterText(val) {
+        this.getRisk();
+      }
+    },
 	methods: {
         gopage(size){
             if(size){
@@ -220,15 +249,56 @@ export default {
             this.form.page=this.$refs.pageButton.page
             this.getData()
         },
+        getRisk(){
+            this.$api.getRiskpointList({name:this.filterText}).then(res=>{
+                this.data=res.data.data
+            })
+        },
+        addTask(){
+            if(this.rsk.riskpoint_id){
+                this.dialogFormVisible=true
+            }else{
+                this.$message.error('请先选择左侧要创建任务的风险点!');
+            }
+        },
+        edit(data){
+            if(data.type != 'ent'){
+                this.form.riskpoint_id=data.id;
+                this.getData()
+                //获取风险点详情
+                this.$api.getRiskpoint({id:data.id}).then(res=>{
+                        let _data=res.data.data;
+                        this.rsk={
+                                riskpoint_id:_data.id,
+                                riskpoint_name:_data.name,
+                                enterprise_name:_data.enterprise_name,
+                                enterprise_id:_data.enterprise_id,
+                        }
+                        //获取部门
+                        this.$api.getDepartmentList({enterprise_id:_data.enterprise_id}).then(res=>{
+                            this.departmentList=res.data.data.list;
+                        })
+                        
+                })
+            }
+        },
         getData(){
             this.loading=true
             var parm=this.form;
             this.$api.getMonittaskList(parm).then(res=>{
-                this.list=res.data.data.list
+                let list=res.data.data.list
+                for(let i=0;i<list.length;i++){
+                    let item=list[i].riskpoint_item.split('|');
+                    list[i].riskpoint_item1=item[0]
+                    list[i].riskpoint_item2=item[1]
+                    list[i].riskpoint_item3=item[2]?item[2]:''
+                }
+                this.list=list
                 this.total=res.data.data.total
                 this.loading=false
             })
         },
+      
         del(id){
                 this.$confirm('确定删除吗', '提示', {
                         type: 'warning'
@@ -243,13 +313,13 @@ export default {
                 })
         },
         add(){
-            let parm=this.form;
+            let parm=this.rsk;
             // if(!parm.name){
             //     this.$message.error('请输入部门名称');
             //     return;
             // }
             if(parm.id){     
-                this.$api.updateDepartment(parm).then(res=>{
+                this.$api.updateMonittask(parm).then(res=>{
                     if(res.data.code==0){
                         this.$message({message: '修改成功!',type: 'success'});
                         this.getData();
@@ -273,6 +343,7 @@ export default {
         },
     },
 	created(){
+        this.getRisk()
         this.getData()
 	}
 };