coys 1 년 전
부모
커밋
7706bcb996
4개의 변경된 파일712개의 추가작업 그리고 82개의 파일을 삭제
  1. 2 2
      .env.development
  2. 264 68
      src/views/dynamicLoopManagement/index.vue
  3. 4 12
      src/views/videoRecorder/dialog.vue
  4. 442 0
      src/views/warn/index.vue

+ 2 - 2
.env.development

@@ -6,7 +6,7 @@ ENV = 'development'
 
 # 开发环境
 #测试地址
-VUE_APP_BASE_API = 'http://47.92.229.224:8080'
+# VUE_APP_BASE_API = 'http://47.92.229.224:8080'
 #罗俊
 #VUE_APP_BASE_API = 'http://10.87.21.60:8080'
 #罗伟
@@ -20,7 +20,7 @@ VUE_APP_BASE_API = 'http://47.92.229.224:8080'
 # VUE_APP_BASE_API = 'http://10.87.23.62:8080'
 #  VUE_APP_BASE_API = 'http://localhost:8080'
 # 开发环境v
-# VUE_APP_BASE_API = 'http://10.87.21.107:8080'
+VUE_APP_BASE_API = 'http://10.87.21.107:8080'
 # 路由懒加载
 VUE_CLI_BABEL_TRANSPILE_MODULES = true
 

+ 264 - 68
src/views/dynamicLoopManagement/index.vue

@@ -118,6 +118,25 @@
               <el-col :span="1.5">
                 <el-button
                   type="primary"
+                  icon="el-icon-plus"
+                  size="mini"
+                  @click="handleAdd"
+                  >新增设备</el-button
+                >
+              </el-col>
+
+              <el-col :span="1.5">
+                <el-button
+                  type="primary"
+                  icon="el-icon-upload"
+                  size="mini"
+                  @click="handleImport"
+                  >导入设备</el-button
+                >
+              </el-col>
+              <el-col :span="1.5">
+                <el-button
+                  type="primary"
                   icon="el-icon-refresh"
                   size="mini"
                   @click="resetQuery"
@@ -134,7 +153,7 @@
                   >导出</el-button
                 >
               </el-col> -->
-              
+
               <right-toolbar
                 :showSearch.sync="showSearch"
                 @queryTable="getList"
@@ -149,20 +168,6 @@
             height="600"
             size="small"
           >
-            <!-- <el-table-column
-              label="序号"
-              type="index"
-              align="center"
-              width="100"
-            >
-              <template slot-scope="scope">
-                <span>{{
-                  (queryParams.pageNum - 1) * queryParams.pageSize +
-                  scope.$index +
-                  1
-                }}</span>
-              </template>
-            </el-table-column> -->
             <el-table-column
               label="组织机构"
               align="center"
@@ -173,7 +178,6 @@
               label="设备编码"
               align="center"
               prop="sbmc"
-             
               show-overflow-tooltip="true"
             />
             <el-table-column
@@ -184,57 +188,25 @@
               show-overflow-tooltip="true"
             />
 
-            <el-table-column
-              label="资产类别"
-              align="center"
-              prop="pp"
-              
-            />
-            <el-table-column
-              label="设备类型"
-              align="center"
-              prop="ip"
-            
-            />
-            <el-table-column
-              label="门磁报警模板"
-              align="center"
-              prop="mcmb"
-            
-            >
-            <template slot-scope="scope">
-                <span :style="{color:'#ec4035'}">{{scope.row.mcmb
-                }}</span>
+            <el-table-column label="资产类别" align="center" prop="pp" />
+            <el-table-column label="设备类型" align="center" prop="ip" />
+            <el-table-column label="门磁报警模板" align="center" prop="mcmb">
+              <template slot-scope="scope">
+                <span :style="{ color: '#ec4035' }">{{ scope.row.mcmb }}</span>
               </template>
