coys преди 2 години
родител
ревизия
692cb7240d

+ 54 - 21
src/api/toConsult.js

@@ -15,12 +15,10 @@ export function login(data) {
 // 获取调阅列表
 export function selectListApp(data) {
   return request({
-    url: '/core/task/selectListApp',
-    headers: {
-      isToken: false
-    },
+    url: '/core/retrievalTask/selectListApp',
+    
     method: 'get',
-    data
+    params:data
   })
 }
 
@@ -36,18 +34,18 @@ export function registration(data) {
   })
 }
 //获取任务详情列表
-export function registrationList(dictType) {
+export function registrationList(query) {
   return request({
-    url: '/core/registration/list'+dictType,
+    url: '/core/registration/list/',
     method: 'get',
+    params: query
   })
 }
 //根据字典类型查询字典值接口
 export function getDict(dictType) {
   return request({
-    url: '/system/dict/data/type/'+dictType,
-    method: 'get',
-    
+    url: '/system/dict/data/type/' + dictType,
+    method: 'get'
   })
 }
 
@@ -58,18 +56,53 @@ export function deptTreeList() {
     method: 'get'
   })
 }
-// 通过机构ID获取主机列表
+// 通过机构ID获取主机
 export function getorgHost(query) {
-    return request({
-      url: `/system/device/getHostByOrgId/${query}`,
-      method: 'get'
-    })
-  }
+  return request({
+    url: `/system/device/getSysDeviceByOrgId`,
+    method: 'get',
+    params:query
+  })
+}
 // 通过主机ID获取通道列表
 export function getSysDeviceByHostId(query) {
-    return request({
-      url: `/system/device/getSysDeviceByHostId/${query}`,
-      method: 'get'
-    })
-  }
+  return request({
+    url: `/system/device/getSysDeviceByHostId`,
+    method: 'get',
+    params:query
+  })
+}
+// 添加
+export function addInfo(data) {
+  return request({
+    url: `/core/info`,
+    method: 'post',
+    data
+  })
+}
+// 编辑
+export function updateInfo(data) {
+  return request({
+    url: `/core/info`,
+    method: 'put',
+    data
+  })
+}
+//获取卡片查询详情
+export function getEditInfo(query) {
+  return request({
+    url: `/core/info/${query}`,
+    method: 'get',
+    
+  })
+}
+//结束调阅
+export function getEndInfo(data) {
+  return request({
+    url: `/core/retrievalTask`,
+    method: 'put',
+    data
+  })
+}
+
 ///system/device/getHostByOrgId/{orgId}

+ 1 - 1
src/config/env.development.js