-        </el-table-column>
-            <el-table-column
-              label="设备状态"
-              align="center"
-              prop="status"
-             
-            />
-            <el-table-column label="上报时间" align="center" prop="wlzt">
-              <!-- <template slot-scope="scope">
-                  <span>
-                    <dict-tag
-                      :options="dict.type.retrieval_task_status"
-                      :value="scope.row.status"
-                    />
-                  </span>
-                </template> -->
             </el-table-column>
-            <el-table-column label="上报内容" align="center" prop="ypzs">
-              <!-- <template slot-scope="scope">
-                  {{ scope.row.planStartTime }}~{{ scope.row.planEndTime }}
-                </template> -->
+            <el-table-column label="设备状态" align="center" prop="status" />
+            <!-- <el-table-column label="上报时间" align="center" prop="wlzt">
+              
             </el-table-column>
-
-           
+            <el-table-column label="上报内容" align="center" prop="ypzs">
+              
+            </el-table-column> -->
 
             <el-table-column
               label="操作"
               fixed="right"
-              style="width: 100px"
+              width="300"
               align="center"
               class-name="small-padding fixed-width"
             >
@@ -247,6 +219,20 @@
                   v-hasPermi="['core:task:query']"
                   >历史数据</el-button
                 >
+                <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-edit-outline"
+                  @click="handleUpdate(scope.row)"
+                 
+                  >编辑</el-button>
+                <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-delete"
+                  @click="handleDelete(scope.row)"
+               
+                  >删除</el-button>
               </template>
             </el-table-column>
           </el-table>
@@ -258,6 +244,172 @@
             :limit.sync="queryParams.pageSize"
             @pagination="getList"
           />
+          <!-- 新增编辑设备弹框 -->
+          <!-- 添加或修改【请填写功能名称】对话框 -->
+          <DialogCom
+            :title="title"
+            :visible.sync="open"
+            width="850px"
+            @close="closeHandler"
+            append-to-body
+          >
+            <el-form
+              ref="form"
+              :model="form"
+              :rules="rules"
+              label-width="120px"
+            >
+              <el-row>
+                <el-col :span="24">
+                  <el-form-item label="所属机构" prop="orgId">
+                    <tree-select
+                      v-model="form.orgId"
+                      :options="deptOptions"
+                      :show-count="true"
+                      :normalizer="tenantIdnormalizer"
+                      :props="{ checkStrictly: true, label: 'name' }"
+                      placeholder="请选择所属机构"
+                      @select="changeSelect"
+                      clearValueText="清除"
+                      :noChildrenText="''"
+                      noOptionsText="没有数据"
+                      noResultsText="没有搜索结果"
+                    />
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row>
+                <el-col :span="12">
+                  <el-form-item label="设备类别" prop="assetType">
+                    <el-select
+                      style="width: 100%"
+                      v-model="form.assetType"
+                      :popper-append-to-body="false"
+                      placeholder="请选择设备类别"
+                      @change="changeSelectDevice"
+                    >
+                      <el-option
+                        v-for="dict in dict.type.sys_asset_type"
+                        :key="dict.value"
+                        :label="dict.label"
+                        :value="`${dict.value}`"
+                      ></el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item label="设备分类" prop="deviceType">
+                    <el-select
+                      style="width: 100%"
+                      :popper-append-to-body="false"
+                      v-model="form.deviceType"
+                      placeholder="请选择设备分类"
+                    >
+                      <el-option
+                        v-for="item in devices"
+                        :key="item.dictValue"
+                        :label="item.dictLabel"
+                        :value="item.dictValue"
+                      ></el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row>
+                <el-col :span="12">
+                  <el-form-item label="设备名称" prop="deviceName">
+                    <el-input
+                      v-model="form.deviceName"
+                      placeholder="请输入设备名称"
+                      maxlength="50"
+                    />
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item label="设备品牌" prop="deviceBrand">
+                    <el-input
+                      v-model="form.deviceBrand"
+                      placeholder="请输入设备品牌"
+                      maxlength="50"
+                    />
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row>
+                <el-col :span="12">
+                  <el-form-item
+                    v-if="form.deviceType == 2"
+                    label="硬盘录像机"
+                    prop="hostId"
+                  >
+                    <el-select
+                      style="width: 100%"
+                      v-model="form.hostId"
+                      placeholder="请选择关联主机"
+                    >
+                      <el-option
+                        v-for="item in hostList"
+                        :key="item.id"
+                        :label="item.deviceName"
+                        :value="item.id"
+                      ></el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+
+                <el-col :span="12">
+                  <el-form-item
+                    v-if="form.deviceType == 2"
+                    label="通道号"
+                    prop="channel"
+                  >
+                    <el-input
+                      type="number"
+                      max="64"
+                      min="0"
+                      oninput="if(value<=0)value=null;if(value>=64)value=64;value=parseInt(value)"
+                      v-model="form.channel"
+                      placeholder="请输入关联通道号"
+                    />
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item label="是否高清" v-if="form.deviceType == 2">
+                    <el-switch
+                      v-model="form.definition"
+                      active-value="1"
+                      inactive-value="0"
+                    ></el-switch>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+
+              <el-row>
+                <el-col :span="12">
+                  <el-form-item
+                    v-if="form.assetType == 0"
+                    label="有效期至"
+                    prop="checkTime"
+                  >
+                    <el-date-picker
+                      style="width: 100%"
+                      clearable
+                      v-model="form.checkTime"
+                      type="date"
+                      value-format="yyyy-MM-dd"
+                      placeholder="请选择到期时间"
+                    >
+                    </el-date-picker>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row> </el-row>
+            </el-form>
+            <div slot="footer" class="dialog-footer">
+              <el-button type="primary" @click="submitForm">确 定</el-button>
+              <el-button @click="cancel">取 消</el-button>
+            </div>
+          </DialogCom>
         </div>
       </el-col>
     </el-row>
@@ -338,7 +490,7 @@ export default {
     ...mapGetters(["orgId", "orgName"]),
   },
   methods: {
-    /** 查询监控调阅任务列表 */
+    /** 查询列表 */
     getList() {
       this.taskList = [
         {
@@ -350,10 +502,10 @@ export default {
           wlzt: "2023-12-22 15:01:25",
           ypzs: "门已打开",
           status: "在线",
-          mcmb:'未绑定',
-          
+          mcmb: "未绑定",
         },
-        { //自助区卷帘门一
+        {
+          //自助区卷帘门一
           taskName: "福建农信",
           sbmc: "80011",
           sbmc1: "自助区卷帘门一",
@@ -362,7 +514,7 @@ export default {
           wlzt: "2023-12-22 15:01:25",
           ypzs: "未知",
           status: "离线",
-          mcmb:'未绑定',
+          mcmb: "未绑定",
         },
       ];
       return;
@@ -373,7 +525,52 @@ export default {
         this.loading = false;
       });
     },
-
+     /** 修改按钮操作 */
+     handleUpdate(row) {
+      this.open = true;
+        this.title = "编辑设备信息";
+        return
+      this.reset();
+      const id = row.id || this.ids;
+      getDevice(id).then((response) => {
+        this.form = response.data;
+        this.devices = response.devices;
+        this.hostList = response.hostList;
+        this.open = true;
+        this.title = "编辑设备信息";
+      });
+    },
+     /** 删除按钮操作 */
+     handleDelete(row) {
+      return
+      const ids = row.id || this.ids;
+      const names = row.deviceName || this.names;
+      this.$modal
+        .confirm('是否确认删除名称为"' + names + '"的数据项?')
+        .then(function () {
+          
+          return delDevice(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
+    },
+    /** 新增按钮操作 */
+    handleAdd(val) {
+      // this.open = true;
+      // this.title = "新增设备信息";
+      // this.form.orgId = this.selectOrgId;
+      // this.dept.id = this.selectOrgId;
+      // this.changeSelect(this.dept);
+      // this.devices = null;
+    },
+    // 取消弹框
+    closeHandler() {
+      this.reset();
+    },
+    handleImport() {},
     getDefaultOrg(org) {
       this.orgName = org.name;
       this.selectedOrgName = org.shortName;
@@ -484,5 +681,4 @@ export default {
   },
 };
 </script>
-<style lang="scss" scoped>
-</style>
+<style lang="scss" scoped></style>

+ 4 - 12
src/views/videoRecorder/dialog.vue

@@ -48,7 +48,7 @@
             ></el-progress>
           </div>
         </div>
-        <el-form
+        <!-- <el-form
           :model="formData"
           size="small"
           ref="form"
@@ -139,10 +139,7 @@
                   <span :style="{ color: '#ebb665' }">{{
                     scope.row.project
                   }}</span>
-                  <!-- <dict-tag
-                    :options="dict.type.core_registration_project"
-                    :value="scope.row.project"
-                  /> -->
+              
                 </template>
               </el-table-column>
               <el-table-column
@@ -150,12 +147,7 @@
                 align="center"
                 prop="situation"
               >
-                <!-- <template slot-scope="scope">
-                  <dict-tag
-                    :options="dict.type.core_check_type"
-                    :value="scope.row.situation"
-                  />
-                </template> -->
+                
               </el-table-column>
               <el-table-column
                 label="告警恢复时间"
@@ -164,7 +156,7 @@
               />
             </el-table>
           </div>
-        </el-form>
+        </el-form> -->
       </div>
 
       <div slot="footer" class="dialog-footer">

+ 442 - 0
src/views/warn/index.vue

@@ -0,0 +1,442 @@
+<template>
+  <div class="app-container">
+    <el-row :gutter="20">
+      <el-col :span="24" :xs="24">
+        <div class="main-right-box">
+          <div class="main-search-box">
+            <el-form
+              :model="queryParams"
+              ref="queryForm"
+              size="small"
+              :inline="true"
+              v-show="showSearch"
+            >
+              <el-form-item label="组织机构">
+                <org-tree
+                  v-model="queryParams.orgId"
+                  @defaultKey="getDefaultKey"
+                  @defaultOrg="getDefaultOrg"
+                  @checkChange="checkChange"
+                  @click="clickTreeNode"
+                  ref="orgTree"
+                ></org-tree>
+              </el-form-item>
+              <el-form-item label="设备类型" prop="taskName">
+                <el-select
+                  v-model="queryParams.taskName"
+                  clearable
+                  label="设备类型"
+                  placeholder="请选择设备类型"
+                  prop="orgType"
+                  @change="cleanExecOrgList"
+                >
+                  <el-option
+                    v-for="item in dict.type.sys_org_type"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+
+              <el-form-item label="告警时间" prop="planStartTime">
+                <DataRangePicker
+                  type="daterange"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  :default-time="['00:00:00', '23:59:59']"
+                  start-placeholder="开始日期"
+                  end-placeholder="结束日期"
+                  v-model="queryParams.dateRange"
+                  :picker-options="pickerOptions"
+                >
+                </DataRangePicker>
+              </el-form-item>
+              <el-form-item label="是否已全部处理" prop="taskName">
+                <el-select
+                  v-model="queryParams.taskName"
+                  clearable
+                  prop="orgType"
+                  @change="cleanExecOrgList"
+                >
+                  <el-option
+                    v-for="item in dict.type.sys_org_type"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-form>
+
+            <el-row :gutter="10">
+              <el-col :span="1.5">
+                <el-button
+                  type="primary"
+                  icon="el-icon-search"
+                  size="mini"
+                  @click="handleQuery"
+                  >搜索
+                </el-button>
+              </el-col>
+              <el-col :span="1.5">
+                <el-button
+                  type="primary"
+                  icon="el-icon-refresh"
+                  size="mini"
+                  @click="resetQuery"
+                  >重置
+                </el-button>
+              </el-col>
+
+              <el-col :span="1.5">
+                <el-button
+                  type="primary"
+                  icon="el-icon-download"
+                  size="mini"
+                  @click="handleExport"
+                  v-hasPermi="['core:task:export']"
+                  >导出</el-button
+                >
+              </el-col>
+
+              <right-toolbar
+                :showSearch.sync="showSearch"
+                @queryTable="getList"
+              ></right-toolbar>
+            </el-row>
+          </div>
+
+          <el-table
+            v-loading="loading"
+            :data="taskList"
+            border
+            height="600"
+            size="small"
+          >
+            <el-table-column
+              label="序号"
+              type="index"
+              align="center"
+              width="100"
+            >
+              <template slot-scope="scope">
+                <span>{{
+                  (queryParams.pageNum - 1) * queryParams.pageSize +
+                  scope.$index +
+                  1
+                }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column
+              label="组织机构"
+              align="center"
+              prop="taskName"
+              width="220"
+            />
+            <el-table-column
+              label="设备名称"
+              align="center"
+              prop="sbmc"
+              width="220"
+              show-overflow-tooltip="true"
+            />
+
+            <el-table-column
+              label="资产类别"
+              align="center"
+              prop="pp"
+              width="220"
+            />
+            <el-table-column
+              label="设备类型"
+              align="center"
+              prop="ip"
+              width="160"
+            />
+            <el-table-column label="告警时间" align="center" prop="wlzt">
+              <!-- <template slot-scope="scope">
+                <span>
+                  <dict-tag
+                    :options="dict.type.retrieval_task_status"
+                    :value="scope.row.status"
+                  />
+                </span>
+              </template> -->
+            </el-table-column>
+            <el-table-column label="告警规则" align="center" prop="ypzs">
+              <!-- <template slot-scope="scope">
+                {{ scope.row.planStartTime }}~{{ scope.row.planEndTime }}
+              </template> -->
+            </el-table-column>
+
+            <el-table-column
+              label="告警内容"
+              align="center"
+              prop="exceptionCount"
+              width="150"
+            />
+            <el-table-column
+              label="处理状态"
+              align="center"
+              prop="sykj"
+              width="160"
+            />
+            <el-table-column
+              label="处理结果"
+              align="center"
+              prop="reslut"
+              width="160"
+            />
+            <!-- <el-table-column
+              label="操作"
+              fixed="right"
+              style="width: 100px"
+              align="center"
+              class-name="small-padding fixed-width"
+            >
+              <template slot-scope="scope">
+                <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-view"
+                  @click="lookView(scope.row)"
+                  v-hasPermi="['core:task:query']"
+                  >查看</el-button
+                >
+              </template>
+            </el-table-column> -->
+          </el-table>
+          <pagination
+            v-show="total > 0"
+            :total="total"
+            :page.sync="queryParams.pageNum"
+            :limit.sync="queryParams.pageSize"
+            @pagination="getList"
+          />
+        </div>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import { listTask } from "@/api/core/task";
+import OrgTree from "@/components/orgTree/orgQuerySelector.vue";
+
+import { listPlanRole } from "@/api/core/edu/plan";
+import { formatTime } from "@/utils/ruoyi";
+import DataRangePicker from "@/components/dateTime/daterange.picker.vue";
+import dayjs from "dayjs";
+import { mapGetters } from "vuex";
+export default {
+  components: { OrgTree, DataRangePicker },
+  name: "Task",
+  dicts: ["sys_access_cycle"],
+  data() {
+    return {
+      // 遮罩层
+      loading: false,
+      // 选中数组
+      ids: [],
+      // 非单个停用
+      single: true,
+      // 非多个停用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 监控调阅任务表格数据
+      taskList: [
+        {
+          taskName: "长乐农商行",
+          sbmc: "三楼海康",
+          pp: "海康视频存储设备",
+          ip: "10.87.10.166",
+          wlzt: "正常",
+          ypzs: "50",
+          exceptionCount: "2",
+          sykj: "995G/7449G",
+        },
+      ],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        taskName: null,
+        cycle: null,
+        dateRange: [],
+        planStartTime: null,
+        status: null,
+        roleId: null,
+        checkSub: true,
+      },
+      selectedOrgName: "",
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {},
+
+      orgName: "",
+    };
+  },
+  created() {
+    this.queryParams.orgId = this.$store.getters.orgId;
+    this.getList();
+  },
+  computed: {
+    ...mapGetters(["orgId", "orgName"]),
+  },
+  methods: {
+    /** 查询监控调阅任务列表 */
+    getList() {
+      this.taskList = [
+        {
+          taskName: "长乐农商行",
+          sbmc: "长乐农商行1楼-02主机",
+          pp: "报警主机传感器",
+          ip: "水浸传感器",
+          wlzt: "2024-01-01",
+          ypzs: "上班一键巡检",
+          exceptionCount: "水浸传感器异常",
+          sykj: "已处理",
+          reslut: "已处理",
+        },
+        {
+          taskName: "闽侯县联社",
+          sbmc: "闽侯县联社大厅-01主机",
+          pp: "物联采集类",
+          ip: "温湿度传感器",
+          wlzt: "2024-01-02",
+          ypzs: "上班一键巡检",
+          exceptionCount: "温湿度传感器异常",
+          sykj: "未处理",
+          reslut: "暂未处理",
+        },
+      ];
+      return;
+      this.loading = true;
+      listTask(this.queryParams).then((response) => {
+        this.taskList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
+    getDefaultOrg(org) {
+      this.orgName = org.name;
+      this.selectedOrgName = org.shortName;
+    },
+
+    getDefaultKey(key) {
+      this.queryParams.orgId = key;
+      this.getList();
+    },
+    checkChange(state) {
+      this.queryParams.checkSub = state;
+      this.handleQuery();
+    },
+    // 节点单击事件
+    clickTreeNode(data) {
+      this.queryParams.orgId = data.id;
+      this.orgName = data.name;
+      this.selectedOrgName = data.shortName;
+      this.handleQuery();
+    },
+    /** 下穿状态改变*/
+    changeCheckBox() {
+      this.getList();
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        planId: null,
+        taskName: null,
+        orgId: null,
+        orgPath: null,
+        orgName: null,
+        ymdDate: null,
+        ymdYear: null,
+        ymdHalfyear: null,
+        ymdQuarter: null,
+        ymdMonth: null,
+        ymdWeek: null,
+        ymdDay: null,
+        cycle: null,
+        planStartTime: null,
+        planEndTime: null,
+        startTime: null,
+        endTime: null,
+        status: null,
+        roleId: null,
+        retrievalUser: null,
+        orderNum: null,
+        batchNum: null,
+        submitTime: null,
+        exceptionCount: null,
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      //this.queryParams.dateRange = [];
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.queryParams.orgId = this.orgId;
+      this.selectedOrgName = this.orgName;
+      this.queryParams.checkSub = true;
+      this.queryParams.dateRange = ["", ""];
+      this.queryParams.planStartTime = null;
+      this.$refs["orgTree"].setCheckSub(this.queryParams.checkSub);
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加监控调阅任务";
+    },
+    /** 修改按钮操作 */
+    lookView(row) {
+      this.$refs["infoDialog"].show(row.id, {});
+    },
+
+    /** 导出按钮操作 */
+    handleExport() {
+      console.log(this);
+      this.download(
+        "core/retrievalTask/export",
+        {
+          ...this.queryParams,
+        },
+        `${
+          this.selectedOrgName
+        }-${this.$tab.getCurrentTabName()}-${dayjs().format("YYYYMMDD")}.xlsx`
+      );
+    },
+  },
+};
+</script>
+<style lang="scss" scoped></style>