@@ -2,7 +2,7 @@
 module.exports = {
   title: 'soc-app-dev',
   baseUrl: 'http://localhost:9018', // 项目地址
-  baseApi: '/luojun', // 本地api请求地址,注意:如果你使用了代理,请设置成'/'
+  baseApi: '/luowei', // 本地api请求地址,注意:如果你使用了代理,请设置成'/'
   APPID: 'xxx',
   APPSECRET: 'xxx',
   $cdn: 'https://www.sunniejs.cn/static'  //静态资源

+ 247 - 82
src/views/menu/monitoringCall/components/addInfo.vue

@@ -16,7 +16,15 @@
       <!-- 主机选择 -->
       <van-row>
         <van-col span="24">
-          <van-field v-model="host" is-link readonly label="监控主机" placeholder="" @click="showHost = true" />
+          <van-field
+            required
+            v-model="host"
+            is-link
+            readonly
+            label="监控主机"
+            placeholder=""
+            @click="showHost = true"
+          />
           <van-popup v-model="showHost" round position="bottom">
             <van-picker
               title="监控主机"
@@ -26,31 +34,39 @@
               @cancel="onCancel"
               @change="onChange"
             >
-            <template #option="option">
+              <template #option="option">
                 <div style="display: flex; flex-direction: column; align-items: center">
-                  <!-- <div>{{ option.id }}</div> -->
                   <div>{{ option.deviceName }}</div>
                 </div>
               </template>
-          </van-picker> </van-popup
-        ></van-col>
+            </van-picker>
+          </van-popup></van-col
+        >
       </van-row>
       <!-- 视频通道 -->
       <van-row>
         <van-col span="24">
-          <van-field v-model="fieldValue" :disabled="ishost" is-link readonly label="视频通道" placeholder="" @click="showStatus = true" />
+          <van-field
+            required
+            v-model="fieldValue"
+            :disabled="ishost"
+            is-link
+            readonly
+            label="视频通道"
+            placeholder=""
+            @click="showStatus = true"
+          />
           <van-popup v-model="showStatus" :disabled="ishost" round position="bottom">
             <van-picker
               title="视频通道"
               show-toolbar
               :columns="columns"
-              @confirm="onConfirm"
+              @confirm="onConfirmPassage"
               @cancel="onCancel"
               @change="onChange"
             >
               <template #option="option">
                 <div style="display: flex; flex-direction: column; align-items: center">
-                  <div>{{ option.id }}</div>
                   <div>{{ option.deviceName }}</div>
                 </div>
               </template>
@@ -67,72 +83,56 @@
       </van-row>
 
       <div>
-        <!-- 主体选择项 -->
-        <van-collapse v-model="activeNames" :is-link="false">
-          <van-collapse-item name="1">
-            <template #title>
-              <div>
-                <van-checkbox v-model="checked" shape="square">复选框</van-checkbox>
-              </div>
-            </template>
-
-            <van-row>
-              <van-col span="24">
-                <van-dropdown-menu>
-                  <van-dropdown-item v-model="value1" :options="option1" />
-                </van-dropdown-menu>
-              </van-col>
-            </van-row>
-            <van-row>
-              <van-col span="24">
-                <van-field
-                  v-model="message"
-                  rows="2"
-                  autosize
-                  label="异常说明"
-                  type="textarea"
-                  placeholder="请输入异常说明"
-                  show-word-limit
-                />
-              </van-col>
-            </van-row>
-          </van-collapse-item>
-          <van-collapse-item name="2">
-            <template #title>
-              <div>
-                <van-checkbox v-model="checked1" shape="square">复选框</van-checkbox>
-              </div>
-            </template>
+        <van-form ref="vform">
+          <!-- 主体选择项 -->
+          <van-collapse v-model="activeNames" :is-link="false">
+            <van-collapse-item :name="item.dictValue" v-for="item in dataList" :key="item.dictValue">
+              <template #title>
+                <div>
+                  <van-checkbox v-model="item.isChecked" shape="square">{{ item.dictLabel }}</van-checkbox>
+                </div>
+              </template>
 
-            <van-row>
-              <van-col span="24">
-                <van-dropdown-menu>
-                  <van-dropdown-item v-model="value1" :options="option1" />
-                </van-dropdown-menu>
-              </van-col>
-            </van-row>
-            <van-row>
-              <van-col span="24">
-                <van-field
-                  v-show="value1 == 0"
-                  v-model="message"
-                  rows="2"
-                  autosize
-                  label="异常说明"
-                  type="textarea"
-                  placeholder="请输入异常说明"
-                  show-word-limit
-                />
-              </van-col>
-            </van-row>
-          </van-collapse-item>
-        </van-collapse>
+              <van-row>
+                <van-col span="24">
+                  <van-dropdown-menu>
+                    <van-dropdown-item
+                      v-model="item.situation"
+                      @change="changeHandler($event, item)"
+                      :options="dictList"
+                    />
+                  </van-dropdown-menu>
+                </van-col>
+              </van-row>
+              <van-form>
+                <van-row v-show="item.situation == '1'">
+                  <van-col span="24">
+                    <van-field
+                      v-model="item.abnormalIllustrate"
+                      rows="2"
+                      autosize
+                      required
+                      label="异常说明"
+                      type="textarea"
+                      placeholder="请输入异常说明"
+                      show-word-limit
+                      :rules="[{ required: true, message: '内容不能为空' }]"
+                    />
+                  </van-col>
+                </van-row>
+              </van-form>
+            </van-collapse-item>
+          </van-collapse>
+        </van-form>
       </div>
+
       <!-- 底部按钮 -->
       <div class="bottomClass">
         <van-row>
           <van-col span="24">
-            <van-button type="info">添加</van-button>
+            <van-button type="info" @click="addForm">{{
+              $route.params.id.split('_')[2] == 'edit' ? '修改' : '添加'
+            }}</van-button>
           </van-col>
         </van-row>
       </div>
@@ -143,29 +143,43 @@
 import NavBar from '@/components/NavBar'
 // 主机列表组件
 import MonitoingList from './monitoringList.vue'
-import { Col, Row, Dialog, Icon, Picker } from 'vant'
-import { registrationList, getorgHost } from '@/api/toConsult.js'
+import { Col, Row, Dialog, Icon, Toast, Picker } from 'vant'
+import {
+  registrationList,
+  addInfo,
+  updateInfo,
+  getEditInfo,
+  getSysDeviceByHostId,
+  getorgHost
+} from '@/api/toConsult.js'
 import { mapGetters } from 'vuex'
+
 export default {
   data() {
     return {
-      columns: ['全部', '已调阅', '调阅中', '待调阅'],
+      taskId: '', //任务ID
+      falg: false, //校验是否通过
+      dictList: [], //异常正常字典
+      columns: [], //通道列表
       hostList: [], //主机列表
       showStatus: false, //通道显示隐藏
       showHost: false, //主机显示隐藏
       checked: false,
       checked1: false,
       message: '',
-      ishost:true,
+      ishost: true,
       fieldValue: '',
-      host:'',//主机名称
-      hostId:'',//主机ID
+      host: '', //主机名称
+      hostId: '', //主机ID
+      videoChannel: '', //通道ID
       value1: 0,
+      dicts: ['core_registration_project'],
       option1: [
         { text: '异常', value: 0 },
         { text: '正常', value: 1 }
       ],
       activeNames: [''],
+      dataList: [], //列表
       taskData: []
     }
   },
@@ -187,11 +201,45 @@ export default {
   created() {
     this.init()
   },
+
+  mounted() {},
   methods: {
+    //根据卡片ID获取详情数据
+    getInfoHandler() {
+      //判断当前路由的信息是新增还是编辑
+      if (this.$route.params.id.split('_')[2] == 'edit' && this.dataList.length > 0) {
+        //当前是编辑
+        //获取卡片详情数据
+        getEditInfo(this.$route.params.id.split('_')[1]).then(res => {
+          let { data, msg, code } = res
+          if (code == 200) {
+            ;(this.activeNames = ['']), //滞空选中
+              this.dataList.forEach(item => {
+                data.coreMonitoringTaskMonitorInfoList.forEach(i => {
+                  if (i.project == item.dictValue) {
+                    //查询赋值
+                    this.$set(item, 'isChecked', true)
+                    this.$set(item, 'situation', i.situation)
+                    this.$set(item, 'abnormalIllustrate', i.abnormalIllustrate)
+                    this.activeNames.push(i.project)
+                  }
+                })
+              })
+            //赋值主机&通道名称
+            this.host = data.hostName
+            this.hostId = data.host
+            this.fieldValue = data.videoChannelName
+            this.videoChannel = data.videoChannel
+            console.log(this.hostId)
+            this.getHostTDlist(this.hostId)
+          }
+        })
+      }
+    },
     //项目初始化获取数据
     init() {
       //获取组织机构数据
-      registrationList({ taskId: this.$route.params.id }).then(res => {
+      registrationList({ taskId: this.$route.params.id.split('_')[0] }).then(res => {
         let { code, data, msg } = res
         if (code == 200) {
           this.taskData = data
@@ -199,24 +247,141 @@ export default {
       })
       //获取当前登录人机构下主机列表
 
-      getorgHost(this.orgId).then(res => {
-        
+      getorgHost({ orgId: this.orgId, monitorId: this.$route.params.id.split('_')[1] }).then(res => {
         let { code, data, msg } = res
         if (code == 200) {
           this.hostList = data
         }
       })
+      this.getDictHandler('core_registration_project', res => {
+        this.dataList = JSON.parse(JSON.stringify(res))
+        this.dataList.forEach(item => {
+          this.$set(item, 'situation', '0') //异常情况初始化默认值
+          this.$set(item, 'abnormalIllustrate', ' ') //情况说明初始化默认值
+        })
+        this.getInfoHandler() //获取详情
+      })
+      //获取异常情况字典
+      this.getDictHandler('core_check_type', res => {
+        this.dictList = res
+        this.dictList.forEach(item => {
+          item.text = item.dictLabel
+          item.value = item.dictValue
+        })
+      })
     },
+
     onConfirm(value, index) {
-      this.host=value
-      this.hostId=this.hostList[index].id
-      this.ishost=false
+      this.host = this.hostList[index].deviceName
+      this.hostId = this.hostList[index].id
+      this.getHostTDlist(this.hostId)
     },
-    onChange(picker, value, index) {
-      
+    //通过主机ID获取通道列表
+    getHostTDlist(id) {
+      //通过主机ID获取通道列表
+      getSysDeviceByHostId({ hostId: id, monitorId: this.$route.params.id.split('_')[1] }).then(res => {
+        let { code, data, msg } = res
+        if (code == 200) {
+          this.columns = data
+          console.log(data)
+          this.ishost = false
+          this.showHost = false
+        }
+      })
+    },
+    onConfirmPassage(value, index) {
+      this.fieldValue = this.columns[index].deviceName
+      this.videoChannel = this.columns[index].id
+      this.showStatus = false
+    },
+
+    onChange(picker, value, index) {},
+
+    onFailed(errorInfo) {
+      this.falg = true
+    },
+    changeHandler(val, item) {
+      if (val == '0') {
+        item.abnormalIllustrate = ''
+      }
     },
     onCancel() {
       Toast('取消')
+    },
+    //表单提交前校验
+    beforSubmitV() {
+      
+      this.falg = false
+      if (this.host == '' && this.hostId == '') {
+        Toast('监控主机不能为空!')
+        this.falg = true
+        return
+      }
+      if (this.fieldValue == '' && this.videoChannel == '') {
+        Toast('视频通道不能为空!')
+        this.falg = true
+        return
+      }
+
+      this.dataList.forEach(item => {
+        if (item.situation == '1' && item.abnormalIllustrate == '') {
+          Toast(`${item.dictLabel}的异常情况说明不能为空!`)
+          this.falg = true
+        }
+      })
+      
+    },
+    //表单提交
+    addForm() {
+      this.beforSubmitV()
+      
+      if (this.falg) {
+        
+        //校验不通过
+      } else {
+        let list = []
+        this.activeNames.forEach(item => {
+          this.dataList.forEach(i => {
+            if (item == i.dictValue) {
+              i.project = i.dictValue
+              list.push(i)
+            }
+          })
+        })
+        if (this.$route.params.id.split('_')[2] == 'edit') {
+          //编辑提交
+          updateInfo({
+            host: this.hostId,
+            // taskRegistrationId:+this.$route.params.id.split('_')[1],
+            videoChannel: this.videoChannel,
+            id: this.$route.params.id.split('_')[1],
+            coreMonitoringTaskMonitorInfoList: list
+          }).then(res => {
+            let { data, msg, code } = res
+            if (code == 200) {
+              Toast('编辑成功!')
+              this.$router.push('/consultInfo/' + this.$route.params.id.split('_')[0])
+            }
+            this.falg = false
+          })
+        } else {
+          //新增提交
+          addInfo({
+            host: this.hostId,
+            // taskRegistrationId:+this.$route.params.id.split('_')[1],
+            videoChannel: this.videoChannel,
+            taskRegistrationId: this.$route.params.id.split('_')[1],
+            coreMonitoringTaskMonitorInfoList: list
+          }).then(res => {
+            let { data, msg, code } = res
+            if (code == 200) {
+              Toast('添加成功!')
+              this.$router.push('/consultInfo/' + this.$route.params.id.split('_')[0])
+            }
+            this.falg = false
+          })
+        }
+      }
     }
   }
 }

+ 21 - 4
src/views/menu/monitoringCall/components/consultInfo.vue

@@ -28,7 +28,7 @@
         </van-row>
         <van-row>
           <van-col span="24">
-            <van-button type="info">结束调阅</van-button>
+            <van-button type="info" @click="endMontor">结束调阅</van-button>
           </van-col>
         </van-row>
       </div>
@@ -40,7 +40,7 @@ import NavBar from '@/components/NavBar'
 // 主机列表组件
 import MonitoingList from './monitoringList.vue'
 import { Col, Row, Dialog, Icon, Picker } from 'vant'
-import { registrationList } from '@/api/toConsult.js'
+import { registrationList,getEndInfo, login } from '@/api/toConsult.js'
 
 export default {
   data() {
@@ -67,7 +67,7 @@ export default {
   methods: {
     //项目初始化获取数据
     init() {
-      //获取组织机构数据
+      
       registrationList({ taskId: this.$route.params.id }).then(res => {
         let { code, data, msg } = res
         if (code == 200) {
@@ -77,7 +77,24 @@ export default {
     },
     addInfoHandler() {
       console.log(this.taskData);
-      this.$router.push('/addInfo/'+this.$route.params.id)
+      this.$router.push('/addInfo/'+this.$route.params.id+'_'+this.taskData.id+'_add')
+    },
+    //结束调阅
+    endMontor(){
+     let startDate=JSON.parse(JSON.stringify(this.taskData.taskStartTime)) 
+      console.log(startDate);
+      startDate=Date.parse(new Date(startDate))
+     let endDate=Date.parse(new Date())
+      if((endDate-startDate)<=3600000){
+        Dialog({message:'该调阅未满一个小时请确认'})
+      }
+      startDate=new Date(startDate)
+      getEndInfo({
+        id:this.taskData.id,
+        taskId:this.$route.params.id
+      }).then(res=>{
+        
+      })
     }
   }
 }

+ 26 - 5
src/views/menu/monitoringCall/components/monitoringList.vue

@@ -1,5 +1,6 @@
 <template>
   <div>
+    
     <div class="topBox">
       <div>
         <img class="img" @click="editHandler" src="../../../../assets/img/icon/edit-square.png" alt="" />
@@ -12,7 +13,7 @@
         <van-col class="vancol" span="12">异常说明</van-col>
       </van-row>
       <van-row class="List" v-for="item in list.coreMonitoringTaskMonitorInfoList" :key="item.id">
-        <van-col class="vancol" span="6">{{ item.project }}</van-col>
+        <van-col class="vancol" span="6">{{ item.project|proJectListFilter(this_) }}</van-col>
 
         <van-col class="vancol" span="6"
           ><span :style="{ color: item.situation == 1 ? '#d97b7e' : '#7de46f' }">{{
@@ -36,6 +37,7 @@ export default {
   data() {
     return {
       this_:this,
+      proJectList:[],
       dictList: [] //字典情况数组
     }
   },
@@ -50,6 +52,17 @@ export default {
         })
       }
       return label
+    },
+    proJectListFilter: function (value,that) {
+      let label=''
+      if (that.proJectList && that.proJectList.length > 0) {
+        that.proJectList.filter(item => {
+          if (value == item.dictValue) {
+            label= item.dictLabel
+          }
+        })
+      }
+      return label
     }
   },
   created() {
@@ -57,14 +70,22 @@ export default {
     this.getDictHandler('core_check_type', res => {
       this.dictList = res
     })
+    //获取项目字典
+    this.getDictHandler('core_registration_project', res => {
+        this.proJectList = JSON.parse(JSON.stringify(res))
+        this.proJectList.forEach(item => {
+          
+        })
+      })
   },
   mounted() {},
 
   methods: {
-    //编辑
-    editHandler() {},
-    //新增
-    addHandler() {}
+    //编辑项目
+    editHandler() {
+      this.$router.push('/addInfo/'+this.$route.params.id+'_'+this.list.id+'_edit')
+    },
+    
   }
 }
 </script>

+ 106 - 26
src/views/menu/monitoringCall/index.vue

@@ -3,7 +3,7 @@
     <NavBar />
     <van-row>
       <van-col span="24"
-        ><van-field v-model="value1" is-link readonly label="机构" placeholder="" @click="show = true" />
+        ><van-field v-model="value1" is-link  label-width="3em"  clearable  label="机构" placeholder="" @click="show = true" />
         <van-popup v-model="show" round position="bottom" :close-on-click-overlay="false">
           <van-cascader
             v-model="cascaderValue"
@@ -18,8 +18,8 @@
       </van-col>
     </van-row>
     <van-row>
-      <van-col span="12"
-        ><van-field v-model="fieldValue" is-link readonly label="状态" placeholder="" @click="showStatus = true" />
+      <van-col span="9"
+        ><van-field v-model="fieldValue" label-width="3em" clearable  label="状态" placeholder="" @click="showStatus = true" />
         <van-popup v-model="showStatus" round position="bottom">
           <van-picker
             title="调阅状态"
@@ -31,15 +31,18 @@
             :close-on-click-overlay="false"
           /> </van-popup
       ></van-col>
-      <van-col span="12">
-        <van-field v-model="currentDate" is-link readonly label="月份" placeholder="" @click="showDate = true" />
+      <van-col span="9">
+        <van-field v-model="currentDate" clearable label-width="3em"  label="月份" placeholder="" @click="showDate = true" />
         <van-popup v-model="showDate" round position="bottom">
-          <van-datetime-picker v-model="currentDate" type="year-month" title="月份" />
+          <van-datetime-picker v-model="currentDate" @cancel="onCancel" @confirm="onDateConfirm"  type="year-month" title="月份" />
         </van-popup>
       </van-col>
+      <van-col span="6" class="">
+        <van-button type="info" class="btn" @click="clearSearch" size="small">重置</van-button>
+      </van-col>
     </van-row>
     <!-- 调阅列表 -->
-    <div class="topBox" @click="endMonitorHandler(item.status,item.id)" v-for="item in taskList" :key="item.id">
+    <div class="topBox" @click="endMonitorHandler(item.status, item.id)" v-for="item in taskList" :key="item.id">
       <div class="sonLeftBox">
         <!-- 待调阅按钮 -->
         <p>
@@ -85,8 +88,9 @@ import { Toast } from 'vant'
 export default {
   data() {
     return {
+      str: '',
       fieldValue: '',
-      monitor: ['monitor','aaaa','bbb','ccc'], //状态样式
+      monitor: ['monitor', 'monitored', 'monitoring', 'ccc'], //状态样式
       value1: '', //输入框model
       currentDate: '',
       cascaderValue: '',
@@ -100,7 +104,7 @@ export default {
         value: 'id',
         children: 'children'
       },
-      taskId:'',//当前点击所属任务ID
+      taskId: '', //当前点击所属任务ID
       taskList: [], //任务数组集合
       options: [] //机构数组
     }
@@ -144,6 +148,16 @@ export default {
     this.init()
   },
   methods: {
+    //清空查询条件
+    clearSearch(){
+      this.str=''
+      this.cascaderValue=''
+      this.value1=''
+      this.currentDate=''
+      this.fieldValue=''
+      this.selectListAppHandler()
+    },
+    
     //初始化
     init() {
       //获取组织机构数据
@@ -153,14 +167,23 @@ export default {
           this.options = data
         }
       })
+      this.selectListAppHandler()
+      
+    },
+    selectListAppHandler(){
       //获取任务列表
-      selectListApp().then(res => {
-        let { code, data, msg } = res
-        if (code == 200) {
-          this.taskList = data
-        }
-      })
+      selectListApp({
+          status: this.str||'',
+          orgId: this.cascaderValue||'',
+          moth: this.currentDate||''
+        }).then(res => {
+          let { code, data, msg } = res
+          if (code == 200) {
+            this.taskList = data
+          }
+        })
     },
+      
     //扫描NFC
     nfcHandler() {
       //NFC和图片对应字段先写死后期接入app之后再做更改
@@ -172,7 +195,7 @@ export default {
         let { code, data, msg } = res
         if (code == 200) {
           Toast.success('扫描成功')
-          this.$router.push('/consultInfo/'+this.taskId)
+          this.$router.push('/consultInfo/' + this.taskId)
         }
       })
     },
@@ -186,31 +209,31 @@ export default {
         let { code, data, msg } = res
         if (code == 200) {
           Toast.success('扫描成功')
-          this.$router.push('/consultInfo/'+this.taskId)
+          this.$router.push('/consultInfo/' + this.taskId)
         }
       })
     },
     //关闭弹框事件
     closeDialog() {
       this.show = false
-      this.value1 = this.fieldValue
+      this.selectListAppHandler()
     },
     // 开始调阅事件
     startMonitorHandler(taskId) {
-      this.taskId=taskId
+      this.taskId = taskId
       this.showDialog = true
     },
     //已调阅事件
-    endMonitorHandler(status,taskId) {
+    endMonitorHandler(status, taskId) {
       // 0待调阅,1调阅中,2已调阅,3已超期
       //跳转详情
       if (status <= 1) return
-      this.$router.push('/consultInfo/'+taskId)
+      this.$router.push('/consultInfo/' + taskId)
     },
     //查看调阅详情
     lookInfoHandler(taskId) {
-      this.taskId=taskId
-      this.$router.push('/consultInfo/'+taskId)
+      this.taskId = taskId
+      this.$router.push('/consultInfo/' + taskId)
     },
     //级联选择当前任意层级触发
     changeCascader(val) {
@@ -219,15 +242,55 @@ export default {
       //级联值
       this.cascaderValue = selectedOptions[selectedOptions.length - 1].id
       //输入框值
-      this.fieldValue = selectedOptions[selectedOptions.length - 1].name
+      this.value1 = selectedOptions[selectedOptions.length - 1].name
     },
     onFinish() {},
     //搜索选择状态时触发
     onConfirm(value, index) {
-      console.log(value)
+      this.fieldValue = value
+
+      switch (value) {
+        case '待调阅':
+          this.str = '0'
+
+          break
+        case '调阅中':
+          this.str = '1'
+          break
+
+        case '已调阅':
+          this.str = '2'
+          break
+
+        case '已超期':
+          this.str = '3'
+          break
+      }
+      this.showStatus = false
+      this.selectListAppHandler()
+    },
+    //月份选中触发
+    onDateConfirm(){
+      this.currentDate=this.newDate(this.currentDate)
+      this.showDate = false
+      this.selectListAppHandler()
+    },
+    //日期转换
+    newDate(time) {
+    var date = new Date(time)
+    var y = date.getFullYear()
+    var m = date.getMonth() + 1
+    m = m < 10 ? '0' + m : m
+    var d = date.getDate()
+    d = d < 10 ? '0' + d : d
+    return y + '-' + m + '-' + d
     },
     onChange(picker, value, index) {},
-    onCancel() {}
+    onCancel() {
+      this.show=false
+      this.showStatus=false
+      this.showDate=false
+    }
   }
 }
 </script>
@@ -249,6 +312,18 @@ export default {
   border-radius: 10px;
   background-color: #8cb585;
 }
+.monitored {
+  color: white;
+  padding: 10px;
+  border-radius: 10px;
+  background-color:#da0000;
+}
+.monitoring {
+  color: white;
+  padding: 10px;
+  border-radius: 10px;
+  background-color:#25da0b;
+}
 .title {
   margin: 10px;
   margin-left: 0px;
@@ -310,4 +385,9 @@ export default {
     height: 50px;
   }
 }
+.btn{
+  float: right;
+  margin-top:20px;
+  margin-right: 20px;
+}
 </style>