From f5641fd76ef90a66599e8ce121f3acfd97d779e8 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Fri, 16 Jul 2021 11:44:43 +0800
Subject: [PATCH] 样式

---
 src/views/security/security copy.vue            |  559 +
 src/views/article/article.vue                   |  554 +-
 src/views/realTimePolice/realHistory.vue        |    5 
 src/views/healthcode/healthcode.vue             |  969 +-
 src/views/security/security.vue                 | 1941 +++---
 src/styles/element-ui.scss                      |   45 
 src/styles/theme/bule.scss                      |   96 
 src/views/clientManagement/clientManagement.vue | 1953 +++---
 src/views/parcel/parcel.vue                     | 1028 ++-
 src/views/parcel/parcelKind.vue                 |  983 ++-
 src/views/realTimePolice/real.vue               | 2136 ++++----
 src/views/animalHeat/animalHeat.vue             |  966 ++-
 src/styles/ourBackgroundColor.scss              |    1 
 src/views/feedbackReport/feedbackReport.vue     |  703 +-
 src/views/attendance/attendance.vue             |  935 +-
 src/views/system/cs.vue                         | 2565 ++++----
 16 files changed, 7,998 insertions(+), 7,441 deletions(-)

diff --git a/src/styles/element-ui.scss b/src/styles/element-ui.scss
index 4cae318..2441bbf 100644
--- a/src/styles/element-ui.scss
+++ b/src/styles/element-ui.scss
@@ -357,8 +357,53 @@
 .el-date-table.is-week-mode .el-date-table__row:hover div {
   background-color: $inputB1 !important;
 }
+.el-picker-panel__icon-btn {
+  color: $fontColor !important;
+}
 
 //首页的body不加颜色
 #avue-view .el-card__body {
   background-color: transparent !important;
 }
+//top导航颜色
+.avue-header {
+  background-color: $mainB !important;
+}
+
+//表格斑马线
+// .theme-deep-bule .el-card .el-table td {
+//   background-color: $mainB !important;
+// }
+// .theme-deep-bule .el-card .el-table td,
+// .theme-deep-bule .el-card .el-table th.is-leaf {
+//   border-color: $mainB !important;
+// }
+// .theme-deep-bule .el-card .el-table td {
+//   background-color: $mainB !important;
+// }
+// .el-table__row:hover {
+//   background-color: $mainBhover !important;
+// }
+
+//表格右侧白色
+.el-table__fixed-right-patch {
+  background-color: $mainB !important;
+}
+.el-table--border th,
+.el-table__fixed-right-patch {
+  border-bottom: $mainB !important;
+}
+//子表单
+.el-collapse-item__header {
+  background-color: $mainB !important;
+  color: $fontColor !important;
+}
+.avue-group__icon,
+.avue-group__title {
+  color: $fontColor !important;
+}
+
+//main背景
+.avue-main {
+  background-color: $mainBx2 !important;
+}
diff --git a/src/styles/ourBackgroundColor.scss b/src/styles/ourBackgroundColor.scss
index 31a731c..d8816e7 100644
--- a/src/styles/ourBackgroundColor.scss
+++ b/src/styles/ourBackgroundColor.scss
@@ -9,6 +9,7 @@
 $mainB2: #0048e5;
 $mainB: #004ca7;
 $mainBx1: #013e8a;
+$mainBx2: #03277c;
 
 $mainBhover: #1d5ce4;
 
diff --git a/src/styles/theme/bule.scss b/src/styles/theme/bule.scss
index d05154a..19f4978 100644
--- a/src/styles/theme/bule.scss
+++ b/src/styles/theme/bule.scss
@@ -1,5 +1,4 @@
 .theme-bule {
-
   .avue-header,
   .avue-logo {
     background: #004ca7;
@@ -37,16 +36,13 @@
   }
 
   .avue-top {
-
     .el-menu-item {
-
       i,
       span {
         color: #fff;
       }
 
       &:hover {
-
         i,
         span {
           color: #fff;
@@ -56,30 +52,28 @@
   }
 }
 
-
-
 .theme-deep-bule {
-  background: #19305C;
+  background: #19305c;
 
-  .avue-tags .el-tabs--card>.el-tabs__header .el-tabs__item {
+  .avue-tags .el-tabs--card > .el-tabs__header .el-tabs__item {
     color: #fff;
   }
 
-  .avue-tags .el-tabs--card>.el-tabs__header .el-tabs__item.is-active {
-    color: #409EFF;
+  .avue-tags .el-tabs--card > .el-tabs__header .el-tabs__item.is-active {
+    color: #409eff;
   }
 
   .avue-contail {
-    background: #19305C;
+    background: #19305c;
   }
 
   .avue-header,
   .avue-logo {
-    background: #19305C;
+    background: #19305c;
   }
 
   .avue-sidebar {
-    background: #19305C;
+    background: #19305c;
 
     .el-menu-item.is-active,
     .el-submenu__title.is-active {
@@ -110,16 +104,13 @@
   }
 
   .avue-top {
-
     .el-menu-item {
-
       i,
       span {
         color: #fff;
       }
 
       &:hover {
-
         i,
         span {
           color: #fff;
@@ -129,18 +120,17 @@
   }
 
   .el-select-dropdown {
-    background: #0146F0;
+    background: #0146f0;
     color: #8ab6ff;
-    border: 1px solid #0140D8;
+    border: 1px solid #0140d8;
   }
 
-
-  .el-popper[x-placement^=bottom] .popper__arrow::after {
-    border-bottom-color: #0146F0;
+  .el-popper[x-placement^="bottom"] .popper__arrow::after {
+    border-bottom-color: #0146f0;
   }
 
-  .el-popper[x-placement^=bottom] .popper__arrow {
-    border-bottom-color: #0146F0;
+  .el-popper[x-placement^="bottom"] .popper__arrow {
+    border-bottom-color: #0146f0;
   }
 
   .el-select-dropdown__item {
@@ -149,14 +139,14 @@
 
   .el-select-dropdown__item.hover,
   .el-select-dropdown__item:hover {
-    background-color: #155CF7;
+    background-color: #155cf7;
   }
 
   .el-button:focus,
   .el-button:hover {
-    color: #F0F0F0;
-    border-color: #83C1FF;
-    background-color: #83C1FF;
+    color: #f0f0f0;
+    border-color: #83c1ff;
+    background-color: #83c1ff;
   }
 
   .avue-crud__right {
@@ -164,20 +154,19 @@
   }
 
   .el-button--default {
-    background-color: #409EFF;
-    border-color: #409EFF;
-    color: #FFF9FF;
+    background-color: #409eff;
+    border-color: #409eff;
+    color: #fff9ff;
   }
 
   .el-card {
     height: 100%;
-    background: #19305C;
+    background: #19305c;
     color: #fff;
 
     .el-table,
     .el-table__expanded-cell {
-      background-color: #19305C;
-
+      background-color: #19305c;
     }
 
     .el-table--border::after,
@@ -191,23 +180,22 @@
       background-color: #1a325f;
     }
 
-
     .el-loading-mask {
       background-color: #1a325fe1;
     }
 
     .el-table th {
-      background-color: #155CF7;
+      background-color: #155cf7;
       color: #fff;
     }
-
+    //表格 行颜色
     .el-table td {
-      background: #0142D6;
+      background: #004ca7;
       color: #fff;
     }
 
     .el-table--striped .el-table__body tr.el-table__row--striped td {
-      background: #044BE3;
+      background: #044be3;
     }
 
     .el-button--text {
@@ -215,8 +203,7 @@
     }
 
     .el-collapse-item__wrap {
-      background-color: #19305C;
-
+      background-color: #19305c;
     }
 
     .el-collapse {
@@ -225,11 +212,10 @@
     }
 
     .avue-crud__menu {
-      background-color: #19305C;
+      background-color: #19305c;
     }
 
     .el-form-item__label {
-
       color: #fff;
     }
 
@@ -252,7 +238,7 @@
 
     .el-table--border td,
     .el-table--border th,
-    .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed {
+    .el-table__body-wrapper .el-table--border.is-scrolling-left ~ .el-table__fixed {
       border-color: #53a7fa;
     }
 
@@ -262,12 +248,12 @@
     }
 
     .el-input__inner {
-      background: #0146F0;
+      background: #0146f0;
       color: #8ab6ff;
     }
 
     .el-tooltip input {
-      background: #0146F0;
+      background: #0146f0;
       color: #8ab6ff;
     }
 
@@ -277,48 +263,46 @@
 
     .el-date-editor,
     .el-input input {
-      border-color: #0140D8;
+      border-color: #0140d8;
     }
 
     .avue-group .el-collapse,
     .avue-group .el-collapse-item__wrap {
-      border-color: #19305C;
+      border-color: #19305c;
     }
 
     .el-pagination.is-background .btn-next,
     .el-pagination.is-background .btn-prev,
     .el-pagination.is-background .el-pager li {
       margin: 0 5px;
-      background-color: #409EFF;
+      background-color: #409eff;
       color: #fff;
       min-width: 30px;
       border-radius: 2px;
     }
 
     .el-tag {
-      background-color: #409EFF;
+      background-color: #409eff;
       color: #fff;
       border-color: #53a7fa;
     }
-
   }
 
   #avue-view {
-    &>.el-row {
-
-      &>.el-col:first-child {
+    & > .el-row {
+      & > .el-col:first-child {
         padding-right: 2px;
       }
 
-      &>.el-col:last-child {
+      & > .el-col:last-child {
         padding-left: 2px;
       }
 
-      &>.el-col {
+      & > .el-col {
         height: 100%;
         margin-bottom: 0px;
 
-        &>.basic-container {
+        & > .basic-container {
           padding: 0;
           height: 100%;
         }
diff --git a/src/views/animalHeat/animalHeat.vue b/src/views/animalHeat/animalHeat.vue
index 5307918..063a5f8 100644
--- a/src/views/animalHeat/animalHeat.vue
+++ b/src/views/animalHeat/animalHeat.vue
@@ -1,475 +1,541 @@
 <template>
   <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               :search.sync="search"
-               :row-style="rowStyle"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               @row-click="rowClick"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
-        <template slot="menuLeft">
-          <el-button
-            v-bind:class="activeClass == 0 ? 'btn-color' : ''"
-            size="small "
-            @click="getAnimalData(0)"
-            >本日
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 1 ? 'btn-color' : ''"
-            size="small "
-            @click="getAnimalData(1)"
-            >本周
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 2 ? 'btn-color' : ''"
-            size="small "
-            @click="getAnimalData(2)"
-            >本月
-          </el-button>
-        </template>
-        <template slot="menuLeft">
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-download"
-                      @click="handleExport">导出
-          </el-button>
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-pie-chart"
-                      @click="handleExportStatis">导出报表
-          </el-button>
-        </template>
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page="page"
+      :permission="permissionList"
+      :before-open="beforeOpen"
+      v-model="form"
+      ref="crud"
+      :search.sync="search"
+      :row-style="rowStyle"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      @row-del="rowDel"
+      @row-click="rowClick"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
+      <template slot="menuLeft">
+        <el-button
+          v-bind:class="activeClass == 0 ? 'btn-color' : ''"
+          size="small "
+          @click="getAnimalData(0)"
+          >本日
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 1 ? 'btn-color' : ''"
+          size="small "
+          @click="getAnimalData(1)"
+          >本周
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 2 ? 'btn-color' : ''"
+          size="small "
+          @click="getAnimalData(2)"
+          >本月
+        </el-button>
+      </template>
+      <template slot="menuLeft">
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-download"
+          @click="handleExport"
+          >导出
+        </el-button>
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-pie-chart"
+          @click="handleExportStatis"
+          >导出报表
+        </el-button>
+      </template>
     </avue-crud>
 
     <template>
       <div>
-          <el-image-viewer
-              class="img"
-              v-if="showViewer"
-              :on-close="closeViewer"
-              :url-list="[imgUrl]" />
+        <el-image-viewer
+          class="img"
+          v-if="showViewer"
+          :on-close="closeViewer"
+          :url-list="[imgUrl]"
+        />
       </div>
     </template>
   </basic-container>
 </template>
 
 <script>
-  import {getList} from "@/api/animalHeat/animalHeat";
-  import {mapGetters} from "vuex";
-  import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
+import { getList } from "@/api/animalHeat/animalHeat";
+import { mapGetters } from "vuex";
+import ElImageViewer from "element-ui/packages/image/src/image-viewer";
 
-  export default {
-    name:'index',
-    components: { ElImageViewer },
-    data() {
-      return {
-        form: {},
-        query: {},
-        search:{},
-        showViewer:false,
-        activeClass: 0,
-        imgUrl:'',
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        selectionList: [],
-        option: {
-          menu:false,
-          height:'auto',
-          calcHeight: 54,
-          border: false,
-          stripe:true,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          labelWidth:120,
-          dialogClickModal: false,
-          headerAlign: 'center',
-          align: 'center',
-          column: [
-            {
-              label: '坐标',
-              prop: 'test',
-              hide: true,
-              span: 24,
-              component: "avueMap",
-              clickChild: (obj) => {
-                this.form.jd = obj.latitude
-                this.form.wd = obj.longitude
+export default {
+  name: "index",
+  components: { ElImageViewer },
+  data() {
+    return {
+      form: {},
+      query: {},
+      search: {},
+      showViewer: false,
+      activeClass: 0,
+      imgUrl: "",
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      option: {
+        menu: false,
+        height: "auto",
+        calcHeight: 54,
+        border: false,
+        //stripe:true,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        labelWidth: 120,
+        dialogClickModal: false,
+        headerAlign: "center",
+        align: "center",
+        column: [
+          {
+            label: "坐标",
+            prop: "test",
+            hide: true,
+            span: 24,
+            component: "avueMap",
+            clickChild: (obj) => {
+              this.form.jd = obj.latitude;
+              this.form.wd = obj.longitude;
+            },
+          },
+          {
+            label: "检测时间",
+            prop: "createTime",
+          },
+          {
+            label: "体温",
+            prop: "tempRed",
+          },
+          // {
+          //   label: '图片',
+          //   prop: 'picture',
+          //   type: 'img',
+          //   alone:false,
+          //   width: 300,
+          //   //listType: 'picture-img',
+          //   span: 24
+          // },
+          {
+            label: "检测时间",
+            prop: "dateTime",
+            type: "datetime",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
+            searchRange: true,
+            searchValue: [this.getStartTime(), this.getEndTime()],
+            searchSpan: 5,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
+                required: true,
+                message: "请输入时间",
+                trigger: "blur",
               },
-            },
-            {
-              label: "检测时间",
-              prop: "createTime"
-            },
-            {
-              label: "体温",
-              prop: "tempRed"
-            },
-            // {
-            //   label: '图片',
-            //   prop: 'picture',
-            //   type: 'img',
-            //   alone:false,
-            //   width: 300,
-            //   //listType: 'picture-img',
-            //   span: 24
-            // },
-            {
-              label: "检测时间",
-              prop: "dateTime",
-              type: "datetime",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              searchRange: true,
-              searchValue:[this.getStartTime(),this.getEndTime()],
-              searchSpan: 5,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入时间",
-                  trigger: "blur"
-                }
-              ]
-            },
-            {
-              label: "体温状态",
-              search: true,
-              searchLabelWidth: 120,
-              searchValue: this.getAnimalType(),
-              prop: "status",
-              searchSpan: 5,
-              width:110,
-              type: "select",
-              dicData: [
-                {
-                  label: "正常",
-                  value: 0
-                },
-                {
-                  label: "异常",
-                  value: 1
-                }
-              ],
-            }
-
-          ]
-        },
-        data: []
+            ],
+          },
+          {
+            label: "体温状态",
+            search: true,
+            searchLabelWidth: 120,
+            searchValue: this.getAnimalType(),
+            prop: "status",
+            searchSpan: 5,
+            width: 110,
+            type: "select",
+            dicData: [
+              {
+                label: "正常",
+                value: 0,
+              },
+              {
+                label: "异常",
+                value: 1,
+              },
+            ],
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(null, false),
+        viewBtn: this.vaildData(null, false),
+        delBtn: this.vaildData(null, false),
+        editBtn: this.vaildData(null, false),
       };
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(null, false),
-          viewBtn: this.vaildData(null, false),
-          delBtn: this.vaildData(null, false),
-          editBtn: this.vaildData(null, false)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
+    },
+  },
+
+  methods: {
+    beforeOpen(done, type) {},
+    //清空按钮
+    searchReset() {
+      //清空搜索框中的内容
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      //清空后默认查当日的数据
+      this.activeClass = 0;
+      this.onLoad(this.page);
+    },
+    //搜索按钮
+    searchChange(params, done) {
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    getStartTime() {
+      if (
+        this.$route.query.startTime != undefined &&
+        this.$route.query.startTime != null &&
+        this.$route.query.startTime != ""
+      ) {
+        return this.$route.query.startTime;
       }
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D;
+    },
+    getEndTime() {
+      if (
+        this.$route.query.endTime != undefined &&
+        this.$route.query.endTime != null &&
+        this.$route.query.endTime != ""
+      ) {
+        return this.$route.query.endTime;
+      }
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D;
     },
 
-    methods: {
-      beforeOpen(done, type) {
-      },
-      //清空按钮
-      searchReset() {
-        //清空搜索框中的内容
-        this.query = {};
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        //清空后默认查当日的数据
-        this.activeClass=0;
-        this.onLoad(this.page);
-      },
-      //搜索按钮
-      searchChange(params, done) {
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      currentChange(currentPage){
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize){
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      getStartTime(){
-           if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-             return this.$route.query.startTime
-           }
-           // 当前时间
-          var date = new Date();
-          //年
-          var Y = date.getFullYear();
-          //月
-          var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-          //日
-          var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-           return Y + "-" + M + "-" + D;
-      },
-      getEndTime(){
-           if (this.$route.query.endTime != undefined && this.$route.query.endTime != null && this.$route.query.endTime != "" ) {
-             return this.$route.query.endTime
-           }
-            // 当前时间
-            var date = new Date();
-            //年
-            var Y = date.getFullYear();
-            //月
-            var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-            //日
-            var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-            return Y + "-" + M + "-" + D;
-      },
-
-      //本日,本周,本月  按钮
-      getAnimalData(e) {
-        this.activeClass=e;
-        this.query={};
-        this.$router.push({ query: {} });
-        //type 0:本日  1:本周  2:本月   status: 0:正常   1:异常
-        var today = new Date();
-        var params ={};
-        if(e==0){
-          //修改搜索框中的值
-          this.search.releaseTimeRange=[this.showToDay(today)+" 00:00:00",this.showToDay(today)+" 23:59:59"]
-        }
-        if(e==1){
-          //修改搜索框中的值
-          this.search.releaseTimeRange=[this.showWeekFirstDay(today)+" 00:00:00",this.showToDay(today)+" 23:59:59"]
-        }
-        if(e==2){
-          //修改搜索框中的值
-          this.search.releaseTimeRange=[this.showMonthFirstDay(today)+" 00:00:00",this.showToDay(today)+" 23:59:59"]
-        }
-        params = {
-          type: e
-        };
-        if(this.search.status){
-          params = {
-            ... params,
-            status: this.search.status
-          };
-        }
-        this.query=params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      //本日
-      showToDay(Nowdate){
-        var M=Number(Nowdate.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = Nowdate.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return Nowdate.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本周第一天
-      showWeekFirstDay(Nowdate){
-        var WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
-        var M=Number(WeekFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = WeekFirstDay.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return WeekFirstDay.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本月第一天
-      showMonthFirstDay(Nowdate){
-        var MonthFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth(),1);
-        var M=Number(MonthFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        return MonthFirstDay.getFullYear()+"-"+M+"-"+"0"+MonthFirstDay.getDate();
-      },
-
-      //数据导出
-      handleExport() {
-        this.$confirm("是否导出体温数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(() => {
-          let begTime = this.$route.query.startTime==undefined? '':this.$route.query.startTime;
-          let endTime = this.$route.query.endTime==undefined? '':this.$route.query.endTime;
-          let status = this.$route.query.status==undefined? '':this.$route.query.status;
-          let timeDesc = this.$route.query.timeDesc==undefined? '':this.$route.query.timeDesc;
-          window.open(`/api/animalHeat/animalHeat/export-animalHeat?begTime=${begTime}&endTime=${endTime}&status=${status}&timeDesc=${timeDesc}`);
-        });
-      },
-      //数据报表导出
-      handleExportStatis() {
-          let begTime = this.$route.query.startTime==undefined? '':this.$route.query.startTime;
-          let endTime = this.$route.query.endTime==undefined? '':this.$route.query.endTime;
-          let status = this.$route.query.status==undefined? '':this.$route.query.status;
-          let timeDesc = this.$route.query.timeDesc==undefined? '':this.$route.query.timeDesc;
-          //window.open(`/api/animalHeat/animalHeat/getAnimalHeatStatis?begTime=${begTime}&endTime=${endTime}&status=${status}&timeDesc=${timeDesc}`);
-          window.open(`https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-animalHeat.statis.ureport.xml&begTime=${begTime}&endTime=${endTime}&status=${status}&timeDesc=${timeDesc}`);
-      },
-      //修改行颜色
-      rowStyle({row, column, rowIndex}){
-         if(row.status=="1"){
-           return {
-             color:"#fe1515"
-           }
-         }
-      },
-      //图片行点击事件
-      rowClick(row){
-        var that = this;
-        that.imgUrl = row.picture;
-        this.showViewer = true
-      },
-      // 关闭查看器
-      closeViewer() {
-        this.showViewer = false
-      },
-
-      //体温状态回填
-      getAnimalType(){
-          if (this.$route.query.status != undefined) {
-              return this.$route.query.status
-          }
-      },
-      onLoad(page, params={}) {
-        const { dateTime } = this.query;
-        let values = {
-          ...params,
-        };
-        if (this.$route.query.type!=undefined && this.$route.query != undefined && this.$route.query != null && this.$route.query != "" ) {
-            if (this.$route.query.status != undefined) {
-              this.page.currentPage = 1;
-              params = {
-                status:this.$route.query.status,
-                type:this.$route.query.type
-              }
-            } else {
-              this.page.currentPage = 1;
-              params = {
-                type:this.$route.query.type
-              };
-            }
-            this.activeClass=4;
-        }else if(this.$route.query.status != undefined){
-            params = {
-              status: this.$route.query.status,
-              begTime: this.$route.query.startTime,
-              endTime: this.$route.query.endTime
-            }
-            this.activeClass=4;
-        }
-
-        //初始进入默认展示当天数据
-        if(this.activeClass==0 && this.query.dateTime==null){
-            params = {
-                type:this.activeClass
-            }
-        }
-
-        if (dateTime) {
-          this.activeClass=4;
-          values = {
-            ...params,
-            begTime: dateTime[0],
-            endTime: dateTime[1],
-            ...this.query,
-          };
-          values.dateTime = null;
-        } else {
-          values = {
-            ...params,
-            ...this.query,
-          };
-        }
-
-        if (this.$route.query.timeDesc) {
-          values = {
-            ...params,
-            timeDesc: this.$route.query.timeDesc,
-            ...this.query,
-          };
-        }
-
-        this.loading = true;
-        getList(page.currentPage, page.pageSize, values).then(res => {
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
-        });
+    //本日,本周,本月  按钮
+    getAnimalData(e) {
+      this.activeClass = e;
+      this.query = {};
+      this.$router.push({ query: {} });
+      //type 0:本日  1:本周  2:本月   status: 0:正常   1:异常
+      var today = new Date();
+      var params = {};
+      if (e == 0) {
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showToDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
       }
-    }
-  };
+      if (e == 1) {
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showWeekFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 2) {
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showMonthFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      params = {
+        type: e,
+      };
+      if (this.search.status) {
+        params = {
+          ...params,
+          status: this.search.status,
+        };
+      }
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    //本日
+    showToDay(Nowdate) {
+      var M = Number(Nowdate.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = Nowdate.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return Nowdate.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本周第一天
+    showWeekFirstDay(Nowdate) {
+      var WeekFirstDay = new Date(Nowdate - (Nowdate.getDay() - 1) * 86400000);
+      var M = Number(WeekFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = WeekFirstDay.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return WeekFirstDay.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本月第一天
+    showMonthFirstDay(Nowdate) {
+      var MonthFirstDay = new Date(
+        Nowdate.getFullYear(),
+        Nowdate.getMonth(),
+        1
+      );
+      var M = Number(MonthFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      return (
+        MonthFirstDay.getFullYear() +
+        "-" +
+        M +
+        "-" +
+        "0" +
+        MonthFirstDay.getDate()
+      );
+    },
+
+    //数据导出
+    handleExport() {
+      this.$confirm("是否导出体温数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        let begTime =
+          this.$route.query.startTime == undefined
+            ? ""
+            : this.$route.query.startTime;
+        let endTime =
+          this.$route.query.endTime == undefined
+            ? ""
+            : this.$route.query.endTime;
+        let status =
+          this.$route.query.status == undefined ? "" : this.$route.query.status;
+        let timeDesc =
+          this.$route.query.timeDesc == undefined
+            ? ""
+            : this.$route.query.timeDesc;
+        window.open(
+          `/api/animalHeat/animalHeat/export-animalHeat?begTime=${begTime}&endTime=${endTime}&status=${status}&timeDesc=${timeDesc}`
+        );
+      });
+    },
+    //数据报表导出
+    handleExportStatis() {
+      let begTime =
+        this.$route.query.startTime == undefined
+          ? ""
+          : this.$route.query.startTime;
+      let endTime =
+        this.$route.query.endTime == undefined ? "" : this.$route.query.endTime;
+      let status =
+        this.$route.query.status == undefined ? "" : this.$route.query.status;
+      let timeDesc =
+        this.$route.query.timeDesc == undefined
+          ? ""
+          : this.$route.query.timeDesc;
+      //window.open(`/api/animalHeat/animalHeat/getAnimalHeatStatis?begTime=${begTime}&endTime=${endTime}&status=${status}&timeDesc=${timeDesc}`);
+      window.open(
+        `https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-animalHeat.statis.ureport.xml&begTime=${begTime}&endTime=${endTime}&status=${status}&timeDesc=${timeDesc}`
+      );
+    },
+    //修改行颜色
+    rowStyle({ row, column, rowIndex }) {
+      if (row.status == "1") {
+        return {
+          color: "#fe1515",
+        };
+      }
+    },
+    //图片行点击事件
+    rowClick(row) {
+      var that = this;
+      that.imgUrl = row.picture;
+      this.showViewer = true;
+    },
+    // 关闭查看器
+    closeViewer() {
+      this.showViewer = false;
+    },
+
+    //体温状态回填
+    getAnimalType() {
+      if (this.$route.query.status != undefined) {
+        return this.$route.query.status;
+      }
+    },
+    onLoad(page, params = {}) {
+      const { dateTime } = this.query;
+      let values = {
+        ...params,
+      };
+      if (
+        this.$route.query.type != undefined &&
+        this.$route.query != undefined &&
+        this.$route.query != null &&
+        this.$route.query != ""
+      ) {
+        if (this.$route.query.status != undefined) {
+          this.page.currentPage = 1;
+          params = {
+            status: this.$route.query.status,
+            type: this.$route.query.type,
+          };
+        } else {
+          this.page.currentPage = 1;
+          params = {
+            type: this.$route.query.type,
+          };
+        }
+        this.activeClass = 4;
+      } else if (this.$route.query.status != undefined) {
+        params = {
+          status: this.$route.query.status,
+          begTime: this.$route.query.startTime,
+          endTime: this.$route.query.endTime,
+        };
+        this.activeClass = 4;
+      }
+
+      //初始进入默认展示当天数据
+      if (this.activeClass == 0 && this.query.dateTime == null) {
+        params = {
+          type: this.activeClass,
+        };
+      }
+
+      if (dateTime) {
+        this.activeClass = 4;
+        values = {
+          ...params,
+          begTime: dateTime[0],
+          endTime: dateTime[1],
+          ...this.query,
+        };
+        values.dateTime = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
+
+      if (this.$route.query.timeDesc) {
+        values = {
+          ...params,
+          timeDesc: this.$route.query.timeDesc,
+          ...this.query,
+        };
+      }
+
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+  },
+};
 </script>
 <style lang="scss">
-  .el-button.btn-color {
-    color: rgb(255, 255, 255);
-    background-color: rgb(64, 158, 255);
-    border-color: rgb(64, 158, 255);
-  }
+.el-button.btn-color {
+  color: rgb(255, 255, 255);
+  background-color: rgb(64, 158, 255);
+  border-color: rgb(64, 158, 255);
+}
 
-  .img {
-      .el-icon-circle-close {
-        color: white;
-      }
+.img {
+  .el-icon-circle-close {
+    color: white;
   }
+}
 </style>
diff --git a/src/views/article/article.vue b/src/views/article/article.vue
index 3a5d6e7..5d044f8 100644
--- a/src/views/article/article.vue
+++ b/src/views/article/article.vue
@@ -1,30 +1,34 @@
 <template>
   <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page.sync="page"
-               ref="crud"
-               @row-del="rowDel"
-               v-model="form"
-               :permission="permissionList"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               :before-open="beforeOpen"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page.sync="page"
+      ref="crud"
+      @row-del="rowDel"
+      v-model="form"
+      :permission="permissionList"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      :before-open="beforeOpen"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
       <template slot="menuLeft">
-        <el-button type="danger"
-                   size="small"
-                   icon="el-icon-delete"
-                   plain
-                   v-if="permission.article_delete"
-                   @click="handleDelete">删 除
+        <el-button
+          type="danger"
+          size="small"
+          icon="el-icon-delete"
+          plain
+          v-if="permission.article_delete"
+          @click="handleDelete"
+          >删 除
         </el-button>
       </template>
     </avue-crud>
@@ -32,291 +36,305 @@
 </template>
 
 <script>
-  import {getList, remove, update, add, getNotice} from "@/api/article/article";
-  import {mapGetters} from "vuex";
+import { getList, remove, update, add, getNotice } from "@/api/article/article";
+import { mapGetters } from "vuex";
 
-  export default {
-    data() {
-      return {
-        form: {},
-        query: {},
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        datetime:"",
-        selectionList: [],
-        option: {
-          height: 'auto',
-          calcHeight: 54,
-          dialogWidth: 950,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          border: false,
-          stripe:true,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          excelBtn: true,
-          dialogClickModal: false,
-          column: [
-            {
-              label: "资讯标题",
-              prop: "title",
-              span: 24,
-              row: true,
-              searchSpan:5,
-              search: true,
-              rules: [{
+export default {
+  data() {
+    return {
+      form: {},
+      query: {},
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      datetime: "",
+      selectionList: [],
+      option: {
+        height: "auto",
+        calcHeight: 54,
+        dialogWidth: 950,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        border: false,
+        //stripe:true,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        excelBtn: true,
+        dialogClickModal: false,
+        column: [
+          {
+            label: "资讯标题",
+            prop: "title",
+            span: 24,
+            row: true,
+            searchSpan: 5,
+            search: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入资讯标题",
-                trigger: "blur"
-              }]
-            },
-            {
+                trigger: "blur",
+              },
+            ],
+          },
+          {
             label: "资讯封面",
             prop: "url",
             // align:'center',
-            width:80,
-            type: 'upload',
-            listType: 'picture-img',
-            action: '/api/blade-resource/oss/endpoint/put-file',
+            width: 80,
+            type: "upload",
+            listType: "picture-img",
+            action: "/api/blade-resource/oss/endpoint/put-file",
             propsHttp: {
-              res: 'data',
-              url: 'link',
+              res: "data",
+              url: "link",
             },
             // hide: true,
             span: 24,
           },
-            {
-              label: "资讯来源",
-              prop: "sourceName",
-              search: true,
-              searchSpan:4,
-              span: 24,
-              rules: [{
+          {
+            label: "资讯来源",
+            prop: "sourceName",
+            search: true,
+            searchSpan: 4,
+            span: 24,
+            rules: [
+              {
                 required: true,
                 message: "请输入资讯类型",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "资讯类型",
-              prop: "articleType",
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
-              searchSpan: 3,
-              dicUrl: "/api/blade-system/dict-biz/dictionary?code=articleType",
-              props: {
-                label: "dictValue",
-                value: "dictKey"
+                trigger: "blur",
               },
-              search:true,
-              type:"select",
-              rules: [{
+            ],
+          },
+          {
+            label: "资讯类型",
+            prop: "articleType",
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+            searchSpan: 3,
+            dicUrl: "/api/blade-system/dict-biz/dictionary?code=articleType",
+            props: {
+              label: "dictValue",
+              value: "dictKey",
+            },
+            search: true,
+            type: "select",
+            rules: [
+              {
                 required: true,
                 message: "请选择资讯类型",
-                trigger: "blur"
-              }],
-            },
-            {
-              label: "发布时间",
-              prop: "dateTime",
-              type: "datetime",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              searchRange:true,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "发布时间",
+            prop: "dateTime",
+            type: "datetime",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            searchRange: true,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
                 required: true,
                 message: "请选择发布时间",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "发布时间",
-              prop: "createTime",
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              type: "date",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss"
-            },
-            {
-              label: "资讯内容",
-              prop: "content",
-              component: 'AvueUeditor',
-              options: {
-                action: '/api/blade-resource/oss/endpoint/put-file',
-                // customConfig: {
-                //   lineHeights: ['1', '1.15', '1.6', '2', '2.5', '3']
-                // },//wangEditor编辑的配置
-                props: {
-                  res: "data",
-                  url: "link",
-                }
+                trigger: "blur",
               },
-              hide: true,
-              minRows: 6,
-              span: 24,
-            }
-          ]
-        },
-        data: []
+            ],
+          },
+          {
+            label: "发布时间",
+            prop: "createTime",
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            type: "date",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
+          {
+            label: "资讯内容",
+            prop: "content",
+            component: "AvueUeditor",
+            options: {
+              action: "/api/blade-resource/oss/endpoint/put-file",
+              // customConfig: {
+              //   lineHeights: ['1', '1.15', '1.6', '2', '2.5', '3']
+              // },//wangEditor编辑的配置
+              props: {
+                res: "data",
+                url: "link",
+              },
+            },
+            hide: true,
+            minRows: 6,
+            span: 24,
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.article_add, true),
+        viewBtn: this.vaildData(this.permission.article_view, true),
+        delBtn: this.vaildData(this.permission.article_delete, true),
+        editBtn: this.vaildData(this.permission.article_edit, true),
       };
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.article_add, true),
-          viewBtn: this.vaildData(this.permission.article_view, true),
-          delBtn: this.vaildData(this.permission.article_delete, true),
-          editBtn: this.vaildData(this.permission.article_edit, true)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
-      }
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    methods: {
-      rowSave(row, done, loading) {
-        add(row).then(() => {
+  },
+  methods: {
+    rowSave(row, done, loading) {
+      add(row).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
           loading();
-        });
-      },
-      rowUpdate(row, index, done, loading) {
-        update(row).then(() => {
+        }
+      );
+    },
+    rowUpdate(row, index, done, loading) {
+      update(row).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
           loading();
+        }
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
         });
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
+    },
+    searchReset() {
+      this.query = {};
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
         })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      searchReset() {
-        this.query = {};
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
-          });
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getNotice(this.form.id).then(res => {
-            this.form = res.data.data;
-          });
-        }
-        done();
-      },
-      currentChange(currentPage) {
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize) {
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        const {dateTime} = this.query;
-        let values = {
-          ...params,
-        };
-        if (dateTime) {
-          values = {
-            ...params,
-            startTime: dateTime[0],
-            endTime: dateTime[1],
-            ...this.query
-          };
-          values.datetime = null;
-        }
-        this.loading = true;
-        getList(page.currentPage, page.pageSize, values).then(res => {
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getNotice(this.form.id).then((res) => {
+          this.form = res.data.data;
         });
       }
-    }
-  };
+      done();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      const { dateTime } = this.query;
+      let values = {
+        ...params,
+      };
+      if (dateTime) {
+        values = {
+          ...params,
+          startTime: dateTime[0],
+          endTime: dateTime[1],
+          ...this.query,
+        };
+        values.datetime = null;
+      }
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+  },
+};
 </script>
 
 <style>
diff --git a/src/views/attendance/attendance.vue b/src/views/attendance/attendance.vue
index 528c628..f03737a 100644
--- a/src/views/attendance/attendance.vue
+++ b/src/views/attendance/attendance.vue
@@ -1,500 +1,553 @@
 <template>
   <el-row>
-  <el-col :span="3" style="display:none">
-    <div class="box">
-      <el-scrollbar>
-        <basic-container>
-          <avue-tree :option="treeOption" :data="treeData" @node-click="nodeClick"/>
-        </basic-container>
-      </el-scrollbar>
-    </div>
-  </el-col>
-  <el-col>
-  <basic-container>
-    <avue-crud :option="option"
-               :search.sync="search"
-               :table-loading="loading"
-               :data="data"
-               :page.sync="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               :row-style="rowStyle"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
-      <template slot="menuLeft">
-        <el-button type="danger"
-                   size="small"
-                   icon="el-icon-delete"
-                   plain
-                   v-if="permission.attendance_delete"
-                   @click="handleDelete">删 除
-        </el-button>
-        <el-button type="warning"
-                   size="small"
-                   plain
-                   icon="el-icon-download"
-                   @click="handleExport">导出
-        </el-button>
-      </template>
-      <template slot-scope="{ row }" slot="clocktype">
-        <el-tag>{{
-            row.clocktype == "0" ? "上班" : row.clocktype == "1" ? "下班" : "无"
-          }}
-        </el-tag>
-      </template>
-      <template slot-scope="{ row }" slot="attendancetype">
-        <el-tag>{{
-            row.attendancetype == "0" ? "正常" : row.attendancetype == "1" ? "迟到" : row.attendancetype == "2" ? "早退" : "无效"
-          }}
-        </el-tag>
-      </template>
-    </avue-crud>
-  </basic-container>
-  </el-col>
+    <el-col :span="3" style="display: none">
+      <div class="box">
+        <el-scrollbar>
+          <basic-container>
+            <avue-tree
+              :option="treeOption"
+              :data="treeData"
+              @node-click="nodeClick"
+            />
+          </basic-container>
+        </el-scrollbar>
+      </div>
+    </el-col>
+    <el-col>
+      <basic-container>
+        <avue-crud
+          :option="option"
+          :search.sync="search"
+          :table-loading="loading"
+          :data="data"
+          :page.sync="page"
+          :permission="permissionList"
+          :before-open="beforeOpen"
+          v-model="form"
+          ref="crud"
+          @row-update="rowUpdate"
+          @row-save="rowSave"
+          @row-del="rowDel"
+          :row-style="rowStyle"
+          @search-change="searchChange"
+          @search-reset="searchReset"
+          @selection-change="selectionChange"
+          @current-change="currentChange"
+          @size-change="sizeChange"
+          @refresh-change="refreshChange"
+          @on-load="onLoad"
+        >
+          <template slot="menuLeft">
+            <el-button
+              type="danger"
+              size="small"
+              icon="el-icon-delete"
+              plain
+              v-if="permission.attendance_delete"
+              @click="handleDelete"
+              >删 除
+            </el-button>
+            <el-button
+              type="warning"
+              size="small"
+              plain
+              icon="el-icon-download"
+              @click="handleExport"
+              >导出
+            </el-button>
+          </template>
+          <template slot-scope="{ row }" slot="clocktype">
+            <el-tag
+              >{{
+                row.clocktype == "0"
+                  ? "上班"
+                  : row.clocktype == "1"
+                  ? "下班"
+                  : "无"
+              }}
+            </el-tag>
+          </template>
+          <template slot-scope="{ row }" slot="attendancetype">
+            <el-tag
+              >{{
+                row.attendancetype == "0"
+                  ? "正常"
+                  : row.attendancetype == "1"
+                  ? "迟到"
+                  : row.attendancetype == "2"
+                  ? "早退"
+                  : "无效"
+              }}
+            </el-tag>
+          </template>
+        </avue-crud>
+      </basic-container>
+    </el-col>
   </el-row>
 </template>
 
 <script>
-  import {getList, getDetail, add, update, remove} from "@/api/attendance/attendance";
-  import {mapGetters} from "vuex";
-  import {getDeptLazyTree, getDeptTree} from "@/api/system/dept";
-  import website from "@/config/website";
+import {
+  getList,
+  getDetail,
+  add,
+  update,
+  remove,
+} from "@/api/attendance/attendance";
+import { mapGetters } from "vuex";
+import { getDeptLazyTree, getDeptTree } from "@/api/system/dept";
+import website from "@/config/website";
 
-  export default {
-    data() {
-      return {
-        form: {},
-        query: {},
-        search:{},
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        selectionList: [],
-        treeDeptId: '',
-        treeData: [],
-        treeOption: {
-          nodeKey: 'id',
-          lazy: true,
-          treeLoad: function (node, resolve) {
-            const parentId = (node.level === 0) ? 0 : node.data.id;
-            getDeptLazyTree(parentId).then(res => {
-              resolve(res.data.data.map(item => {
+export default {
+  data() {
+    return {
+      form: {},
+      query: {},
+      search: {},
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      treeDeptId: "",
+      treeData: [],
+      treeOption: {
+        nodeKey: "id",
+        lazy: true,
+        treeLoad: function (node, resolve) {
+          const parentId = node.level === 0 ? 0 : node.data.id;
+          getDeptLazyTree(parentId).then((res) => {
+            resolve(
+              res.data.data.map((item) => {
                 return {
                   ...item,
-                  leaf: !item.hasChildren
-                }
-              }))
-            });
-          },
-          addBtn: false,
-          menu: false,
-          size: 'small',
-          props: {
-            labelText: '标题',
-            label: 'title',
-            value: 'value',
-            children: 'children'
-          }
+                  leaf: !item.hasChildren,
+                };
+              })
+            );
+          });
         },
-        option: {
-          height:'auto',
-          calcHeight: 54,
-          border: false,
-          stripe:true,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          labelWidth:120,
-          dialogClickModal: false,
-          headerAlign: 'center',
-          align: 'center',
-          column: [
-            // {
-            //   label: "所属租户",
-            //   prop: "tenantId",
-            //   hide: true,
-            //   width: 200,
-            //   type: "tree",
-            //   dicUrl: "/api/blade-system/tenant/select",
-            //   props: {
-            //     label: "tenantName",
-            //     value: "tenantId"
-            //   },
-            //   addDisplay: website.tenantMode,
-            //   editDisplay: website.tenantMode,
-            //   viewDisplay: website.tenantMode,
-            //   rules: [{
-            //     required: true,
-            //     message: "请输入所属租户",
-            //     trigger: "click"
-            //   }],
-            //   span: 24,
-            // },
-            {
-              label: "员工编号",
-              searchSpan: 3,
-              prop: "number",
-            },
-            {
-              label: "姓名",
-              searchLabelWidth: 45,
-              searchSpan:3,
-              prop: "name",
-              search: true,
-            },
-            // {
-            //   label: "组织机构",
-            //   prop: "deptName",
-            //   type: "select",
-            //   dicUrl: "/api/blade-system/dept/tree",
-            //   width: 85,
-            //   props: {
-            //     label: "deptName",
-            //     value: "deptId"
-            //   },
-            //   rules: [{
-            //     required: true,
-            //     message: "请输入组织机构",
-            //     trigger: "blur"
-            //   }]
-            // },
-            {
-              label: "考勤时间",
-              prop: "releaseTimeRange",
-              type: "datetime",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              searchSpan: 6,
-              searchRange:true,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [{
+        addBtn: false,
+        menu: false,
+        size: "small",
+        props: {
+          labelText: "标题",
+          label: "title",
+          value: "value",
+          children: "children",
+        },
+      },
+      option: {
+        height: "auto",
+        calcHeight: 54,
+        border: false,
+        //stripe:true,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        labelWidth: 120,
+        dialogClickModal: false,
+        headerAlign: "center",
+        align: "center",
+        column: [
+          // {
+          //   label: "所属租户",
+          //   prop: "tenantId",
+          //   hide: true,
+          //   width: 200,
+          //   type: "tree",
+          //   dicUrl: "/api/blade-system/tenant/select",
+          //   props: {
+          //     label: "tenantName",
+          //     value: "tenantId"
+          //   },
+          //   addDisplay: website.tenantMode,
+          //   editDisplay: website.tenantMode,
+          //   viewDisplay: website.tenantMode,
+          //   rules: [{
+          //     required: true,
+          //     message: "请输入所属租户",
+          //     trigger: "click"
+          //   }],
+          //   span: 24,
+          // },
+          {
+            label: "员工编号",
+            searchSpan: 3,
+            prop: "number",
+          },
+          {
+            label: "姓名",
+            searchLabelWidth: 45,
+            searchSpan: 3,
+            prop: "name",
+            search: true,
+          },
+          // {
+          //   label: "组织机构",
+          //   prop: "deptName",
+          //   type: "select",
+          //   dicUrl: "/api/blade-system/dept/tree",
+          //   width: 85,
+          //   props: {
+          //     label: "deptName",
+          //     value: "deptId"
+          //   },
+          //   rules: [{
+          //     required: true,
+          //     message: "请输入组织机构",
+          //     trigger: "blur"
+          //   }]
+          // },
+          {
+            label: "考勤时间",
+            prop: "releaseTimeRange",
+            type: "datetime",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            searchSpan: 6,
+            searchRange: true,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入考勤时间",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "考勤时间",
-              prop: "clocktime",
-              type: "date",
-              width: 200,
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "考勤时间",
+            prop: "clocktime",
+            type: "date",
+            width: 200,
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            rules: [
+              {
                 required: true,
                 message: "请输入clocktime",
-                trigger: "click"
-              }]
-            },
-            {
-              label: "星期",
-              prop: "week",
-              rules: [{
+                trigger: "click",
+              },
+            ],
+          },
+          {
+            label: "星期",
+            prop: "week",
+            rules: [
+              {
                 required: true,
                 message: "请输入星期",
-                trigger: "blur"
-              }]
-            },
-            // {
-            //   label: "天气",
-            //   prop: "weather",
-            //   rules: [{
-            //     required: true,
-            //     message: "请输入天气",
-            //     trigger: "blur"
-            //   }]
-            // },
-            {
-              label: "经度",
-              prop: "jd",
-              hide: true,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          // {
+          //   label: "天气",
+          //   prop: "weather",
+          //   rules: [{
+          //     required: true,
+          //     message: "请输入天气",
+          //     trigger: "blur"
+          //   }]
+          // },
+          {
+            label: "经度",
+            prop: "jd",
+            hide: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入经度",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "纬度",
-              hide: true,
-              prop: "wd",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "纬度",
+            hide: true,
+            prop: "wd",
+            rules: [
+              {
                 required: true,
                 message: "请输入纬度",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "打卡类型",
-              searchSpan: 3,
-              prop: "clocktype",
-              width: 120,
-              type: "select",
-              slot: true,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "打卡类型",
+            searchSpan: 3,
+            prop: "clocktype",
+            width: 120,
+            type: "select",
+            slot: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入打卡类型",
-                trigger: "blur"
-              }],
-              dicData: [
-                {
-                  label: "上班",
-                  value: "0"
-                },
-                {
-                  label: "下班",
-                  value: "1"
-                }
-              ]
-            },
-            {
-              label: "考勤类型",
-              search: true,
-              searchSpan:3,
-              prop: "attendancetype",
-              slot: true,
-              type: "select",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+            dicData: [
+              {
+                label: "上班",
+                value: "0",
+              },
+              {
+                label: "下班",
+                value: "1",
+              },
+            ],
+          },
+          {
+            label: "考勤类型",
+            search: true,
+            searchSpan: 3,
+            prop: "attendancetype",
+            slot: true,
+            type: "select",
+            rules: [
+              {
                 required: true,
                 message: "请输入考勤类型",
-                trigger: "blur"
-              }],
-              dicData: [
-                {
-                  label: "正常",
-                  value: "0"
-                },
-                {
-                  label: "迟到",
-                  value: "1"
-                },
-               {
-                 label: "早退",
-                   value: "2"
-                },
-               {
-                 label: "无效",
-                   value: "4"
-               }
-              ]
-            },
-            {
-              label: "考勤地址",
-              prop: "address",
-              width: 450,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+            dicData: [
+              {
+                label: "正常",
+                value: "0",
+              },
+              {
+                label: "迟到",
+                value: "1",
+              },
+              {
+                label: "早退",
+                value: "2",
+              },
+              {
+                label: "无效",
+                value: "4",
+              },
+            ],
+          },
+          {
+            label: "考勤地址",
+            prop: "address",
+            width: 450,
+            rules: [
+              {
                 required: true,
                 message: "请输入地址",
-                trigger: "blur"
-              }]
-            },
-          ]
-        },
-        data: []
+                trigger: "blur",
+              },
+            ],
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(null, false),
+        viewBtn: this.vaildData(this.permission.attendance_view, true),
+        delBtn: this.vaildData(this.permission.attendance_delete, true),
+        editBtn: this.vaildData(null, false),
       };
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(null, false),
-          viewBtn: this.vaildData(this.permission.attendance_view, true),
-          delBtn: this.vaildData(this.permission.attendance_delete, true),
-          editBtn: this.vaildData(null, false)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
-      }
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    methods: {
-      nodeClick(data) {
-        this.treeDeptId = data.id;
-        this.page.currentPage = 1;
-        this.onLoad(this.page);
-      },
-      rowSave(row, done, loading) {
-        add(row).then(() => {
+  },
+  methods: {
+    nodeClick(data) {
+      this.treeDeptId = data.id;
+      this.page.currentPage = 1;
+      this.onLoad(this.page);
+    },
+    rowSave(row, done, loading) {
+      add(row).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           loading();
           window.console.log(error);
-        });
-      },
-      initData(tenantId) {
-        getDeptTree(tenantId).then(res => {
-          const column = this.findObject(this.option.column, "deptId");
-          column.dicData = res.data.data;
-        });
-      },
-      rowUpdate(row, index, done, loading) {
-        update(row).then(() => {
+        }
+      );
+    },
+    initData(tenantId) {
+      getDeptTree(tenantId).then((res) => {
+        const column = this.findObject(this.option.column, "deptId");
+        column.dicData = res.data.data;
+      });
+    },
+    rowUpdate(row, index, done, loading) {
+      update(row).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           loading();
           console.log(error);
-        });
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-          });
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
         }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
         })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      handleExport() {
-        this.$confirm("是否导出考勤数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(() => {
-          window.open(`/api/attendance/export-Attendance?name=${this.search.name}&beginTime=${this.search.releaseTimeRange[0]}
+        });
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    handleExport() {
+      this.$confirm("是否导出考勤数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        window.open(`/api/attendance/export-Attendance?name=${this.search.name}&beginTime=${this.search.releaseTimeRange[0]}
           &endTime=${this.search.releaseTimeRange[1]}&attendancetype=${this.search.attendancetype}`);
+      });
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getDetail(this.form.id).then((res) => {
+          this.form = res.data.data;
         });
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getDetail(this.form.id).then(res => {
-            this.form = res.data.data;
-          });
-        }
-        done();
-      },
-      searchReset() {
-        this.query = {};
-        this.treeDeptId = '';
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      currentChange(currentPage){
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize){
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        const {releaseTimeRange} = this.query;
-        let values = {
+      }
+      done();
+    },
+    searchReset() {
+      this.query = {};
+      this.treeDeptId = "";
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      const { releaseTimeRange } = this.query;
+      let values = {
+        ...params,
+      };
+      if (releaseTimeRange) {
+        values = {
           ...params,
+          beginTime: releaseTimeRange[0],
+          endTime: releaseTimeRange[1],
+          ...this.query,
         };
-        if (releaseTimeRange) {
-          values = {
-            ...params,
-            beginTime: releaseTimeRange[0],
-            endTime: releaseTimeRange[1],
-            ...this.query
-          };
-          values.releaseTimeRange = null;
-        } else {
-          values = {
-            ...params,
-            ...this.query
-          };
-        }
-        this.loading = true;
-        getList(page.currentPage, page.pageSize,values,this.treeDeptId).then(res => {
+        values.releaseTimeRange = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values, this.treeDeptId).then(
+        (res) => {
           const data = res.data.data;
           this.page.total = data.total;
           this.data = data.records;
           this.loading = false;
           this.selectionClear();
-        });
-      },
-      rowStyle({row, column, rowIndex}) {
-        if (row.attendancetype == 1) {
-          return {
-            color: "#fe1515"
-          }
         }
-        else if(row.attendancetype == 2){
-          return {
-            color: "#FFCC33"
-          }
-        }
-      },
-    }
-  };
+      );
+    },
+    rowStyle({ row, column, rowIndex }) {
+      if (row.attendancetype == 1) {
+        return {
+          color: "#fe1515",
+        };
+      } else if (row.attendancetype == 2) {
+        return {
+          color: "#FFCC33",
+        };
+      }
+    },
+  },
+};
 </script>
 
 <style>
diff --git a/src/views/clientManagement/clientManagement.vue b/src/views/clientManagement/clientManagement.vue
index 52dd008..e726550 100644
--- a/src/views/clientManagement/clientManagement.vue
+++ b/src/views/clientManagement/clientManagement.vue
@@ -2,87 +2,106 @@
   <el-row>
     <el-col :span="3">
       <basic-container>
-        <avue-tree :option="treeOption" :data="treeData" @node-click="nodeClick"/>
+        <avue-tree
+          :option="treeOption"
+          :data="treeData"
+          @node-click="nodeClick"
+        />
       </basic-container>
     </el-col>
     <el-col :span="21">
       <basic-container>
-        <avue-crud :option="option"
-                   :table-loading="loading"
-                   :data="data"
-                   :page.sync="page"
-                   ref="crud"
-                   @row-del="rowDel"
-                   v-model="form"
-                   :permission="permissionList"
-                   @row-update="rowUpdate"
-                   @row-save="rowSave"
-                   :row-style="rowStyle"
-                   @contextmenu.prevent.native=""
-                   @row-contextmenu="rightClick"
-                   row-class-name="tabFontSize"
-                   :before-open="beforeOpen"
-                   @search-change="searchChange"
-                   @search-reset="searchReset"
-                   @selection-change="selectionChange"
-                   @current-change="currentChange"
-                   @size-change="sizeChange"
-                   @refresh-change="refreshChange"
-                   @on-load="onLoad"
-                   @row-click="rowClick">
-
+        <avue-crud
+          :option="option"
+          :table-loading="loading"
+          :data="data"
+          :page.sync="page"
+          ref="crud"
+          @row-del="rowDel"
+          v-model="form"
+          :permission="permissionList"
+          @row-update="rowUpdate"
+          @row-save="rowSave"
+          :row-style="rowStyle"
+          @contextmenu.prevent.native=""
+          @row-contextmenu="rightClick"
+          row-class-name="tabFontSize"
+          :before-open="beforeOpen"
+          @search-change="searchChange"
+          @search-reset="searchReset"
+          @selection-change="selectionChange"
+          @current-change="currentChange"
+          @size-change="sizeChange"
+          @refresh-change="refreshChange"
+          @on-load="onLoad"
+          @row-click="rowClick"
+        >
           <template slot="menuLeft">
-            <el-button type="danger"
-                       size="mini"
-                       icon="el-icon-delete"
-                       plain
-                       v-if="permission.clientManagement_delete"
-                       @click="handleDelete">删 除
+            <el-button
+              type="danger"
+              size="mini"
+              icon="el-icon-delete"
+              plain
+              v-if="permission.clientManagement_delete"
+              @click="handleDelete"
+              >删 除
             </el-button>
-<!--            <span>&lt;!&ndash;图例 components&ndash;&gt;-->
-<!--              <Legend :datas="datalistLIU"></Legend>-->
-<!--            </span>-->
+            <!--            <span>&lt;!&ndash;图例 components&ndash;&gt;-->
+            <!--              <Legend :datas="datalistLIU"></Legend>-->
+            <!--            </span>-->
           </template>
 
           <template slot-scope="{ row }" slot="devicestate">
-            <el-tag>{{
-              row.devicestate == "0" ? "撤防" : row.devicestate == "1" ? "布防" : "无"
+            <el-tag
+              >{{
+                row.devicestate == "0"
+                  ? "撤防"
+                  : row.devicestate == "1"
+                  ? "布防"
+                  : "无"
               }}
             </el-tag>
           </template>
-<!--          <template slot-scope="{ type, size, row }" slot="menu">-->
-<!--            <el-button-->
-<!--              icon="el-icon-video-camera-solid"-->
-<!--              :size="size"-->
-<!--              :type="type"-->
-<!--              @click.stop="handleStart(row)"-->
-<!--            >视频-->
-<!--            </el-button>-->
-<!--            <el-button-->
-<!--              icon="el-icon-location-outline"-->
-<!--              :size="size"-->
-<!--              :type="type"-->
-<!--              @click.stop="handleMap(row)"-->
-<!--            >定位-->
-<!--            </el-button>-->
-<!--          </template>-->
+          <!--          <template slot-scope="{ type, size, row }" slot="menu">-->
+          <!--            <el-button-->
+          <!--              icon="el-icon-video-camera-solid"-->
+          <!--              :size="size"-->
+          <!--              :type="type"-->
+          <!--              @click.stop="handleStart(row)"-->
+          <!--            >视频-->
+          <!--            </el-button>-->
+          <!--            <el-button-->
+          <!--              icon="el-icon-location-outline"-->
+          <!--              :size="size"-->
+          <!--              :type="type"-->
+          <!--              @click.stop="handleMap(row)"-->
+          <!--            >定位-->
+          <!--            </el-button>-->
+          <!--          </template>-->
 
           <template class="tdtype" slot-scope="{ row }" slot="dxzt">
             <el-tag class="dtype">
               {{
-              row.dxzt == "0" ? "掉线" : row.dxzt == "1" ? "正常" :row.dxzt == "2" ? "预警":row.dxzt == "3" ? "故障":"无"
+                row.dxzt == "0"
+                  ? "掉线"
+                  : row.dxzt == "1"
+                  ? "正常"
+                  : row.dxzt == "2"
+                  ? "预警"
+                  : row.dxzt == "3"
+                  ? "故障"
+                  : "无"
               }}
-              <i class="dx" v-if="row.dxzt == '0' "></i>
-              <i class="zc" v-if="row.dxzt == '1' "></i>
-              <i class="yj" v-if="row.dxzt == '2' "></i>
-              <i class="gz" v-if="row.dxzt == '3' "></i>
+              <i class="dx" v-if="row.dxzt == '0'"></i>
+              <i class="zc" v-if="row.dxzt == '1'"></i>
+              <i class="yj" v-if="row.dxzt == '2'"></i>
+              <i class="gz" v-if="row.dxzt == '3'"></i>
             </el-tag>
-
           </template>
 
           <template slot-scope="{ row }" slot="type">
-            <i class="el-icon-check client-jf" v-if="row.type == '0' "></i>
-            <i class="el-icon-close client-qf" v-else-if="row.type == '1' "></i>
+            <i class="el-icon-check client-jf" v-if="row.type == '0'"></i>
+            <i class="el-icon-close client-qf" v-else-if="row.type == '1'"></i>
           </template>
 
           <template slot-scope="{ type, size, row }" slot="menu">
@@ -92,10 +111,9 @@
               :size="size"
               :type="type"
               @click.stop="updateDtype(row)"
-            >办结
+              >办结
             </el-button>
           </template>
-
         </avue-crud>
 
         <div v-show="menuVisible">
@@ -104,7 +122,6 @@
             <li class="menu_item" @click.stop="handleMap">定位</li>
           </ul>
         </div>
-
 
         <el-drawer
           title="电子地图"
@@ -120,12 +137,15 @@
             height="100%"
           ></iframe>
         </el-drawer>
-
       </basic-container>
     </el-col>
-    <el-dialog title="缴费提醒" :visible.sync="dialogTableVisible" top="280px" custom-class="payWin" append-to-body="true">
-
-
+    <el-dialog
+      title="缴费提醒"
+      :visible.sync="dialogTableVisible"
+      top="280px"
+      custom-class="payWin"
+      append-to-body="true"
+    >
       <el-dialog
         class="real-jf-dialog"
         title="缴费"
@@ -153,59 +173,30 @@
           <el-col :offset="4">
             <el-form-item>
               <el-button type="primary" @click.stop="generate(form)"
-              >缴费
-              </el-button
-              >
+                >缴费
+              </el-button>
             </el-form-item>
           </el-col>
         </el-form>
-
       </el-dialog>
 
-
-      <el-table
-        :data="gridData"
-        border
-        style="width: 100%"
-        >
-        <el-table-column
-          fixed
-          prop="xb"
-          label="序号"
-          width="50">
+      <el-table :data="gridData" border style="width: 100%">
+        <el-table-column fixed prop="xb" label="序号" width="50">
         </el-table-column>
-        <el-table-column
-          prop="deviceName"
-          label="设备名称"
-          width="180">
+        <el-table-column prop="deviceName" label="设备名称" width="180">
         </el-table-column>
-        <el-table-column
-          prop="deviceNumber"
-          label="设备编码"
-          width="150">
+        <el-table-column prop="deviceNumber" label="设备编码" width="150">
         </el-table-column>
-        <el-table-column
-          prop="ownership"
-          label="所属单位"
-          width="160">
+        <el-table-column prop="ownership" label="所属单位" width="160">
         </el-table-column>
-        <el-table-column
-          prop="expireTime"
-          label="到期时间"
-          width="160"
-        >
+        <el-table-column prop="expireTime" label="到期时间" width="160">
         </el-table-column>
-        <el-table-column
-          prop="pay"
-          label="缴费信息"
-        >
-        </el-table-column>
-        <el-table-column
-          fixed="right"
-          label="操作"
-          width="100">
+        <el-table-column prop="pay" label="缴费信息"> </el-table-column>
+        <el-table-column fixed="right" label="操作" width="100">
           <template slot-scope="scope">
-            <el-button type="text" size="small" @click="handleClick(scope.row)">一键缴费</el-button>
+            <el-button type="text" size="small" @click="handleClick(scope.row)"
+              >一键缴费</el-button
+            >
           </template>
         </el-table-column>
       </el-table>
@@ -214,961 +205,993 @@
 </template>
 
 <script>
-  import {getList, remove, update, add, getclient, getDeptLazyTree, getAll, updates,getBaTree} from "@/api/client/client";
-  // import {getDeptTree} from "@/api/system/dept";
-  import {mapGetters} from "vuex";
-  import axios from "axios";
-  import Legend from '../../components/liu-legend/Legend'
-  import AvueMap from "avue-plugin-map";
-  import website from '@/config/website';
+import {
+  getList,
+  remove,
+  update,
+  add,
+  getclient,
+  getDeptLazyTree,
+  getAll,
+  updates,
+  getBaTree,
+} from "@/api/client/client";
+// import {getDeptTree} from "@/api/system/dept";
+import { mapGetters } from "vuex";
+import axios from "axios";
+import Legend from "../../components/liu-legend/Legend";
+import AvueMap from "avue-plugin-map";
+import website from "@/config/website";
 
-  export default {
-    components:{
-      Legend,
-    },
-    created() {
-      //this.payWin();
-    },
-    data() {
-      return {
-        dataLIU:{
-          color:"#DFDFDF"
+export default {
+  components: {
+    Legend,
+  },
+  created() {
+    //this.payWin();
+  },
+  data() {
+    return {
+      dataLIU: {
+        color: "#DFDFDF",
+      },
+      //legend-liu数据
+      datalistLIU: [
+        {
+          color: "#DFDFDF",
+          text: "掉线",
         },
-        //legend-liu数据
-        datalistLIU:[
-                {
-                    color: "#DFDFDF",
-                    text: '掉线'
-                },
-                {
-                    color: "#29C093",
-                    text: '正常'
-                },
-                {
-                    color: "#F34A4A",
-                    text: '预警'
-                },
-                {
-                    color: "#F48F57",
-                    text: '故障'
-                }
-        ],
-        form: {},
-        query: {},
-        showMap: false,
-        selectRow:null,
-        initFlag: true,
-        loading: true,
-        menuVisible:false,
-        isEdit:false,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
+        {
+          color: "#29C093",
+          text: "正常",
         },
-        dialogTableVisible: false,
-        realjf: false,
-        gridData: null,
-        selectionList: [],
-        treeDeptId: '',
-        treeData: [],
-        treeOption: {
-          nodeKey: 'id',
-          lazy: true,
-          treeLoad: function (node, resolve) {
-            const parentId = (node.level === 0) ? 0 : node.data.id;
-            getDeptLazyTree(parentId).then(res => {
-              resolve(res.data.data.map(item => {
+        {
+          color: "#F34A4A",
+          text: "预警",
+        },
+        {
+          color: "#F48F57",
+          text: "故障",
+        },
+      ],
+      form: {},
+      query: {},
+      showMap: false,
+      selectRow: null,
+      initFlag: true,
+      loading: true,
+      menuVisible: false,
+      isEdit: false,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      dialogTableVisible: false,
+      realjf: false,
+      gridData: null,
+      selectionList: [],
+      treeDeptId: "",
+      treeData: [],
+      treeOption: {
+        nodeKey: "id",
+        lazy: true,
+        treeLoad: function (node, resolve) {
+          const parentId = node.level === 0 ? 0 : node.data.id;
+          getDeptLazyTree(parentId).then((res) => {
+            resolve(
+              res.data.data.map((item) => {
                 return {
                   ...item,
-                  leaf: !item.hasChildren
-                }
-              }))
-            });
-          },
-          addBtn: false,
-          menu: false,
-          size: 'small',
-          props: {
-            labelText: '标题',
-            label: 'title',
-            value: 'value',
-            children: 'children'
-          }
+                  leaf: !item.hasChildren,
+                };
+              })
+            );
+          });
         },
-        option: {
-          height: 'auto',
-          indexLabel: '序号',
-          calcHeight: 54,
-          labelWidth: '125',
-          dialogWidth: 1150,
-          menuWidth: 200,
-          align:"center",
-          size: "mini",
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 4,
-          searchSpan: 4,
-          border: false,
-          stripe:true,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          dialogClickModal: false,
-          indexFixed:false,
-          column: [
-            {
-              label: "设备名称",
-              width: 200,
-              prop: "deviceName",
-              searchPlaceholder: "设备名称/编号",
-              search: true,
-              sortable:true,
-              rules: [{
+        addBtn: false,
+        menu: false,
+        size: "small",
+        props: {
+          labelText: "标题",
+          label: "title",
+          value: "value",
+          children: "children",
+        },
+      },
+      option: {
+        height: "auto",
+        indexLabel: "序号",
+        calcHeight: 54,
+        labelWidth: "125",
+        dialogWidth: 1150,
+        menuWidth: 200,
+        align: "center",
+        size: "mini",
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 4,
+        searchSpan: 4,
+        border: false,
+        //stripe:true,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        dialogClickModal: false,
+        indexFixed: false,
+        column: [
+          {
+            label: "设备名称",
+            width: 200,
+            prop: "deviceName",
+            searchPlaceholder: "设备名称/编号",
+            search: true,
+            sortable: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入设备名称",
-                trigger: "blur"
-              }],
-            }
-            ,
-            {
-              label: "设备编号",
-              prop: "deviceNumber",
-              width: 130,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入设备编号",
-                  trigger: "click"
-                }
-              ]
-            },
-            {
-              label: "使用方",
-              prop: "deptName",
-              display: false
-            },
-            {
-              label: "使用方",
-              prop: "deptId",
-              width: 200,
-              type: "cascader",
-              dicUrl: "/api/blade-system/dept/trees",
-              dicData: [],
-              checkStrictly:true,
-              hide:true,
-              props: {
-                label: "title"
+                trigger: "blur",
               },
-              rules: [
-                {
-                  required: true,
-                  message: "请选择使用方",
-                  trigger: "click"
-                }
-              ]
-            },
-            // {
-            //   label: "使用方",
-            //   prop: "deptId",
-            //   width: 200,
-            //   type: "cascader",
-            //   dicUrl: "/api/blade-system/dept/trees",
-            //   multiple: true,
-            //   checkStrictly:true,
-            //   dicData: [],
-            //   props: {
-            //     label: "title"
-            //   },
-            //   rules: [
-            //     {
-            //       required: true,
-            //       message: "请选择使用方",
-            //       trigger: "click"
-            //     }
-            //   ]
-            // },
-             {
-              label: "设备厂商",
-              prop: "manufacturers",
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
-              searchSpan: 3,
-              dicUrl: "/api/blade-system/dict-biz/dictionary?code=manufacturers",
-              props: {
-                label: "dictValue",
-                value: "dictKey"
+            ],
+          },
+          {
+            label: "设备编号",
+            prop: "deviceNumber",
+            width: 130,
+            rules: [
+              {
+                required: true,
+                message: "请输入设备编号",
+                trigger: "click",
               },
-              search:true,
-              type:"select",
-              rules: [{
+            ],
+          },
+          {
+            label: "使用方",
+            prop: "deptName",
+            display: false,
+          },
+          {
+            label: "使用方",
+            prop: "deptId",
+            width: 200,
+            type: "cascader",
+            dicUrl: "/api/blade-system/dept/trees",
+            dicData: [],
+            checkStrictly: true,
+            hide: true,
+            props: {
+              label: "title",
+            },
+            rules: [
+              {
+                required: true,
+                message: "请选择使用方",
+                trigger: "click",
+              },
+            ],
+          },
+          // {
+          //   label: "使用方",
+          //   prop: "deptId",
+          //   width: 200,
+          //   type: "cascader",
+          //   dicUrl: "/api/blade-system/dept/trees",
+          //   multiple: true,
+          //   checkStrictly:true,
+          //   dicData: [],
+          //   props: {
+          //     label: "title"
+          //   },
+          //   rules: [
+          //     {
+          //       required: true,
+          //       message: "请选择使用方",
+          //       trigger: "click"
+          //     }
+          //   ]
+          // },
+          {
+            label: "设备厂商",
+            prop: "manufacturers",
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+            searchSpan: 3,
+            dicUrl: "/api/blade-system/dict-biz/dictionary?code=manufacturers",
+            props: {
+              label: "dictValue",
+              value: "dictKey",
+            },
+            search: true,
+            type: "select",
+            rules: [
+              {
                 required: true,
                 message: "请选择设备厂商",
-                trigger: "blur"
-              }],
-            },
-            {
-              label: "设备状态",
-              prop: "dxzt",
-              slot: true,
-              sortable:true,
-              addDisplay: false,
-              editDisplay: false,
-            }, {
-              label: "地址",
-              prop: "street",
-              span:10,
-              hide: true,
-            },
-            {
-              label: null,
-              prop: "map",
-              labelWidth: "0",
-              searchSpan:0,
-              maxlength:0,
-              hide: true,
-              span: 2,
-              // display:false,
-              component: "AvueMap"
-            },
-            {
-              label: "省份",
-              prop: "province",
-              search: true,
-              searchSpan: 2,
-              labelWidth: '110',
-              searchLabelWidth: 45,
-              placeholder: "省份",
-              type: "select",
-              props: {
-                label: "name",
-                value: "code"
+                trigger: "blur",
               },
-              cascaderItem: ["city", "district"],
-              dicUrl: "/api/blade-system/region/select",
-              span: 8,
-              className: "city1",
-              hide: true,
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
+            ],
+          },
+          {
+            label: "设备状态",
+            prop: "dxzt",
+            slot: true,
+            sortable: true,
+            addDisplay: false,
+            editDisplay: false,
+          },
+          {
+            label: "地址",
+            prop: "street",
+            span: 10,
+            hide: true,
+          },
+          {
+            label: null,
+            prop: "map",
+            labelWidth: "0",
+            searchSpan: 0,
+            maxlength: 0,
+            hide: true,
+            span: 2,
+            // display:false,
+            component: "AvueMap",
+          },
+          {
+            label: "省份",
+            prop: "province",
+            search: true,
+            searchSpan: 2,
+            labelWidth: "110",
+            searchLabelWidth: 45,
+            placeholder: "省份",
+            type: "select",
+            props: {
+              label: "name",
+              value: "code",
             },
-            {
-              label: "地市",
-              prop: "city",
-              type: "select",
-              searchPlaceholder: "地市",
-              placeholder: "地市",
-              searchLabelWidth: 1,
-              searchSpan: 2,
-              search: true,
-              props: {
-                label: "name",
-                value: "code"
-              },
-              dicUrl: "/api/blade-system/region/select?code={{key}}",
-              span: 2,
-              labelWidth: "0",
-              className: "city2",
-              hide: true,
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
+            cascaderItem: ["city", "district"],
+            dicUrl: "/api/blade-system/region/select",
+            span: 8,
+            className: "city1",
+            hide: true,
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "地市",
+            prop: "city",
+            type: "select",
+            searchPlaceholder: "地市",
+            placeholder: "地市",
+            searchLabelWidth: 1,
+            searchSpan: 2,
+            search: true,
+            props: {
+              label: "name",
+              value: "code",
             },
-            {
-              label: "区县",
-              searchSpan: 2,
-              searchLabelWidth: 1,
-              searchPlaceholder: "区县",
-              placeholder: "区县",
-              search: true,
-              prop: "district",
-              type: "select",
-              props: {
-                label: "name",
-                value: "code"
-              },
-              dicUrl: "/api/blade-system/region/select?code={{key}}",
-              span: 2,
-              labelWidth: "0",
-              className: "city3",
-              hide: true,
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 2,
+            labelWidth: "0",
+            className: "city2",
+            hide: true,
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "区县",
+            searchSpan: 2,
+            searchLabelWidth: 1,
+            searchPlaceholder: "区县",
+            placeholder: "区县",
+            search: true,
+            prop: "district",
+            type: "select",
+            props: {
+              label: "name",
+              value: "code",
             },
-            {
-              label: "经度",
-              hide: true,
-              prop: "jd",
-              searchSpan:2,
-              width:"100",
-              labelWidth: "120",
-              formatter: (row,value,label,column)=>{
-                  return value = value.substring(0,11);
-              },
-              span:7,
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 2,
+            labelWidth: "0",
+            className: "city3",
+            hide: true,
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "经度",
+            hide: true,
+            prop: "jd",
+            searchSpan: 2,
+            width: "100",
+            labelWidth: "120",
+            formatter: (row, value, label, column) => {
+              return (value = value.substring(0, 11));
             },
-            {
-              label: "纬度",
-              labelWidth: "45",
-              hide: true,
-              prop: "wd",
-              formatter: (row,value,label,column) => {
-                return value = value.substring(0,10);
-              },
-              span:5,
+            span: 7,
+          },
+          {
+            label: "纬度",
+            labelWidth: "45",
+            hide: true,
+            prop: "wd",
+            formatter: (row, value, label, column) => {
+              return (value = value.substring(0, 10));
             },
-            {
-              label: "心跳时间",
-              prop: "heartbeat",
-              type: "datetime",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              width: 130,
-              hide: true,
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
+            span: 5,
+          },
+          {
+            label: "心跳时间",
+            prop: "heartbeat",
+            type: "datetime",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            width: 130,
+            hide: true,
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  watch: {
+    "form.map": {
+      // form是表单或者表格绑定的数据集,v-model='form'
+      handler(val) {
+        if (val) {
+          //经纬度替换
+          this.form.wd = val.latitude;
+          this.form.jd = val.longitude;
+          //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
+          var address = val.formattedAddress.toString();
+          if (address.search("县") != -1) {
+            this.form.street = address.substring(
+              address.indexOf("县") + 1,
+              address.length
+            );
+          }
+          if (address.search("区") != -1) {
+            this.form.street = address.substring(
+              address.indexOf("区") + 1,
+              address.length
+            );
+          }
+          // //写入新的省市区
+          // that.form.province = val.addressComponent.province;
+          // if(val.addressComponent.city==""){
+          //     that.form.city = val.addressComponent.province;
+          // }else{
+          //     that.form.city = val.addressComponent.city;
+          // }
+          // that.form.district = val.addressComponent.district;
+        }
+      },
+      immediate: true,
+    },
+    "form.oneId": {
+      handler(val) {
+        var that = this;
+        if (val != null && val != "") {
+          getBaTree(val).then((res) => {
+            if (res) {
+              that.form.onePhone = res.data.data.records[0].phone;
+              that.form.oneContacts = res.data.data.records[0].name;
             }
+          });
+        }
+      },
+    },
+    "form.twoId": {
+      handler(val) {
+        var that = this;
+        if (val != null && val != "") {
+          getBaTree(val).then((res) => {
+            if (res) {
+              that.form.twoPhone = res.data.data.records[0].phone;
+              that.form.twoContacts = res.data.data.records[0].name;
+            }
+          });
+        }
+      },
+    },
+    "form.threeId": {
+      handler(val) {
+        var that = this;
+        if (val != null && val != "") {
+          getBaTree(val).then((res) => {
+            if (res) {
+              that.form.threePhone = res.data.data.records[0].phone;
+              that.form.threeContacts = res.data.data.records[0].name;
+            }
+          });
+        }
+      },
+    },
 
-          ]
-        },
-        data: []
+    //随意一个
+    // 'form.deviceName'() {
+    //   if (this.initFlag) {
+    //     this.initData();
+    //   }
+    // }
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.clientManagement_add, false),
+        viewBtn: this.vaildData(null, false),
+        delBtn: this.vaildData(this.permission.clientManagement_delete, false),
+        editBtn: this.vaildData(this.permission.clientManagement_edit, false),
       };
     },
-    watch: {
-      "form.map": {
-        // form是表单或者表格绑定的数据集,v-model='form'
-        handler(val) {
-          if (val) {
-            //经纬度替换
-            this.form.wd = val.latitude;
-            this.form.jd = val.longitude;
-            //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
-            var address = val.formattedAddress.toString();
-            if(address.search("县") != -1){
-                this.form.street = address.substring(address.indexOf("县")+1,address.length);
-            }
-            if(address.search("区") != -1){
-              this.form.street = address.substring(address.indexOf("区")+1,address.length);
-            }
-            // //写入新的省市区
-            // that.form.province = val.addressComponent.province;
-            // if(val.addressComponent.city==""){
-            //     that.form.city = val.addressComponent.province;
-            // }else{
-            //     that.form.city = val.addressComponent.city;
-            // }
-            // that.form.district = val.addressComponent.district;
-          }
-        },
-        immediate: true,
-      },
-      "form.oneId":{
-        handler(val) {
-          var that = this;
-          if (val != null && val !=""){
-            getBaTree(val).then(res => {
-              if (res) {
-                that.form.onePhone = res.data.data.records[0].phone;
-                that.form.oneContacts = res.data.data.records[0].name;
-              }
-            });
-          }
-        },
-      },
-      "form.twoId":{
-        handler(val) {
-          var that = this;
-          if (val != null && val !=""){
-            getBaTree(val).then(res => {
-              if (res) {
-                that.form.twoPhone = res.data.data.records[0].phone;
-                that.form.twoContacts = res.data.data.records[0].name;
-              }
-            });
-          }
-        },
-      },
-      "form.threeId":{
-        handler(val) {
-          var that = this;
-          if (val != null && val !=""){
-            getBaTree(val).then(res => {
-              if (res) {
-                that.form.threePhone = res.data.data.records[0].phone;
-                that.form.threeContacts = res.data.data.records[0].name;
-              }
-            });
-          }
-        },
-      },
-
-      //随意一个
-      // 'form.deviceName'() {
-      //   if (this.initFlag) {
-      //     this.initData();
-      //   }
-      // }
-
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.clientManagement_add, false),
-          viewBtn: this.vaildData(null, false),
-          delBtn: this.vaildData(this.permission.clientManagement_delete, false),
-          editBtn: this.vaildData(this.permission.clientManagement_edit, false)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
-      }
-    },
-    mounted(){
-      // 租户模式默认加载管理组数据
-      // var that = this;
-      //that.tenantId = website.tenantId;
-    },
-    methods: {
-      generate(row) {
-        updates(row.expireTime, row.deviceNumber).then(() => {
+  },
+  mounted() {
+    // 租户模式默认加载管理组数据
+    // var that = this;
+    //that.tenantId = website.tenantId;
+  },
+  methods: {
+    generate(row) {
+      updates(row.expireTime, row.deviceNumber).then(
+        () => {
           this.dialogTableVisible = false;
           this.realjf = false;
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "缴费成功!"
+            message: "缴费成功!",
           });
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
-        });
-      },
+        }
+      );
+    },
 
-      //初始化数据
-      // initData() {
-      //   //部门tree数据
-      //   getDeptTree().then(res => {
-      //     const column = this.findObject(this.option.column, "deptId");
-      //     column.dicData = res.data.data;
-      //   });
-      // },
+    //初始化数据
+    // initData() {
+    //   //部门tree数据
+    //   getDeptTree().then(res => {
+    //     const column = this.findObject(this.option.column, "deptId");
+    //     column.dicData = res.data.data;
+    //   });
+    // },
 
-      handleClick(row) {
-        this.form = row;
-        this.dialogTableVisible = true;
-        this.realjf = true;
-      },
-      nodeClick(data) {
-        this.treeDeptId = data.id;
-        this.page.currentPage = 1;
-        this.onLoad(this.page);
-      },
-      rowSave(row, done, loading) {
+    handleClick(row) {
+      this.form = row;
+      this.dialogTableVisible = true;
+      this.realjf = true;
+    },
+    nodeClick(data) {
+      this.treeDeptId = data.id;
+      this.page.currentPage = 1;
+      this.onLoad(this.page);
+    },
+    rowSave(row, done, loading) {
+      row.deptId = row.deptId.join(",");
+      add(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    rowUpdate(row, index, done, loading) {
+      if (Array.isArray(row.deptId)) {
         row.deptId = row.deptId.join(",");
-        add(row).then(() => {
-          this.onLoad(this.page);
-          this.$message({
-            type: "success",
-            message: "操作成功!"
-          });
-          done();
-        }, error => {
-          window.console.log(error);
-          loading();
-        });
-      },
-      rowUpdate(row, index, done, loading) {
-        if(Array.isArray(row.deptId)){
-            row.deptId = row.deptId.join(",");
-        }
-        update(row).then(() => {
+      }
+      update(row).then(
+        () => {
           // this.initFlag = false;
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
           loading();
-        });
-      },
-      updateDtype(row){
-        row.dtype = "0";
-        update(row).then(() => {
+        }
+      );
+    },
+    updateDtype(row) {
+      row.dtype = "0";
+      update(row).then(
+        () => {
           // this.initFlag = false;
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           this.onLoad(this.page);
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
+        }
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
         });
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
+    },
+    searchReset() {
+      this.treeDeptId = "";
+      this.query = {};
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      console.log(params, done);
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
         })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      searchReset() {
-        this.treeDeptId = "";
-        this.query = {};
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        console.log(params,done)
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
-          });
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getclient(this.form.id).then(res => {
-            this.form = res.data.data;
-            this.isEdit=true;
-          });
-        }
-        if (["add"].includes(type)) {
-          this.isEdit=false;
-        }
-        // this.initFlag = true;
-        done();
-      },
-      currentChange(currentPage) {
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize) {
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        const {releaseTimeRange} = this.query;
-        let values = {
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getclient(this.form.id).then((res) => {
+          this.form = res.data.data;
+          this.isEdit = true;
+        });
+      }
+      if (["add"].includes(type)) {
+        this.isEdit = false;
+      }
+      // this.initFlag = true;
+      done();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      const { releaseTimeRange } = this.query;
+      let values = {
+        ...params,
+      };
+      if (releaseTimeRange) {
+        values = {
           ...params,
+          beginTime: releaseTimeRange[0],
+          endTime: releaseTimeRange[1],
+          ...this.query,
         };
-        if (releaseTimeRange) {
-          values = {
-            ...params,
-            beginTime: releaseTimeRange[0],
-            endTime: releaseTimeRange[1],
-            ...this.query
-          };
-          values.releaseTimeRange = null;
-        } else {
-          values = {
-            ...params,
-            ...this.query
-          };
-        }
+        values.releaseTimeRange = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
 
-        //在线设备
-        if(this.$route.query.dxtype != undefined){
-          values = {
-            ...params,
-            dxtype: this.$route.query.dxtype,
-            ...this.query,
-          };
-        }
+      //在线设备
+      if (this.$route.query.dxtype != undefined) {
+        values = {
+          ...params,
+          dxtype: this.$route.query.dxtype,
+          ...this.query,
+        };
+      }
 
-        this.loading = true;
-        getList(page.currentPage, page.pageSize, values, this.treeDeptId).then(res => {
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values, this.treeDeptId).then(
+        (res) => {
           const data = res.data.data;
           this.page.total = data.total;
 
           for (var i = 0; i < data.records.length; i++) {
-              if(data.records[i].dtype==1){
-                  data.records[i].dxzt = 1;
-              }
-              if(data.records[i].dtype==2){
-                  data.records[i].dxzt = 2;
-              }
-              if(data.records[i].dtype==3){
-                  data.records[i].dxzt = 3;
-              }
-              if(data.records[i].dtype=="" || data.records[i].dtype==0){
-                  data.records[i].dxzt = 0;
-              }
+            if (data.records[i].dtype == 1) {
+              data.records[i].dxzt = 1;
+            }
+            if (data.records[i].dtype == 2) {
+              data.records[i].dxzt = 2;
+            }
+            if (data.records[i].dtype == 3) {
+              data.records[i].dxzt = 3;
+            }
+            if (data.records[i].dtype == "" || data.records[i].dtype == 0) {
+              data.records[i].dxzt = 0;
+            }
           }
 
           this.data = data.records;
           this.loading = false;
           this.selectionClear();
-        });
-      }, rowStyle({row, column, rowIndex}) {
-        // if (row.heartbeat != null && row.heartbeat != "") {
-        //   var date = new Date(row.heartbeat).getTime();
-        //   var Dqdate = new Date().getTime();
-        //   if ((Dqdate - date) >= (60 * 60 * 24 * 1000)) {
-        //     return {
-        //       color: "#fe1515"
-        //     };
-        //   }
+        }
+      );
+    },
+    rowStyle({ row, column, rowIndex }) {
+      // if (row.heartbeat != null && row.heartbeat != "") {
+      //   var date = new Date(row.heartbeat).getTime();
+      //   var Dqdate = new Date().getTime();
+      //   if ((Dqdate - date) >= (60 * 60 * 24 * 1000)) {
+      //     return {
+      //       color: "#fe1515"
+      //     };
+      //   }
 
-        // } else if (row.heartbeat == "") {
+      // } else if (row.heartbeat == "") {
+      //   return {
+      //     color: "#fe1515"
+      //   };
+      // }
+
+      if (row.dtype != null && row.dtype != "") {
+        // if(row.dtype=='0'){
         //   return {
-        //     color: "#fe1515"
+        //     color: "#DFDFDF"
         //   };
         // }
-
-        if(row.dtype!=null && row.dtype!=""){
-          // if(row.dtype=='0'){
-          //   return {
-          //     color: "#DFDFDF"
-          //   };
-          // }
-          // if(row.dtype=='1'){
-          //   return {
-          //     color: "#29C093"
-          //   };
-          // }
-          if(row.dtype=='2'){
-            return {
-              color: "#F34A4A"
-            };
-          }
-          // if(row.dtype=='3'){
-          //   return {
-          //     color: "#F48F57"
-          //   };
-          // }
-        }
-      },
-      handleManage(row) {
-        this.form;
-        this.dialogTableVisible = true;
-      },
-      payWin() {
-        var that = this;
-        getAll().then(res => {
-          var data = res.data.data;
-          var lists = [];
-          var xb = 0;
-          for (var i = 0; i < data.length; i++) {
-            if (data[i].type == "1") {
-              xb++;
-              data[i].xb = xb;
-              lists.push(data[i]);
-            }
-          }
-          if (lists.length > 0) {
-            that.gridData = lists;
-            that.dialogTableVisible = true;
-          }
-        });
-
-      }, handleStart(row) {
-
-        console.log(row,11111111111);
-        row = this.selectRow;
-        console.log(row,22222222222);
-        var arr = [];
-        console.log(this.$store.state.tags.tagList,3333333);
-        this.$store.state.tags.tagList.forEach(item => {
-          if (item.label != "视频") {
-            arr.push(item);
-          }
-        });
-        this.$store.state.tags.tagList = arr;
-        console.log(arr,444444444444);
-        this.$router.push({
-          path: `/real/video/`, query: row
-        });
-      }, handleMap(row) {
-        row = this.selectRow;
-        this.showMap = true;
-        this.$nextTick(() => {
-          this.$refs.mapDiv.onload = () => {
-            window.frames[1].init("equipment", {x: row.jd, y: row.wd});
+        // if(row.dtype=='1'){
+        //   return {
+        //     color: "#29C093"
+        //   };
+        // }
+        if (row.dtype == "2") {
+          return {
+            color: "#F34A4A",
           };
-        })
-      },rightClick(row, event) {
-        this.selectRow = row;
-        this.menuVisible = false; // 先把模态框关死,目的是 第二次或者第n次右键鼠标的时候 它默认的是true
-        this.menuVisible = true; // 显示模态窗口,跳出自定义菜单栏
-        var menu = document.querySelector('#menu');
-        this.styleMenu(menu);
-      },
-      foo() {
-        // 取消鼠标监听事件 菜单栏
-        this.menuVisible = false;
-        document.removeEventListener('click', this.foo); // 要及时关掉监听,不关掉的是一个坑,不信你试试,虽然前台显示的时候没有啥毛病,加一个alert你就知道了
-      },
-      styleMenu(menu) {
-        let cha = document.body.clientHeight - event.clientY
-        //console.log(document.body.clientHeight,event.clientY,cha)
-        // 防止菜单太靠底,根据可视高度调整菜单出现位置
-        if (cha < 150) {
-          menu.style.top = event.clientY -120 - (100) + 'px'
-        } else {
-          menu.style.top = event.clientY -10 - (100) + 'px'
         }
-        menu.style.left = event.clientX + 10 - (60) + 'px'
-        document.addEventListener('click', this.foo); // 给整个document新增监听鼠标事件,点击任何位置执行foo方法
-      },
-      rowClick(val){//行点击事件
+        // if(row.dtype=='3'){
+        //   return {
+        //     color: "#F48F57"
+        //   };
+        // }
+      }
+    },
+    handleManage(row) {
+      this.form;
+      this.dialogTableVisible = true;
+    },
+    payWin() {
+      var that = this;
+      getAll().then((res) => {
+        var data = res.data.data;
+        var lists = [];
+        var xb = 0;
+        for (var i = 0; i < data.length; i++) {
+          if (data[i].type == "1") {
+            xb++;
+            data[i].xb = xb;
+            lists.push(data[i]);
+          }
+        }
+        if (lists.length > 0) {
+          that.gridData = lists;
+          that.dialogTableVisible = true;
+        }
+      });
+    },
+    handleStart(row) {
+      console.log(row, 11111111111);
+      row = this.selectRow;
+      console.log(row, 22222222222);
+      var arr = [];
+      console.log(this.$store.state.tags.tagList, 3333333);
+      this.$store.state.tags.tagList.forEach((item) => {
+        if (item.label != "视频") {
+          arr.push(item);
+        }
+      });
+      this.$store.state.tags.tagList = arr;
+      console.log(arr, 444444444444);
+      this.$router.push({
+        path: `/real/video/`,
+        query: row,
+      });
+    },
+    handleMap(row) {
+      row = this.selectRow;
+      this.showMap = true;
+      this.$nextTick(() => {
+        this.$refs.mapDiv.onload = () => {
+          window.frames[1].init("equipment", { x: row.jd, y: row.wd });
+        };
+      });
+    },
+    rightClick(row, event) {
+      this.selectRow = row;
+      this.menuVisible = false; // 先把模态框关死,目的是 第二次或者第n次右键鼠标的时候 它默认的是true
+      this.menuVisible = true; // 显示模态窗口,跳出自定义菜单栏
+      var menu = document.querySelector("#menu");
+      this.styleMenu(menu);
+    },
+    foo() {
+      // 取消鼠标监听事件 菜单栏
+      this.menuVisible = false;
+      document.removeEventListener("click", this.foo); // 要及时关掉监听,不关掉的是一个坑,不信你试试,虽然前台显示的时候没有啥毛病,加一个alert你就知道了
+    },
+    styleMenu(menu) {
+      let cha = document.body.clientHeight - event.clientY;
+      //console.log(document.body.clientHeight,event.clientY,cha)
+      // 防止菜单太靠底,根据可视高度调整菜单出现位置
+      if (cha < 150) {
+        menu.style.top = event.clientY - 120 - 100 + "px";
+      } else {
+        menu.style.top = event.clientY - 10 - 100 + "px";
+      }
+      menu.style.left = event.clientX + 10 - 60 + "px";
+      document.addEventListener("click", this.foo); // 给整个document新增监听鼠标事件,点击任何位置执行foo方法
+    },
+    rowClick(val) {
+      //行点击事件
       // console.log(val);
       this.$router.push({ path: "/dataL/dataL", query: val });
-      }
-    }
-  };
+    },
+  },
+};
 </script>
 
 <style lang="scss" scoped>
 $city-m-l: 10px;
 
-  .payWin {
-    overflow-y: auto;
-    height: 350px;
-  }
+.payWin {
+  overflow-y: auto;
+  height: 350px;
+}
 
-  .payWin .el-dialog__body {
-    padding-top: 0px !important;
-  }
+.payWin .el-dialog__body {
+  padding-top: 0px !important;
+}
 
+// /*页面样式*/   //丢弃  因为不起作用,样式在cs.vue中  city1,2,3  liuyg改
+// .el-card__body .cityClass1 {
+//   width: 50px;
+//   padding-right: 0px !important;
+//   margin-left: $city-m-l;
+// }
 
-  // /*页面样式*/   //丢弃  因为不起作用,样式在cs.vue中  city1,2,3  liuyg改
-  // .el-card__body .cityClass1 {
-  //   width: 50px;
-  //   padding-right: 0px !important;
-  //   margin-left: $city-m-l;
-  // }
+// .el-card__body .cityClass2 {
+//   width: 50px;
+//   padding-left: 0px !important;
+//   padding-right: 0px !important;
+//   margin-left: $city-m-l;
+// }
 
-  // .el-card__body .cityClass2 {
-  //   width: 50px;
-  //   padding-left: 0px !important;
-  //   padding-right: 0px !important;
-  //   margin-left: $city-m-l;
-  // }
+// .el-card__body .cityClass3 {
+//   width: 50px;
+//   padding-left: 0px !important;
+//   padding-right: 0px !important;
+//   margin-left: $city-m-l;
+// }
 
-  // .el-card__body .cityClass3 {
-  //   width: 50px;
-  //   padding-left: 0px !important;
-  //   padding-right: 0px !important;
-  //   margin-left: $city-m-l;
-  // }
+// /*新增窗体样式*/
+// .el-dialog .city1 {
+//   width: 155px;
+//   padding-right: 0px !important;
+//   margin-left: $city-m-l;
+// }
 
-  // /*新增窗体样式*/
-  // .el-dialog .city1 {
-  //   width: 155px;
-  //   padding-right: 0px !important;
-  //   margin-left: $city-m-l;
-  // }
+// .el-dialog .city2 {
+//   width: 100px;
+//   padding-left: 5px !important;
+//   padding-right: 5px !important;
+//   margin-left: $city-m-l;
+// }
 
-  // .el-dialog .city2 {
-  //   width: 100px;
-  //   padding-left: 5px !important;
-  //   padding-right: 5px !important;
-  //   margin-left: $city-m-l;
-  // }
+// .el-dialog .city3 {
+//   width: 100px;
+//   padding-left: 0px !important;
+//   padding-right: 0px !important;
+//   margin-left: $city-m-l;
+// }
 
-  // .el-dialog .city3 {
-  //   width: 100px;
-  //   padding-left: 0px !important;
-  //   padding-right: 0px !important;
-  //   margin-left: $city-m-l;
-  // }
+// .city2 div label {
+//   display: none;
+// }
 
-  // .city2 div label {
-  //   display: none;
-  // }
+// .city3 div label {
+//   display: none;
+// }
 
-  // .city3 div label {
-  //   display: none;
-  // }
+.real-jf-dialog {
+  position: absolute !important;
+  top: 0 !important;
+  left: auto !important;
+  right: 0px !important;
+  bottom: 0 !important;
+  margin: auto !important;
+  height: 100% !important;
+  width: 800px !important;
+}
 
-  .real-jf-dialog {
-    position: absolute !important;
-    top: 0 !important;
-    left: auto !important;
-    right: 0px !important;
-    bottom: 0 !important;
-    margin: auto !important;
-    height: 100% !important;
-    width: 800px !important;
-  }
+.real-jf-dialog .el-dialog {
+  position: absolute !important;
+  top: 140px !important;
+  left: 245px !important;
+  right: 0px !important;
+  bottom: 0 !important;
+  margin: auto !important;
+  margin-top: 15vh !important;
+  height: 170px;
+}
 
-  .real-jf-dialog .el-dialog {
-    position: absolute !important;
-    top: 140px !important;
-    left: 245px !important;
-    right: 0px !important;
-    bottom: 0 !important;
-    margin: auto !important;
-    margin-top: 15vh !important;
-    height: 170px;
-  }
+.real-jf-dialog .el-dialog .el-dialog__body {
+  height: calc(100% - 54px);
+  box-sizing: border-box;
+}
 
-  .real-jf-dialog .el-dialog .el-dialog__body {
-    height: calc(100% - 54px);
-    box-sizing: border-box;
-  }
+.client-jf {
+  font-size: 25px;
+  color: green;
+}
 
-  .client-jf {
-    font-size: 25px;
-    color: green;
-  }
+.client-qf {
+  font-size: 25px;
+  color: red;
+}
 
-  .client-qf {
-    font-size: 25px;
-    color: red;
-  }
+.dtype {
+  width: 80px;
+}
 
-  .dtype{
-    width: 80px;
-  }
+.dx {
+  position: absolute;
+  top: 50%;
+  margin-top: -5px;
+  margin-left: 6px;
+  width: 10px;
+  height: 10px;
+  border-radius: 30%;
+  background: #dfdfdf;
+}
+.zc {
+  position: absolute;
+  top: 50%;
+  margin-top: -5px;
+  margin-left: 6px;
+  width: 10px;
+  height: 10px;
+  border-radius: 30%;
+  background: #29c093;
+}
+.yj {
+  position: absolute;
+  top: 50%;
+  margin-top: -5px;
+  margin-left: 6px;
+  width: 10px;
+  height: 10px;
+  border-radius: 30%;
+  background: #f34a4a;
+}
+.gz {
+  position: absolute;
+  top: 50%;
+  margin-top: -5px;
+  margin-left: 6px;
+  width: 10px;
+  height: 10px;
+  border-radius: 30%;
+  background: #f48f57;
+}
 
-  .dx{
-    position: absolute;
-    top: 50%;
-    margin-top: -5px;
-    margin-left: 6px;
-    width: 10px;
-    height: 10px;
-    border-radius: 30%;
-    background: #DFDFDF;
-  }
-  .zc{
-    position: absolute;
-    top: 50%;
-    margin-top: -5px;
-    margin-left: 6px;
-    width: 10px;
-    height: 10px;
-    border-radius: 30%;
-    background: #29C093;
-  }
-  .yj{
-    position: absolute;
-    top: 50%;
-    margin-top: -5px;
-    margin-left: 6px;
-    width: 10px;
-    height: 10px;
-    border-radius: 30%;
-    background: #F34A4A;
-  }
-  .gz{
-    position: absolute;
-    top: 50%;
-    margin-top: -5px;
-    margin-left: 6px;
-    width: 10px;
-    height: 10px;
-    border-radius: 30%;
-    background: #F48F57;
-  }
+.tabFontSize {
+  font-size: 15px;
+}
 
-  .tabFontSize{
-    font-size: 15px;
-  }
+.menu_item {
+  cursor: pointer;
+  line-height: 20px;
+  text-align: center;
+  margin-top: 0px;
+}
 
-  .menu_item {
-    cursor:pointer;
-    line-height: 20px;
-    text-align: center;
-    margin-top: 0px;
-  }
-
-  .menu {
-    height: auto;
-    width: 120px;
-    color: #606266;
-    position: absolute;
-    padding: 0px;
-    box-sizing: border-box;
-    /*border: 1px solid #999999;*/
-    text-align: center;
-    background-color: #fff;
-    border-radius: .25rem;
-    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
-  }
-  .menu li:hover {
-    background-color: rgba(232,237,250,.6);
-    color: darkslategrey;
-  }
-  .menu li{
-    position: relative;
-    display: flex;
-    font-size: 14px;
-    align-items: center;
-    height: 34px;
-    line-height: 34px;
-    outline: none;
-    margin-top: 0px;
-    padding-left: 20px;
-    padding-right: 5px;
-  }
-
-
-
+.menu {
+  height: auto;
+  width: 120px;
+  color: #606266;
+  position: absolute;
+  padding: 0px;
+  box-sizing: border-box;
+  /*border: 1px solid #999999;*/
+  text-align: center;
+  background-color: #fff;
+  border-radius: 0.25rem;
+  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
+}
+.menu li:hover {
+  background-color: rgba(232, 237, 250, 0.6);
+  color: darkslategrey;
+}
+.menu li {
+  position: relative;
+  display: flex;
+  font-size: 14px;
+  align-items: center;
+  height: 34px;
+  line-height: 34px;
+  outline: none;
+  margin-top: 0px;
+  padding-left: 20px;
+  padding-right: 5px;
+}
 </style>
 
 
 <style>
-  .avue-map input{
-    position: relative !important;
-    left: 30px !important;
-  }
+.avue-map input {
+  position: relative !important;
+  left: 30px !important;
+}
 
-  .avue-map .el-input-group__append{
-    position: relative !important;
-    left: -51px !important;
-  }
-
-
+.avue-map .el-input-group__append {
+  position: relative !important;
+  left: -51px !important;
+}
 </style>
diff --git a/src/views/feedbackReport/feedbackReport.vue b/src/views/feedbackReport/feedbackReport.vue
index 24e38da..4ba911d 100644
--- a/src/views/feedbackReport/feedbackReport.vue
+++ b/src/views/feedbackReport/feedbackReport.vue
@@ -1,390 +1,413 @@
 <template>
   <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page="page"
+      :permission="permissionList"
+      :before-open="beforeOpen"
+      v-model="form"
+      ref="crud"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      @row-del="rowDel"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
       <template slot="menuLeft">
-        <el-button type="danger"
-                   size="small"
-                   icon="el-icon-delete"
-                   plain
-                   v-if="permission.feedback_delete"
-                   @click="handleDelete">删 除
+        <el-button
+          type="danger"
+          size="small"
+          icon="el-icon-delete"
+          plain
+          v-if="permission.feedback_delete"
+          @click="handleDelete"
+          >删 除
         </el-button>
       </template>
     </avue-crud>
   </basic-container>
-  
 </template>
 
 <script>
-  import {getListReport, getDetails, adds, updates, remove} from "@/api/feedback/feedback";
-    import {getBaTree} from "@/api/client/client";
-  import {mapGetters} from "vuex";
+import {
+  getListReport,
+  getDetails,
+  adds,
+  updates,
+  remove,
+} from "@/api/feedback/feedback";
+import { getBaTree } from "@/api/client/client";
+import { mapGetters } from "vuex";
 
-  export default {
-    data() {
-      return {
-        form: {},
-        query: {},
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        selectionList: [],
-        option: {
-          height:'auto',
-          calcHeight: 54,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          labelWidth: '125',
-          dialogWidth: 1150,
-          border: false,
-          stripe:true,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          dialogClickModal: false,
-          images:[],
-          videos:[],
-          column: [
-            {
-              label: "上报人姓名",
-              prop: "sname",
-              search:true,
-              searchLabelWidth:100,
-              searchSpan:5,
-              addDisplay:false,
-              editDisplay:false
+export default {
+  data() {
+    return {
+      form: {},
+      query: {},
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      option: {
+        height: "auto",
+        calcHeight: 54,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        labelWidth: "125",
+        dialogWidth: 1150,
+        border: false,
+        //stripe:true,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        dialogClickModal: false,
+        images: [],
+        videos: [],
+        column: [
+          {
+            label: "上报人姓名",
+            prop: "sname",
+            search: true,
+            searchLabelWidth: 100,
+            searchSpan: 5,
+            addDisplay: false,
+            editDisplay: false,
+          },
+          {
+            label: "上报人姓名",
+            prop: "snumber",
+            type: "tree",
+            dicUrl: "/api/catalogs/catalogs/getBigTree",
+            props: {
+              label: "title",
             },
-            {
-              label: "上报人姓名",
-              prop: "snumber",
-              type: "tree",
-              dicUrl: "/api/catalogs/catalogs/getBigTree",
-              props: {
-                label: "title"
-              },
-              width: 72,
-              hide: true,
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: false,
-              rules: [{
+            width: 72,
+            hide: true,
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: false,
+            rules: [
+              {
                 required: true,
                 message: "请选择上报人",
-                trigger: "blur"
-              }],
-            },
-            {
-              label: "上报地址",
-              prop: "place",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "上报地址",
+            prop: "place",
+            rules: [
+              {
                 required: true,
                 message: "请输入事发地址",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "备注",
-              prop: "result",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "备注",
+            prop: "result",
+            rules: [
+              {
                 required: true,
                 message: "请输入处理结果",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "上报时间",
-              prop: "stime",
-              type: "datetime",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-            },
-            {
-              label: "上报时间",
-              prop: "dateTime",
-              type: "datetime",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              searchRange: true,
-              search:true,
-              searchLabelWidth:100,
-              searchSpan: 6,
-              addDisplay:false,
-              viewDisplay:false,
-              editDisplay:false,
-              hide:true,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "上报时间",
+            prop: "stime",
+            type: "datetime",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
+          {
+            label: "上报时间",
+            prop: "dateTime",
+            type: "datetime",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            searchRange: true,
+            search: true,
+            searchLabelWidth: 100,
+            searchSpan: 6,
+            addDisplay: false,
+            viewDisplay: false,
+            editDisplay: false,
+            hide: true,
+            rules: [
+              {
                 required: true,
                 message: "请选择上报时间",
-                trigger: "blur"
-              }]
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "图片",
+            prop: "images",
+            dataType: "array",
+            type: "upload",
+            span: 24,
+            hide: true,
+            viewDisplay: true,
+            listType: "picture-card",
+            action: "/api/blade-resource/oss/endpoint/put-file",
+            propsHttp: {
+              res: "data",
+              url: "link",
             },
-            {
-              label: '图片',
-              prop: 'images',
-              dataType: 'array',
-              type: 'upload',
-              span: 24,
-              hide:true,
-              viewDisplay:true,
-              listType: 'picture-card',
-              action: "/api/blade-resource/oss/endpoint/put-file",
-              propsHttp: {
-                res: "data",
-                url: "link",
-              }
+          },
+          {
+            label: "视频",
+            prop: "videos",
+            dataType: "array",
+            type: "upload",
+            accept: "video/mp4",
+            hide: true,
+            viewDisplay: true,
+            editDisabled: true,
+            listType: "picture",
+            span: 24,
+            action: "http://web.byisf.com:82/blade-jfpts/depl/put-depl",
+            propsHttp: {
+              res: "data",
+              url: "link",
             },
-             {
-              label: '视频',
-              prop: 'videos',
-              dataType: 'array',
-              type: 'upload',
-              accept:"video/mp4",
-              hide:true,
-              viewDisplay:true,
-              editDisabled:true,
-              listType: 'picture',
-              span: 24,
-              action: "http://web.byisf.com:82/blade-jfpts/depl/put-depl",
-              propsHttp: {
-                res: "data",
-                url: "link",
-              }
-            },
-          ]
-        },
-        data: []
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  watch: {
+    handler(val) {
+      var that = this;
+      if (val != null && val != "") {
+        getBaTree(val).then((res) => {
+          if (res) {
+            that.form.sname = res.data.data.records[0].name;
+          }
+        });
+      }
+    },
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.feedback_add, false),
+        viewBtn: this.vaildData(this.permission.feedback_view, true),
+        delBtn: this.vaildData(this.permission.feedback_delete, true),
+        editBtn: this.vaildData(this.permission.feedback_edit, true),
       };
     },
-    watch:{
-      handler(val) {
-          var that = this;
-          if (val != null && val !=""){
-            getBaTree(val).then(res => {
-              if (res) {
-                that.form.sname = res.data.data.records[0].name;
-              }
-            });
-          }
-        },
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.feedback_add, false),
-          viewBtn: this.vaildData(this.permission.feedback_view, true),
-          delBtn: this.vaildData(this.permission.feedback_delete, true),
-          editBtn: this.vaildData(this.permission.feedback_edit, true)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
+  },
+  methods: {
+    rowSave(row, done, loading) {
+      var data = {
+        status: 1,
+        tpaddress: "",
+        spaddress: "",
+        sname: row.$snumber,
+        snumber: row.snumber,
+        stime: row.stime,
+        result: row.result,
+        place: row.place,
+      };
+      if (row.images.length > 0) {
+        var imageArr = row.images;
+        imageArr.forEach((image) => {
+          data.tpaddress += image + ",";
         });
-        return ids.join(",");
+        data.tpaddress = data.tpaddress.substring(0, data.tpaddress.length - 1);
       }
-    },
-    methods: {
-      rowSave(row, done, loading) {
-        var data = {
-              status:1,
-              tpaddress:"",
-              spaddress:"",
-              sname: row.$snumber,
-              snumber: row.snumber,
-              stime:row.stime,
-              result:row.result,
-              place:row.place
-          }
-        if (row.images.length > 0) {
-					var imageArr = row.images;
-					imageArr.forEach( image =>{
-              data.tpaddress += image + ",";
-          }) 
-					data.tpaddress = data.tpaddress.substring(0,data.tpaddress.length-1);
-				}
-				if (row.videos.length > 0) {
-					//var videoArr = row.videos;
-					//videoArr.forEach( video =>{
-              //data.spaddress += video + ",";
-          //}) 
-					//data.spaddress = data.spaddress.substring(0,data.spaddress.length-1);
-					data.spaddress = row.videos;
-				}
-        adds(data).then(() => {
+      if (row.videos.length > 0) {
+        //var videoArr = row.videos;
+        //videoArr.forEach( video =>{
+        //data.spaddress += video + ",";
+        //})
+        //data.spaddress = data.spaddress.substring(0,data.spaddress.length-1);
+        data.spaddress = row.videos;
+      }
+      adds(data).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           loading();
           window.console.log(error);
+        }
+      );
+    },
+    rowUpdate(row, index, done, loading) {
+      var data = {
+        id: row.id,
+        status: 1,
+        tpaddress: "",
+        spaddress: "",
+        sname: row.$snumber,
+        snumber: row.snumber,
+        stime: row.stime,
+        result: row.result,
+        place: row.place,
+      };
+      if (row.images.length > 0) {
+        var imageArr = row.images;
+        imageArr.forEach((image) => {
+          data.tpaddress += image + ",";
         });
-      },
-      rowUpdate(row, index, done, loading) {
-        var data = {
-              id:row.id,
-              status:1,
-              tpaddress:"",
-              spaddress:"",
-              sname: row.$snumber,
-              snumber: row.snumber,
-              stime:row.stime,
-              result:row.result,
-              place:row.place
-          }
-        if (row.images.length > 0) {
-					var imageArr = row.images;
-					imageArr.forEach( image =>{
-              data.tpaddress += image + ",";
-          }) 
-					data.tpaddress = data.tpaddress.substring(0,data.tpaddress.length-1);
-				}
-				if (row.videos.length > 0) {
-					//var videoArr = row.videos;
-					//videoArr.forEach( video =>{
-              //data.spaddress += video + ",";
-          //}) 
-					//data.spaddress = data.spaddress.substring(0,data.spaddress.length-1);
-					data.spaddress = row.videos;
-				}
-        updates(data).then(() => {
+        data.tpaddress = data.tpaddress.substring(0, data.tpaddress.length - 1);
+      }
+      if (row.videos.length > 0) {
+        //var videoArr = row.videos;
+        //videoArr.forEach( video =>{
+        //data.spaddress += video + ",";
+        //})
+        //data.spaddress = data.spaddress.substring(0,data.spaddress.length-1);
+        data.spaddress = row.videos;
+      }
+      updates(data).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           loading();
           console.log(error);
+        }
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
         });
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
         })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
-          });
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getDetails(this.form.id).then(res => {
-            this.form = res.data.data;
-            this.images = res.data.data.images;
-            this.videos = res.data.data.videos;
-          });
-        }
-        done();
-      },
-      searchReset() {
-        this.query = {};
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      currentChange(currentPage){
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize){
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {status:1}) {
-        const { dateTime } = this.query;
-        let values = {
-          ...params,
-          status:1
-        };
-        if (dateTime) {
-          values = {
-            ...params,
-            begTime: dateTime[0],
-            endTime: dateTime[1],
-            ...this.query,
-          };
-          values.dateTime = null;
-        }
-        this.loading = true;
-        getListReport(page.currentPage, page.pageSize,values).then(res => {
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getDetails(this.form.id).then((res) => {
+          this.form = res.data.data;
+          this.images = res.data.data.images;
+          this.videos = res.data.data.videos;
         });
       }
-    }
-  };
+      done();
+    },
+    searchReset() {
+      this.query = {};
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = { status: 1 }) {
+      const { dateTime } = this.query;
+      let values = {
+        ...params,
+        status: 1,
+      };
+      if (dateTime) {
+        values = {
+          ...params,
+          begTime: dateTime[0],
+          endTime: dateTime[1],
+          ...this.query,
+        };
+        values.dateTime = null;
+      }
+      this.loading = true;
+      getListReport(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+  },
+};
 </script>
 
 <style>
diff --git a/src/views/healthcode/healthcode.vue b/src/views/healthcode/healthcode.vue
index 10ff531..5182282 100644
--- a/src/views/healthcode/healthcode.vue
+++ b/src/views/healthcode/healthcode.vue
@@ -1,479 +1,532 @@
 <template>
   <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               :row-style="rowStyle"
-               :search.sync="search"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
-        <template slot="menuLeft">
-          <el-button
-            v-bind:class="activeClass == 0 ? 'btn-color' : ''"
-            size="small "
-            @click="getHealthcodeData(0)"
-            >本日
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 1 ? 'btn-color' : ''"
-            size="small "
-            @click="getHealthcodeData(1)"
-            >本周
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 2 ? 'btn-color' : ''"
-            size="small "
-            @click="getHealthcodeData(2)"
-            >本月
-          </el-button>
-        </template>
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page="page"
+      :permission="permissionList"
+      :before-open="beforeOpen"
+      v-model="form"
+      ref="crud"
+      :row-style="rowStyle"
+      :search.sync="search"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      @row-del="rowDel"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
+      <template slot="menuLeft">
+        <el-button
+          v-bind:class="activeClass == 0 ? 'btn-color' : ''"
+          size="small "
+          @click="getHealthcodeData(0)"
+          >本日
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 1 ? 'btn-color' : ''"
+          size="small "
+          @click="getHealthcodeData(1)"
+          >本周
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 2 ? 'btn-color' : ''"
+          size="small "
+          @click="getHealthcodeData(2)"
+          >本月
+        </el-button>
+      </template>
 
-        <template slot="menuLeft">
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-download"
-                      @click="handleExport">导出
-          </el-button>
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-pie-chart"
-                      @click="handleExportStatis">导出报表
-          </el-button>
-        </template>
-
+      <template slot="menuLeft">
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-download"
+          @click="handleExport"
+          >导出
+        </el-button>
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-pie-chart"
+          @click="handleExportStatis"
+          >导出报表
+        </el-button>
+      </template>
     </avue-crud>
   </basic-container>
 </template>
 
 <script>
-  import {getList} from "@/api/healthcode/healthcode";
-  import {mapGetters} from "vuex";
+import { getList } from "@/api/healthcode/healthcode";
+import { mapGetters } from "vuex";
 
-  export default {
-    data() {
+export default {
+  data() {
+    return {
+      form: {},
+      query: {},
+      search: {},
+      loading: true,
+      activeClass: 0,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      option: {
+        menu: false,
+        height: "auto",
+        calcHeight: 54,
+        border: false,
+        //stripe:true,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        labelWidth: 120,
+        dialogClickModal: false,
+        headerAlign: "center",
+        align: "center",
+        column: [
+          {
+            label: "坐标",
+            prop: "test",
+            hide: true,
+            span: 24,
+            component: "avueMap",
+            clickChild: (obj) => {
+              this.form.jd = obj.latitude;
+              this.form.wd = obj.longitude;
+            },
+          },
+          {
+            label: "检测时间",
+            prop: "dtime",
+          },
+          {
+            label: "性别",
+            prop: "sex",
+          },
+          {
+            label: "检测时间",
+            prop: "dateTime",
+            type: "datetime",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
+            searchRange: true,
+            searchValue: [this.getStartTime(), this.getEndTime()],
+            searchSpan: 5,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
+                required: true,
+                message: "请输入时间",
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "省份",
+            prop: "province",
+            //search: true,
+            searchSpan: 3,
+            type: "select",
+            props: {
+              label: "name",
+              value: "name",
+            },
+            cascaderItem: ["city", "district"],
+            dicUrl: "/api/blade-system/region/select",
+            span: 6,
+          },
+          {
+            label: "地市",
+            prop: "city",
+            type: "select",
+            searchSpan: 3,
+            //search: true,
+            props: {
+              label: "name",
+              value: "name",
+            },
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 6,
+          },
+          {
+            label: "区县",
+            searchSpan: 3,
+            //search: true,
+            prop: "district",
+            type: "select",
+            props: {
+              label: "name",
+              value: "name",
+            },
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 6,
+          },
+          {
+            label: "健康码颜色",
+            search: true,
+            searchLabelWidth: 120,
+            prop: "type",
+            searchSpan: 4,
+            searchValue: this.getHealthcodeType(),
+            width: 210,
+            type: "select",
+            dicData: [
+              {
+                label: "绿色",
+                value: "1",
+              },
+              {
+                label: "黄色",
+                value: "2",
+              },
+              {
+                label: "红色",
+                value: "3",
+              },
+            ],
+          },
+        ],
+      },
+      data: [],
+      isActive: false,
+      recorder: null,
+    };
+  },
+  mounted() {},
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
       return {
-        form: {},
-        query: {},
-        search:{},
-        loading: true,
-        activeClass: 0,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        selectionList: [],
-        option: {
-          menu:false,
-          height:'auto',
-          calcHeight: 54,
-          border: false,
-          stripe:true,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          labelWidth:120,
-          dialogClickModal: false,
-          headerAlign: 'center',
-          align: 'center',
-          column: [
-            {
-              label: '坐标',
-              prop: 'test',
-              hide: true,
-              span: 24,
-              component: "avueMap",
-              clickChild: (obj) => {
-                this.form.jd = obj.latitude
-                this.form.wd = obj.longitude
-              },
-            },
-            {
-              label: "检测时间",
-              prop: "dtime"
-            },
-            {
-              label: '性别',
-              prop: 'sex'
-            },
-            {
-              label: "检测时间",
-              prop: "dateTime",
-              type: "datetime",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              searchRange: true,
-              searchValue:[this.getStartTime(),this.getEndTime()],
-              searchSpan: 5,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入时间",
-                  trigger: "blur"
-                }
-              ]
-            },
-            {
-              label: '省份',
-              prop: 'province',
-              //search: true,
-              searchSpan: 3,
-              type: 'select',
-              props: {
-                label: 'name',
-                value: 'name'
-              },
-              cascaderItem: ['city', 'district'],
-              dicUrl: '/api/blade-system/region/select',
-              span: 6,
-            },
-            {
-              label: '地市',
-              prop: 'city',
-              type: 'select',
-              searchSpan: 3,
-              //search: true,
-              props: {
-                label: 'name',
-                value: 'name'
-              },
-              dicUrl: '/api/blade-system/region/select?code={{key}}',
-              span: 6,
-            },
-            {
-              label: '区县',
-              searchSpan: 3,
-              //search: true,
-              prop: 'district',
-              type: 'select',
-              props: {
-                label: 'name',
-                value: 'name'
-              },
-              dicUrl: '/api/blade-system/region/select?code={{key}}',
-              span: 6,
-            },
-            {
-              label: "健康码颜色",
-              search: true,
-              searchLabelWidth:120,
-              prop: "type",
-              searchSpan: 4,
-              searchValue: this.getHealthcodeType(),
-              width:210,
-              type: "select",
-              dicData: [
-                {
-                  label: "绿色",
-                  value: "1"
-                },
-                {
-                  label: "黄色",
-                  value: "2"
-                },
-                {
-                  label: "红色",
-                  value: "3"
-                }
-              ],
-            }
-          ]
-        },
-        data: [],
-        isActive: false,
-        recorder: null,
+        addBtn: this.vaildData(null, false),
+        viewBtn: this.vaildData(null, false),
+        delBtn: this.vaildData(null, false),
+        editBtn: this.vaildData(null, false),
       };
     },
-    mounted(){
-
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
+  },
+  methods: {
+    beforeOpen(done, type) {},
+    searchReset() {
+      //清空搜索框中的内容
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.activeClass = 0;
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    rowStyle({ row, column, rowIndex }) {
+      if (row.type == "3") {
         return {
-          addBtn: this.vaildData(null, false),
-          viewBtn: this.vaildData(null, false),
-          delBtn: this.vaildData(null, false),
-          editBtn: this.vaildData(null, false)
+          color: "#fe1515",
         };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
       }
     },
-    methods: {
-      beforeOpen(done, type) {
-      },
-      searchReset() {
-        //清空搜索框中的内容
-        this.query = {};
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.activeClass=0;
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      currentChange(currentPage){
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize){
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      rowStyle({row, column, rowIndex}){
-         if(row.type=="3"){
-           return {
-             color:"#fe1515"
-           }
-         }
-      },
-      getStartTime(){
-           if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-             return this.$route.query.startTime
-           }
-           // 当前时间
-          var date = new Date();
-          //年
-          var Y = date.getFullYear();
-          //月
-          var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-          //日
-          var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-           return Y + "-" + M + "-" + D;
-      },
-      getEndTime(){
-           if (this.$route.query.endTime != undefined && this.$route.query.endTime != null && this.$route.query.endTime != "" ) {
-             return this.$route.query.endTime
-           }
-            // 当前时间
-            var date = new Date();
-            //年
-            var Y = date.getFullYear();
-            //月
-            var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-            //日
-            var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-            return Y + "-" + M + "-" + D;
-      },
-      getHealthcodeType(){
-          if (this.$route.query.type != undefined) {
-              var type = this.$route.query.type+"";
-              //this.$route.query = {};
-              return type;
-          }
-      },
-      getHealthcodeData(e) {
-        var that = this;
-        this.query={};
-        this.$router.push({ query: {} });
-        that.activeClass = e;
-        //status 0:本日  1:本月  2:本年   type: 1:绿色   2:黄色  3:红色
-        var today = new Date();
-        var params ={};
-        if(e==0){
-          //修改搜索框中的值
-          this.search.releaseTimeRange=[this.showToDay(today)+" 00:00:00",this.showToDay(today)+" 23:59:59"]
-        }
-        if(e==1){
-          //修改搜索框中的值
-          this.search.releaseTimeRange=[this.showWeekFirstDay(today)+" 00:00:00",this.showToDay(today)+" 23:59:59"]
-        }
-        if(e==2){
-          //修改搜索框中的值
-          this.search.releaseTimeRange=[this.showMonthFirstDay(today)+" 00:00:00",this.showToDay(today)+" 23:59:59"]
-        }
-        params = {
-          ... params,
-          status: e
-        };
-        if(this.search.type){
-          params = {
-            ... params,
-            type: this.search.type
-          };
-        }
-        this.query=params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      //本日
-      showToDay(Nowdate){
-        var M=Number(Nowdate.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = Nowdate.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return Nowdate.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本周第一天
-      showWeekFirstDay(Nowdate){
-        var WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
-        var M=Number(WeekFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = WeekFirstDay.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return WeekFirstDay.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本月第一天
-      showMonthFirstDay(Nowdate){
-        var MonthFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth(),1);
-        var M=Number(MonthFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        return MonthFirstDay.getFullYear()+"-"+M+"-"+"0"+MonthFirstDay.getDate();
-      },
-      //数据导出
-      handleExport() {
-        this.$confirm("是否导出健康码数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(() => {
-          window.open(`/api/healthcode/healthcode/export-healthcode?begTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&type=${this.$route.query.type}&timeDesc=${this.$route.query.timeDesc}`);
-        });
-      },
-      //数据报表导出
-      handleExportStatis() {
-          let begTime = this.$route.query.startTime==undefined? '':this.$route.query.startTime;
-          let endTime = this.$route.query.endTime==undefined? '':this.$route.query.endTime;
-          let type = this.$route.query.type==undefined? '':this.$route.query.type;
-          let timeDesc = this.$route.query.timeDesc==undefined? '':this.$route.query.timeDesc;
-          //window.open(`http://localhost:8108/ureport/excel?_u=blade-healthcode.statis.xml.ureport.xml&begTime=${begTime}&endTime=${endTime}&type=${type}&timeDesc=${timeDesc}`);
-          window.open(`https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-healthcode.statis.xml.ureport.xml&begTime=${begTime}&endTime=${endTime}&type=${type}&timeDesc=${timeDesc}`);
-      },
-      onLoad(page, params={}) {
-        const { dateTime } = this.query;
-        let values = {
-          ...params,
-        };
-        if (this.$route.query.status!=undefined && this.$route.query != undefined && this.$route.query != null && this.$route.query != "" ) {
-            if (this.$route.query.type != undefined) {
-              this.page.currentPage = 1;
-              params = {
-                status:this.$route.query.status,
-                type:this.$route.query.type
-              }
-            } else {
-              this.page.currentPage = 1;
-              params = {
-                type:this.$route.query.status
-              };
-            }
-            this.activeClass =4;
-        }else if(this.$route.query.type != undefined){
-          params = {
-            type: this.$route.query.type,
-            begTime: this.$route.query.startTime,
-            endTime: this.$route.query.endTime
-          }
-          this.activeClass =4;
-        }
-        // else{
-        //   params = {
-        //       status:this.$route.query.status,
-        //       type:this.$route.query.type
-        //   }
-        // }
-
-        if(this.activeClass == 0 && this.query.dateTime==null){
-          params = {
-              status:this.activeClass,
-          }
-        }
-
-        if (dateTime) {
-          this.activeClass =4;
-          values = {
-            ...params,
-            begTime: dateTime[0],
-            endTime: dateTime[1],
-            ...this.query,
-          };
-          values.dateTime = null;
-        } else {
-          values = {
-            ...params,
-            ...this.query,
-          };
-        }
-
-        if (this.$route.query.timeDesc) {
-          values = {
-            ...params,
-            timeDesc: this.$route.query.timeDesc,
-            ...this.query,
-          };
-        }
-
-        this.loading = true;
-        getList(page.currentPage, page.pageSize,values).then(res => {
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
-        });
+    getStartTime() {
+      if (
+        this.$route.query.startTime != undefined &&
+        this.$route.query.startTime != null &&
+        this.$route.query.startTime != ""
+      ) {
+        return this.$route.query.startTime;
       }
-    }
-  };
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D;
+    },
+    getEndTime() {
+      if (
+        this.$route.query.endTime != undefined &&
+        this.$route.query.endTime != null &&
+        this.$route.query.endTime != ""
+      ) {
+        return this.$route.query.endTime;
+      }
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D;
+    },
+    getHealthcodeType() {
+      if (this.$route.query.type != undefined) {
+        var type = this.$route.query.type + "";
+        //this.$route.query = {};
+        return type;
+      }
+    },
+    getHealthcodeData(e) {
+      var that = this;
+      this.query = {};
+      this.$router.push({ query: {} });
+      that.activeClass = e;
+      //status 0:本日  1:本月  2:本年   type: 1:绿色   2:黄色  3:红色
+      var today = new Date();
+      var params = {};
+      if (e == 0) {
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showToDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 1) {
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showWeekFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 2) {
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showMonthFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      params = {
+        ...params,
+        status: e,
+      };
+      if (this.search.type) {
+        params = {
+          ...params,
+          type: this.search.type,
+        };
+      }
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    //本日
+    showToDay(Nowdate) {
+      var M = Number(Nowdate.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = Nowdate.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return Nowdate.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本周第一天
+    showWeekFirstDay(Nowdate) {
+      var WeekFirstDay = new Date(Nowdate - (Nowdate.getDay() - 1) * 86400000);
+      var M = Number(WeekFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = WeekFirstDay.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return WeekFirstDay.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本月第一天
+    showMonthFirstDay(Nowdate) {
+      var MonthFirstDay = new Date(
+        Nowdate.getFullYear(),
+        Nowdate.getMonth(),
+        1
+      );
+      var M = Number(MonthFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      return (
+        MonthFirstDay.getFullYear() +
+        "-" +
+        M +
+        "-" +
+        "0" +
+        MonthFirstDay.getDate()
+      );
+    },
+    //数据导出
+    handleExport() {
+      this.$confirm("是否导出健康码数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        window.open(
+          `/api/healthcode/healthcode/export-healthcode?begTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&type=${this.$route.query.type}&timeDesc=${this.$route.query.timeDesc}`
+        );
+      });
+    },
+    //数据报表导出
+    handleExportStatis() {
+      let begTime =
+        this.$route.query.startTime == undefined
+          ? ""
+          : this.$route.query.startTime;
+      let endTime =
+        this.$route.query.endTime == undefined ? "" : this.$route.query.endTime;
+      let type =
+        this.$route.query.type == undefined ? "" : this.$route.query.type;
+      let timeDesc =
+        this.$route.query.timeDesc == undefined
+          ? ""
+          : this.$route.query.timeDesc;
+      //window.open(`http://localhost:8108/ureport/excel?_u=blade-healthcode.statis.xml.ureport.xml&begTime=${begTime}&endTime=${endTime}&type=${type}&timeDesc=${timeDesc}`);
+      window.open(
+        `https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-healthcode.statis.xml.ureport.xml&begTime=${begTime}&endTime=${endTime}&type=${type}&timeDesc=${timeDesc}`
+      );
+    },
+    onLoad(page, params = {}) {
+      const { dateTime } = this.query;
+      let values = {
+        ...params,
+      };
+      if (
+        this.$route.query.status != undefined &&
+        this.$route.query != undefined &&
+        this.$route.query != null &&
+        this.$route.query != ""
+      ) {
+        if (this.$route.query.type != undefined) {
+          this.page.currentPage = 1;
+          params = {
+            status: this.$route.query.status,
+            type: this.$route.query.type,
+          };
+        } else {
+          this.page.currentPage = 1;
+          params = {
+            type: this.$route.query.status,
+          };
+        }
+        this.activeClass = 4;
+      } else if (this.$route.query.type != undefined) {
+        params = {
+          type: this.$route.query.type,
+          begTime: this.$route.query.startTime,
+          endTime: this.$route.query.endTime,
+        };
+        this.activeClass = 4;
+      }
+      // else{
+      //   params = {
+      //       status:this.$route.query.status,
+      //       type:this.$route.query.type
+      //   }
+      // }
+
+      if (this.activeClass == 0 && this.query.dateTime == null) {
+        params = {
+          status: this.activeClass,
+        };
+      }
+
+      if (dateTime) {
+        this.activeClass = 4;
+        values = {
+          ...params,
+          begTime: dateTime[0],
+          endTime: dateTime[1],
+          ...this.query,
+        };
+        values.dateTime = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
+
+      if (this.$route.query.timeDesc) {
+        values = {
+          ...params,
+          timeDesc: this.$route.query.timeDesc,
+          ...this.query,
+        };
+      }
+
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+  },
+};
 </script>
 <style scoped>
-  .el-button.btn-color {
-    color: rgb(255, 255, 255);
-    background-color: rgb(64, 158, 255);
-    border-color: rgb(64, 158, 255);
-  }
+.el-button.btn-color {
+  color: rgb(255, 255, 255);
+  background-color: rgb(64, 158, 255);
+  border-color: rgb(64, 158, 255);
+}
 </style>
diff --git a/src/views/parcel/parcel.vue b/src/views/parcel/parcel.vue
index 13288f7..c5a9097 100644
--- a/src/views/parcel/parcel.vue
+++ b/src/views/parcel/parcel.vue
@@ -1,27 +1,28 @@
 <template>
   <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               :row-style="rowStyle"
-               :search.sync="search"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               @row-click="rowClick"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
-
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page="page"
+      :permission="permissionList"
+      :before-open="beforeOpen"
+      v-model="form"
+      ref="crud"
+      :row-style="rowStyle"
+      :search.sync="search"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      @row-del="rowDel"
+      @row-click="rowClick"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
       <!-- <template slot-scope="{ type, size, row }" slot="menu">
 
         <el-button
@@ -35,490 +36,561 @@
       </template> -->
 
       <template slot="menuLeft">
-          <el-button
-            v-bind:class="activeClass == 0 ? 'btn-color' : ''"
-            size="small "
-            @click="getParcelData(0)"
-            >本日
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 1 ? 'btn-color' : ''"
-            size="small "
-            @click="getParcelData(1)"
-            >本周
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 2 ? 'btn-color' : ''"
-            size="small "
-            @click="getParcelData(2)"
-            >本月
-          </el-button>
-        </template>
+        <el-button
+          v-bind:class="activeClass == 0 ? 'btn-color' : ''"
+          size="small "
+          @click="getParcelData(0)"
+          >本日
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 1 ? 'btn-color' : ''"
+          size="small "
+          @click="getParcelData(1)"
+          >本周
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 2 ? 'btn-color' : ''"
+          size="small "
+          @click="getParcelData(2)"
+          >本月
+        </el-button>
+      </template>
 
       <template slot="menuLeft">
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-download"
-                      @click="handleExport">导出
-          </el-button>
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-download"
+          @click="handleExport"
+          >导出
+        </el-button>
 
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-pie-chart"
-                      @click="handleExportStatis">导出报表
-          </el-button>
-        </template>
-
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-pie-chart"
+          @click="handleExportStatis"
+          >导出报表
+        </el-button>
+      </template>
     </avue-crud>
     <template>
       <div>
-          <el-image-viewer
-              class="img"
-              v-if="showViewer"
-              :on-close="closeViewer"
-              :url-list="['data:image/png;base64,'+imgUrl]" />
+        <el-image-viewer
+          class="img"
+          v-if="showViewer"
+          :on-close="closeViewer"
+          :url-list="['data:image/png;base64,' + imgUrl]"
+        />
       </div>
     </template>
-
   </basic-container>
 </template>
 
 <script>
-  import {getList,exportParcelStatis, getParcelPic} from "@/api/parcel/parcel";
-  import {mapGetters} from "vuex";
-  import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
+import { getList, exportParcelStatis, getParcelPic } from "@/api/parcel/parcel";
+import { mapGetters } from "vuex";
+import ElImageViewer from "element-ui/packages/image/src/image-viewer";
 
-  export default {
-    name:'index',
-    components: { ElImageViewer },
-    data() {
-      return {
-        form: {},
-        query: {},
-        search:{},
-        showViewer: false, // 显示查看器
-        activeClass: 0,
-        imgUrl:'',
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        selectionList: [],
-        option: {
-          menu:false,
-          height:'auto',
-          calcHeight: 54,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          border: false,
-          stripe:true,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          labelWidth:120,
-          menuWidth:220,
-          dialogClickModal: false,
-          headerAlign: 'center',
-          align: 'center',
-          tree:true,
-          column: [
-            {
-              label: '坐标',
-              prop: 'test',
-              hide: true,
-              span: 50,
-              component: "avueMap",
-              clickChild: (obj) => {
-                this.form.jd = obj.latitude
-                this.form.wd = obj.longitude
+export default {
+  name: "index",
+  components: { ElImageViewer },
+  data() {
+    return {
+      form: {},
+      query: {},
+      search: {},
+      showViewer: false, // 显示查看器
+      activeClass: 0,
+      imgUrl: "",
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      option: {
+        menu: false,
+        height: "auto",
+        calcHeight: 54,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        border: false,
+        //stripe:true,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        labelWidth: 120,
+        menuWidth: 220,
+        dialogClickModal: false,
+        headerAlign: "center",
+        align: "center",
+        tree: true,
+        column: [
+          {
+            label: "坐标",
+            prop: "test",
+            hide: true,
+            span: 50,
+            component: "avueMap",
+            clickChild: (obj) => {
+              this.form.jd = obj.latitude;
+              this.form.wd = obj.longitude;
+            },
+          },
+          {
+            label: "安检机名称",
+            prop: "checkMachineName",
+          },
+          {
+            label: "包裹ID",
+            prop: "packageId",
+          },
+          {
+            label: "包裹图片KEY",
+            prop: "imgUrl",
+            hide: true,
+          },
+          // {
+          //   label: '包裹图片',
+          //   prop: 'imgUrl',
+          //   type: 'upload',
+          //   width: 300,
+          //   listType: 'data:image/png;base64',
+          //   span: 24,
+          //   propsHttp: {
+          //     res: 'data'
+          //   },
+          //   canvasOption: {
+          //     text: 'avue',
+          //     ratio: 0.1
+          //   }
+          // },
+          {
+            label: "安检时间",
+            prop: "samplingTime",
+          },
+          {
+            label: "安检时间",
+            prop: "dateTime",
+            type: "datetime",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            searchRange: true,
+            searchSpan: 8,
+            searchValue: [this.getStartTime(), this.getEndTime()],
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
+                required: true,
+                message: "请输入时间",
+                trigger: "blur",
               },
-            },
-            {
-              label: "安检机名称",
-              prop: "checkMachineName",
-            },
-            {
-              label: "包裹ID",
-              prop: "packageId",
-            },
-            {
-              label: "包裹图片KEY",
-              prop: "imgUrl",
-              hide:true
-            },
-            // {
-            //   label: '包裹图片',
-            //   prop: 'imgUrl',
-            //   type: 'upload',
-            //   width: 300,
-            //   listType: 'data:image/png;base64',
-            //   span: 24,
-            //   propsHttp: {
-            //     res: 'data'
-            //   },
-            //   canvasOption: {
-            //     text: 'avue',
-            //     ratio: 0.1
-            //   }
-            // },
-            {
-              label: "安检时间",
-              prop: "samplingTime",
-            },
-            {
-              label: "安检时间",
-              prop: "dateTime",
-              type: "datetime",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              searchRange: true,
-              searchSpan: 8,
-              searchValue:[this.getStartTime(),this.getEndTime()],
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入时间",
-                  trigger: "blur"
-                }
-              ]
-            },
-            {
-              label: "是否违禁",
-              prop: "mechineMark",
-              dicData: [
-                {
-                  label: "是",
-                  value: 1
-                },
-                {
-                  label: "否",
-                  value: 0
-                },
-              ]
-            },
-            {
-              label: "是否违禁",
-              search: true,
-              searchValue: this.getIsKindParams(),
-              searchLabelWidth: 120,
-              searchSpan: 4,
-              hide: true,
-              prop: "decisioDiagramResult",
-              type: "select",
-              dicData: [
-                {
-                  label: "是",
-                  value: "contraband"
-                },
-                {
-                  label: "否",
-                  value: "normal"
-                },
-              ]
-            },
-            {
-              label: "违禁包裹物品",
-              prop: "decisioDiagramResultDetails",
-            }
-          ]
-        },
-        data: []
+            ],
+          },
+          {
+            label: "是否违禁",
+            prop: "mechineMark",
+            dicData: [
+              {
+                label: "是",
+                value: 1,
+              },
+              {
+                label: "否",
+                value: 0,
+              },
+            ],
+          },
+          {
+            label: "是否违禁",
+            search: true,
+            searchValue: this.getIsKindParams(),
+            searchLabelWidth: 120,
+            searchSpan: 4,
+            hide: true,
+            prop: "decisioDiagramResult",
+            type: "select",
+            dicData: [
+              {
+                label: "是",
+                value: "contraband",
+              },
+              {
+                label: "否",
+                value: "normal",
+              },
+            ],
+          },
+          {
+            label: "违禁包裹物品",
+            prop: "decisioDiagramResultDetails",
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(null, false),
+        viewBtn: this.vaildData(null, false),
+        delBtn: this.vaildData(null, false),
+        editBtn: this.vaildData(null, false),
       };
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(null, false),
-          viewBtn: this.vaildData(null, false),
-          delBtn: this.vaildData(null, false),
-          editBtn: this.vaildData(null, false)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
+    },
+  },
+  methods: {
+    beforeOpen(done, type) {
+      done();
+    },
+    searchReset() {
+      //清空搜索框中的内容
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.activeClass = 0;
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    rowClick(row) {
+      var that = this;
+      getParcelPic(row.imgUrl).then((res) => {
+        that.imgUrl = res.data.data.imgBase64;
+        this.showViewer = true;
+      });
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    getStartTime() {
+      if (
+        this.$route.query.startTime != undefined &&
+        this.$route.query.startTime != null &&
+        this.$route.query.startTime != ""
+      ) {
+        return this.$route.query.startTime;
+      }
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D + " 00:00:00";
+    },
+    getEndTime() {
+      if (
+        this.$route.query.endTime != undefined &&
+        this.$route.query.endTime != null &&
+        this.$route.query.endTime != ""
+      ) {
+        return this.$route.query.endTime;
+      }
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D + " 23:59:59";
+    },
+    getIsKindParams() {
+      if (
+        this.$route.query.decisioDiagramResult &&
+        this.$route.query != "" &&
+        this.$route.query != null &&
+        this.$route.query != undefined
+      ) {
+        //回显
+        return this.$route.query.decisioDiagramResult;
       }
     },
-    methods: {
-      beforeOpen(done, type) {
-        done();
-      },
-      searchReset() {
-        //清空搜索框中的内容
-        this.query = {};
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.activeClass=0;
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      rowClick(row){
-        var that=this;
-        getParcelPic(row.imgUrl).then(res => {
-            that.imgUrl = res.data.data.imgBase64;
-            this.showViewer = true
-          });
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      currentChange(currentPage){
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize){
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      getStartTime(){
-           if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-             return this.$route.query.startTime
-           }
-           // 当前时间
+    //给行加颜色
+    rowStyle({ row, column, rowIndex }) {
+      if (row.mechineMark == 1) {
+        return {
+          color: "#fe1515",
+        };
+      }
+    },
+    getParcelData(e) {
+      var that = this;
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      that.activeClass = e;
+      var today = new Date();
+      var params = {};
+      if (e == 0) {
+        params = {
+          startTime: this.showToDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
+        };
+        //修改搜索框中的值
+        this.search.dateTime = [
+          this.showToDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 1) {
+        params = {
+          startTime: this.showWeekFirstDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
+        };
+        //修改搜索框中的值
+        this.search.dateTime = [
+          this.showWeekFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 2) {
+        params = {
+          startTime: this.showMonthFirstDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
+        };
+        //修改搜索框中的值
+        this.search.dateTime = [
+          this.showMonthFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+
+      if (this.search.decisioDiagramResult) {
+        params = {
+          ...params,
+          decisioDiagramResult: this.search.decisioDiagramResult,
+        };
+      }
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    //本日
+    showToDay(Nowdate) {
+      var M = Number(Nowdate.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = Nowdate.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return Nowdate.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本周第一天
+    showWeekFirstDay(Nowdate) {
+      var WeekFirstDay = new Date(Nowdate - (Nowdate.getDay() - 1) * 86400000);
+      var M = Number(WeekFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = WeekFirstDay.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return WeekFirstDay.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本月第一天
+    showMonthFirstDay(Nowdate) {
+      var MonthFirstDay = new Date(
+        Nowdate.getFullYear(),
+        Nowdate.getMonth(),
+        1
+      );
+      var M = Number(MonthFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      return (
+        MonthFirstDay.getFullYear() +
+        "-" +
+        M +
+        "-" +
+        "0" +
+        MonthFirstDay.getDate()
+      );
+    },
+    //数据导出
+    handleExport() {
+      this.$confirm("是否导出包裹数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        window.open(
+          `/api/parcel/parcel/export-parcel?startTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&decisioDiagramResult=${this.$route.query.decisioDiagramResult}`
+        );
+      });
+    },
+    //数据报表导出
+    handleExportStatis() {
+      let startTime =
+        this.$route.query.startTime == undefined
+          ? ""
+          : this.$route.query.startTime;
+      let endTime =
+        this.$route.query.endTime == undefined ? "" : this.$route.query.endTime;
+      let decisioDiagramResult =
+        this.$route.query.decisioDiagramResult == undefined
+          ? ""
+          : this.$route.query.decisioDiagramResult;
+      let timeDesc =
+        this.$route.query.timeDesc == undefined
+          ? ""
+          : this.$route.query.timeDesc;
+      //window.open(`http://localhost:8108/ureport/excel?_u=blade-parcel.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
+      window.open(
+        `https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-parcel.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`
+      );
+    },
+    onLoad(page, params = {}) {
+      const { dateTime } = this.query;
+      let values = {
+        ...params,
+      };
+
+      if (
+        this.$route.query.decisioDiagramResult &&
+        this.$route.query != "" &&
+        this.$route.query != null &&
+        this.$route.query != undefined
+      ) {
+        if (
+          this.$route.query.startTime != undefined &&
+          this.$route.query.startTime != null &&
+          this.$route.query.startTime != ""
+        ) {
+          this.page.currentPage = 1;
+          params = {
+            startTime: this.$route.query.startTime,
+            endTime: this.$route.query.endTime,
+            decisioDiagramResult: this.$route.query.decisioDiagramResult,
+          };
+        } else {
+          this.page.currentPage = 1;
+          params = {
+            decisioDiagramResult: this.$route.query.decisioDiagramResult,
+          };
+        }
+        this.activeClass = 4;
+      } else {
+        if (
+          this.$route.query.startTime != undefined &&
+          this.$route.query.startTime != null &&
+          this.$route.query.startTime != ""
+        ) {
+          this.page.currentPage = 1;
+          params = {
+            startTime: this.$route.query.startTime,
+            endTime: this.$route.query.endTime,
+          };
+          this.activeClass = 4;
+        }
+
+        if (this.activeClass == 0) {
+          this.page.currentPage = 1;
+          // 当前时间
           var date = new Date();
           //年
           var Y = date.getFullYear();
           //月
-          var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
+          var M =
+            date.getMonth() + 1 < 10
+              ? "0" + (date.getMonth() + 1)
+              : date.getMonth() + 1;
           //日
           var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-           return Y + "-" + M + "-" + D+ " 00:00:00";
-      },
-      getEndTime(){
-           if (this.$route.query.endTime != undefined && this.$route.query.endTime != null && this.$route.query.endTime != "" ) {
-             return this.$route.query.endTime
-           }
-            // 当前时间
-            var date = new Date();
-            //年
-            var Y = date.getFullYear();
-            //月
-            var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-            //日
-            var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-            return Y + "-" + M + "-" + D+ " 23:59:59";
-      },
-      getIsKindParams(){
-        if(this.$route.query.decisioDiagramResult && this.$route.query!='' && this.$route.query!=null && this.$route.query!=undefined){
-          //回显
-          return this.$route.query.decisioDiagramResult
-        }
-      },
-      //给行加颜色
-      rowStyle({row, column, rowIndex}){
-         if(row.mechineMark==1){
-           return {
-             color:"#fe1515"
-           }
-         }
-      },
-      getParcelData(e) {
-        var that = this;
-        this.query={};
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        that.activeClass = e;
-        var today = new Date();
-        var params ={};
-        if(e==0){
           params = {
-            startTime:this.showToDay(today)+ " 00:00:00",
-            endTime:this.showToDay(today)+ " 23:59:59"
+            startTime: Y + "-" + M + "-" + D + " 00:00:00",
+            endTime: Y + "-" + M + "-" + D + " 23:59:59",
           };
-          //修改搜索框中的值
-          this.search.dateTime=[this.showToDay(today)+ " 00:00:00",this.showToDay(today)+ " 23:59:59"]
         }
-        if(e==1){
-          params = {
-            startTime:this.showWeekFirstDay(today)+ " 00:00:00",
-            endTime:this.showToDay(today)+ " 23:59:59"
-          };
-          //修改搜索框中的值
-          this.search.dateTime=[this.showWeekFirstDay(today)+ " 00:00:00",this.showToDay(today)+ " 23:59:59"]
-        }
-        if(e==2){
-          params = {
-            startTime:this.showMonthFirstDay(today)+ " 00:00:00",
-            endTime:this.showToDay(today)+ " 23:59:59"
-          };
-          //修改搜索框中的值
-          this.search.dateTime=[this.showMonthFirstDay(today)+ " 00:00:00",this.showToDay(today)+ " 23:59:59"]
-        }
-
-        if(this.search.decisioDiagramResult){
-          params= {
-            ... params,
-            decisioDiagramResult:this.search.decisioDiagramResult
-          }
-        }
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      //本日
-      showToDay(Nowdate){
-        var M=Number(Nowdate.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = Nowdate.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return Nowdate.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本周第一天
-      showWeekFirstDay(Nowdate){
-        var WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
-        var M=Number(WeekFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = WeekFirstDay.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return WeekFirstDay.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本月第一天
-      showMonthFirstDay(Nowdate){
-        var MonthFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth(),1);
-        var M=Number(MonthFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        return MonthFirstDay.getFullYear()+"-"+M+"-"+"0"+MonthFirstDay.getDate();
-      },
-      //数据导出
-      handleExport() {
-        this.$confirm("是否导出包裹数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(() => {
-          window.open(`/api/parcel/parcel/export-parcel?startTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&decisioDiagramResult=${this.$route.query.decisioDiagramResult}`);
-        });
-      },
-      //数据报表导出
-      handleExportStatis() {
-          let startTime = this.$route.query.startTime==undefined? '':this.$route.query.startTime;
-          let endTime = this.$route.query.endTime==undefined? '':this.$route.query.endTime;
-          let decisioDiagramResult = this.$route.query.decisioDiagramResult==undefined? '':this.$route.query.decisioDiagramResult;
-          let timeDesc = this.$route.query.timeDesc==undefined? '':this.$route.query.timeDesc;
-          //window.open(`http://localhost:8108/ureport/excel?_u=blade-parcel.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
-          window.open(`https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-parcel.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
-      },
-      onLoad(page, params={}) {
-        const { dateTime } = this.query;
-        let values = {
-          ...params,
-        };
-
-        if (this.$route.query.decisioDiagramResult && this.$route.query!='' && this.$route.query!=null && this.$route.query!=undefined ) {
-            if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-              this.page.currentPage = 1;
-              params = {
-                startTime:this.$route.query.startTime,
-                endTime:this.$route.query.endTime,
-                decisioDiagramResult:this.$route.query.decisioDiagramResult
-              }
-            } else {
-              this.page.currentPage = 1;
-              params = {
-                decisioDiagramResult:this.$route.query.decisioDiagramResult
-              };
-            }
-            this.activeClass=4;
-        }else{
-            if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-              this.page.currentPage = 1;
-              params = {
-                startTime:this.$route.query.startTime,
-                endTime:this.$route.query.endTime
-              }
-              this.activeClass=4;
-            }
-
-            if(this.activeClass==0){
-              this.page.currentPage = 1;
-              // 当前时间
-              var date = new Date();
-              //年
-              var Y = date.getFullYear();
-              //月
-              var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-              //日
-              var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-              params = {
-                startTime:Y + "-" + M + "-" + D + " 00:00:00",
-                endTime:Y +"-" +M +"-" + D +  " 23:59:59"
-              }
-            }
-        }
-
-        if (dateTime) {
-          values = {
-            ...params,
-            startTime: dateTime[0],
-            endTime: dateTime[1],
-            ...this.query,
-          };
-          values.dateTime = null;
-        } else {
-          values = {
-            ...params,
-            ...this.query,
-          };
-
-        }
-        this.loading = true;
-        getList(page.currentPage, page.pageSize,values).then(res => {
-          const data = res.data.data;
-          this.page.total = data.totalSize;
-          this.data = data.data;
-          this.loading = false;
-          this.selectionClear();
-        });
-      },
-      // 关闭查看器
-      closeViewer() {
-        this.showViewer = false
       }
-    }
-  };
+
+      if (dateTime) {
+        values = {
+          ...params,
+          startTime: dateTime[0],
+          endTime: dateTime[1],
+          ...this.query,
+        };
+        values.dateTime = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.totalSize;
+        this.data = data.data;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+    // 关闭查看器
+    closeViewer() {
+      this.showViewer = false;
+    },
+  },
+};
 </script>
 <style lang="scss">
-    .img {
-      .el-icon-circle-close {
-        color: white;
-      }
-    }
+.img {
+  .el-icon-circle-close {
+    color: white;
+  }
+}
 </style>
diff --git a/src/views/parcel/parcelKind.vue b/src/views/parcel/parcelKind.vue
index c521c50..62c15ac 100644
--- a/src/views/parcel/parcelKind.vue
+++ b/src/views/parcel/parcelKind.vue
@@ -1,26 +1,28 @@
 <template>
-    <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               :row-style="rowStyle"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               @row-click="rowClick"
-               :search.sync="search"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
+  <basic-container>
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page="page"
+      :permission="permissionList"
+      :before-open="beforeOpen"
+      v-model="form"
+      ref="crud"
+      :row-style="rowStyle"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      @row-del="rowDel"
+      @row-click="rowClick"
+      :search.sync="search"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
       <!-- <template slot-scope="{ type, size, row }" slot="menu">
         <el-button
           v-if="row.imgUrl != null || row.imgUrl != ''"
@@ -31,462 +33,521 @@
           >查看包裹图片
         </el-button>
       </template> -->
-       <template slot="menuLeft">
-          <el-button
-            v-bind:class="activeClass == 0 ? 'btn-color' : ''"
-            size="small "
-            @click="getParcelKindData(0)"
-            >本日
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 1 ? 'btn-color' : ''"
-            size="small "
-            @click="getParcelKindData(1)"
-            >本周
-          </el-button>
-          <el-button
-            v-bind:class="activeClass == 2 ? 'btn-color' : ''"
-            size="small "
-            @click="getParcelKindData(2)"
-            >本月
-          </el-button>
-        </template>
+      <template slot="menuLeft">
+        <el-button
+          v-bind:class="activeClass == 0 ? 'btn-color' : ''"
+          size="small "
+          @click="getParcelKindData(0)"
+          >本日
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 1 ? 'btn-color' : ''"
+          size="small "
+          @click="getParcelKindData(1)"
+          >本周
+        </el-button>
+        <el-button
+          v-bind:class="activeClass == 2 ? 'btn-color' : ''"
+          size="small "
+          @click="getParcelKindData(2)"
+          >本月
+        </el-button>
+      </template>
 
-       <template slot="menuLeft">
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-download"
-                      @click="handleExport">导出
-          </el-button>
-          <el-button type="warning"
-                      size="small"
-                      plain
-                      icon="el-icon-pie-chart"
-                      @click="handleExportStatis">导出报表
-          </el-button>
-        </template>
+      <template slot="menuLeft">
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-download"
+          @click="handleExport"
+          >导出
+        </el-button>
+        <el-button
+          type="warning"
+          size="small"
+          plain
+          icon="el-icon-pie-chart"
+          @click="handleExportStatis"
+          >导出报表
+        </el-button>
+      </template>
     </avue-crud>
     <template>
       <div>
         <el-image-viewer
-                     class="img"
-                     v-if="showViewer"
-                     :on-close="closeViewer"
-                     :url-list="['data:image/png;base64,'+imgUrl]" />
+          class="img"
+          v-if="showViewer"
+          :on-close="closeViewer"
+          :url-list="['data:image/png;base64,' + imgUrl]"
+        />
       </div>
     </template>
-    </basic-container>
-
+  </basic-container>
 </template>
 
 
 <script>
-  import {getKindList, getParcelPic} from "@/api/parcel/parcel";
-  import {mapGetters} from "vuex";
-  import Vue from 'vue';
-  import ElementUI from 'element-ui'
-  import 'element-ui/lib/theme-chalk/index.css'
-  import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
-  Vue.use(ElementUI)
+import { getKindList, getParcelPic } from "@/api/parcel/parcel";
+import { mapGetters } from "vuex";
+import Vue from "vue";
+import ElementUI from "element-ui";
+import "element-ui/lib/theme-chalk/index.css";
+import ElImageViewer from "element-ui/packages/image/src/image-viewer";
+Vue.use(ElementUI);
 
-
-  export default {
-    name:'index',
-    components: { ElImageViewer },
-    data() {
-      return {
-        form: {},
-        query: {},
-        search:{},
-        showViewer: false, // 显示查看器
-        activeClass:0,
-        imgUrl:'',
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        selectionList: [],
-        option: {
-          menu:false,
-          height:'auto',
-          calcHeight: 54,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 4,
-          menuWidth:150,
-          border: false,
-          stripe:true,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          labelWidth:150,
-          dialogClickModal: false,
-          headerAlign: 'center',
-          align: 'center',
-          tree:true,
-          column: [
-            {
-              label: '坐标',
-              prop: 'test',
-              hide: true,
-              span: 100,
-              component: "avueMap",
-              clickChild: (obj) => {
-                this.form.jd = obj.latitude
-                this.form.wd = obj.longitude
+export default {
+  name: "index",
+  components: { ElImageViewer },
+  data() {
+    return {
+      form: {},
+      query: {},
+      search: {},
+      showViewer: false, // 显示查看器
+      activeClass: 0,
+      imgUrl: "",
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      option: {
+        menu: false,
+        height: "auto",
+        calcHeight: 54,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 4,
+        menuWidth: 150,
+        border: false,
+        //stripe:true,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        labelWidth: 150,
+        dialogClickModal: false,
+        headerAlign: "center",
+        align: "center",
+        tree: true,
+        column: [
+          {
+            label: "坐标",
+            prop: "test",
+            hide: true,
+            span: 100,
+            component: "avueMap",
+            clickChild: (obj) => {
+              this.form.jd = obj.latitude;
+              this.form.wd = obj.longitude;
+            },
+          },
+          {
+            label: "包裹ID",
+            prop: "packageId",
+          },
+          {
+            label: "包裹图片KEY",
+            prop: "imgUrl",
+            hide: true,
+          },
+          {
+            label: "安检时间",
+            prop: "createTime",
+          },
+          {
+            label: "安检时间",
+            prop: "dateTime",
+            type: "datetime",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            searchRange: true,
+            searchValue: [this.getStartTime(), this.getEndTime()],
+            searchSpan: 8,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
+                required: true,
+                message: "请输入时间",
+                trigger: "blur",
               },
-            },
-            {
-              label: "包裹ID",
-              prop: "packageId",
-            },
-            {
-              label: "包裹图片KEY",
-              prop: "imgUrl",
-              hide:true
-            },
-            {
-              label: "安检时间",
-              prop: "createTime",
-            },
-            {
-              label: "安检时间",
-              prop: "dateTime",
-              type: "datetime",
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              searchRange: true,
-              searchValue: [this.getStartTime(),this.getEndTime()],
-              searchSpan: 8,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入时间",
-                  trigger: "blur"
-                }
-              ]
-            },
-            // {
-            //   label: "违禁类型",
-            //   search: true,
-            //   searchLabelWidth: 120,
-            //   searchSpan: 4,
-            //   hide: true,
-            //   prop: "decisioDiagramResult",
-            //   type: "select",
-            //   dicData: [
-            //     {
-            //       label: "是",
-            //       value: "contraband"
-            //     },
-            //     {
-            //       label: "否",
-            //       value: "normal"
-            //     },
-            //   ]
-            // },
-            {
-              label: '违禁品名称',
-              prop: 'objName'
-            },
-            {
-              label: '违禁品编号',
-              prop: 'objCode'
-            },
-            {
-              label: '等级',
-              prop: 'levName',
-              span:120
-            },
-            {
-              label: '坐标',
-              prop: 'coords',
-              span:500
-            }
-          ]
-        },
-        data: [],
-        flag: false
+            ],
+          },
+          // {
+          //   label: "违禁类型",
+          //   search: true,
+          //   searchLabelWidth: 120,
+          //   searchSpan: 4,
+          //   hide: true,
+          //   prop: "decisioDiagramResult",
+          //   type: "select",
+          //   dicData: [
+          //     {
+          //       label: "是",
+          //       value: "contraband"
+          //     },
+          //     {
+          //       label: "否",
+          //       value: "normal"
+          //     },
+          //   ]
+          // },
+          {
+            label: "违禁品名称",
+            prop: "objName",
+          },
+          {
+            label: "违禁品编号",
+            prop: "objCode",
+          },
+          {
+            label: "等级",
+            prop: "levName",
+            span: 120,
+          },
+          {
+            label: "坐标",
+            prop: "coords",
+            span: 500,
+          },
+        ],
+      },
+      data: [],
+      flag: false,
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(null, false),
+        viewBtn: this.vaildData(null, false),
+        delBtn: this.vaildData(null, false),
+        editBtn: this.vaildData(null, false),
       };
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(null, false),
-          viewBtn: this.vaildData(null, false),
-          delBtn: this.vaildData(null, false),
-          editBtn: this.vaildData(null, false)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
-      }
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    methods: {
-      beforeOpen(done, type) {
-
-        done();
-      },
-      searchReset() {
-        //清空搜索框中的内容
-        this.query = {};
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.activeClass=0;
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      rowClick(row){
-        var that=this;
-        getParcelPic(row.imgUrl).then(res => {
-            that.imgUrl = res.data.data.imgBase64;
-            this.showViewer = true
-          });
-      },
-      currentChange(currentPage){
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize){
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      getStartTime(){
-           if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-             return this.$route.query.startTime
-           }
-           // 当前时间
-          var date = new Date();
-          //年
-          var Y = date.getFullYear();
-          //月
-          var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-          //日
-          var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-           return Y + "-" + M + "-" + D+ " 00:00:00";
-      },
-      getEndTime(){
-           if (this.$route.query.endTime != undefined && this.$route.query.endTime != null && this.$route.query.endTime != "" ) {
-             return this.$route.query.endTime
-           }
-            // 当前时间
-            var date = new Date();
-            //年
-            var Y = date.getFullYear();
-            //月
-            var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-            //日
-            var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-            return Y + "-" + M + "-" + D+ " 23:59:59";
-      },
-      getParcelKindData(e) {
-        var that = this;
-        this.query={};
-        //清空this.$route.query
-        this.$router.push({ query: {} });
-        that.activeClass = e;
-        var today = new Date();
-        var params ={};
-        if(e==0){
-          params = {
-            startTime:this.showToDay(today)+ " 00:00:00",
-            endTime:this.showToDay(today)+ " 23:59:59"
-          };
-          //修改搜索框中的值
-          this.search.dateTime=[this.showToDay(today)+ " 00:00:00",this.showToDay(today)+ " 23:59:59"]
-        }
-        if(e==1){
-          params = {
-            startTime:this.showWeekFirstDay(today)+ " 00:00:00",
-            endTime:this.showToDay(today)+ " 23:59:59"
-          };
-          //修改搜索框中的值
-          this.search.dateTime=[this.showWeekFirstDay(today)+ " 00:00:00",this.showToDay(today)+ " 23:59:59"]
-        }
-        if(e==2){
-          params = {
-            startTime:this.showMonthFirstDay(today)+ " 00:00:00",
-            endTime:this.showToDay(today)+ " 23:59:59"
-          };
-          //修改搜索框中的值
-          this.search.dateTime=[this.showMonthFirstDay(today)+ " 00:00:00",this.showToDay(today)+ " 23:59:59"]
-        }
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      //本日
-      showToDay(Nowdate){
-        var M=Number(Nowdate.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = Nowdate.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return Nowdate.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本周第一天
-      showWeekFirstDay(Nowdate){
-        var WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
-        var M=Number(WeekFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        var day = WeekFirstDay.getDate();
-        if(day<10){
-          day = "0"+day;
-        }
-        return WeekFirstDay.getFullYear()+"-"+M+"-"+day;
-      },
-
-      //本月第一天
-      showMonthFirstDay(Nowdate){
-        var MonthFirstDay=new Date(Nowdate.getFullYear(),Nowdate.getMonth(),1);
-        var M=Number(MonthFirstDay.getMonth())+1;
-        if(M<10){
-          M="0"+M;
-        }
-        return MonthFirstDay.getFullYear()+"-"+M+"-"+"0"+MonthFirstDay.getDate();
-      },
-      //给行加颜色
-      rowStyle({row, column, rowIndex}){
-        return {
-          color:"#fe1515"
-        }
-      },
-      //数据导出
-      handleExport() {
-        this.$confirm("是否导出违禁品数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(() => {
-          window.open(`/api/parcel/parcel/export-parcelKind?startTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&decisioDiagramResult=${this.$route.query.decisioDiagramResult}&timeDesc=${this.$route.query.timeDesc}`);
-        });
-      },
-      //数据报表导出
-      handleExportStatis() {
-          let startTime = this.$route.query.startTime==undefined? '':this.$route.query.startTime;
-          let endTime = this.$route.query.endTime==undefined? '':this.$route.query.endTime;
-          let decisioDiagramResult = this.$route.query.decisioDiagramResult==undefined? '':this.$route.query.decisioDiagramResult;
-          let timeDesc = this.$route.query.timeDesc;
-          //window.open(`http://localhost:8108/ureport/excel?_u=blade-parcelKind.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
-          //window.open(`http://localhost:8108/ureport/preview?_u=blade-parcelKind.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
-          window.open(`https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-parcelKind.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
-      },
-      onLoad(page, params={}) {
-        const { dateTime } = this.query;
-        let values = {
-          ...params,
-        };
-
-        if (this.$route.query.decisioDiagramResult && this.$route.query != undefined && this.$route.query != null && this.$route.query != "" ) {
-            if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
-              this.page.currentPage = 1;
-              params = {
-                startTime:this.$route.query.startTime,
-                endTime:this.$route.query.endTime,
-                decisioDiagramResult:this.$route.query.decisioDiagramResult
-              }
-            } else {
-              this.page.currentPage = 1;
-              params = {
-                decisioDiagramResult:this.$route.query.decisioDiagramResult
-              };
-            }
-            this.activeClass=4;
-        }
-
-        if(this.activeClass==0){
-          this.page.currentPage = 1;
-          // 当前时间
-          var date = new Date();
-          //年
-          var Y = date.getFullYear();
-          //月
-          var M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
-          //日
-          var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
-          params = {
-            startTime:Y + "-" + M + "-" + D + " 00:00:00",
-            endTime:Y +"-" +M +"-" + D +  " 23:59:59"
-          }
-        }
-
-        if (dateTime) {
-          values = {
-            ...params,
-            startTime: dateTime[0],
-            endTime: dateTime[1],
-            ...this.query,
-          };
-          values.dateTime = null;
-        } else {
-          values = {
-            ...params,
-            ...this.query,
-          };
-        }
-
-        if (this.$route.query.timeDesc) {
-          values = {
-            ...params,
-            timeDesc: this.$route.query.timeDesc,
-            ...this.query,
-          };
-        }
-
-        this.loading = true;
-        getKindList(page.currentPage, page.pageSize,values).then(res => {
-          const data = res.data.data;
-          this.page.total = data.totalSize;
-          this.data = data.data;
-          this.loading = false;
-          this.selectionClear();
-        });
-      },
-      // 关闭查看器
-      closeViewer() {
-        this.showViewer = false
+  },
+  methods: {
+    beforeOpen(done, type) {
+      done();
+    },
+    searchReset() {
+      //清空搜索框中的内容
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.activeClass = 0;
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    rowClick(row) {
+      var that = this;
+      getParcelPic(row.imgUrl).then((res) => {
+        that.imgUrl = res.data.data.imgBase64;
+        this.showViewer = true;
+      });
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    getStartTime() {
+      if (
+        this.$route.query.startTime != undefined &&
+        this.$route.query.startTime != null &&
+        this.$route.query.startTime != ""
+      ) {
+        return this.$route.query.startTime;
       }
-    }
-  };
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D + " 00:00:00";
+    },
+    getEndTime() {
+      if (
+        this.$route.query.endTime != undefined &&
+        this.$route.query.endTime != null &&
+        this.$route.query.endTime != ""
+      ) {
+        return this.$route.query.endTime;
+      }
+      // 当前时间
+      var date = new Date();
+      //年
+      var Y = date.getFullYear();
+      //月
+      var M =
+        date.getMonth() + 1 < 10
+          ? "0" + (date.getMonth() + 1)
+          : date.getMonth() + 1;
+      //日
+      var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return Y + "-" + M + "-" + D + " 23:59:59";
+    },
+    getParcelKindData(e) {
+      var that = this;
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      that.activeClass = e;
+      var today = new Date();
+      var params = {};
+      if (e == 0) {
+        params = {
+          startTime: this.showToDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
+        };
+        //修改搜索框中的值
+        this.search.dateTime = [
+          this.showToDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 1) {
+        params = {
+          startTime: this.showWeekFirstDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
+        };
+        //修改搜索框中的值
+        this.search.dateTime = [
+          this.showWeekFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 2) {
+        params = {
+          startTime: this.showMonthFirstDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
+        };
+        //修改搜索框中的值
+        this.search.dateTime = [
+          this.showMonthFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    //本日
+    showToDay(Nowdate) {
+      var M = Number(Nowdate.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = Nowdate.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return Nowdate.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本周第一天
+    showWeekFirstDay(Nowdate) {
+      var WeekFirstDay = new Date(Nowdate - (Nowdate.getDay() - 1) * 86400000);
+      var M = Number(WeekFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = WeekFirstDay.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return WeekFirstDay.getFullYear() + "-" + M + "-" + day;
+    },
+
+    //本月第一天
+    showMonthFirstDay(Nowdate) {
+      var MonthFirstDay = new Date(
+        Nowdate.getFullYear(),
+        Nowdate.getMonth(),
+        1
+      );
+      var M = Number(MonthFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      return (
+        MonthFirstDay.getFullYear() +
+        "-" +
+        M +
+        "-" +
+        "0" +
+        MonthFirstDay.getDate()
+      );
+    },
+    //给行加颜色
+    rowStyle({ row, column, rowIndex }) {
+      return {
+        color: "#fe1515",
+      };
+    },
+    //数据导出
+    handleExport() {
+      this.$confirm("是否导出违禁品数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        window.open(
+          `/api/parcel/parcel/export-parcelKind?startTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&decisioDiagramResult=${this.$route.query.decisioDiagramResult}&timeDesc=${this.$route.query.timeDesc}`
+        );
+      });
+    },
+    //数据报表导出
+    handleExportStatis() {
+      let startTime =
+        this.$route.query.startTime == undefined
+          ? ""
+          : this.$route.query.startTime;
+      let endTime =
+        this.$route.query.endTime == undefined ? "" : this.$route.query.endTime;
+      let decisioDiagramResult =
+        this.$route.query.decisioDiagramResult == undefined
+          ? ""
+          : this.$route.query.decisioDiagramResult;
+      let timeDesc = this.$route.query.timeDesc;
+      //window.open(`http://localhost:8108/ureport/excel?_u=blade-parcelKind.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
+      //window.open(`http://localhost:8108/ureport/preview?_u=blade-parcelKind.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`);
+      window.open(
+        `https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-parcelKind.statis.ureport.xml&startTime=${startTime}&endTime=${endTime}&decisioDiagramResult=${decisioDiagramResult}&timeDesc=${timeDesc}`
+      );
+    },
+    onLoad(page, params = {}) {
+      const { dateTime } = this.query;
+      let values = {
+        ...params,
+      };
+
+      if (
+        this.$route.query.decisioDiagramResult &&
+        this.$route.query != undefined &&
+        this.$route.query != null &&
+        this.$route.query != ""
+      ) {
+        if (
+          this.$route.query.startTime != undefined &&
+          this.$route.query.startTime != null &&
+          this.$route.query.startTime != ""
+        ) {
+          this.page.currentPage = 1;
+          params = {
+            startTime: this.$route.query.startTime,
+            endTime: this.$route.query.endTime,
+            decisioDiagramResult: this.$route.query.decisioDiagramResult,
+          };
+        } else {
+          this.page.currentPage = 1;
+          params = {
+            decisioDiagramResult: this.$route.query.decisioDiagramResult,
+          };
+        }
+        this.activeClass = 4;
+      }
+
+      if (this.activeClass == 0) {
+        this.page.currentPage = 1;
+        // 当前时间
+        var date = new Date();
+        //年
+        var Y = date.getFullYear();
+        //月
+        var M =
+          date.getMonth() + 1 < 10
+            ? "0" + (date.getMonth() + 1)
+            : date.getMonth() + 1;
+        //日
+        var D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+        params = {
+          startTime: Y + "-" + M + "-" + D + " 00:00:00",
+          endTime: Y + "-" + M + "-" + D + " 23:59:59",
+        };
+      }
+
+      if (dateTime) {
+        values = {
+          ...params,
+          startTime: dateTime[0],
+          endTime: dateTime[1],
+          ...this.query,
+        };
+        values.dateTime = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
+
+      if (this.$route.query.timeDesc) {
+        values = {
+          ...params,
+          timeDesc: this.$route.query.timeDesc,
+          ...this.query,
+        };
+      }
+
+      this.loading = true;
+      getKindList(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.totalSize;
+        this.data = data.data;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+    // 关闭查看器
+    closeViewer() {
+      this.showViewer = false;
+    },
+  },
+};
 </script>
 <style lang="scss">
-    .img {
-      .el-icon-circle-close {
-        color: white;
-      }
-    }
+.img {
+  .el-icon-circle-close {
+    color: white;
+  }
+}
 </style>
diff --git a/src/views/realTimePolice/real.vue b/src/views/realTimePolice/real.vue
index d7dc876..3c36f8b 100644
--- a/src/views/realTimePolice/real.vue
+++ b/src/views/realTimePolice/real.vue
@@ -22,8 +22,8 @@
       @size-change="sizeChange"
       @refresh-change="refreshChange"
       @on-load="onLoad"
-      @row-click="rowClick">
-
+      @row-click="rowClick"
+    >
       <template slot="menuLeft">
         <el-button
           type="danger"
@@ -33,7 +33,7 @@
           plain
           v-if="permission.real_delete"
           @click="handleDelete"
-        >删 除
+          >删 除
         </el-button>
       </template>
 
@@ -42,25 +42,25 @@
           v-bind:class="activeClass == 0 ? 'btn-color' : ''"
           size="mini"
           @click="getBRdata(0)"
-        >本日
+          >本日
         </el-button>
         <el-button
           v-bind:class="activeClass == 1 ? 'btn-color' : ''"
           size="mini"
           @click="getBRdata(1)"
-        >本周
+          >本周
         </el-button>
         <el-button
           v-bind:class="activeClass == 2 ? 'btn-color' : ''"
           size="mini"
           @click="getBRdata(2)"
-        >本月
+          >本月
         </el-button>
         <el-button
           v-bind:class="activeClass == 3 ? 'btn-color' : ''"
           size="mini"
           @click="getQBdata(3)"
-        >全部
+          >全部
         </el-button>
       </template>
 
@@ -71,7 +71,7 @@
           plain
           icon="el-icon-download"
           @click="handleExport"
-        >导出
+          >导出
         </el-button>
         <el-button
           type="warning"
@@ -79,23 +79,29 @@
           plain
           icon="el-icon-pie-chart"
           @click="handleExportStatis"
-        >导出报表
+          >导出报表
         </el-button>
       </template>
 
       <template slot-scope="{ row }" slot="jtype">
         <el-tag
-        >{{
-          row.jtype == "0" || row.jtype == "" ? "未派发" : row.jtype == "1" && (row.securityId == null || row.securityId
-          == "")
-          ? "未接收" : row.jtype == "1" && (row.securityId != null || row.securityId != "") ? "已接收" : "已处置"
+          >{{
+            row.jtype == "0" || row.jtype == ""
+              ? "未派发"
+              : row.jtype == "1" &&
+                (row.securityId == null || row.securityId == "")
+              ? "未接收"
+              : row.jtype == "1" &&
+                (row.securityId != null || row.securityId != "")
+              ? "已接收"
+              : "已处置"
           }}
         </el-tag>
       </template>
       <template slot-scope="{ row }" slot="cid">
         <el-tag
-        >{{
-          row.cid == "1" ? "事件发生" : row.cid == "3" ? "是" : "事件恢复"
+          >{{
+            row.cid == "1" ? "事件发生" : row.cid == "3" ? "是" : "事件恢复"
           }}
         </el-tag>
       </template>
@@ -107,7 +113,7 @@
           :size="size"
           :type="type"
           @click.stop="PoliceTracking(row)"
-        >派发
+          >派发
         </el-button>
       </template>
     </avue-crud>
@@ -126,725 +132,696 @@
 </template>
 
 <script>
-  import {getList, remove, update, add, getclient} from "@/api/real/real";
-  import {mapGetters} from "vuex";
-  import AvueMap from "avue-plugin-map";
+import { getList, remove, update, add, getclient } from "@/api/real/real";
+import { mapGetters } from "vuex";
+import AvueMap from "avue-plugin-map";
 
-  export default {
-    data() {
-      return {
-        showMap: false,
-        hls: "",
-        videoSource: "",
-        activeClass: 3,
-        form: {},
-        query: {},
-        search: {},
-        dateTime: [],
-        loading: true,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0,
-        },
-        selectionList: [],
-        option: {
-          height: "auto",
-          indexLabel: "序号",
-          calcHeight: 54,
-          labelWidth: "100",
-          size: "mini",
-          border: false,
-          stripe: true,
-          menuWidth: 240,
-          dialogWidth: 950,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 3,
-          align: "center",
-          index: true,
-          viewBtn: true,
-          selection: true,
-          dialogClickModal: false,
-          column: [
-            {
-              label: "任务类型",
-              prop: "alarmType",
-              search: false,
-              searchSpan: 3,
-              width: 85,
-              className: "waringTypeClass",
-              searchPlaceholder: "请选择",
-              type: "select",
-              props: {
-                label: "dictValue",
-                value: "dictValue",
-              },
-              //cascaderItem: ["city", "district"],
-              dicUrl:
-                "/api/blade-system/dict-biz/child-list?parentId=1356523651644043266",
-              control:(val,form)=>{
-                if (val){
-                  debugger
-                }
-                return {
-                  text2:{
-                    display:true
-                  },
-                  text3:{
-                    label:'内容3'
-                  }
-                }
-              },
+export default {
+  data() {
+    return {
+      showMap: false,
+      hls: "",
+      videoSource: "",
+      activeClass: 3,
+      form: {},
+      query: {},
+      search: {},
+      dateTime: [],
+      loading: true,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      selectionList: [],
+      option: {
+        height: "auto",
+        indexLabel: "序号",
+        calcHeight: 54,
+        labelWidth: "100",
+        size: "mini",
+        border: false,
+        //stripe:true,
+        menuWidth: 240,
+        dialogWidth: 950,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 3,
+        align: "center",
+        index: true,
+        viewBtn: true,
+        selection: true,
+        dialogClickModal: false,
+        column: [
+          {
+            label: "任务类型",
+            prop: "alarmType",
+            search: false,
+            searchSpan: 3,
+            width: 85,
+            className: "waringTypeClass",
+            searchPlaceholder: "请选择",
+            type: "select",
+            props: {
+              label: "dictValue",
+              value: "dictValue",
             },
-            {
-              label: "下发时间",
-              type: "datetime",
-              width: 160,
-              format: "yyyy-MM-dd HH:mm:ss",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              prop: "alarmTime",
-              rules: [{
+            //cascaderItem: ["city", "district"],
+            dicUrl:
+              "/api/blade-system/dict-biz/child-list?parentId=1356523651644043266",
+            control: (val, form) => {
+              if (val) {
+                debugger;
+              }
+              return {
+                text2: {
+                  display: true,
+                },
+                text3: {
+                  label: "内容3",
+                },
+              };
+            },
+          },
+          {
+            label: "下发时间",
+            type: "datetime",
+            width: 160,
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+            prop: "alarmTime",
+            rules: [
+              {
                 required: true,
                 message: "请选择报警时间",
-                trigger: "blur"
-              }],
-            },
-            {
-              label: "报警时间",
-              prop: "releaseTimeRange",
-              type: "datetime",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd",
-              searchValue: [this.getStartTime(), this.getEndTime()],
-              searchRange: true,
-              searchSpan: 5,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-              viewDisplay: false,
-              search: true,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入时间",
-                  trigger: "blur",
-                },
-              ],
-            }, {
-              label: "备注",
-              prop: "bz",
-              span: 24,
-            },
-            {
-              label: "地址",
-              prop: "place",
-              span: 10,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "报警时间",
+            prop: "releaseTimeRange",
+            type: "datetime",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
+            searchValue: [this.getStartTime(), this.getEndTime()],
+            searchRange: true,
+            searchSpan: 5,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+            search: true,
+            rules: [
+              {
+                required: true,
+                message: "请输入时间",
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "备注",
+            prop: "bz",
+            span: 24,
+          },
+          {
+            label: "地址",
+            prop: "place",
+            span: 10,
+            rules: [
+              {
                 required: true,
                 message: "请选择地址",
-                trigger: "blur"
-              }],
-            },
-            {
-              label: null,
-              prop: "map",
-              labelWidth: "0",
-              searchSpan: 0,
-              maxlength: 0,
-              hide: true,
-              span: 2,
-              // display:false,
-              component: "AvueMap",
-            },
-            {
-              label: "经度",
-              hide: true,
-              prop: "jd",
-              searchSpan: 2,
-              width: "100",
-              labelWidth: "120",
-              formatter: (row, value, label, column) => {
-                return value = value.substring(0, 11);
+                trigger: "blur",
               },
-              span: 7,
+            ],
+          },
+          {
+            label: null,
+            prop: "map",
+            labelWidth: "0",
+            searchSpan: 0,
+            maxlength: 0,
+            hide: true,
+            span: 2,
+            // display:false,
+            component: "AvueMap",
+          },
+          {
+            label: "经度",
+            hide: true,
+            prop: "jd",
+            searchSpan: 2,
+            width: "100",
+            labelWidth: "120",
+            formatter: (row, value, label, column) => {
+              return (value = value.substring(0, 11));
             },
-            {
-              label: "纬度",
-              labelWidth: "45",
-              hide: true,
-              prop: "wd",
-              formatter: (row, value, label, column) => {
-                return value = value.substring(0, 10);
+            span: 7,
+          },
+          {
+            label: "纬度",
+            labelWidth: "45",
+            hide: true,
+            prop: "wd",
+            formatter: (row, value, label, column) => {
+              return (value = value.substring(0, 10));
+            },
+            span: 5,
+          },
+          {
+            label: "省份",
+            prop: "province",
+            search: true,
+            searchSpan: 2,
+            searchLabelWidth: 45,
+            placeholder: "省份",
+            type: "select",
+            props: {
+              label: "name",
+              value: "code",
+            },
+            cascaderItem: ["city", "district"],
+            dicUrl: "/api/blade-system/region/select",
+            span: 6,
+            className: "cityreal1",
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "地市",
+            prop: "city",
+            type: "select",
+            searchPlaceholder: "地市",
+            placeholder: "地市",
+            searchLabelWidth: 1,
+            searchSpan: 2,
+            search: true,
+            props: {
+              label: "name",
+              value: "code",
+            },
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 3,
+            labelWidth: "0",
+            className: "cityreal2",
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "区县",
+            searchSpan: 2,
+            searchLabelWidth: 1,
+            searchPlaceholder: "区县",
+            placeholder: "区县",
+            search: true,
+            prop: "district",
+            type: "select",
+            props: {
+              label: "name",
+              value: "code",
+            },
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 3,
+            labelWidth: "0",
+            className: "cityreal3",
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "状态",
+            searchSpan: 3,
+            width: 96,
+            search: true,
+            slot: true,
+            addDisplay: false,
+            searchPlaceholder: "请选择",
+            prop: "jtype",
+            type: "select",
+            dicData: [
+              {
+                label: "未派发",
+                value: "0",
               },
-              span: 5,
-            },
-            {
-              label: "省份",
-              prop: "province",
-              search: true,
-              searchSpan: 2,
-              searchLabelWidth: 45,
-              placeholder: "省份",
-              type: "select",
-              props: {
-                label: "name",
-                value: "code",
+              {
+                label: "处理中",
+                value: "1",
               },
-              cascaderItem: ["city", "district"],
-              dicUrl: "/api/blade-system/region/select",
-              span: 6,
-              className: "cityreal1",
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
-            },
-            {
-              label: "地市",
-              prop: "city",
-              type: "select",
-              searchPlaceholder: "地市",
-              placeholder: "地市",
-              searchLabelWidth: 1,
-              searchSpan: 2,
-              search: true,
-              props: {
-                label: "name",
-                value: "code",
+              {
+                label: "已处置",
+                value: "2",
               },
-              dicUrl: "/api/blade-system/region/select?code={{key}}",
-              span: 3,
-              labelWidth: "0",
-              className: "cityreal2",
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
+            ],
+          },
+          // {
+          //   label: "派发人",
+          //   prop: "alarmPeople",
+          //   width: 90,
+          //   addDisplay: false,
+          //   editDisplay: false,
+          // },
+          {
+            label: "处警员",
+            prop: "securityArr",
+            type: "tree",
+            multiple: true,
+            dicUrl: "/api/catalogs/catalogs/getBigTree",
+            props: {
+              label: "title",
             },
-            {
-              label: "区县",
-              searchSpan: 2,
-              searchLabelWidth: 1,
-              searchPlaceholder: "区县",
-              placeholder: "区县",
-              search: true,
-              prop: "district",
-              type: "select",
-              props: {
-                label: "name",
-                value: "code",
-              },
-              dicUrl: "/api/blade-system/region/select?code={{key}}",
-              span: 3,
-              labelWidth: "0",
-              className: "cityreal3",
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
+            width: 72,
+            hide: true,
+            leafOnly: "",
+            addDisplay: true,
+            editDisplay: true,
+            viewDisplay: true,
+          },
+          {
+            label: "巡逻路线",
+            prop: "xllx",
+            hide: true,
+            display: true,
+            type: "tree",
+            filter: false,
+            dicUrl: "/api/routeIn/routein/tree",
+            props: {
+              label: "title",
             },
-            {
-              label: "状态",
-              searchSpan: 3,
-              width: 96,
-              search: true,
-              slot: true,
-              addDisplay: false,
-              searchPlaceholder: "请选择",
-              prop: "jtype",
-              type: "select",
-              dicData: [
-                {
-                  label: "未派发",
-                  value: "0",
-                },
-                {
-                  label: "处理中",
-                  value: "1",
-                },
-                {
-                  label: "已处置",
-                  value: "2",
-                },
-              ],
-            },
-            // {
-            //   label: "派发人",
-            //   prop: "alarmPeople",
-            //   width: 90,
-            //   addDisplay: false,
-            //   editDisplay: false,
-            // },
-            {
-              label: "处警员",
-              prop: "securityArr",
-              type: "tree",
-              multiple: true,
-              dicUrl: "/api/catalogs/catalogs/getBigTree",
-              props: {
-                label: "title"
-              },
-              width: 72,
-              hide: true,
-              leafOnly: "",
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
-            },
-            {
-              label: "巡逻路线",
-              prop: "xllx",
-              hide: true,
-              display:true,
-              type: "tree",
-              filter:false,
-              dicUrl: "/api/routeIn/routein/tree",
-              props: {
-                label: "title"
-              },
-            }
-          ],
-        },
-        data: [],
-        recorder: null,
-        peopleList: [],
-      };
-    },
-    watch: {
-      "form.map": {
-        // form是表单或者表格绑定的数据集,v-model='form'
-        handler(val) {
-          var that = this;
-          if (val) {
-            //重新加载一次页面详情数据,解决新的省市区无法写入问题
-            //判断是新增还是修改
-            if (that.isEdit) {
-              getclient(this.form.id).then(res => {
-                // that.province = res.data.data.province;
-                // that.city = res.data.data.city;
-                // that.district = res.data.data.district;
-              });
-            }
-
-            //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
-            if (val.formattedAddress == "") {
-              return;
-            }
-
-            //经纬度替换
-            this.form.wd = val.latitude;
-            this.form.jd = val.longitude;
-
-            var address = val.formattedAddress.toString();
-            if (address.search("县") != -1) {
-              this.form.place = address.substring(address.indexOf("县") + 1, address.length);
-            }
-            if (address.search("区") != -1) {
-              this.form.place = address.substring(address.indexOf("区") + 1, address.length);
-            }
-            //写入新的省市区
-            that.form.province = val.addressComponent.province;
-            if (val.addressComponent.city == "") {
-              that.form.city = val.addressComponent.province;
-            } else {
-              that.form.city = val.addressComponent.city;
-            }
-            that.form.district = val.addressComponent.district;
-          } else {
-            that.form.map = {
-              formattedAddress: "",
-              latitude: 28.68235075592195,
-              longitude: 115.9021417169273,
-            };
-          }
-        },
-        immediate: true,
+          },
+        ],
       },
-      'form.alarmType':{
-        handler(val){
-          var xllx =this.findObject(this.option.column,'xllx')
-          if(val==="巡逻任务"){
-            xllx.display=true
-            xllx.rules=[{
+      data: [],
+      recorder: null,
+      peopleList: [],
+    };
+  },
+  watch: {
+    "form.map": {
+      // form是表单或者表格绑定的数据集,v-model='form'
+      handler(val) {
+        var that = this;
+        if (val) {
+          //重新加载一次页面详情数据,解决新的省市区无法写入问题
+          //判断是新增还是修改
+          if (that.isEdit) {
+            getclient(this.form.id).then((res) => {
+              // that.province = res.data.data.province;
+              // that.city = res.data.data.city;
+              // that.district = res.data.data.district;
+            });
+          }
+
+          //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
+          if (val.formattedAddress == "") {
+            return;
+          }
+
+          //经纬度替换
+          this.form.wd = val.latitude;
+          this.form.jd = val.longitude;
+
+          var address = val.formattedAddress.toString();
+          if (address.search("县") != -1) {
+            this.form.place = address.substring(
+              address.indexOf("县") + 1,
+              address.length
+            );
+          }
+          if (address.search("区") != -1) {
+            this.form.place = address.substring(
+              address.indexOf("区") + 1,
+              address.length
+            );
+          }
+          //写入新的省市区
+          that.form.province = val.addressComponent.province;
+          if (val.addressComponent.city == "") {
+            that.form.city = val.addressComponent.province;
+          } else {
+            that.form.city = val.addressComponent.city;
+          }
+          that.form.district = val.addressComponent.district;
+        } else {
+          that.form.map = {
+            formattedAddress: "",
+            latitude: 28.68235075592195,
+            longitude: 115.9021417169273,
+          };
+        }
+      },
+      immediate: true,
+    },
+    "form.alarmType": {
+      handler(val) {
+        var xllx = this.findObject(this.option.column, "xllx");
+        if (val === "巡逻任务") {
+          xllx.display = true;
+          xllx.rules = [
+            {
               required: true,
               message: "请选择巡逻路线",
-              trigger: "blur"
-            }]
-          }else{
-            xllx.display=false
-            xllx.rules=[]
-          }
-        },
-        immediate: true
+              trigger: "blur",
+            },
+          ];
+        } else {
+          xllx.display = false;
+          xllx.rules = [];
+        }
       },
+      immediate: true,
     },
-    computed: {
-      ...mapGetters(["permission", "flowRoutes"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.real_add, false),
-          viewBtn: this.vaildData(null, false),
-          delBtn: this.vaildData(this.permission.real_delete, false),
-          editBtn: this.vaildData(this.permission.real_edit, false),
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach((ele) => {
-          ids.push(ele.id);
+  },
+  computed: {
+    ...mapGetters(["permission", "flowRoutes"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.real_add, false),
+        viewBtn: this.vaildData(null, false),
+        delBtn: this.vaildData(this.permission.real_delete, false),
+        editBtn: this.vaildData(this.permission.real_edit, false),
+      };
+    },
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
+    },
+  },
+  created() {
+    this.dateTime = this.getDate();
+  },
+  methods: {
+    rowSave(row, done, loading) {
+      if (typeof row.securityArr != "string") {
+        var security = "";
+        row.securityArr.forEach((item) => {
+          security = security + item + ",";
         });
-        return ids.join(",");
-      },
+        row.securityArr = security.substring(0, security.length - 1);
+      }
+      var userId = JSON.parse(
+        window.localStorage.getItem("群防群控后台管理系统-userInfo")
+      ).content.real_name;
+
+      if (row.securityArr == "" || row.securityArr == null) {
+        row.jtype = "0";
+        row.alarmPeople = "";
+      } else {
+        row.jtype = "1";
+        //已派发保安
+        row.alarmPeople = userId;
+      }
+
+      add(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          loading();
+        }
+      );
     },
-    created() {
-      this.dateTime = this.getDate();
+    rowUpdate(row, index, done, loading) {
+      var userId = JSON.parse(
+        window.localStorage.getItem("群防群控后台管理系统-userInfo")
+      ).content.real_name;
+
+      if (typeof row.securityArr != "string") {
+        var security = "";
+        row.securityArr.forEach((item) => {
+          security = security + item + ",";
+        });
+        row.securityArr = security.substring(0, security.length - 1);
+      }
+
+      if (row.securityArr == "" || row.securityArr == null) {
+        row.jtype = "0";
+        row.alarmPeople = "";
+      } else {
+        row.jtype = "1";
+        //已派发保安
+        row.alarmPeople = userId;
+      }
+
+      row.coordinate = "";
+      update(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          loading();
+        }
+      );
     },
-    methods: {
-      rowSave(row, done, loading) {
-
-        if (typeof row.securityArr != "string") {
-          var security = "";
-          row.securityArr.forEach((item) => {
-            security = security + item + ",";
-          });
-          row.securityArr = security.substring(0, security.length - 1);
-        }
-        var userId = JSON.parse(
-          window.localStorage.getItem("群防群控后台管理系统-userInfo")
-        ).content.real_name;
-
-        if (row.securityArr == "" || row.securityArr == null) {
-          row.jtype = "0";
-          row.alarmPeople = "";
-        } else {
-          row.jtype = "1";
-          //已派发保安
-          row.alarmPeople = userId;
-        }
-
-        add(row).then(
-          () => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            done();
-          },
-          (error) => {
-            loading();
-          }
-        );
-      },
-      rowUpdate(row, index, done, loading) {
-
-        var userId = JSON.parse(
-          window.localStorage.getItem("群防群控后台管理系统-userInfo")
-        ).content.real_name;
-
-        if (typeof row.securityArr != "string") {
-          var security = "";
-          row.securityArr.forEach((item) => {
-            security = security + item + ",";
-          });
-          row.securityArr = security.substring(0, security.length - 1);
-        }
-
-        if (row.securityArr == "" || row.securityArr == null) {
-          row.jtype = "0";
-          row.alarmPeople = "";
-        } else {
-          row.jtype = "1";
-          //已派发保安
-          row.alarmPeople = userId;
-        }
-
-        row.coordinate = "";
-        update(row).then(
-          () => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            done();
-          },
-          (error) => {
-            loading();
-          }
-        );
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning",
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
         })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      searchReset() {
-        this.activeClass = 3;
-        //清空搜索框中的内容
-        this.query = {};
-        //清空this.$route.query
-        this.$router.push({query: {}});
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        //清空this.$route.query
-        this.$router.push({query: {}});
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning",
+        });
+    },
+    searchReset() {
+      this.activeClass = 3;
+      //清空搜索框中的内容
+      this.query = {};
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      //清空this.$route.query
+      this.$router.push({ query: {} });
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
         })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            this.$refs.crud.toggleSelection();
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getclient(this.form.id).then((res) => {
-            this.form = res.data.data;
-          });
-        }
-        done();
-      },
-      currentChange(currentPage) {
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize) {
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        const {releaseTimeRange} = this.query;
-        let values = {
-          ...params,
-        };
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getclient(this.form.id).then((res) => {
+          this.form = res.data.data;
+        });
+      }
+      done();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      const { releaseTimeRange } = this.query;
+      let values = {
+        ...params,
+      };
 
+      if (
+        this.$route.query.waringType &&
+        this.$route.query != undefined &&
+        this.$route.query != null &&
+        this.$route.query != ""
+      ) {
         if (
-          this.$route.query.waringType &&
-          this.$route.query != undefined &&
-          this.$route.query != null &&
-          this.$route.query != ""
+          this.$route.query.status != undefined &&
+          this.$route.query.status != null &&
+          this.$route.query.status == ""
         ) {
-          if (
-            this.$route.query.status != undefined &&
-            this.$route.query.status != null &&
-            this.$route.query.status == ""
-          ) {
-            this.activeClass = this.$route.query.status;
-            this.page.currentPage = 1;
-            if (this.$route.query.status == 0) {
-              params = {
-                waringType: this.$route.query.waringType,
-                beginTime: this.dateTime.day.beginTime,
-                endTime: this.dateTime.day.endTime,
-              };
-            } else if (this.$route.query.status == 1) {
-              params = {
-                waringType: this.$route.query.waringType,
-                beginTime: this.dateTime.week.beginTime,
-                endTime: this.dateTime.week.endTime,
-              };
-            } else if (this.$route.query.status == 2) {
-              params = {
-                waringType: this.$route.query.waringType,
-                beginTime: this.dateTime.month.beginTime,
-                endTime: this.dateTime.month.endTime,
-              };
-            }
-          } else {
-            this.activeClass = 0;
-            this.page.currentPage = 1;
+          this.activeClass = this.$route.query.status;
+          this.page.currentPage = 1;
+          if (this.$route.query.status == 0) {
             params = {
               waringType: this.$route.query.waringType,
               beginTime: this.dateTime.day.beginTime,
               endTime: this.dateTime.day.endTime,
             };
-          }
-
-          if (
-            this.$route.query.startTime != undefined &&
-            this.$route.query.startTime != null &&
-            this.$route.query.startTime != ""
-          ) {
+          } else if (this.$route.query.status == 1) {
             params = {
               waringType: this.$route.query.waringType,
-              beginTime: this.$route.query.startTime,
-              endTime: this.$route.query.endTime,
+              beginTime: this.dateTime.week.beginTime,
+              endTime: this.dateTime.week.endTime,
+            };
+          } else if (this.$route.query.status == 2) {
+            params = {
+              waringType: this.$route.query.waringType,
+              beginTime: this.dateTime.month.beginTime,
+              endTime: this.dateTime.month.endTime,
             };
           }
-        }
-
-        if (releaseTimeRange) {
-          values = {
-            ...params,
-            beginTime: releaseTimeRange[0],
-            endTime: releaseTimeRange[1],
-            ...this.query,
-          };
-          values.releaseTimeRange = null;
         } else {
-          values = {
-            ...params,
-            ...this.query,
+          this.activeClass = 0;
+          this.page.currentPage = 1;
+          params = {
+            waringType: this.$route.query.waringType,
+            beginTime: this.dateTime.day.beginTime,
+            endTime: this.dateTime.day.endTime,
           };
         }
 
-        if (this.$route.query.timeDesc) {
-          values = {
-            ...params,
-            timeDesc: this.$route.query.timeDesc,
-            ...this.query,
+        if (
+          this.$route.query.startTime != undefined &&
+          this.$route.query.startTime != null &&
+          this.$route.query.startTime != ""
+        ) {
+          params = {
+            waringType: this.$route.query.waringType,
+            beginTime: this.$route.query.startTime,
+            endTime: this.$route.query.endTime,
           };
         }
+      }
 
-        this.loading = true;
-        getList(page.currentPage, page.pageSize, values).then((res) => {
-          const data = res.data.data;
-          this.page.total = data.total;
+      if (releaseTimeRange) {
+        values = {
+          ...params,
+          beginTime: releaseTimeRange[0],
+          endTime: releaseTimeRange[1],
+          ...this.query,
+        };
+        values.releaseTimeRange = null;
+      } else {
+        values = {
+          ...params,
+          ...this.query,
+        };
+      }
 
-          data.records.sort((a, b) => {
-            return a.jtype - b.jtype;
-          });
+      if (this.$route.query.timeDesc) {
+        values = {
+          ...params,
+          timeDesc: this.$route.query.timeDesc,
+          ...this.query,
+        };
+      }
 
-          this.data = data.records;
+      this.loading = true;
+      getList(page.currentPage, page.pageSize, values).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
 
-          this.loading = false;
-          this.selectionClear();
+        data.records.sort((a, b) => {
+          return a.jtype - b.jtype;
         });
-      },
-      getDate() {
-        // 当前时间
-        var timestamp = Date.parse(new Date());
-        var serverDate = new Date(timestamp);
 
-        // 本周周一的时间
-        var mondayTime =
-          timestamp - (serverDate.getDay() - 1) * 24 * 60 * 60 * 1000;
-        var mondayData = new Date(mondayTime);
-        //年
-        var mondayY = mondayData.getFullYear();
-        //月
-        var mondayM =
-          mondayData.getMonth() + 1 < 10
-            ? "0" + (mondayData.getMonth() + 1)
-            : mondayData.getMonth() + 1;
-        //日
-        var mondayD =
-          mondayData.getDate() < 10
-            ? "0" + mondayData.getDate()
-            : mondayData.getDate();
-        // 当前时间
-        var currentData = new Date(timestamp);
-        //年
-        var currentY = currentData.getFullYear();
-        //月
-        var currentM =
-          currentData.getMonth() + 1 < 10
-            ? "0" + (currentData.getMonth() + 1)
-            : currentData.getMonth() + 1;
-        //日
-        var currentD =
-          currentData.getDate() < 10
-            ? "0" + currentData.getDate()
-            : currentData.getDate();
-        //时
-        var currenH =
-          currentData.getHours() < 10
-            ? "0" + currentData.getHours()
-            : currentData.getHours();
-        //分
-        var currenM =
-          currentData.getMinutes() < 10
-            ? "0" + currentData.getMinutes()
-            : currentData.getMinutes();
-        //秒
-        var currenS =
-          currentData.getSeconds() < 10
-            ? "0" + currentData.getSeconds()
-            : currentData.getSeconds();
+        this.data = data.records;
 
-        return {
-          day: {
-            beginTime: currentY + "-" + currentM + "-" + currentD + " 00:00:00",
-            endTime:
-              currentY +
-              "-" +
-              currentM +
-              "-" +
-              currentD +
-              " " +
-              currenH +
-              ":" +
-              currenM +
-              ":00",
-          },
-          week: {
-            beginTime: mondayY + "-" + mondayM + "-" + mondayD + " 00:00:00",
-            endTime:
-              currentY +
-              "-" +
-              currentM +
-              "-" +
-              currentD +
-              " " +
-              currenH +
-              ":" +
-              currenM +
-              ":00",
-          },
-          month: {
-            beginTime: mondayY + "-" + mondayM + "-01 00:00:00",
-            endTime:
-              currentY +
-              "-" +
-              currentM +
-              "-" +
-              currentD +
-              " " +
-              currenH +
-              ":" +
-              currenM +
-              ":00",
-          },
-          current:
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+    getDate() {
+      // 当前时间
+      var timestamp = Date.parse(new Date());
+      var serverDate = new Date(timestamp);
+
+      // 本周周一的时间
+      var mondayTime =
+        timestamp - (serverDate.getDay() - 1) * 24 * 60 * 60 * 1000;
+      var mondayData = new Date(mondayTime);
+      //年
+      var mondayY = mondayData.getFullYear();
+      //月
+      var mondayM =
+        mondayData.getMonth() + 1 < 10
+          ? "0" + (mondayData.getMonth() + 1)
+          : mondayData.getMonth() + 1;
+      //日
+      var mondayD =
+        mondayData.getDate() < 10
+          ? "0" + mondayData.getDate()
+          : mondayData.getDate();
+      // 当前时间
+      var currentData = new Date(timestamp);
+      //年
+      var currentY = currentData.getFullYear();
+      //月
+      var currentM =
+        currentData.getMonth() + 1 < 10
+          ? "0" + (currentData.getMonth() + 1)
+          : currentData.getMonth() + 1;
+      //日
+      var currentD =
+        currentData.getDate() < 10
+          ? "0" + currentData.getDate()
+          : currentData.getDate();
+      //时
+      var currenH =
+        currentData.getHours() < 10
+          ? "0" + currentData.getHours()
+          : currentData.getHours();
+      //分
+      var currenM =
+        currentData.getMinutes() < 10
+          ? "0" + currentData.getMinutes()
+          : currentData.getMinutes();
+      //秒
+      var currenS =
+        currentData.getSeconds() < 10
+          ? "0" + currentData.getSeconds()
+          : currentData.getSeconds();
+
+      return {
+        day: {
+          beginTime: currentY + "-" + currentM + "-" + currentD + " 00:00:00",
+          endTime:
             currentY +
             "-" +
             currentM +
@@ -854,398 +831,463 @@
             currenH +
             ":" +
             currenM +
+            ":00",
+        },
+        week: {
+          beginTime: mondayY + "-" + mondayM + "-" + mondayD + " 00:00:00",
+          endTime:
+            currentY +
+            "-" +
+            currentM +
+            "-" +
+            currentD +
+            " " +
+            currenH +
             ":" +
-            currenS,
+            currenM +
+            ":00",
+        },
+        month: {
+          beginTime: mondayY + "-" + mondayM + "-01 00:00:00",
+          endTime:
+            currentY +
+            "-" +
+            currentM +
+            "-" +
+            currentD +
+            " " +
+            currenH +
+            ":" +
+            currenM +
+            ":00",
+        },
+        current:
+          currentY +
+          "-" +
+          currentM +
+          "-" +
+          currentD +
+          " " +
+          currenH +
+          ":" +
+          currenM +
+          ":" +
+          currenS,
+      };
+    },
+    getBRdata(e) {
+      this.activeClass = e;
+      this.query = {};
+      this.$router.push({ query: {} });
+      var today = new Date();
+      var params = {};
+
+      if (e == 0) {
+        params = {
+          beginTime: this.showToDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
         };
-      },
-      getBRdata(e) {
-        this.activeClass = e;
-        this.query = {};
-        this.$router.push({query: {}});
-        var today = new Date();
-        var params = {};
-
-        if (e == 0) {
-          params = {
-            beginTime: this.showToDay(today) + " 00:00:00",
-            endTime: this.showToDay(today) + " 23:59:59",
-          };
-          //修改搜索框中的值
-          this.search.releaseTimeRange = [this.showToDay(today) + " 00:00:00", this.showToDay(today) + " 23:59:59"]
-        }
-        if (e == 1) {
-          params = {
-            beginTime: this.showWeekFirstDay(today) + " 00:00:00",
-            endTime: this.showToDay(today) + " 23:59:59",
-          };
-          //修改搜索框中的值
-          this.search.releaseTimeRange = [this.showWeekFirstDay(today) + " 00:00:00", this.showToDay(today) + " 23:59:59"]
-        }
-        if (e == 2) {
-          params = {
-            beginTime: this.showMonthFirstDay(today) + " 00:00:00",
-            endTime: this.showToDay(today) + " 23:59:59",
-          };
-          //修改搜索框中的值
-          this.search.releaseTimeRange = [this.showMonthFirstDay(today) + " 00:00:00", this.showToDay(today) + " 23:59:59"]
-        }
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      //本日
-      showToDay(Nowdate) {
-        var M = Number(Nowdate.getMonth()) + 1;
-        if (M < 10) {
-          M = "0" + M;
-        }
-        var day = Nowdate.getDate();
-        if (day < 10) {
-          day = "0" + day;
-        }
-        return Nowdate.getFullYear() + "-" + M + "-" + day;
-      },
-
-      //本周第一天
-      showWeekFirstDay(Nowdate) {
-        var WeekFirstDay = new Date(Nowdate - (Nowdate.getDay() - 1) * 86400000);
-        var M = Number(WeekFirstDay.getMonth()) + 1;
-        if (M < 10) {
-          M = "0" + M;
-        }
-        var day = WeekFirstDay.getDate();
-        if (day < 10) {
-          day = "0" + day;
-        }
-        return WeekFirstDay.getFullYear() + "-" + M + "-" + day;
-      },
-
-      //本月第一天
-      showMonthFirstDay(Nowdate) {
-        var MonthFirstDay = new Date(Nowdate.getFullYear(), Nowdate.getMonth(), 1);
-        var M = Number(MonthFirstDay.getMonth()) + 1;
-        if (M < 10) {
-          M = "0" + M;
-        }
-        return MonthFirstDay.getFullYear() + "-" + M + "-" + "0" + MonthFirstDay.getDate();
-      },
-      getBZdata(e) {
-        this.activeClass = e;
-        var params = {
-          beginTime: this.dateTime.week.beginTime,
-          endTime: this.dateTime.week.endTime,
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showToDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 1) {
+        params = {
+          beginTime: this.showWeekFirstDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
         };
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      getBYdata(e) {
-        this.activeClass = e;
-        var params = {
-          beginTime: this.dateTime.month.beginTime,
-          endTime: this.dateTime.month.endTime,
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showWeekFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      if (e == 2) {
+        params = {
+          beginTime: this.showMonthFirstDay(today) + " 00:00:00",
+          endTime: this.showToDay(today) + " 23:59:59",
         };
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      getQBdata(e) {
-        this.search.releaseTimeRange = ["", ""];
-        this.activeClass = e;
-        var params = {};
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-      },
-      rowStyle({row, column, rowIndex}) {
-        if (row.jtype == "0") {
-          return {
-            color: "#ff2727",
-          };
-        } else if (row.jtype == "1") {
-          return {
-            color: "#15a2fe",
-          };
-        } else {
-          return {
-            color: "#000000",
-          };
-        }
-      },
-      handleStart(row) {
-        var arr = [];
-        this.$store.state.tags.tagList.forEach((item) => {
-          if (item.label != "视频") {
-            arr.push(item);
-          }
-        });
-        this.$store.state.tags.tagList = arr;
-        this.$router.push({
-          path: `/real/video/`,
-          query: row,
-        });
-      },
-      handleHistory(row) {
-        var arr = [];
-        this.$store.state.tags.tagList.forEach((item) => {
-          if (item.label != "设备历史") {
-            arr.push(item);
-          }
-        });
-        this.$store.state.tags.tagList = arr;
-        this.$router.push({path: `/real/history/${row.deviceNumber}`});
-      },
-      handleMap(row) {
-        this.showMap = true;
-        this.$nextTick(() => {
-          this.$refs.mapDiv.onload = () => {
-            window.frames[1].init("ClientManagement", {x: row.jd, y: row.wd, clientID: row.deviceNumber});
-          };
-        });
-      },
-      getStartTime() {
-        if (
-          this.$route.query.startTime != undefined &&
-          this.$route.query.startTime != null &&
-          this.$route.query.startTime != ""
-        ) {
-          return this.$route.query.startTime;
-        }
-        return "";
-      },
-      getEndTime() {
-        if (
-          this.$route.query.endTime != undefined &&
-          this.$route.query.endTime != null &&
-          this.$route.query.endTime != ""
-        ) {
-          return this.$route.query.endTime;
-        }
-        return "";
-      },
-      handleManage(row) {
-        this.$refs.realPopupView.onItemGetParentData(row);
-      },
+        //修改搜索框中的值
+        this.search.releaseTimeRange = [
+          this.showMonthFirstDay(today) + " 00:00:00",
+          this.showToDay(today) + " 23:59:59",
+        ];
+      }
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    //本日
+    showToDay(Nowdate) {
+      var M = Number(Nowdate.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = Nowdate.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return Nowdate.getFullYear() + "-" + M + "-" + day;
+    },
 
-      beginTimeOrEndTime(time) {
-        var beginTime = new Date(time);
+    //本周第一天
+    showWeekFirstDay(Nowdate) {
+      var WeekFirstDay = new Date(Nowdate - (Nowdate.getDay() - 1) * 86400000);
+      var M = Number(WeekFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      var day = WeekFirstDay.getDate();
+      if (day < 10) {
+        day = "0" + day;
+      }
+      return WeekFirstDay.getFullYear() + "-" + M + "-" + day;
+    },
 
-        var endTime = new Date(new Date(time).valueOf() - 1000 * 60 * 60 * 3);
-
-        var beginY = beginTime.getFullYear();
-
-        var beginM =
-          beginTime.getMonth() + 1 < 10
-            ? "0" + (beginTime.getMonth() + 1)
-            : beginTime.getMonth() + 1;
-
-        var beginD =
-          beginTime.getDate() < 10
-            ? "0" + beginTime.getDate()
-            : beginTime.getDate();
-
-        var beginH =
-          beginTime.getHours() < 10
-            ? "0" + beginTime.getHours()
-            : beginTime.getHours();
-
-        var beginm =
-          beginTime.getMinutes() < 10
-            ? "0" + beginTime.getMinutes()
-            : beginTime.getMinutes();
-
-        var begins =
-          beginTime.getSeconds() < 10
-            ? "0" + beginTime.getSeconds()
-            : beginTime.getSeconds();
-
-        var endY = endTime.getFullYear();
-
-        var endM =
-          endTime.getMonth() + 1 < 10
-            ? "0" + (endTime.getMonth() + 1)
-            : endTime.getMonth() + 1;
-
-        var endD =
-          endTime.getDate() < 10 ? "0" + endTime.getDate() : endTime.getDate();
-
-        var endH =
-          endTime.getHours() < 10 ? "0" + endTime.getHours() : endTime.getHours();
-
-        var endm =
-          endTime.getMinutes() < 10
-            ? "0" + endTime.getMinutes()
-            : endTime.getMinutes();
-
-        var ends =
-          endTime.getSeconds() < 10
-            ? "0" + endTime.getSeconds()
-            : endTime.getSeconds();
+    //本月第一天
+    showMonthFirstDay(Nowdate) {
+      var MonthFirstDay = new Date(
+        Nowdate.getFullYear(),
+        Nowdate.getMonth(),
+        1
+      );
+      var M = Number(MonthFirstDay.getMonth()) + 1;
+      if (M < 10) {
+        M = "0" + M;
+      }
+      return (
+        MonthFirstDay.getFullYear() +
+        "-" +
+        M +
+        "-" +
+        "0" +
+        MonthFirstDay.getDate()
+      );
+    },
+    getBZdata(e) {
+      this.activeClass = e;
+      var params = {
+        beginTime: this.dateTime.week.beginTime,
+        endTime: this.dateTime.week.endTime,
+      };
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    getBYdata(e) {
+      this.activeClass = e;
+      var params = {
+        beginTime: this.dateTime.month.beginTime,
+        endTime: this.dateTime.month.endTime,
+      };
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    getQBdata(e) {
+      this.search.releaseTimeRange = ["", ""];
+      this.activeClass = e;
+      var params = {};
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+    },
+    rowStyle({ row, column, rowIndex }) {
+      if (row.jtype == "0") {
         return {
-          begin: beginY + beginM + beginD + beginH + beginm + begins,
-          end: endY + endM + endD + endH + endm + ends,
+          color: "#ff2727",
         };
-      },
-
-      PoliceTracking(row) {
-        //警情追踪
-        this.$router.push({path: "/policeTracking/track", query: row});
-      },
-
-      //数据导出
-      handleExport() {
-        this.$confirm("是否导出实时警情数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning",
-        }).then(() => {
-          window.open(
-            `/api/alarm/alarm/export-alarm?beginTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&waringType=${this.$route.query.waringType}&timeDesc=${this.$route.query.timeDesc}`
-          );
-        });
-      },
-      //数据报表导出
-      handleExportStatis() {
-        let beginTime =
-          this.$route.query.startTime == undefined
-            ? ""
-            : this.$route.query.startTime;
-        let endTime =
-          this.$route.query.endTime == undefined ? "" : this.$route.query.endTime;
-        let waringType =
-          this.$route.query.waringType == undefined
-            ? ""
-            : this.$route.query.waringType;
-        let timeDesc =
-          this.$route.query.timeDesc == undefined
-            ? ""
-            : this.$route.query.timeDesc;
-        window.open(
-          `https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`
-        );
-        //window.open(`http://localhost:8108/ureport/excel?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`);
-      },
-      rowClick(val) {//行点击事件
-        //警情追踪
-        this.$router.push({path: "/policeTracking/track", query: val});
+      } else if (row.jtype == "1") {
+        return {
+          color: "#15a2fe",
+        };
+      } else {
+        return {
+          color: "#000000",
+        };
       }
     },
-  };
+    handleStart(row) {
+      var arr = [];
+      this.$store.state.tags.tagList.forEach((item) => {
+        if (item.label != "视频") {
+          arr.push(item);
+        }
+      });
+      this.$store.state.tags.tagList = arr;
+      this.$router.push({
+        path: `/real/video/`,
+        query: row,
+      });
+    },
+    handleHistory(row) {
+      var arr = [];
+      this.$store.state.tags.tagList.forEach((item) => {
+        if (item.label != "设备历史") {
+          arr.push(item);
+        }
+      });
+      this.$store.state.tags.tagList = arr;
+      this.$router.push({ path: `/real/history/${row.deviceNumber}` });
+    },
+    handleMap(row) {
+      this.showMap = true;
+      this.$nextTick(() => {
+        this.$refs.mapDiv.onload = () => {
+          window.frames[1].init("ClientManagement", {
+            x: row.jd,
+            y: row.wd,
+            clientID: row.deviceNumber,
+          });
+        };
+      });
+    },
+    getStartTime() {
+      if (
+        this.$route.query.startTime != undefined &&
+        this.$route.query.startTime != null &&
+        this.$route.query.startTime != ""
+      ) {
+        return this.$route.query.startTime;
+      }
+      return "";
+    },
+    getEndTime() {
+      if (
+        this.$route.query.endTime != undefined &&
+        this.$route.query.endTime != null &&
+        this.$route.query.endTime != ""
+      ) {
+        return this.$route.query.endTime;
+      }
+      return "";
+    },
+    handleManage(row) {
+      this.$refs.realPopupView.onItemGetParentData(row);
+    },
+
+    beginTimeOrEndTime(time) {
+      var beginTime = new Date(time);
+
+      var endTime = new Date(new Date(time).valueOf() - 1000 * 60 * 60 * 3);
+
+      var beginY = beginTime.getFullYear();
+
+      var beginM =
+        beginTime.getMonth() + 1 < 10
+          ? "0" + (beginTime.getMonth() + 1)
+          : beginTime.getMonth() + 1;
+
+      var beginD =
+        beginTime.getDate() < 10
+          ? "0" + beginTime.getDate()
+          : beginTime.getDate();
+
+      var beginH =
+        beginTime.getHours() < 10
+          ? "0" + beginTime.getHours()
+          : beginTime.getHours();
+
+      var beginm =
+        beginTime.getMinutes() < 10
+          ? "0" + beginTime.getMinutes()
+          : beginTime.getMinutes();
+
+      var begins =
+        beginTime.getSeconds() < 10
+          ? "0" + beginTime.getSeconds()
+          : beginTime.getSeconds();
+
+      var endY = endTime.getFullYear();
+
+      var endM =
+        endTime.getMonth() + 1 < 10
+          ? "0" + (endTime.getMonth() + 1)
+          : endTime.getMonth() + 1;
+
+      var endD =
+        endTime.getDate() < 10 ? "0" + endTime.getDate() : endTime.getDate();
+
+      var endH =
+        endTime.getHours() < 10 ? "0" + endTime.getHours() : endTime.getHours();
+
+      var endm =
+        endTime.getMinutes() < 10
+          ? "0" + endTime.getMinutes()
+          : endTime.getMinutes();
+
+      var ends =
+        endTime.getSeconds() < 10
+          ? "0" + endTime.getSeconds()
+          : endTime.getSeconds();
+      return {
+        begin: beginY + beginM + beginD + beginH + beginm + begins,
+        end: endY + endM + endD + endH + endm + ends,
+      };
+    },
+
+    PoliceTracking(row) {
+      //警情追踪
+      this.$router.push({ path: "/policeTracking/track", query: row });
+    },
+
+    //数据导出
+    handleExport() {
+      this.$confirm("是否导出实时警情数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        window.open(
+          `/api/alarm/alarm/export-alarm?beginTime=${this.$route.query.startTime}&endTime=${this.$route.query.endTime}&waringType=${this.$route.query.waringType}&timeDesc=${this.$route.query.timeDesc}`
+        );
+      });
+    },
+    //数据报表导出
+    handleExportStatis() {
+      let beginTime =
+        this.$route.query.startTime == undefined
+          ? ""
+          : this.$route.query.startTime;
+      let endTime =
+        this.$route.query.endTime == undefined ? "" : this.$route.query.endTime;
+      let waringType =
+        this.$route.query.waringType == undefined
+          ? ""
+          : this.$route.query.waringType;
+      let timeDesc =
+        this.$route.query.timeDesc == undefined
+          ? ""
+          : this.$route.query.timeDesc;
+      window.open(
+        `https://web.byisf.com/api/blade-report/ureport/preview?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`
+      );
+      //window.open(`http://localhost:8108/ureport/excel?_u=blade-alarm.statis.ureport.xml&beginTime=${beginTime}&endTime=${endTime}&waringType=${waringType}&timeDesc=${timeDesc}`);
+    },
+    rowClick(val) {
+      //行点击事件
+      //警情追踪
+      this.$router.push({ path: "/policeTracking/track", query: val });
+    },
+  },
+};
 </script>
 
 <style>
-  .el-card__body .waringTypeClass {
-    width: 12%;
-  }
+.el-card__body .waringTypeClass {
+  width: 12%;
+}
 
-  .cityreal2 div label,
-  .cityreal3 div label {
-    display: none;
-  }
+.cityreal2 div label,
+.cityreal3 div label {
+  display: none;
+}
 
-  /*页面样式*/
-  .el-card__body .cityreal1 {
-    width: 150px;
-    padding-right: 0px !important;
-  }
+/*页面样式*/
+.el-card__body .cityreal1 {
+  width: 150px;
+  padding-right: 0px !important;
+}
 
-  .el-card__body .cityreal2 {
-    width: 100px;
-    padding-left: 10px !important;
-    padding-right: 0px !important;
-  }
+.el-card__body .cityreal2 {
+  width: 100px;
+  padding-left: 10px !important;
+  padding-right: 0px !important;
+}
 
-  .el-card__body .cityreal3 {
-    width: 100px;
-    padding-left: 10px !important;
-    padding-right: 0px !important;
-  }
+.el-card__body .cityreal3 {
+  width: 100px;
+  padding-left: 10px !important;
+  padding-right: 0px !important;
+}
 
-  /*新增窗体样式*/
-  .el-dialog .cityreal1 {
-    width: 216px;
-    padding-right: 0px !important;
-  }
+/*新增窗体样式*/
+.el-dialog .cityreal1 {
+  width: 216px;
+  padding-right: 0px !important;
+}
 
-  .el-dialog .cityreal2 {
-    width: 130px;
-    padding-left: 10px !important;
-    padding-right: 10px !important;
-  }
+.el-dialog .cityreal2 {
+  width: 130px;
+  padding-left: 10px !important;
+  padding-right: 10px !important;
+}
 
-  .el-dialog .cityreal3 {
-    width: 105px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-  }
+.el-dialog .cityreal3 {
+  width: 105px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+}
 
-  .cityClassParams .avue-form__group.avue-form__group--flex {
-    display: flex;
-    justify-content: space-between;
-  }
+.cityClassParams .avue-form__group.avue-form__group--flex {
+  display: flex;
+  justify-content: space-between;
+}
 
-  .cityClassParams .cityClassSelect {
-    flex: 1;
-    margin: 0 !important;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-  }
+.cityClassParams .cityClassSelect {
+  flex: 1;
+  margin: 0 !important;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+}
 
-  .cityClassParams .cityClassSelect:nth-child(2) {
-    margin: 0 10px !important;
-  }
+.cityClassParams .cityClassSelect:nth-child(2) {
+  margin: 0 10px !important;
+}
 
-  .cityClassParams .cityClassSelect .el-form-item {
-    margin-bottom: 0px !important;
-  }
+.cityClassParams .cityClassSelect .el-form-item {
+  margin-bottom: 0px !important;
+}
 
-  .cityClassParams .cityClassSelect .el-form-item .el-input__inner {
-    height: 28px !important;
-    line-height: 28px !important;
-  }
+.cityClassParams .cityClassSelect .el-form-item .el-input__inner {
+  height: 28px !important;
+  line-height: 28px !important;
+}
 
-  .cityClass2 div label {
-    display: none;
-  }
+.cityClass2 div label {
+  display: none;
+}
 
-  .cityClass3 div label {
-    display: none;
-  }
+.cityClass3 div label {
+  display: none;
+}
 
-  .old-video-dialog {
-    position: absolute !important;
-    top: 0 !important;
-    left: auto !important;
-    right: 0px !important;
-    bottom: 0 !important;
-    margin: auto !important;
-    height: 100% !important;
-    width: 476px !important;
-  }
+.old-video-dialog {
+  position: absolute !important;
+  top: 0 !important;
+  left: auto !important;
+  right: 0px !important;
+  bottom: 0 !important;
+  margin: auto !important;
+  height: 100% !important;
+  width: 476px !important;
+}
 
-  .old-video-dialog .el-dialog {
-    position: absolute !important;
-    top: 0 !important;
-    left: 0 !important;
-    right: 0 !important;
-    bottom: 0 !important;
-    margin: auto !important;
-    margin-top: 15vh !important;
-    height: 538px;
-  }
+.old-video-dialog .el-dialog {
+  position: absolute !important;
+  top: 0 !important;
+  left: 0 !important;
+  right: 0 !important;
+  bottom: 0 !important;
+  margin: auto !important;
+  margin-top: 15vh !important;
+  height: 538px;
+}
 
-  .old-video-dialog .el-dialog .el-dialog__body {
-    height: calc(100% - 54px);
-    box-sizing: border-box;
-  }
+.old-video-dialog .el-dialog .el-dialog__body {
+  height: calc(100% - 54px);
+  box-sizing: border-box;
+}
 
-  .el-button.btn-color {
-    color: rgb(255, 255, 255);
-    background-color: rgb(64, 158, 255);
-    border-color: rgb(64, 158, 255);
-  }
+.el-button.btn-color {
+  color: rgb(255, 255, 255);
+  background-color: rgb(64, 158, 255);
+  border-color: rgb(64, 158, 255);
+}
 
-  .tabFontSize {
-    font-size: 15px;
-  }
+.tabFontSize {
+  font-size: 15px;
+}
 </style>
diff --git a/src/views/realTimePolice/realHistory.vue b/src/views/realTimePolice/realHistory.vue
index fe4caff..2f2fb6c 100644
--- a/src/views/realTimePolice/realHistory.vue
+++ b/src/views/realTimePolice/realHistory.vue
@@ -117,7 +117,7 @@
         menuWidth: 240,
         size: "mini",
         border: false,
-        stripe:true,
+        //stripe:true,
         labelWidth: "100",
         dialogWidth: 950,
         tip: false,
@@ -614,7 +614,6 @@
 </script>
 
 <style>
-
 .old-video-dialog-box {
   position: absolute !important;
   top: 0px !important;
@@ -647,7 +646,7 @@
   box-sizing: border-box;
 }
 
-.tabFontSize{
+.tabFontSize {
   font-size: 15px;
 }
 </style>
diff --git a/src/views/security/security copy.vue b/src/views/security/security copy.vue
index 17551af..72f5444 100644
--- a/src/views/security/security copy.vue
+++ b/src/views/security/security copy.vue
@@ -1,24 +1,50 @@
 <template>
   <basic-container>
-    <avue-crud :option="option" :table-loading="loading" :data="data" :page="page" :permission="permissionList"
-               :before-open="beforeOpen" v-model="form" ref="crud" @row-update="rowUpdate" @row-save="rowSave" @row-del="rowDel"
-               @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
-               @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad">
+    <avue-crud
+      :option="option"
+      :table-loading="loading"
+      :data="data"
+      :page="page"
+      :permission="permissionList"
+      :before-open="beforeOpen"
+      v-model="form"
+      ref="crud"
+      @row-update="rowUpdate"
+      @row-save="rowSave"
+      @row-del="rowDel"
+      @search-change="searchChange"
+      @search-reset="searchReset"
+      @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+      @refresh-change="refreshChange"
+      @on-load="onLoad"
+    >
       <template slot="menuLeft">
-        <el-button type="danger" size="small" icon="el-icon-delete" plain v-if="permission.security_delete" @click="handleDelete">删
-          除
+        <el-button
+          type="danger"
+          size="small"
+          icon="el-icon-delete"
+          plain
+          v-if="permission.security_delete"
+          @click="handleDelete"
+          >删 除
         </el-button>
       </template>
 
       <template slot-scope="{ row }" slot="jtype">
-        <el-tag>{{
-          row.jtype == "0" ? "否" : row.jtype == "1" ? "是" : "无"
-          }}
+        <el-tag
+          >{{ row.jtype == "0" ? "否" : row.jtype == "1" ? "是" : "无" }}
         </el-tag>
       </template>
 
       <template slot-scope="{ type, size, row }" slot="menu">
-        <el-button icon="el-icon-location-outline" :size="size" :type="type" @click.stop="handleMap(row)">编辑电子围栏
+        <el-button
+          icon="el-icon-location-outline"
+          :size="size"
+          :type="type"
+          @click.stop="handleMap(row)"
+          >编辑电子围栏
         </el-button>
       </template>
     </avue-crud>
@@ -29,293 +55,316 @@
     </el-drawer> -->
     <el-drawer title="电子地图" append-to-body="true" :visible.sync="showMap">
       <iframe
-                id="securityMap"
-                ref="securityMap"
-                :src="baseUrl"
-                frameborder="0"
-                width="100%"
-                height="100%"
-                name="securityMap"
-              ></iframe>
+        id="securityMap"
+        ref="securityMap"
+        :src="baseUrl"
+        frameborder="0"
+        width="100%"
+        height="100%"
+        name="securityMap"
+      ></iframe>
     </el-drawer>
   </basic-container>
 </template>
 
 <script>
-  import {getList} from "@/api/security/security";
-  import {getDetail,add,update,remove} from "@/api/system/user";
-  import {mapGetters} from "vuex";
-  export default {
-    data() {
-      return {
-        baseUrl:"/map/index.html?ISinit=1",
-        form: {},
-        query: {},
-        loading: true,
-        showMap: false,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        dialogVisible: false,
-        selectionList: [],
-        option: {
-          height: 'auto',
-          calcHeight: 54,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          menuWidth:300,
-          border: false,
-          stripe: true,
-          index: true,
-          viewBtn: true,
-          selection: true,
-          dialogClickModal: false,
-          column: [{
+import { getList } from "@/api/security/security";
+import { getDetail, add, update, remove } from "@/api/system/user";
+import { mapGetters } from "vuex";
+export default {
+  data() {
+    return {
+      baseUrl: "/map/index.html?ISinit=1",
+      form: {},
+      query: {},
+      loading: true,
+      showMap: false,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      dialogVisible: false,
+      selectionList: [],
+      option: {
+        height: "auto",
+        calcHeight: 54,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        menuWidth: 300,
+        border: false,
+        //stripe:true,
+        index: true,
+        viewBtn: true,
+        selection: true,
+        dialogClickModal: false,
+        column: [
+          {
             label: "账号",
             prop: "account",
-            rules: [{
-              required: true,
-              message: "请输入账号",
-              trigger: "blur"
-            }]
+            rules: [
+              {
+                required: true,
+                message: "请输入账号",
+                trigger: "blur",
+              },
+            ],
           },
-            {
-              label: "人员编号",
-              prop: "code",
-              search: true,
-              rules: [{
+          {
+            label: "人员编号",
+            prop: "code",
+            search: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入人员编号",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "人员姓名",
-              prop: "realName",
-              search: true,
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "人员姓名",
+            prop: "realName",
+            search: true,
+            rules: [
+              {
                 required: true,
                 message: "请输入名称",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "所属部门",
-              prop: "deptName"
-            },
-            {
-              label: "性别",
-              prop: "sex",
-              type: "select",
-              dicData: [{
-                label: "男",
-                value: 1
+                trigger: "blur",
               },
-                {
-                  label: "女",
-                  value: 2
-                },
-              ],
-            },
-            {
-              label: "联系电话",
-              prop: "phone",
-              rules: [{
+            ],
+          },
+          {
+            label: "所属部门",
+            prop: "deptName",
+          },
+          {
+            label: "性别",
+            prop: "sex",
+            type: "select",
+            dicData: [
+              {
+                label: "男",
+                value: 1,
+              },
+              {
+                label: "女",
+                value: 2,
+              },
+            ],
+          },
+          {
+            label: "联系电话",
+            prop: "phone",
+            rules: [
+              {
                 required: true,
                 message: "请输入联系电话",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "邮箱",
-              prop: "email",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "邮箱",
+            prop: "email",
+            rules: [
+              {
                 required: false,
                 message: "请输入邮箱",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "生日",
-              prop: "birthday",
-              rules: [{
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "生日",
+            prop: "birthday",
+            rules: [
+              {
                 required: false,
                 message: "请选择",
-                trigger: "blur"
-              }]
-            }
-          ]
-        },
-        data: []
+                trigger: "blur",
+              },
+            ],
+          },
+        ],
+      },
+      data: [],
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.security_add, true),
+        viewBtn: this.vaildData(this.permission.security_view, false),
+        delBtn: this.vaildData(this.permission.security_delete, true),
+        editBtn: this.vaildData(this.permission.security_edit, true),
       };
     },
-    computed: {
-      ...mapGetters(["permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.security_add, true),
-          viewBtn: this.vaildData(this.permission.security_view, false),
-          delBtn: this.vaildData(this.permission.security_delete, true),
-          editBtn: this.vaildData(this.permission.security_edit, true)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
-      }
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    methods: {
-      rowSave(row, done, loading) {
-        add(row).then(() => {
+  },
+  methods: {
+    rowSave(row, done, loading) {
+      add(row).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           loading();
           window.console.log(error);
-        });
-      },
-      rowUpdate(row, index, done, loading) {
-        update(row).then(() => {
+        }
+      );
+    },
+    rowUpdate(row, index, done, loading) {
+      update(row).then(
+        () => {
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           loading();
           console.log(error);
-        });
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-          });
-      },
-      //打开地图
-      handleMap(row) {
-        var that =this;
-        this.showMap=true;
-        if(row.jd=="" || row.jd=="0.0"){
-          var rwjd = "115.862321";
-          var rwwd = "28.591108";
-          that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${rwjd}&wd=${rwwd}&code=${row.code}&name=${row.realName}`;
-        }else{
-          that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${row.jd}&wd=${row.wd}&code=${row.code}&name=${row.realName}`;
         }
-        
-        this.$nextTick(() => {
-          this.$refs.securityMap.onload = () => {
-            if (window.frames[1].init) {
-              if(row.jd=="" || row.jd=="0.0"){
-                //如果处警员无位置信息,则赋值一个默认数据,否则地图无法加载
-                window.frames[1].init("SecurityMap", {
-                                x: rwjd,
-                                y: rwwd,
-                                code:row.code
-                            });
-              }else{
-                window.frames[1].init("SecurityMap", {
-                                x: row.jd,
-                                y: row.wd,
-                                code:row.code
-                            });
-              }
-              
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+        });
+    },
+    //打开地图
+    handleMap(row) {
+      var that = this;
+      this.showMap = true;
+      if (row.jd == "" || row.jd == "0.0") {
+        var rwjd = "115.862321";
+        var rwwd = "28.591108";
+        that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${rwjd}&wd=${rwwd}&code=${row.code}&name=${row.realName}`;
+      } else {
+        that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${row.jd}&wd=${row.wd}&code=${row.code}&name=${row.realName}`;
+      }
+
+      this.$nextTick(() => {
+        this.$refs.securityMap.onload = () => {
+          if (window.frames[1].init) {
+            if (row.jd == "" || row.jd == "0.0") {
+              //如果处警员无位置信息,则赋值一个默认数据,否则地图无法加载
+              window.frames[1].init("SecurityMap", {
+                x: rwjd,
+                y: rwwd,
+                code: row.code,
+              });
             } else {
-              console.log(`没有找到到window.frames[1].init`)
+              window.frames[1].init("SecurityMap", {
+                x: row.jd,
+                y: row.wd,
+                code: row.code,
+              });
             }
+          } else {
+            console.log(`没有找到到window.frames[1].init`);
           }
-        });
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
+        };
+      });
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
         })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getDetail(this.form.id).then(res => {
-            this.form = res.data.data;
-          });
-        }
-        done();
-      },
-      searchReset() {
-        this.query = {};
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      currentChange(currentPage) {
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize) {
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        this.loading = true;
-        getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getDetail(this.form.id).then((res) => {
+          this.form = res.data.data;
         });
       }
-    }
-  };
+      done();
+    },
+    searchReset() {
+      this.query = {};
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      this.loading = true;
+      getList(
+        page.currentPage,
+        page.pageSize,
+        Object.assign(params, this.query)
+      ).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+  },
+};
 </script>
diff --git a/src/views/security/security.vue b/src/views/security/security.vue
index 33d7134..4c3e135 100644
--- a/src/views/security/security.vue
+++ b/src/views/security/security.vue
@@ -11,103 +11,118 @@
     </el-col> -->
     <el-col>
       <basic-container>
-        <avue-crud :option="option"
-                   :search.sync="search"
-                   :table-loading="loading"
-                   :data="data"
-                   ref="crud"
-                   v-model="form"
-                   :permission="permissionList"
-                   @row-del="rowDel"
-                   @row-update="rowUpdate"
-                   @row-save="rowSave"
-                   :before-open="beforeOpen"
-                   :page.sync="page"
-                   @search-change="searchChange"
-                   @search-reset="searchReset"
-                   @selection-change="selectionChange"
-                   @current-change="currentChange"
-                   @size-change="sizeChange"
-                   @refresh-change="refreshChange"
-                   @on-load="onLoad">
+        <avue-crud
+          :option="option"
+          :search.sync="search"
+          :table-loading="loading"
+          :data="data"
+          ref="crud"
+          v-model="form"
+          :permission="permissionList"
+          @row-del="rowDel"
+          @row-update="rowUpdate"
+          @row-save="rowSave"
+          :before-open="beforeOpen"
+          :page.sync="page"
+          @search-change="searchChange"
+          @search-reset="searchReset"
+          @selection-change="selectionChange"
+          @current-change="currentChange"
+          @size-change="sizeChange"
+          @refresh-change="refreshChange"
+          @on-load="onLoad"
+        >
           <template slot="menuLeft">
-            <el-button type="danger"
-                       size="small"
-                       plain
-                       icon="el-icon-delete"
-                       v-if="permission.user_delete"
-                       @click="handleDelete">删 除
+            <el-button
+              type="danger"
+              size="small"
+              plain
+              icon="el-icon-delete"
+              v-if="permission.user_delete"
+              @click="handleDelete"
+              >删 除
             </el-button>
-            <el-button type="info"
-                       size="small"
-                       plain
-                       v-if="permission.user_reset"
-                       icon="el-icon-refresh"
-                       @click="handleReset">密码重置
+            <el-button
+              type="info"
+              size="small"
+              plain
+              v-if="permission.user_reset"
+              icon="el-icon-refresh"
+              @click="handleReset"
+              >密码重置
             </el-button>
           </template>
-          <template slot-scope="{row}"
-                    slot="tenantName">
-            <el-tag>{{row.tenantName}}</el-tag>
+          <template slot-scope="{ row }" slot="tenantName">
+            <el-tag>{{ row.tenantName }}</el-tag>
           </template>
-          <template slot-scope="{row}"
-                    slot="roleName">
-            <el-tag>{{row.roleName}}</el-tag>
+          <template slot-scope="{ row }" slot="roleName">
+            <el-tag>{{ row.roleName }}</el-tag>
           </template>
-          <template slot-scope="{row}"
-                    slot="deptName">
-            <el-tag>{{row.deptName}}</el-tag>
+          <template slot-scope="{ row }" slot="deptName">
+            <el-tag>{{ row.deptName }}</el-tag>
           </template>
-          <template slot-scope="{row}"
-                    slot="userTypeName">
-            <el-tag>{{row.userTypeName}}</el-tag>
+          <template slot-scope="{ row }" slot="userTypeName">
+            <el-tag>{{ row.userTypeName }}</el-tag>
           </template>
           <template slot-scope="{ row }" slot="online_status">
             <el-tag
-            >{{
-              row.online_status == "0" ? "离线" : row.online_status == "1" ? "在线" : "离线"
+              >{{
+                row.online_status == "0"
+                  ? "离线"
+                  : row.online_status == "1"
+                  ? "在线"
+                  : "离线"
               }}
             </el-tag>
           </template>
           <template slot-scope="{ row }" slot="sex">
-            <el-tag
-            >{{
-              row.sex == 1 ? "男" : "女"
-              }}
-            </el-tag>
+            <el-tag>{{ row.sex == 1 ? "男" : "女" }} </el-tag>
           </template>
 
           <template slot-scope="{ type, size, row }" slot="menu">
-            <el-button icon="el-icon-location-outline" :size="size" :type="type" @click.stop="handleMap(row)">编辑电子围栏
-          </el-button>
-      </template>
+            <el-button
+              icon="el-icon-location-outline"
+              :size="size"
+              :type="type"
+              @click.stop="handleMap(row)"
+              >编辑电子围栏
+            </el-button>
+          </template>
         </avue-crud>
-        <el-dialog title="用户角色配置"
-                   append-to-body
-                   :visible.sync="roleBox"
-                   width="345px">
-
-          <el-tree :data="roleGrantList"
-                   show-checkbox
-                   check-strictly
-                   default-expand-all
-                   node-key="id"
-                   ref="treeRole"
-                   :default-checked-keys="roleTreeObj"
-                   :props="props">
+        <el-dialog
+          title="用户角色配置"
+          append-to-body
+          :visible.sync="roleBox"
+          width="345px"
+        >
+          <el-tree
+            :data="roleGrantList"
+            show-checkbox
+            check-strictly
+            default-expand-all
+            node-key="id"
+            ref="treeRole"
+            :default-checked-keys="roleTreeObj"
+            :props="props"
+          >
           </el-tree>
 
           <span slot="footer" class="dialog-footer">
             <el-button @click="roleBox = false">取 消</el-button>
-            <el-button type="primary"
-                       @click="submitRole">确 定</el-button>
+            <el-button type="primary" @click="submitRole">确 定</el-button>
           </span>
         </el-dialog>
-        <el-dialog title="用户数据导入"
-                   append-to-body
-                   :visible.sync="excelBox"
-                   width="555px">
-          <avue-form :option="excelOption" v-model="excelForm" :upload-after="uploadAfter">
+        <el-dialog
+          title="用户数据导入"
+          append-to-body
+          :visible.sync="excelBox"
+          width="555px"
+        >
+          <avue-form
+            :option="excelOption"
+            v-model="excelForm"
+            :upload-after="uploadAfter"
+          >
             <template slot="excelTemplate">
               <el-button type="primary" @click="handleTemplate">
                 点击下载<i class="el-icon-download el-icon--right"></i>
@@ -115,46 +130,52 @@
             </template>
           </avue-form>
         </el-dialog>
-        <el-dialog title="用户平台配置"
-                   append-to-body
-                   :visible.sync="platformBox">
-          <avue-crud :option="platformOption"
-                     :table-loading="platformLoading"
-                     :data="platformData"
-                     ref="platformCrud"
-                     v-model="platformForm"
-                     :before-open="platformBeforeOpen"
-                     :page.sync="platformPage"
-                     :permission="platformPermissionList"
-                     @row-update="platformRowUpdate"
-                     @search-change="platformSearchChange"
-                     @search-reset="platformSearchReset"
-                     @selection-change="platformSelectionChange"
-                     @current-change="platformCurrentChange"
-                     @size-change="platformSizeChange"
-                     @refresh-change="platformRefreshChange"
-                     @on-load="platformOnLoad">
-            <template slot-scope="{row}"
-                      slot="tenantName">
-              <el-tag>{{row.tenantName}}</el-tag>
+        <el-dialog
+          title="用户平台配置"
+          append-to-body
+          :visible.sync="platformBox"
+        >
+          <avue-crud
+            :option="platformOption"
+            :table-loading="platformLoading"
+            :data="platformData"
+            ref="platformCrud"
+            v-model="platformForm"
+            :before-open="platformBeforeOpen"
+            :page.sync="platformPage"
+            :permission="platformPermissionList"
+            @row-update="platformRowUpdate"
+            @search-change="platformSearchChange"
+            @search-reset="platformSearchReset"
+            @selection-change="platformSelectionChange"
+            @current-change="platformCurrentChange"
+            @size-change="platformSizeChange"
+            @refresh-change="platformRefreshChange"
+            @on-load="platformOnLoad"
+          >
+            <template slot-scope="{ row }" slot="tenantName">
+              <el-tag>{{ row.tenantName }}</el-tag>
             </template>
-            <template slot-scope="{row}"
-                      slot="userTypeName">
-              <el-tag>{{row.userTypeName}}</el-tag>
+            <template slot-scope="{ row }" slot="userTypeName">
+              <el-tag>{{ row.userTypeName }}</el-tag>
             </template>
           </avue-crud>
         </el-dialog>
 
-        <el-drawer title="电子地图" append-to-body="true" :visible.sync="showMap">
+        <el-drawer
+          title="电子地图"
+          append-to-body="true"
+          :visible.sync="showMap"
+        >
           <iframe
-                    id="securityMap"
-                    ref="securityMap"
-                    :src="baseUrl"
-                    frameborder="0"
-                    width="100%"
-                    height="100%"
-                    name="securityMap"
-                  ></iframe>
+            id="securityMap"
+            ref="securityMap"
+            :src="baseUrl"
+            frameborder="0"
+            width="100%"
+            height="100%"
+            name="securityMap"
+          ></iframe>
         </el-drawer>
       </basic-container>
     </el-col>
@@ -162,896 +183,944 @@
 </template>
 
 <script>
-  import {
-    getUser,
-    getUserPlatform,
-    remove,
-    update,
-    updatePlatform,
-    add,
-    grant,
-    resetPassword
-  } from "@/api/system/user";
-    import {getList} from "@/api/security/security";
-  import {getDeptTree, getDeptLazyTree} from "@/api/system/dept";
-  import {getRoleTree} from "@/api/system/role";
-  import {getPostList} from "@/api/system/post";
-  import {mapGetters} from "vuex";
-  import website from '@/config/website';
-  import {getToken} from '@/util/auth';
+import {
+  getUser,
+  getUserPlatform,
+  remove,
+  update,
+  updatePlatform,
+  add,
+  grant,
+  resetPassword,
+} from "@/api/system/user";
+import { getList } from "@/api/security/security";
+import { getDeptTree, getDeptLazyTree } from "@/api/system/dept";
+import { getRoleTree } from "@/api/system/role";
+import { getPostList } from "@/api/system/post";
+import { mapGetters } from "vuex";
+import website from "@/config/website";
+import { getToken } from "@/util/auth";
 
-  export default {
-    data() {
-      const validatePass = (rule, value, callback) => {
-        if (value === '') {
-          callback(new Error('请输入密码'));
-        } else {
-          callback();
-        }
-      };
-      const validatePass2 = (rule, value, callback) => {
-        if (value === '') {
-          callback(new Error('请再次输入密码'));
-        } else if (value !== this.form.password) {
-          callback(new Error('两次输入密码不一致!'));
-        } else {
-          callback();
-        }
-      };
-      return {
-        baseUrl:"/map/index.html?ISinit=1",
-        form: {},
-        search: {},
-        roleBox: false,
-        excelBox: false,
-        platformBox: false,
-        showMap: false,
-        initFlag: true,
-        selectionList: [],
-        query: {},
-        loading: true,
-        roleId:"",
-        platformLoading: false,
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        platformPage: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0
-        },
-        init: {
-          roleTree: [],
-          deptTree: [],
-        },
-        props: {
-          label: "title",
-          value: "key"
-        },
-        roleGrantList: [],
-        roleTreeObj: [],
-        treeDeptId: '',
-        treeData: [],
-        treeOption: {
-          nodeKey: 'id',
-          lazy: true,
-          treeLoad: function (node, resolve) {
-            const parentId = (node.level === 0) ? 0 : node.data.id;
-            getDeptLazyTree(parentId).then(res => {
-              resolve(res.data.data.map(item => {
+export default {
+  data() {
+    const validatePass = (rule, value, callback) => {
+      if (value === "") {
+        callback(new Error("请输入密码"));
+      } else {
+        callback();
+      }
+    };
+    const validatePass2 = (rule, value, callback) => {
+      if (value === "") {
+        callback(new Error("请再次输入密码"));
+      } else if (value !== this.form.password) {
+        callback(new Error("两次输入密码不一致!"));
+      } else {
+        callback();
+      }
+    };
+    return {
+      baseUrl: "/map/index.html?ISinit=1",
+      form: {},
+      search: {},
+      roleBox: false,
+      excelBox: false,
+      platformBox: false,
+      showMap: false,
+      initFlag: true,
+      selectionList: [],
+      query: {},
+      loading: true,
+      roleId: "",
+      platformLoading: false,
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      platformPage: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      init: {
+        roleTree: [],
+        deptTree: [],
+      },
+      props: {
+        label: "title",
+        value: "key",
+      },
+      roleGrantList: [],
+      roleTreeObj: [],
+      treeDeptId: "",
+      treeData: [],
+      treeOption: {
+        nodeKey: "id",
+        lazy: true,
+        treeLoad: function (node, resolve) {
+          const parentId = node.level === 0 ? 0 : node.data.id;
+          getDeptLazyTree(parentId).then((res) => {
+            resolve(
+              res.data.data.map((item) => {
                 return {
                   ...item,
-                  leaf: !item.hasChildren
-                }
-              }))
-            });
-          },
-          addBtn: false,
-          menu: false,
-          size: 'small',
-          props: {
-            labelText: '标题',
-            label: 'title',
-            value: 'value',
-            children: 'children'
-          }
+                  leaf: !item.hasChildren,
+                };
+              })
+            );
+          });
         },
-        option: {
-          height: 'auto',
-          calcHeight: 54,
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          border: false,
-          stripe: true,
-          index: true,
-          selection: true,
-          viewBtn: true,
-          menuWidth:350,
-          //dialogType: 'drawer',
-          dialogClickModal: false,
-          column: [
-            {
-              label: "登录账号",
-              prop: "account",
-              searchSpan:4,
-              search: true,
-              display: false
-            },
-            {
-              label: "人员编号",
-              prop: "code",
-              search: true,
-              searchSpan:4,
-              display: false
-            },
-            {
-              label: "用户姓名",
-              prop: "realName",
-              search: true,
-              searchSpan:4,
-              display: false
-            },
-            {
-              label: "所属部门",
-              prop: "deptName",
-              slot: true,
-              display: false,
-              width:260
-            },
-             {
-              label: "在线状态",
-              prop: "online_status",
-              slot: true,
-              display: false
-            },
-            {
-              label: "性别",
-              prop: "sex",
-              type: "select",
-              slot:true,
-              display: false
-            },
-            {
-              label: "联系电话",
-              prop: "phone",
-              display: false
-            },
-            {
-              label: "邮箱",
-              prop: "email",
-              display: false
-            },
-            {
-              label: "生日",
-              prop: "birthday",
-              display: false
-            },
-            {
-              label: "创建时间",
-              prop: "createTime",
-              display: false
-            }
-          ],
-          group: [
-            {
-              label: '基础信息',
-              prop: 'baseInfo',
-              icon: 'el-icon-user-solid',
-              column: [
-                {
-                  label: "所属客户",
-                  prop: "tenantId",
-                  type: "tree",
-                  dicUrl: "/api/blade-system/tenant/select",
-                  props: {
-                    label: "tenantName",
-                    value: "tenantId"
-                  },
-                  hide: !website.tenantMode,
-                  addDisplay: website.tenantMode,
-                  editDisplay: website.tenantMode,
-                  viewDisplay: website.tenantMode,
-                  rules: [{
+        addBtn: false,
+        menu: false,
+        size: "small",
+        props: {
+          labelText: "标题",
+          label: "title",
+          value: "value",
+          children: "children",
+        },
+      },
+      option: {
+        height: "auto",
+        calcHeight: 54,
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        border: false,
+        //stripe:true,
+        index: true,
+        selection: true,
+        viewBtn: true,
+        menuWidth: 350,
+        //dialogType: 'drawer',
+        dialogClickModal: false,
+        column: [
+          {
+            label: "登录账号",
+            prop: "account",
+            searchSpan: 4,
+            search: true,
+            display: false,
+          },
+          {
+            label: "人员编号",
+            prop: "code",
+            search: true,
+            searchSpan: 4,
+            display: false,
+          },
+          {
+            label: "用户姓名",
+            prop: "realName",
+            search: true,
+            searchSpan: 4,
+            display: false,
+          },
+          {
+            label: "所属部门",
+            prop: "deptName",
+            slot: true,
+            display: false,
+            width: 260,
+          },
+          {
+            label: "在线状态",
+            prop: "online_status",
+            slot: true,
+            display: false,
+          },
+          {
+            label: "性别",
+            prop: "sex",
+            type: "select",
+            slot: true,
+            display: false,
+          },
+          {
+            label: "联系电话",
+            prop: "phone",
+            display: false,
+          },
+          {
+            label: "邮箱",
+            prop: "email",
+            display: false,
+          },
+          {
+            label: "生日",
+            prop: "birthday",
+            display: false,
+          },
+          {
+            label: "创建时间",
+            prop: "createTime",
+            display: false,
+          },
+        ],
+        group: [
+          {
+            label: "基础信息",
+            prop: "baseInfo",
+            icon: "el-icon-user-solid",
+            column: [
+              {
+                label: "所属客户",
+                prop: "tenantId",
+                type: "tree",
+                dicUrl: "/api/blade-system/tenant/select",
+                props: {
+                  label: "tenantName",
+                  value: "tenantId",
+                },
+                hide: !website.tenantMode,
+                addDisplay: website.tenantMode,
+                editDisplay: website.tenantMode,
+                viewDisplay: website.tenantMode,
+                rules: [
+                  {
                     required: true,
                     message: "请输入所属租户",
-                    trigger: "click"
-                  }],
-                  span: 24,
-                },
-                {
-                  label: "登录账号",
-                  prop: "account",
-                  rules: [{
+                    trigger: "click",
+                  },
+                ],
+                span: 24,
+              },
+              {
+                label: "登录账号",
+                prop: "account",
+                rules: [
+                  {
                     required: true,
                     message: "请输入登录账号",
-                    trigger: "blur"
-                  }],
-                },
-                {
-                  label: "用户平台",
-                  type: "select",
-                  dicUrl: "/api/blade-system/dict/dictionary?code=user_type",
-                  props: {
-                    label: "dictValue",
-                    value: "dictKey"
+                    trigger: "blur",
                   },
-                  dataType: "number",
-                  slot: true,
-                  prop: "userType",
-                  rules: [{
+                ],
+              },
+              {
+                label: "用户平台",
+                type: "select",
+                dicUrl: "/api/blade-system/dict/dictionary?code=user_type",
+                props: {
+                  label: "dictValue",
+                  value: "dictKey",
+                },
+                dataType: "number",
+                slot: true,
+                prop: "userType",
+                rules: [
+                  {
                     required: true,
                     message: "请选择用户平台",
-                    trigger: "blur"
-                  }]
-                },
-                {
-                  label: '密码',
-                  prop: 'password',
-                  hide: true,
-                  editDisplay: false,
-                  viewDisplay: false,
-                  rules: [{required: true, validator: validatePass, trigger: 'blur'}]
-                },
-                {
-                  label: '确认密码',
-                  prop: 'password2',
-                  hide: true,
-                  editDisplay: false,
-                  viewDisplay: false,
-                  rules: [{required: true, validator: validatePass2, trigger: 'blur'}]
-                },
-              ]
-            },
-            {
-              label: '详细信息',
-              prop: 'detailInfo',
-              icon: 'el-icon-s-order',
-              column: [
-                {
-                  label: "用户昵称",
-                  prop: "name",
-                  hide: true,
-                  rules: [{
+                    trigger: "blur",
+                  },
+                ],
+              },
+              {
+                label: "密码",
+                prop: "password",
+                hide: true,
+                editDisplay: false,
+                viewDisplay: false,
+                rules: [
+                  { required: true, validator: validatePass, trigger: "blur" },
+                ],
+              },
+              {
+                label: "确认密码",
+                prop: "password2",
+                hide: true,
+                editDisplay: false,
+                viewDisplay: false,
+                rules: [
+                  { required: true, validator: validatePass2, trigger: "blur" },
+                ],
+              },
+            ],
+          },
+          {
+            label: "详细信息",
+            prop: "detailInfo",
+            icon: "el-icon-s-order",
+            column: [
+              {
+                label: "用户昵称",
+                prop: "name",
+                hide: true,
+                rules: [
+                  {
                     required: true,
                     message: "请输入用户昵称",
-                    trigger: "blur"
-                  }]
-                },
-                {
-                  label: "用户姓名",
-                  prop: "realName",
-                  rules: [{
+                    trigger: "blur",
+                  },
+                ],
+              },
+              {
+                label: "用户姓名",
+                prop: "realName",
+                rules: [
+                  {
                     required: true,
                     message: "请输入用户姓名",
-                    trigger: "blur"
-                  }, {
+                    trigger: "blur",
+                  },
+                  {
                     min: 2,
                     max: 5,
-                    message: '姓名长度在2到5个字符'
-                  }]
-                },
-                {
-                  label: "手机号码",
-                  prop: "phone",
-                  overHidden: true
-                },
-                {
-                  label: "电子邮箱",
-                  prop: "email",
-                  hide: true,
-                  overHidden: true
-                },
-                {
-                  label: "用户性别",
-                  prop: "sex",
-                  type: "select",
-                  dicData: [
-                    {
-                      label: "男",
-                      value: 1
-                    },
-                    {
-                      label: "女",
-                      value: 2
-                    },
-                    {
-                      label: "未知",
-                      value: 3
-                    }
-                  ],
-                  hide: true
-                },
-                {
-                  label: "用户生日",
-                  type: "date",
-                  prop: "birthday",
-                  format: "yyyy-MM-dd hh:mm:ss",
-                  valueFormat: "yyyy-MM-dd hh:mm:ss",
-                  hide: true
-                },
-                {
-                  label: "账号状态",
-                  prop: "statusName",
-                  hide: true,
-                  display: false
-                }
-              ]
-            },
-            {
-              label: '职责信息',
-              prop: 'dutyInfo',
-              icon: 'el-icon-s-custom',
-              column: [
-                {
-                  label: "用户编号",
-                  prop: "code",
-                },
-                {
-                  label: "所属角色",
-                  prop: "roleId",
-                  multiple: true,
-                  type: "tree",
-                  dicData: [],
-                  props: {
-                    label: "title"
+                    message: "姓名长度在2到5个字符",
                   },
-                  checkStrictly: true,
-                  slot: true,
-                  addDisplay:false,
-                  editDisplay:false,
-                  viewDisplay:true,
-                  // rules: [{
-                  //   required: true,
-                  //   message: "请选择所属角色",
-                  //   trigger: "click"
-                  // }]
-                },
-                {
-                  label: "所属部门",
-                  prop: "deptId",
-                  type: "cascader",
-                  //multiple: true,
-                  dicData: [],
-                  props: {
-                    label: "title"
+                ],
+              },
+              {
+                label: "手机号码",
+                prop: "phone",
+                overHidden: true,
+              },
+              {
+                label: "电子邮箱",
+                prop: "email",
+                hide: true,
+                overHidden: true,
+              },
+              {
+                label: "用户性别",
+                prop: "sex",
+                type: "select",
+                dicData: [
+                  {
+                    label: "男",
+                    value: 1,
                   },
-                  checkStrictly: true,
-                  slot: true,
-                  rules: [{
+                  {
+                    label: "女",
+                    value: 2,
+                  },
+                  {
+                    label: "未知",
+                    value: 3,
+                  },
+                ],
+                hide: true,
+              },
+              {
+                label: "用户生日",
+                type: "date",
+                prop: "birthday",
+                format: "yyyy-MM-dd hh:mm:ss",
+                valueFormat: "yyyy-MM-dd hh:mm:ss",
+                hide: true,
+              },
+              {
+                label: "账号状态",
+                prop: "statusName",
+                hide: true,
+                display: false,
+              },
+            ],
+          },
+          {
+            label: "职责信息",
+            prop: "dutyInfo",
+            icon: "el-icon-s-custom",
+            column: [
+              {
+                label: "用户编号",
+                prop: "code",
+              },
+              {
+                label: "所属角色",
+                prop: "roleId",
+                multiple: true,
+                type: "tree",
+                dicData: [],
+                props: {
+                  label: "title",
+                },
+                checkStrictly: true,
+                slot: true,
+                addDisplay: false,
+                editDisplay: false,
+                viewDisplay: true,
+                // rules: [{
+                //   required: true,
+                //   message: "请选择所属角色",
+                //   trigger: "click"
+                // }]
+              },
+              {
+                label: "所属部门",
+                prop: "deptId",
+                type: "cascader",
+                //multiple: true,
+                dicData: [],
+                props: {
+                  label: "title",
+                },
+                checkStrictly: true,
+                slot: true,
+                rules: [
+                  {
                     required: true,
                     message: "请选择所属部门",
-                    trigger: "click"
-                  }]
-                },
-                {
-                  label: "所属岗位",
-                  prop: "postId",
-                  type: "tree",
-                  multiple: true,
-                  dicData: [],
-                  props: {
-                    label: "postName",
-                    value: "id"
+                    trigger: "click",
                   },
-
-                },
-              ]
-            },
-          ]
-        },
-        data: [],
-        platformQuery: {},
-        platformSelectionList: [],
-        platformData: [],
-        platformForm: {},
-        platformOption: {
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          border: true,
-          index: true,
-          selection: true,
-          viewBtn: true,
-          dialogClickModal: false,
-          menuWidth: 120,
-          editBtnText: '配置',
-          column: [
-            {
-              label: "登录账号",
-              prop: "account",
-              search: true,
-              display: false
-            },
-            {
-              label: "所属租户",
-              prop: "tenantName",
-              slot: true,
-              display: false
-            },
-            {
-              label: "用户姓名",
-              prop: "realName",
-              search: true,
-              display: false
-            },
-            {
-              label: "用户平台",
-              prop: "userTypeName",
-              slot: true,
-              display: false
-            },
-            {
-              label: "用户平台",
-              type: "select",
-              dicUrl: "/api/blade-system/dict/dictionary?code=user_type",
-              props: {
-                label: "dictValue",
-                value: "dictKey"
+                ],
               },
-              dataType: "number",
-              search: true,
-              hide: true,
-              display: false,
-              prop: "userType",
-              rules: [{
+              {
+                label: "所属岗位",
+                prop: "postId",
+                type: "tree",
+                multiple: true,
+                dicData: [],
+                props: {
+                  label: "postName",
+                  value: "id",
+                },
+              },
+            ],
+          },
+        ],
+      },
+      data: [],
+      platformQuery: {},
+      platformSelectionList: [],
+      platformData: [],
+      platformForm: {},
+      platformOption: {
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        border: true,
+        index: true,
+        selection: true,
+        viewBtn: true,
+        dialogClickModal: false,
+        menuWidth: 120,
+        editBtnText: "配置",
+        column: [
+          {
+            label: "登录账号",
+            prop: "account",
+            search: true,
+            display: false,
+          },
+          {
+            label: "所属租户",
+            prop: "tenantName",
+            slot: true,
+            display: false,
+          },
+          {
+            label: "用户姓名",
+            prop: "realName",
+            search: true,
+            display: false,
+          },
+          {
+            label: "用户平台",
+            prop: "userTypeName",
+            slot: true,
+            display: false,
+          },
+          {
+            label: "用户平台",
+            type: "select",
+            dicUrl: "/api/blade-system/dict/dictionary?code=user_type",
+            props: {
+              label: "dictValue",
+              value: "dictKey",
+            },
+            dataType: "number",
+            search: true,
+            hide: true,
+            display: false,
+            prop: "userType",
+            rules: [
+              {
                 required: true,
                 message: "请选择用户平台",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "用户拓展",
-              prop: "userExt",
-              type: "textarea",
-              minRows: 8,
-              span: 24,
-              overHidden: true,
-              row: true,
-              hide: true,
-            },
-          ],
-        },
-        excelForm: {},
-        excelOption: {
-          submitBtn: false,
-          emptyBtn: false,
-          column: [
-            {
-              label: '模板上传',
-              prop: 'excelFile',
-              type: 'upload',
-              drag: true,
-              loadText: '模板上传中,请稍等',
-              span: 24,
-              propsHttp: {
-                res: 'data'
+                trigger: "blur",
               },
-              tip: '请上传 .xls,.xlsx 标准格式文件',
-              action: "/api/blade-user/import-user"
+            ],
+          },
+          {
+            label: "用户拓展",
+            prop: "userExt",
+            type: "textarea",
+            minRows: 8,
+            span: 24,
+            overHidden: true,
+            row: true,
+            hide: true,
+          },
+        ],
+      },
+      excelForm: {},
+      excelOption: {
+        submitBtn: false,
+        emptyBtn: false,
+        column: [
+          {
+            label: "模板上传",
+            prop: "excelFile",
+            type: "upload",
+            drag: true,
+            loadText: "模板上传中,请稍等",
+            span: 24,
+            propsHttp: {
+              res: "data",
             },
-            {
-              label: "数据覆盖",
-              prop: "isCovered",
-              type: "switch",
-              align: "center",
-              width: 80,
-              dicData: [
-                {
-                  label: "否",
-                  value: 0
-                },
-                {
-                  label: "是",
-                  value: 1
-                }
-              ],
-              value: 0,
-              slot: true,
-              rules: [
-                {
-                  required: true,
-                  message: "请选择是否覆盖",
-                  trigger: "blur"
-                }
-              ]
-            },
-            {
-              label: '模板下载',
-              prop: 'excelTemplate',
-              formslot: true,
-              span: 24,
-            }
-          ]
-        }
+            tip: "请上传 .xls,.xlsx 标准格式文件",
+            action: "/api/blade-user/import-user",
+          },
+          {
+            label: "数据覆盖",
+            prop: "isCovered",
+            type: "switch",
+            align: "center",
+            width: 80,
+            dicData: [
+              {
+                label: "否",
+                value: 0,
+              },
+              {
+                label: "是",
+                value: 1,
+              },
+            ],
+            value: 0,
+            slot: true,
+            rules: [
+              {
+                required: true,
+                message: "请选择是否覆盖",
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "模板下载",
+            prop: "excelTemplate",
+            formslot: true,
+            span: 24,
+          },
+        ],
+      },
+    };
+  },
+  watch: {
+    "form.tenantId"() {
+      if (this.form.tenantId !== "" && this.initFlag) {
+        this.initData(this.form.tenantId);
+      }
+    },
+    "excelForm.isCovered"() {
+      if (this.excelForm.isCovered !== "") {
+        const column = this.findObject(this.excelOption.column, "excelFile");
+        column.action = `/api/blade-user/import-user?isCovered=${this.excelForm.isCovered}`;
+      }
+    },
+  },
+  computed: {
+    ...mapGetters(["userInfo", "permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.user_add, false),
+        viewBtn: this.vaildData(this.permission.user_view, false),
+        delBtn: this.vaildData(this.permission.user_delete, false),
+        editBtn: this.vaildData(this.permission.user_edit, false),
       };
     },
-    watch: {
-      'form.tenantId'() {
-        if (this.form.tenantId !== '' && this.initFlag) {
-          this.initData(this.form.tenantId);
-        }
-      },
-      'excelForm.isCovered'() {
-        if (this.excelForm.isCovered !== '') {
-          const column = this.findObject(this.excelOption.column, "excelFile");
-          column.action = `/api/blade-user/import-user?isCovered=${this.excelForm.isCovered}`;
-        }
-      }
+    platformPermissionList() {
+      return {
+        addBtn: false,
+        viewBtn: false,
+        delBtn: false,
+        editBtn: this.vaildData(this.permission.user_edit, false),
+      };
     },
-    computed: {
-      ...mapGetters(["userInfo", "permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.user_add, false),
-          viewBtn: this.vaildData(this.permission.user_view, false),
-          delBtn: this.vaildData(this.permission.user_delete, false),
-          editBtn: this.vaildData(this.permission.user_edit, false)
-        };
-      },
-      platformPermissionList() {
-        return {
-          addBtn: false,
-          viewBtn: false,
-          delBtn: false,
-          editBtn: this.vaildData(this.permission.user_edit, false)
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach(ele => {
-          ids.push(ele.id);
-        });
-        return ids.join(",");
-      },
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
     },
-    mounted() {
-      // 非租户模式默认加载管理组数据
-      if (!website.tenantMode) {
-        this.initData(website.tenantId);
-      }
+  },
+  mounted() {
+    // 非租户模式默认加载管理组数据
+    if (!website.tenantMode) {
+      this.initData(website.tenantId);
+    }
+  },
+  methods: {
+    nodeClick(data) {
+      this.treeDeptId = data.id;
+      this.page.currentPage = 1;
+      this.onLoad(this.page);
     },
-    methods: {
-      nodeClick(data) {
-        this.treeDeptId = data.id;
-        this.page.currentPage = 1;
-        this.onLoad(this.page);
-      },
-      initData(tenantId) {
-        getRoleTree(tenantId).then(res => {
-          var that = this;
-          const column = this.findObject(this.option.group, "roleId");
-          column.dicData = res.data.data;
-          //数组
-          var roleData = res.data.data;
-          //遍历
-          roleData.forEach((item)=>{
-            if(item.title=="处警员"){
-                that.roleId = item.id;
-            }
-            if(item.hasChildren){
-              //取出title对比
-              if(item.title=="处警员"){
-                that.roleId = item.id;
-              }
-            }
-          })
-        });
-        getDeptTree(tenantId).then(res => {
-          const column = this.findObject(this.option.group, "deptId");
-          column.dicData = res.data.data;
-        });
-        getPostList(tenantId).then(res => {
-          const column = this.findObject(this.option.group, "postId");
-          column.dicData = res.data.data;
-        });
-      },
-      submitRole() {
-        const roleList = this.$refs.treeRole.getCheckedKeys().join(",");
-        grant(this.ids, roleList).then(() => {
-          this.roleBox = false;
-          this.$message({
-            type: "success",
-            message: "操作成功!"
-          });
-          this.onLoad(this.page);
-        });
-      },
-      rowSave(row, done, loading) {
-        row.deptId = row.deptId.join(",");
-        row.roleId = this.roleId;
-        row.postId = row.postId.join(",");
-        add(row).then(() => {
-          this.initFlag = false;
-          this.onLoad(this.page);
-          this.$message({
-            type: "success",
-            message: "操作成功!"
-          });
-          done();
-        }, error => {
-          window.console.log(error);
-          loading();
-        });
-      },
-      //打开地图
-      handleMap(row) {
-        var that =this;
-        this.showMap=true;
-        if(row.jd=="" || row.jd=="0.0"){
-          var rwjd = "115.862321";
-          var rwwd = "28.591108";
-          that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${rwjd}&wd=${rwwd}&code=${row.code}&name=${row.realName}`;
-        }else{
-          that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${row.jd}&wd=${row.wd}&code=${row.code}&name=${row.realName}`;
-        }
-        
-        this.$nextTick(() => {
-          this.$refs.securityMap.onload = () => {
-            if (window.frames[1].init) {
-              if(row.jd=="" || row.jd=="0.0"){
-                //如果处警员无位置信息,则赋值一个默认数据,否则地图无法加载
-                window.frames[1].init("SecurityMap", {
-                                x: rwjd,
-                                y: rwwd,
-                                code:row.code
-                            });
-              }else{
-                window.frames[1].init("SecurityMap", {
-                                x: row.jd,
-                                y: row.wd,
-                                code:row.code
-                            });
-              }
-              
-            } else {
-              console.log(`没有找到到window.frames[1].init`)
+    initData(tenantId) {
+      getRoleTree(tenantId).then((res) => {
+        var that = this;
+        const column = this.findObject(this.option.group, "roleId");
+        column.dicData = res.data.data;
+        //数组
+        var roleData = res.data.data;
+        //遍历
+        roleData.forEach((item) => {
+          if (item.title == "处警员") {
+            that.roleId = item.id;
+          }
+          if (item.hasChildren) {
+            //取出title对比
+            if (item.title == "处警员") {
+              that.roleId = item.id;
             }
           }
         });
-      },
-      rowUpdate(row, index, done, loading) {
-        row.deptId = row.deptId.join(",");
-        row.roleId = row.roleId.join(",");
-        row.postId = row.postId.join(",");
-        update(row).then(() => {
+      });
+      getDeptTree(tenantId).then((res) => {
+        const column = this.findObject(this.option.group, "deptId");
+        column.dicData = res.data.data;
+      });
+      getPostList(tenantId).then((res) => {
+        const column = this.findObject(this.option.group, "postId");
+        column.dicData = res.data.data;
+      });
+    },
+    submitRole() {
+      const roleList = this.$refs.treeRole.getCheckedKeys().join(",");
+      grant(this.ids, roleList).then(() => {
+        this.roleBox = false;
+        this.$message({
+          type: "success",
+          message: "操作成功!",
+        });
+        this.onLoad(this.page);
+      });
+    },
+    rowSave(row, done, loading) {
+      row.deptId = row.deptId.join(",");
+      row.roleId = this.roleId;
+      row.postId = row.postId.join(",");
+      add(row).then(
+        () => {
           this.initFlag = false;
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
           loading();
-        });
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-          });
-      },
-      searchReset() {
-        this.query = {};
-        this.treeDeptId = '';
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
         }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
-          });
-      },
-      handleReset() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择账号密码重置为123456?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-          .then(() => {
-            return resetPassword(this.ids);
-          })
-          .then(() => {
-            this.$message({
-              type: "success",
-              message: "操作成功!"
-            });
-            this.$refs.crud.toggleSelection();
-          });
-      },
-      handleGrant() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.roleTreeObj = [];
-        if (this.selectionList.length === 1) {
-          this.roleTreeObj = this.selectionList[0].roleId.split(",");
-        }
-        getRoleTree().then(res => {
-          this.roleGrantList = res.data.data;
-          this.roleBox = true;
-        });
-      },
-      handlePlatform() {
-        this.platformBox = true;
-      },
-      handleImport() {
-        this.excelBox = true;
-      },
-      uploadAfter(res, done, loading, column) {
-        this.excelBox = false;
-        this.refreshChange();
-        done();
-      },
-      handleExport() {
-        this.$confirm("是否导出用户数据?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(() => {
-          window.open(`/api/blade-user/export-user?${this.website.tokenHeader}=${getToken()}&account=${this.search.account}&realName=${this.search.realName}`);
-        });
-      },
-      handleTemplate() {
-        window.open(`/api/blade-user/export-template?${this.website.tokenHeader}=${getToken()}`);
-      },
-      beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getUser(this.form.id).then(res => {
-            this.form = res.data.data;
-            if (this.form.hasOwnProperty("deptId")) {
-              this.form.deptId = this.form.deptId.split(",");
+      );
+    },
+    //打开地图
+    handleMap(row) {
+      var that = this;
+      this.showMap = true;
+      if (row.jd == "" || row.jd == "0.0") {
+        var rwjd = "115.862321";
+        var rwwd = "28.591108";
+        that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${rwjd}&wd=${rwwd}&code=${row.code}&name=${row.realName}`;
+      } else {
+        that.baseUrl = `/map/index.html?ISinit=1&openid=SecurityMap&jd=${row.jd}&wd=${row.wd}&code=${row.code}&name=${row.realName}`;
+      }
+
+      this.$nextTick(() => {
+        this.$refs.securityMap.onload = () => {
+          if (window.frames[1].init) {
+            if (row.jd == "" || row.jd == "0.0") {
+              //如果处警员无位置信息,则赋值一个默认数据,否则地图无法加载
+              window.frames[1].init("SecurityMap", {
+                x: rwjd,
+                y: rwwd,
+                code: row.code,
+              });
+            } else {
+              window.frames[1].init("SecurityMap", {
+                x: row.jd,
+                y: row.wd,
+                code: row.code,
+              });
             }
-            if (this.form.hasOwnProperty("roleId")) {
-              this.form.roleId = this.form.roleId.split(",");
-            }
-            if (this.form.hasOwnProperty("postId")) {
-              this.form.postId = this.form.postId.split(",");
-            }
+          } else {
+            console.log(`没有找到到window.frames[1].init`);
+          }
+        };
+      });
+    },
+    rowUpdate(row, index, done, loading) {
+      row.deptId = row.deptId.join(",");
+      row.roleId = row.roleId.join(",");
+      row.postId = row.postId.join(",");
+      update(row).then(
+        () => {
+          this.initFlag = false;
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
         }
-        this.initFlag = true;
-        done();
-      },
-      currentChange(currentPage) {
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize) {
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        this.loading = true;
-        getList(page.currentPage, page.pageSize, Object.assign(params, this.query), this.treeDeptId).then(res => {
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(row.id);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
         });
-      },
-      platformRowUpdate(row, index, done, loading) {
-        updatePlatform(row.id, row.userType, row.userExt).then(() => {
+    },
+    searchReset() {
+      this.query = {};
+      this.treeDeptId = "";
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    handleReset() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择账号密码重置为123456?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return resetPassword(this.ids);
+        })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    handleGrant() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.roleTreeObj = [];
+      if (this.selectionList.length === 1) {
+        this.roleTreeObj = this.selectionList[0].roleId.split(",");
+      }
+      getRoleTree().then((res) => {
+        this.roleGrantList = res.data.data;
+        this.roleBox = true;
+      });
+    },
+    handlePlatform() {
+      this.platformBox = true;
+    },
+    handleImport() {
+      this.excelBox = true;
+    },
+    uploadAfter(res, done, loading, column) {
+      this.excelBox = false;
+      this.refreshChange();
+      done();
+    },
+    handleExport() {
+      this.$confirm("是否导出用户数据?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        window.open(
+          `/api/blade-user/export-user?${
+            this.website.tokenHeader
+          }=${getToken()}&account=${this.search.account}&realName=${
+            this.search.realName
+          }`
+        );
+      });
+    },
+    handleTemplate() {
+      window.open(
+        `/api/blade-user/export-template?${
+          this.website.tokenHeader
+        }=${getToken()}`
+      );
+    },
+    beforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getUser(this.form.id).then((res) => {
+          this.form = res.data.data;
+          if (this.form.hasOwnProperty("deptId")) {
+            this.form.deptId = this.form.deptId.split(",");
+          }
+          if (this.form.hasOwnProperty("roleId")) {
+            this.form.roleId = this.form.roleId.split(",");
+          }
+          if (this.form.hasOwnProperty("postId")) {
+            this.form.postId = this.form.postId.split(",");
+          }
+        });
+      }
+      this.initFlag = true;
+      done();
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      this.loading = true;
+      getList(
+        page.currentPage,
+        page.pageSize,
+        Object.assign(params, this.query),
+        this.treeDeptId
+      ).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+    platformRowUpdate(row, index, done, loading) {
+      updatePlatform(row.id, row.userType, row.userExt).then(
+        () => {
           this.platformOnLoad(this.platformPage);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
-        }, error => {
+        },
+        (error) => {
           window.console.log(error);
           loading();
-        });
-      },
-      platformBeforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getUserPlatform(this.platformForm.id).then(res => {
-            this.platformForm = res.data.data;
-          });
         }
-        done();
-      },
-      platformSearchReset() {
-        this.platformQuery = {};
-        this.platformOnLoad(this.platformPage);
-      },
-      platformSearchChange(params, done) {
-        this.platformQuery = params;
-        this.platformPage.currentPage = 1;
-        this.platformOnLoad(this.platformPage, params);
-        done();
-      },
-      platformSelectionChange(list) {
-        this.platformSelectionList = list;
-      },
-      platformSelectionClear() {
-        this.platformSelectionList = [];
-        this.$refs.platformCrud.toggleSelection();
-      },
-      platformCurrentChange(currentPage) {
-        this.platformPage.currentPage = currentPage;
-      },
-      platformSizeChange(pageSize) {
-        this.platformPage.pageSize = pageSize;
-      },
-      platformRefreshChange() {
-        this.platformOnLoad(this.platformPage, this.platformQuery);
-      },
-      platformOnLoad(page, params = {}) {
-        this.platformLoading = true;
-        getList(page.currentPage, page.pageSize, Object.assign(params, this.query), this.treeDeptId).then(res => {
-          const data = res.data.data;
-          this.platformPage.total = data.total;
-          this.platformData = data.records;
-          this.platformLoading = false;
-          this.selectionClear();
+      );
+    },
+    platformBeforeOpen(done, type) {
+      if (["edit", "view"].includes(type)) {
+        getUserPlatform(this.platformForm.id).then((res) => {
+          this.platformForm = res.data.data;
         });
       }
-    }
-  };
+      done();
+    },
+    platformSearchReset() {
+      this.platformQuery = {};
+      this.platformOnLoad(this.platformPage);
+    },
+    platformSearchChange(params, done) {
+      this.platformQuery = params;
+      this.platformPage.currentPage = 1;
+      this.platformOnLoad(this.platformPage, params);
+      done();
+    },
+    platformSelectionChange(list) {
+      this.platformSelectionList = list;
+    },
+    platformSelectionClear() {
+      this.platformSelectionList = [];
+      this.$refs.platformCrud.toggleSelection();
+    },
+    platformCurrentChange(currentPage) {
+      this.platformPage.currentPage = currentPage;
+    },
+    platformSizeChange(pageSize) {
+      this.platformPage.pageSize = pageSize;
+    },
+    platformRefreshChange() {
+      this.platformOnLoad(this.platformPage, this.platformQuery);
+    },
+    platformOnLoad(page, params = {}) {
+      this.platformLoading = true;
+      getList(
+        page.currentPage,
+        page.pageSize,
+        Object.assign(params, this.query),
+        this.treeDeptId
+      ).then((res) => {
+        const data = res.data.data;
+        this.platformPage.total = data.total;
+        this.platformData = data.records;
+        this.platformLoading = false;
+        this.selectionClear();
+      });
+    },
+  },
+};
 </script>
 
 <style>
-  .box {
-    height: 800px;
-  }
+.box {
+  height: 800px;
+}
 
-  .el-scrollbar {
-    height: 100%;
-  }
+.el-scrollbar {
+  height: 100%;
+}
 
-  .box .el-scrollbar__wrap {
-    overflow: scroll;
-  }
+.box .el-scrollbar__wrap {
+  overflow: scroll;
+}
 </style>
diff --git a/src/views/system/cs.vue b/src/views/system/cs.vue
index 04af80e..063d2c8 100644
--- a/src/views/system/cs.vue
+++ b/src/views/system/cs.vue
@@ -30,7 +30,7 @@
           v-if="permission.tenant_delete"
           plain
           @click="handleDelete"
-        >删 除
+          >删 除
         </el-button>
         <!--        <el-button size="small"-->
         <!--                   plain-->
@@ -48,7 +48,7 @@
       <template slot-scope="{ row }" slot="accountNumber">
         <el-tag>{{
           row.accountNumber > 0 ? row.accountNumber : "不限制"
-          }}</el-tag>
+        }}</el-tag>
       </template>
       <template slot-scope="{ row }" slot="expireTime">
         <el-tag>{{ row.expireTime ? row.expireTime : "不限制" }}</el-tag>
@@ -56,13 +56,13 @@
       <template slot-scope="{ row }" slot="type">
         <el-tag>{{
           row.type === "0"
-          ? "医院"
-          : row.type === "1"
-          ? "学校"
-          : row.type === "2"
-          ? "小区"
-          : "未知"
-          }}</el-tag>
+            ? "医院"
+            : row.type === "1"
+            ? "学校"
+            : row.type === "2"
+            ? "小区"
+            : "未知"
+        }}</el-tag>
       </template>
     </avue-crud>
     <el-dialog
@@ -125,7 +125,7 @@
                   ? 'baojinl'
                   : '',
               ]"
-            >{{ scope.row.states }}</el-tag
+              >{{ scope.row.states }}</el-tag
             >
           </template>
         </avue-crud>
@@ -135,1331 +135,1330 @@
 </template>
 
 <script>
-  import { getListliu, getListliuc } from "@/api/client/client";
-  import {
-    getList,
-    getDetail,
-    remove,
-    update,
-    add,
-    setting,
-    datasource,
-    instery,
-    updateInfoy,
-    selectTy,
-    insertss,
-    updateInfos,
-    selectTs,
-    insertsr,
-    updateInfor,
-    selectTr,
-    deletey,
-    deletes,
-    deleter,
-  } from "@/api/system/tenant";
-  import { mapGetters } from "vuex";
-  import website from "@/config/website";
-  import { getRoleTree } from "@/api/system/role";
-  import AvueMap from "avue-plugin-map";
-  var that;
-  export default {
-    data() {
-      that = this;
-      return {
-        form: {},
-        selectionList: [],
-        query: {},
-        loading: true,
-        box: false,
-        datasourceBox: false,
-        dialogVisible: false, //右侧弹窗
-        onceData: {}, //数据
-        datas: [], //cc
-        loadings: true, //等待
-        querys: {}, //搜索
-        isEdit: false,
-        pages: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0,
+import { getListliu, getListliuc } from "@/api/client/client";
+import {
+  getList,
+  getDetail,
+  remove,
+  update,
+  add,
+  setting,
+  datasource,
+  instery,
+  updateInfoy,
+  selectTy,
+  insertss,
+  updateInfos,
+  selectTs,
+  insertsr,
+  updateInfor,
+  selectTr,
+  deletey,
+  deletes,
+  deleter,
+} from "@/api/system/tenant";
+import { mapGetters } from "vuex";
+import website from "@/config/website";
+import { getRoleTree } from "@/api/system/role";
+import AvueMap from "avue-plugin-map";
+var that;
+export default {
+  data() {
+    that = this;
+    return {
+      form: {},
+      selectionList: [],
+      query: {},
+      loading: true,
+      box: false,
+      datasourceBox: false,
+      dialogVisible: false, //右侧弹窗
+      onceData: {}, //数据
+      datas: [], //cc
+      loadings: true, //等待
+      querys: {}, //搜索
+      isEdit: false,
+      pages: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      options: {
+        //表格数据
+        addBtn: false,
+        height: "auto",
+        indexLabel: "序号",
+        index: true,
+        card: true,
+        menu: false,
+        header: false,
+        searchShow: true,
+        searchMenuSpan: 8,
+        searchSpan: 8,
+        searchEnter: true,
+        calcHeight: 80,
+        //stripe:true,
+        title: "表格的标题",
+        titleSize: "h3",
+        titleStyle: {
+          color: "red",
         },
-        options: {
-          //表格数据
-          addBtn: false,
-          height: "auto",
-          indexLabel: "序号",
-          index: true,
-          card: true,
-          menu: false,
-          header: false,
-          searchShow: true,
-          searchMenuSpan: 8,
-          searchSpan: 8,
-          searchEnter: true,
-          calcHeight: 80,
-          stripe: true,
-          title: "表格的标题",
-          titleSize: "h3",
-          titleStyle: {
-            color: "red",
+        align: "center",
+        menuAlign: "center",
+        column: [
+          {
+            label: "设备名称",
+            width: 200,
+            prop: "deviceName",
+            searchPlaceholder: "设备名称/编号",
+            search: true,
+            sortable: false,
+            rules: [
+              {
+                required: true,
+                message: "请输入设备名称",
+                trigger: "blur",
+              },
+            ],
           },
-          align: "center",
-          menuAlign: "center",
-          column: [
-            {
-              label: "设备名称",
-              width: 200,
-              prop: "deviceName",
-              searchPlaceholder: "设备名称/编号",
-              search: true,
-              sortable: false,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入设备名称",
-                  trigger: "blur",
-                },
-              ],
-            },
-            {
-              label: "设备编号",
-              prop: "deviceNumber",
-              width: 110,
-            },
-            {
-              label: "使用方",
-              prop: "pid",
-              width: 200,
-              search: true,
-              hide: true,
-              type: "select",
-              // dicUrl: "/api/blade-system/dept/trees",
-              dicData: [], //getUser中直接赋值
-            },
-            {
-              label: "使用方",
-              prop: "deptName",
-              width: 200,
-            },
-            {
-              label: "布撤防状态",
-              prop: "stateSevicestate",
-              width: 110,
-            },
-            {
-              label: "设备状态",
-              prop: "states",
-              width: 90,
-              slot: true,
-              // className: "cityClass1",
-            },
-          ],
-        },
-        page: {
-          pageSize: 10,
-          currentPage: 1,
-          total: 0,
-        },
-        option: {
-          height: "auto",
-          calcHeight: 54,
-          size: "mini",
-          tip: false,
-          searchShow: true,
-          searchMenuSpan: 6,
-          border: false,
-          stripe: true,
-          index: true,
-          selection: true,
-          viewBtn: true,
-          //dialogType: 'drawer',
-          dialogClickModal: false,
-          //  searchSize: 'mini',
-          column: [
-            {
-              label: "业主ID",
-              prop: "tenantId",
-              width: 100,
-              addDisplay: false,
-              editDisplay: false,
-              span: 24,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入租户ID",
-                  trigger: "blur",
-                },
-              ],
-            },
-            {
-              label: "业主名称",
-              prop: "tenantName",
-              search: true,
-              width: 190,
-              span: 12,
-              searchSpan: 3,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入参数名称",
-                  trigger: "blur",
-                },
-              ],
-            },
-            {
-              label: "联系人",
-              prop: "linkman",
-              width: 100,
-              search: true,
-              searchSpan: 3,
-              rules: [
-                {
-                  required: true,
-                  message: "请输入联系人",
-                  trigger: "blur",
-                },
-              ],
-            },
-            {
-              label: "联系电话",
-              prop: "contactNumber",
-              width: 150,
-            },
-            {
-              label: "省份",
-              prop: "province",
-              search: true,
-              searchSpan: 3,
-              searchLabelWidth: 45,
-              placeholder: "省份",
-              type: "select",
-              props: {
-                label: "name",
-                value: "code",
+          {
+            label: "设备编号",
+            prop: "deviceNumber",
+            width: 110,
+          },
+          {
+            label: "使用方",
+            prop: "pid",
+            width: 200,
+            search: true,
+            hide: true,
+            type: "select",
+            // dicUrl: "/api/blade-system/dept/trees",
+            dicData: [], //getUser中直接赋值
+          },
+          {
+            label: "使用方",
+            prop: "deptName",
+            width: 200,
+          },
+          {
+            label: "布撤防状态",
+            prop: "stateSevicestate",
+            width: 110,
+          },
+          {
+            label: "设备状态",
+            prop: "states",
+            width: 90,
+            slot: true,
+            // className: "cityClass1",
+          },
+        ],
+      },
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+      option: {
+        height: "auto",
+        calcHeight: 54,
+        size: "mini",
+        tip: false,
+        searchShow: true,
+        searchMenuSpan: 6,
+        border: false,
+        //stripe:true,
+        index: true,
+        selection: true,
+        viewBtn: true,
+        //dialogType: 'drawer',
+        dialogClickModal: false,
+        //  searchSize: 'mini',
+        column: [
+          {
+            label: "业主ID",
+            prop: "tenantId",
+            width: 100,
+            addDisplay: false,
+            editDisplay: false,
+            span: 24,
+            rules: [
+              {
+                required: true,
+                message: "请输入租户ID",
+                trigger: "blur",
               },
-              cascaderItem: ["city", "district"],
-              dicUrl: "/api/blade-system/region/select",
-              span: 6,
-              className: "cityClass1",
-            },
-            {
-              label: "地市",
-              prop: "city",
-              type: "select",
-              searchPlaceholder: "地市",
-              placeholder: "地市",
-              searchLabelWidth: 1,
-              searchSpan: 2,
-              search: true,
-              props: {
-                label: "name",
-                value: "code",
+            ],
+          },
+          {
+            label: "业主名称",
+            prop: "tenantName",
+            search: true,
+            width: 190,
+            span: 12,
+            searchSpan: 3,
+            rules: [
+              {
+                required: true,
+                message: "请输入参数名称",
+                trigger: "blur",
               },
-              dicUrl: "/api/blade-system/region/select?code={{key}}",
-              span: 3,
-              labelWidth: "0",
-              className: "cityClass2",
-            },
-            {
-              label: "区县",
-              searchSpan: 2,
-              searchLabelWidth: 1,
-              searchPlaceholder: "区县",
-              placeholder: "区县",
-              search: true,
-              prop: "district",
-              type: "select",
-              props: {
-                label: "name",
-                value: "code",
+            ],
+          },
+          {
+            label: "联系人",
+            prop: "linkman",
+            width: 100,
+            search: true,
+            searchSpan: 3,
+            rules: [
+              {
+                required: true,
+                message: "请输入联系人",
+                trigger: "blur",
               },
-              dicUrl: "/api/blade-system/region/select?code={{key}}",
-              span: 3,
-              labelWidth: "0",
-              className: "cityClass3",
+            ],
+          },
+          {
+            label: "联系电话",
+            prop: "contactNumber",
+            width: 150,
+          },
+          {
+            label: "省份",
+            prop: "province",
+            search: true,
+            searchSpan: 3,
+            searchLabelWidth: 45,
+            placeholder: "省份",
+            type: "select",
+            props: {
+              label: "name",
+              value: "code",
             },
-            {
-              label: "地址",
-              prop: "address",
-              span: 10,
-              // labelWidth: '60',
-              hide: true,
+            cascaderItem: ["city", "district"],
+            dicUrl: "/api/blade-system/region/select",
+            span: 6,
+            className: "cityClass1",
+          },
+          {
+            label: "地市",
+            prop: "city",
+            type: "select",
+            searchPlaceholder: "地市",
+            placeholder: "地市",
+            searchLabelWidth: 1,
+            searchSpan: 2,
+            search: true,
+            props: {
+              label: "name",
+              value: "code",
             },
-            {
-              label: null,
-              prop: "map",
-              labelWidth: "0",
-              searchSpan: 0,
-              maxlength: 0,
-              hide: true,
-              span: 2,
-              // display:false,
-              component: "AvueMap",
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 3,
+            labelWidth: "0",
+            className: "cityClass2",
+          },
+          {
+            label: "区县",
+            searchSpan: 2,
+            searchLabelWidth: 1,
+            searchPlaceholder: "区县",
+            placeholder: "区县",
+            search: true,
+            prop: "district",
+            type: "select",
+            props: {
+              label: "name",
+              value: "code",
             },
-            {
-              label: "纬度",
-              hide: true,
-              addDisplay: false,
-              prop: "wd",
-              span: 6,
-            },
-            {
-              label: "经度",
-              labelWidth: "50",
-              hide: true,
-              addDisplay: false,
-              prop: "jd",
-              span: 5,
-            },
-            {
-              label: "账号额度",
-              prop: "accountNumber",
-              width: 90,
-              slot: true,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-            },
-            {
-              label: "过期时间",
-              prop: "expireTime",
-              width: 180,
-              slot: true,
-              hide: true,
-              addDisplay: false,
-              editDisplay: false,
-            },
-            {
-              label: "类型",
-              prop: "type",
-              width: 80,
-              type: "select",
-              rules: [
-                {
-                  required: true,
-                  message: "请选择类型",
-                  trigger: "blur",
-                },
-              ],
-              dicData: [
-                {
-                  label: "医院",
-                  value: "0",
-                },
-                {
-                  label: "学校",
-                  value: "1",
-                },
-                {
-                  label: "小区",
-                  value: "2",
-                },
-              ],
-              change: function (value, column) {
-                if (value.value == "0") {
-                  that.option.group = [
-                    {
-                      label: "详细信息",
-                      prop: "detailInfo",
-                      icon: "el-icon-s-order",
-                      column: [
-                        {
-                          label: "医院等级",
-                          prop: "dj",
-                          hide: true,
-                          dicData: [],
-                          props: {
-                            label: "title",
-                            value: "",
+            dicUrl: "/api/blade-system/region/select?code={{key}}",
+            span: 3,
+            labelWidth: "0",
+            className: "cityClass3",
+          },
+          {
+            label: "地址",
+            prop: "address",
+            span: 10,
+            // labelWidth: '60',
+            hide: true,
+          },
+          {
+            label: null,
+            prop: "map",
+            labelWidth: "0",
+            searchSpan: 0,
+            maxlength: 0,
+            hide: true,
+            span: 2,
+            // display:false,
+            component: "AvueMap",
+          },
+          {
+            label: "纬度",
+            hide: true,
+            addDisplay: false,
+            prop: "wd",
+            span: 6,
+          },
+          {
+            label: "经度",
+            labelWidth: "50",
+            hide: true,
+            addDisplay: false,
+            prop: "jd",
+            span: 5,
+          },
+          {
+            label: "账号额度",
+            prop: "accountNumber",
+            width: 90,
+            slot: true,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+          },
+          {
+            label: "过期时间",
+            prop: "expireTime",
+            width: 180,
+            slot: true,
+            hide: true,
+            addDisplay: false,
+            editDisplay: false,
+          },
+          {
+            label: "类型",
+            prop: "type",
+            width: 80,
+            type: "select",
+            rules: [
+              {
+                required: true,
+                message: "请选择类型",
+                trigger: "blur",
+              },
+            ],
+            dicData: [
+              {
+                label: "医院",
+                value: "0",
+              },
+              {
+                label: "学校",
+                value: "1",
+              },
+              {
+                label: "小区",
+                value: "2",
+              },
+            ],
+            change: function (value, column) {
+              if (value.value == "0") {
+                that.option.group = [
+                  {
+                    label: "详细信息",
+                    prop: "detailInfo",
+                    icon: "el-icon-s-order",
+                    column: [
+                      {
+                        label: "医院等级",
+                        prop: "dj",
+                        hide: true,
+                        dicData: [],
+                        props: {
+                          label: "title",
+                          value: "",
+                        },
+                        checkStrictly: true,
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入医院等级",
+                            trigger: "blur",
                           },
-                          checkStrictly: true,
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入医院等级",
-                              trigger: "blur",
-                            },
-                          ],
-                        },
-                        {
-                          label: "医院类别",
-                          prop: "ht",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入医院类别",
-                              trigger: "blur",
-                            },
-                          ],
-                        },
-                        {
-                          label: "成立时间",
-                          type: "datetime",
-                          prop: "ctime",
-                          format: "yyyy-MM-dd",
-                          valueFormat: "yyyy-MM-dd",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入成立时间",
-                              trigger: "blur",
-                            },
-                          ],
-                        },
-                        {
-                          label: "介绍",
-                          prop: "content",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入介绍",
-                              trigger: "blur",
-                            },
-                          ],
-                          span: 24,
-                        },
-                      ],
-                    },
-                  ];
-                } else if (value.value == "1") {
-                  that.option.group = [
-                    {
-                      label: "详细信息",
-                      prop: "dutyInfo",
-                      icon: "el-icon-s-custom",
-                      column: [
-                        {
-                          label: "学校性质",
-                          prop: "nature",
-                          hide: true,
-                          dicData: [],
-                          props: {
-                            label: "title",
-                            value: "",
+                        ],
+                      },
+                      {
+                        label: "医院类别",
+                        prop: "ht",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入医院类别",
+                            trigger: "blur",
                           },
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入学校性质",
-                              trigger: "blur",
-                            },
-                          ],
-                        },
-                        {
-                          label: "校训",
-                          prop: "motto",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入校训",
-                              trigger: "blur",
-                            },
-                          ],
-                        },
-                        {
-                          label: "创办时间",
-                          type: "datetime",
-                          prop: "ctime",
-                          format: "yyyy-MM-dd",
-                          valueFormat: "yyyy-MM-dd",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入创办时间",
-                            },
-                          ],
-                        },
-                        {
-                          label: "介绍",
-                          prop: "content",
-                          span: 24,
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入介绍",
-                            },
-                          ],
-                        },
-                      ],
-                    },
-                  ];
-                } else if (value.value == "2") {
-                  that.option.group = [
-                    {
-                      label: "详细信息",
-                      prop: "baseInfo",
-                      icon: "el-icon-s-solid",
-                      column: [
-                        {
-                          label: "小区类别",
-                          prop: "category",
-                          hide: true,
-                          dicData: [],
-                          props: {
-                            label: "title",
-                            value: "",
+                        ],
+                      },
+                      {
+                        label: "成立时间",
+                        type: "datetime",
+                        prop: "ctime",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入成立时间",
+                            trigger: "blur",
                           },
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入小区类别",
-                            },
-                          ],
+                        ],
+                      },
+                      {
+                        label: "介绍",
+                        prop: "content",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入介绍",
+                            trigger: "blur",
+                          },
+                        ],
+                        span: 24,
+                      },
+                    ],
+                  },
+                ];
+              } else if (value.value == "1") {
+                that.option.group = [
+                  {
+                    label: "详细信息",
+                    prop: "dutyInfo",
+                    icon: "el-icon-s-custom",
+                    column: [
+                      {
+                        label: "学校性质",
+                        prop: "nature",
+                        hide: true,
+                        dicData: [],
+                        props: {
+                          label: "title",
+                          value: "",
                         },
-                        {
-                          label: "小区属性",
-                          prop: "attributes",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入小区属性",
-                            },
-                          ],
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入学校性质",
+                            trigger: "blur",
+                          },
+                        ],
+                      },
+                      {
+                        label: "校训",
+                        prop: "motto",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入校训",
+                            trigger: "blur",
+                          },
+                        ],
+                      },
+                      {
+                        label: "创办时间",
+                        type: "datetime",
+                        prop: "ctime",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入创办时间",
+                          },
+                        ],
+                      },
+                      {
+                        label: "介绍",
+                        prop: "content",
+                        span: 24,
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入介绍",
+                          },
+                        ],
+                      },
+                    ],
+                  },
+                ];
+              } else if (value.value == "2") {
+                that.option.group = [
+                  {
+                    label: "详细信息",
+                    prop: "baseInfo",
+                    icon: "el-icon-s-solid",
+                    column: [
+                      {
+                        label: "小区类别",
+                        prop: "category",
+                        hide: true,
+                        dicData: [],
+                        props: {
+                          label: "title",
+                          value: "",
                         },
-                        {
-                          label: "开发商",
-                          prop: "developers",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入开发商",
-                            },
-                          ],
-                        },
-                        {
-                          label: "户型",
-                          prop: "housetype",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入户型",
-                            },
-                          ],
-                        },
-                        {
-                          label: "介绍",
-                          prop: "content",
-                          rules: [
-                            {
-                              required: true,
-                              message: "请输入介绍",
-                            },
-                          ],
-                          span: 24,
-                        },
-                      ],
-                    },
-                  ];
-                } else {
-                  that.option.group = [];
-                }
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入小区类别",
+                          },
+                        ],
+                      },
+                      {
+                        label: "小区属性",
+                        prop: "attributes",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入小区属性",
+                          },
+                        ],
+                      },
+                      {
+                        label: "开发商",
+                        prop: "developers",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入开发商",
+                          },
+                        ],
+                      },
+                      {
+                        label: "户型",
+                        prop: "housetype",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入户型",
+                          },
+                        ],
+                      },
+                      {
+                        label: "介绍",
+                        prop: "content",
+                        rules: [
+                          {
+                            required: true,
+                            message: "请输入介绍",
+                          },
+                        ],
+                        span: 24,
+                      },
+                    ],
+                  },
+                ];
+              } else {
+                that.option.group = [];
+              }
+            },
+          },
+          {
+            label: "绑定域名",
+            prop: "domain",
+            hide: true,
+          },
+          {
+            label: "系统背景",
+            prop: "backgroundUrl",
+            type: "upload",
+            listType: "picture-img",
+            action: "/api/blade-resource/oss/endpoint/put-file",
+            propsHttp: {
+              res: "data",
+              url: "link",
+            },
+            hide: true,
+            span: 24,
+          },
+        ],
+        group: [],
+      },
+      data: [],
+      settingForm: {},
+      settingOption: {
+        column: [
+          {
+            label: "账号额度",
+            prop: "accountNumber",
+            type: "number",
+            span: 24,
+          },
+          {
+            label: "过期时间",
+            prop: "expireTime",
+            type: "date",
+            format: "yyyy-MM-dd hh:mm:ss",
+            valueFormat: "yyyy-MM-dd hh:mm:ss",
+            span: 24,
+          },
+        ],
+      },
+      datasourceForm: {},
+      datasourceOption: {
+        column: [
+          {
+            label: "数据源",
+            prop: "datasourceId",
+            search: true,
+            span: 24,
+            type: "select",
+            dicUrl: "/api/blade-develop/datasource/select",
+            props: {
+              label: "name",
+              value: "id",
+            },
+            rules: [
+              {
+                required: true,
+                message: "请选择数据源",
+                trigger: "blur",
               },
-            },
-            {
-              label: "绑定域名",
-              prop: "domain",
-              hide: true,
-            },
-            {
-              label: "系统背景",
-              prop: "backgroundUrl",
-              type: "upload",
-              listType: "picture-img",
-              action: "/api/blade-resource/oss/endpoint/put-file",
-              propsHttp: {
-                res: "data",
-                url: "link",
-              },
-              hide: true,
-              span: 24,
-            },
-          ],
-          group: [],
-        },
-        data: [],
-        settingForm: {},
-        settingOption: {
-          column: [
-            {
-              label: "账号额度",
-              prop: "accountNumber",
-              type: "number",
-              span: 24,
-            },
-            {
-              label: "过期时间",
-              prop: "expireTime",
-              type: "date",
-              format: "yyyy-MM-dd hh:mm:ss",
-              valueFormat: "yyyy-MM-dd hh:mm:ss",
-              span: 24,
-            },
-          ],
-        },
-        datasourceForm: {},
-        datasourceOption: {
-          column: [
-            {
-              label: "数据源",
-              prop: "datasourceId",
-              search: true,
-              span: 24,
-              type: "select",
-              dicUrl: "/api/blade-develop/datasource/select",
-              props: {
-                label: "name",
-                value: "id",
-              },
-              rules: [
-                {
-                  required: true,
-                  message: "请选择数据源",
-                  trigger: "blur",
-                },
-              ],
-            },
-          ],
-        },
+            ],
+          },
+        ],
+      },
+    };
+  },
+  //报错: TypeError: val is undefined 处理时间2021.4.10,处理人  liuyg
+  watch: {
+    "form.map": {
+      // form是表单或者表格绑定的数据集,v-model='form'
+      handler(val) {
+        if (val) {
+          // if (that.isEdit) {
+          //   getDetail(this.form.id).then((res) => {
+          //     this.form = res.data.data;
+
+          //   });
+          // }
+
+          this.form.wd = val.latitude;
+          this.form.jd = val.longitude;
+          //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
+          var address = val.formattedAddress.toString();
+          if (address.search("县") != -1) {
+            this.form.address = address.substring(
+              address.indexOf("县") + 1,
+              address.length
+            );
+          }
+          if (address.search("区") != -1) {
+            this.form.address = address.substring(
+              address.indexOf("区") + 1,
+              address.length
+            );
+          }
+          //写入新的省市区
+          // that.form.province = val.addressComponent.province;
+          // if (val.addressComponent.city == "") {
+          //   that.form.city = val.addressComponent.province;
+          // } else {
+          //   that.form.city = val.addressComponent.city;
+          // }
+          // that.form.district = val.addressComponent.district;
+        }
+      },
+      immediate: true,
+    },
+  },
+  computed: {
+    ...mapGetters(["userInfo", "permission"]),
+    permissionList() {
+      return {
+        addBtn: this.vaildData(this.permission.tenant_add, false),
+        viewBtn: this.vaildData(this.permission.tenant_view, false),
+        delBtn: this.vaildData(this.permission.tenant_delete, false),
+        editBtn: this.vaildData(this.permission.tenant_edit, false),
       };
     },
-    //报错: TypeError: val is undefined 处理时间2021.4.10,处理人  liuyg
-    watch: {
-      "form.map": {
-        // form是表单或者表格绑定的数据集,v-model='form'
-        handler(val) {
-          if (val) {
-            // if (that.isEdit) {
-            //   getDetail(this.form.id).then((res) => {
-            //     this.form = res.data.data;
-                
-            //   });
-            // }
-
-            this.form.wd = val.latitude;
-            this.form.jd = val.longitude;
-            //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
-            var address = val.formattedAddress.toString();
-            if (address.search("县") != -1) {
-              this.form.address = address.substring(
-                address.indexOf("县") + 1,
-                address.length
-              );
-            }
-            if (address.search("区") != -1) {
-              this.form.address = address.substring(
-                address.indexOf("区") + 1,
-                address.length
-              );
-            }
-            //写入新的省市区
-            // that.form.province = val.addressComponent.province;
-            // if (val.addressComponent.city == "") {
-            //   that.form.city = val.addressComponent.province;
-            // } else {
-            //   that.form.city = val.addressComponent.city;
-            // }
-            // that.form.district = val.addressComponent.district;
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.id);
+      });
+      return ids.join(",");
+    },
+    tenantId() {
+      return this.selectionList[0].tenantId;
+    },
+  },
+  methods: {
+    rowSave(row, done, loading) {
+      add(row).then(
+        () => {
+          debugger;
+          if (row.type == "0") {
+            console.log(123);
+            instery(
+              row.dj,
+              // row.had,
+              row.ht,
+              row.ctime,
+              row.content,
+              row.tenantName
+            );
+          } else if (row.type == "1") {
+            insertss(
+              row.nature,
+              row.had,
+              // row.had,
+              row.motto,
+              row.ctime,
+              row.content,
+              row.tenantName
+            );
+          } else if (row.type == "2") {
+            insertsr(
+              row.category,
+              row.attributes,
+              row.developers,
+              row.housetype,
+              row.content,
+              row.tenantName
+            );
           }
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
         },
-        immediate: true,
-      },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
     },
-    computed: {
-      ...mapGetters(["userInfo", "permission"]),
-      permissionList() {
-        return {
-          addBtn: this.vaildData(this.permission.tenant_add, false),
-          viewBtn: this.vaildData(this.permission.tenant_view, false),
-          delBtn: this.vaildData(this.permission.tenant_delete, false),
-          editBtn: this.vaildData(this.permission.tenant_edit, false),
-        };
-      },
-      ids() {
-        let ids = [];
-        this.selectionList.forEach((ele) => {
-          ids.push(ele.id);
+    rowUpdate(row, index, done, loading) {
+      debugger;
+      if (row.type == "0") {
+        updateInfoy(
+          row.dj,
+          row.had,
+          row.ht,
+          row.ctime,
+          row.content,
+          row.tenantName
+        );
+      } else if (row.type == "1") {
+        updateInfos(
+          row.nature,
+          row.had,
+          row.motto,
+          row.ctime,
+          row.content,
+          row.tenantName
+        );
+      } else if (row.type == "2") {
+        updateInfor(
+          row.category,
+          row.attributes,
+          row.developers,
+          row.had,
+          row.housetype,
+          row.content,
+          row.tenantName
+        );
+      }
+      update(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          debugger;
+          if (row.type == "0") {
+            deletey(row.tenantName);
+          } else if (row.type == "1") {
+            deletes(row.tenantName);
+          } else if (row.type == "2") {
+            deleter(row.tenantName);
+          }
+          return remove(row.id);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
         });
-        return ids.join(",");
-      },
-      tenantId() {
-        return this.selectionList[0].tenantId;
-      },
     },
-    methods: {
-      rowSave(row, done, loading) {
-
-        add(row).then(
-          () => {
-            debugger
-            if (row.type == "0") {
-              console.log(123);
-              instery(
-                row.dj,
-                // row.had,
-                row.ht,
-                row.ctime,
-                row.content,
-                row.tenantName
-              );
-            } else if (row.type == "1") {
-              insertss(
-                row.nature,
-                row.had,
-                // row.had,
-                row.motto,
-                row.ctime,
-                row.content,
-                row.tenantName
-              );
-            } else if (row.type == "2") {
-              insertsr(
-                row.category,
-                row.attributes,
-                row.developers,
-                row.housetype,
-                row.content,
-                row.tenantName
-              );
-            }
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            done();
-          },
-          (error) => {
-            window.console.log(error);
-            loading();
-          }
-        );
-      },
-      rowUpdate(row, index, done, loading) {
-        debugger
-        if (row.type == "0") {
-          updateInfoy(
-            row.dj,
-            row.had,
-            row.ht,
-            row.ctime,
-            row.content,
-            row.tenantName
-          );
-        } else if (row.type == "1") {
-          updateInfos(
-            row.nature,
-            row.had,
-            row.motto,
-            row.ctime,
-            row.content,
-            row.tenantName
-          );
-        } else if (row.type == "2") {
-          updateInfor(
-            row.category,
-            row.attributes,
-            row.developers,
-            row.had,
-            row.housetype,
-            row.content,
-            row.tenantName
-          );
-        }
-        update(row).then(
-          () => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            done();
-          },
-          (error) => {
-            window.console.log(error);
-            loading();
-          }
-        );
-      },
-      rowDel(row) {
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning",
-        })
-          .then(() => {
-            debugger
-            if (row.type == "0") {
-              deletey(row.tenantName);
-            } else if (row.type == "1") {
-              deletes(row.tenantName);
-            } else if (row.type == "2") {
-              deleter(row.tenantName);
-            }
-            return remove(row.id);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-          });
-      },
-      beforeOpen(done, type) {
-        if (["edit"].includes(type)) {
-          that.isEdit = true;
-          getDetail(this.form.id).then((res) => {
-            if (this.form.type == "1") {
-              const data = res.data.data;
-              selectTs(this.form.tenantName).then((re) => {
-                const data = res.data.data;
-                data.nature = re.data.data[0].nature;
-                data.dj = re.data.data[0].dj;
-                data.motto = re.data.data[0].motto;
-                data.ctime = re.data.data[0].ctime;
-                //data.had = re.data.data[0].had;
-                data.content = re.data.data[0].content;
-                this.form = data;
-              });
-            } else if (this.form.type == "0") {
-              selectTy(this.form.tenantName).then((re) => {
-                console.log(re, 123);
-                const data = res.data.data;
-                data.dj = re.data.data[0].dj;
-                data.ht = re.data.data[0].ht;
-                data.ctime = re.data.data[0].ctime;
-                //.had = re.data.data[0].had;
-                data.content = re.data.data[0].content;
-                this.form = data;
-              });
-            } else if (this.form.type == "2") {
-              selectTr(this.form.tenantName).then((re) => {
-                const data = res.data.data;
-                data.dj = re.data.data[0].dj;
-                data.category = re.data.data[0].category;
-                data.attributes = re.data.data[0].attributes;
-                data.developers = re.data.data[0].developers;
-                //data.had = re.data.data[0].had;
-                data.housetype = re.data.data[0].housetype;
-                data.content = re.data.data[0].content;
-                this.form = data;
-              });
-            }
-          });
-        } else if (["view"].includes(type)) {
-          getDetail(this.form.id).then((res) => {
-            if (this.form.type == "1") {
-              selectTs(this.form.tenantName).then((re) => {
-                const data = res.data.data;
-                data.nature = re.data.data[0].nature;
-                data.motto = re.data.data[0].motto;
-                data.ctime = re.data.data[0].ctime;
-                //data.had = re.data.data[0].had;
-                data.content = re.data.data[0].content;
-                if (!(data.accountNumber > 0)) {
-                  data.accountNumber = "不限制";
-                }
-                if (!data.expireTime) {
-                  data.expireTime = "不限制";
-                }
-                this.form = data;
-              });
-            } else if (this.form.type == "0") {
-              selectTy(this.form.tenantName).then((re) => {
-                const data = res.data.data;
-                data.dj = re.data.data[0].dj;
-                data.ht = re.data.data[0].ht;
-                data.ctime = re.data.data[0].ctime;
-                //data.had = re.data.data[0].had;
-                data.content = re.data.data[0].content;
-                if (!(data.accountNumber > 0)) {
-                  data.accountNumber = "不限制";
-                }
-                if (!data.expireTime) {
-                  data.expireTime = "不限制";
-                }
-                this.form = data;
-              });
-            } else if (this.form.type == "2") {
-              selectTr(this.form.tenantName).then((re) => {
-                const data = res.data.data;
-                data.category = re.data.data[0].category;
-                data.attributes = re.data.data[0].attributes;
-                data.developers = re.data.data[0].developers;
-                //data.had = re.data.data[0].had;
-                data.housetype = re.data.data[0].housetype;
-                data.content = re.data.data[0].content;
-                if (!(data.accountNumber > 0)) {
-                  data.accountNumber = "不限制";
-                }
-                if (!data.expireTime) {
-                  data.expireTime = "不限制";
-                }
-                this.form = data;
-              });
-            }
-          });
-        }
-
-        if (["edit"].includes(type)) {
-          that.isEdit = false;
-        }
-        done();
-      },
-      searchReset() {
-        this.query = {};
-        this.onLoad(this.page);
-      },
-      searchChange(params, done) {
-        this.query = params;
-        this.page.currentPage = 1;
-        this.onLoad(this.page, params);
-        done();
-      },
-      selectionChange(list) {
-        this.selectionList = list;
-      },
-      selectionClear() {
-        this.selectionList = [];
-        this.$refs.crud.toggleSelection();
-      },
-      handleDelete() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        this.$confirm("确定将选择数据删除?", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning",
-        })
-          .then(() => {
-            return remove(this.ids);
-          })
-          .then(() => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            this.$refs.crud.toggleSelection();
-          });
-      },
-      handleSetting() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        if (this.selectionList.length === 1) {
-          getDetail(this.selectionList[0].id).then((res) => {
+    beforeOpen(done, type) {
+      if (["edit"].includes(type)) {
+        that.isEdit = true;
+        getDetail(this.form.id).then((res) => {
+          if (this.form.type == "1") {
             const data = res.data.data;
-            this.settingForm.accountNumber = data.accountNumber;
-            this.settingForm.expireTime = data.expireTime;
+            selectTs(this.form.tenantName).then((re) => {
+              const data = res.data.data;
+              data.nature = re.data.data[0].nature;
+              data.dj = re.data.data[0].dj;
+              data.motto = re.data.data[0].motto;
+              data.ctime = re.data.data[0].ctime;
+              //data.had = re.data.data[0].had;
+              data.content = re.data.data[0].content;
+              this.form = data;
+            });
+          } else if (this.form.type == "0") {
+            selectTy(this.form.tenantName).then((re) => {
+              console.log(re, 123);
+              const data = res.data.data;
+              data.dj = re.data.data[0].dj;
+              data.ht = re.data.data[0].ht;
+              data.ctime = re.data.data[0].ctime;
+              //.had = re.data.data[0].had;
+              data.content = re.data.data[0].content;
+              this.form = data;
+            });
+          } else if (this.form.type == "2") {
+            selectTr(this.form.tenantName).then((re) => {
+              const data = res.data.data;
+              data.dj = re.data.data[0].dj;
+              data.category = re.data.data[0].category;
+              data.attributes = re.data.data[0].attributes;
+              data.developers = re.data.data[0].developers;
+              //data.had = re.data.data[0].had;
+              data.housetype = re.data.data[0].housetype;
+              data.content = re.data.data[0].content;
+              this.form = data;
+            });
+          }
+        });
+      } else if (["view"].includes(type)) {
+        getDetail(this.form.id).then((res) => {
+          if (this.form.type == "1") {
+            selectTs(this.form.tenantName).then((re) => {
+              const data = res.data.data;
+              data.nature = re.data.data[0].nature;
+              data.motto = re.data.data[0].motto;
+              data.ctime = re.data.data[0].ctime;
+              //data.had = re.data.data[0].had;
+              data.content = re.data.data[0].content;
+              if (!(data.accountNumber > 0)) {
+                data.accountNumber = "不限制";
+              }
+              if (!data.expireTime) {
+                data.expireTime = "不限制";
+              }
+              this.form = data;
+            });
+          } else if (this.form.type == "0") {
+            selectTy(this.form.tenantName).then((re) => {
+              const data = res.data.data;
+              data.dj = re.data.data[0].dj;
+              data.ht = re.data.data[0].ht;
+              data.ctime = re.data.data[0].ctime;
+              //data.had = re.data.data[0].had;
+              data.content = re.data.data[0].content;
+              if (!(data.accountNumber > 0)) {
+                data.accountNumber = "不限制";
+              }
+              if (!data.expireTime) {
+                data.expireTime = "不限制";
+              }
+              this.form = data;
+            });
+          } else if (this.form.type == "2") {
+            selectTr(this.form.tenantName).then((re) => {
+              const data = res.data.data;
+              data.category = re.data.data[0].category;
+              data.attributes = re.data.data[0].attributes;
+              data.developers = re.data.data[0].developers;
+              //data.had = re.data.data[0].had;
+              data.housetype = re.data.data[0].housetype;
+              data.content = re.data.data[0].content;
+              if (!(data.accountNumber > 0)) {
+                data.accountNumber = "不限制";
+              }
+              if (!data.expireTime) {
+                data.expireTime = "不限制";
+              }
+              this.form = data;
+            });
+          }
+        });
+      }
+
+      if (["edit"].includes(type)) {
+        that.isEdit = false;
+      }
+      done();
+    },
+    searchReset() {
+      this.query = {};
+      this.onLoad(this.page);
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    selectionClear() {
+      this.selectionList = [];
+      this.$refs.crud.toggleSelection();
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          return remove(this.ids);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
           });
-        } else {
-          this.settingForm.accountNumber = -1;
-          this.settingForm.expireTime = "";
-        }
-        this.box = true;
-      },
-      handleDatasource() {
-        if (this.selectionList.length === 0) {
-          this.$message.warning("请选择至少一条数据");
-          return;
-        }
-        if (this.selectionList.length !== 1) {
-          this.$message.warning("只能选择一条数据");
-          return;
-        }
+          this.$refs.crud.toggleSelection();
+        });
+    },
+    handleSetting() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      if (this.selectionList.length === 1) {
         getDetail(this.selectionList[0].id).then((res) => {
           const data = res.data.data;
-          this.datasourceForm.datasourceId = data.datasourceId;
+          this.settingForm.accountNumber = data.accountNumber;
+          this.settingForm.expireTime = data.expireTime;
         });
-        this.datasourceBox = true;
-      },
-      handleSubmit(form, done, loading) {
-        setting(this.ids, form).then(
-          () => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "配置成功!",
-            });
-            done();
-            this.box = false;
-          },
-          (error) => {
-            window.console.log(error);
-            loading();
-          }
-        );
-      },
-      handleDatasourceSubmit(form, done, loading) {
-        datasource(this.tenantId, form.datasourceId).then(
-          () => {
-            this.$message({
-              type: "success",
-              message: "配置成功!",
-            });
-            done();
-            this.datasourceBox = false;
-          },
-          (error) => {
-            window.console.log(error);
-            loading();
-          }
-        );
-      },
-      currentChange(currentPage) {
-        this.page.currentPage = currentPage;
-      },
-      sizeChange(pageSize) {
-        this.page.pageSize = pageSize;
-      },
-      refreshChange() {
-        this.onLoad(this.page, this.query);
-      },
-      onLoad(page, params = {}) {
-        this.loading = true;
-        getList(
-          page.currentPage,
-          page.pageSize,
-          Object.assign(params, this.query)
-        ).then((res) => {
-          // console.log(res);
-          // this.onceData = res.data.data.records[0];
-          const data = res.data.data;
-          this.page.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-          this.selectionClear();
-        });
-      },
-      rowClick(val) {
-        //行点击事件 //右侧弹窗事件
-        this.onceData = val;
-        this.dialogVisible = true;
-      },
-      rowClicks(val) {
-        //弹窗行点击事件
-        // console.log(val);
-        // this.$router.push({ path: "/dataL/dataL", query: val });
-        let routeData = this.$router.resolve({
-          path: "/datalOnce",
-          query: val,
-        });
-        window.open(routeData.href, "_blank");
-      },
-      changeDataOpen(dat) {
-        //处理弹出框数据
-        console.log(dat);
-        if (dat.length > 0) {
-          for (var key in dat) {
-            let states;
-            // if (dat[key].state != "") {
-            //   states = "故障";
-            // } else {
-            //   if (dat[key].jtype != 1) {
-            //     if (dat[key].onlineStatus == 1) {
-            //       states = "在线";
-            //     } else {
-            //       states = "掉线";
-            //     }
-            //   } else {
-            //     states = "预警";
-            //   }
-            // }
-            states =
-              dat[key].dtype == 0
-                ? "掉线"
-                : dat[key].dtype == 1
-                ? "正常"
-                : dat[key].dtype == 2
-                  ? "预警"
-                  : dat[key].dtype == 3
-                    ? "故障"
-                    : "";
-            // console.log(states);
-            dat[key].states = states;
-            dat[key].stateSevicestate =
-              dat[key].devicestate == "0"
-                ? "撤防"
-                : dat[key].devicestate == "1"
-                ? "布防"
-                : "无";
-          }
-        }
-      },
-      getMout(fid) {
-        getListliuc(fid).then((res) => {
-          // console.log(res.data.data);
-          this.getUser(res.data.data);
-        });
-      },
-      getUser(dat) {
-        //建立使用方搜索关键词
-        // console.log(dat);
-        if (dat.length > 0) {
-          this.users = [];
-          for (var key in dat) {
-            this.users.push({
-              label: dat[key].title,
-              value: dat[key].id,
-            });
-          }
-        }
-        // this.users.push([
-        //   {
-
-        //   }
-        // ])
-        this.options.column[2].dicData = this.users;
-      },
-      searchResets() {
-        //清空搜索框中的内容
-        this.querys = {};
-        //清空this.$route.query
-        this.$router.push({ querys: {} });
-        this.onLoads(this.pages);
-      },
-      searchChanges(params, done) {
-        //搜索
-        console.log(params, done, 222);
-        this.querys = params;
-        this.pages.currentPage = 1;
-        this.onLoads(this.pages, params);
-        done();
-      },
-      currentChanges(currentPage) {
-        //分页改变时候触发
-        this.pages.currentPage = currentPage;
-      },
-      sizeChanges(pageSize) {
-        this.pages.pageSize = pageSize;
-      },
-      onLoads(pages, params = {}) {
-        // this.$message.success("分页信息:" + JSON.stringify(pages));
-        // this.pages.total = 40;
-        // console.log(1)
-        this.loadings = true;
-        //  console.log(2)
-        let values = {
-          ...params,
-        };
-        // console.log(3)
-        // getListliu(1, 10, {}, val.id).then((res) => {
-        var useId = this.onceData.deptId;
-        // console.log(4)
-        getListliu(pages.currentPage, pages.pageSize, values, useId).then(
-          (res) => {
-            // console.log(5)
-            // console.log(pages.currentPage, pages.pageSize, values, useId,332332)
-            // console.log(this.datas);
-            // getListliu('1', '10', {}, '1353972967828533249').then((res) => {
-            //拿到数据
-            this.datas = res.data.data.records;
-            // console.log(this.datas);
-            // console.log(pages.currentPage);
-            // console.log(pages.pageSize);
-            // console.log(this.onceData);
-            const data = res.data.data;
-            this.pages.total = data.total;
-            this.changeDataOpen(this.datas);
-            this.getMout(this.onceData.deptId);
-            this.loadings = false;
-          }
-        );
-      },
+      } else {
+        this.settingForm.accountNumber = -1;
+        this.settingForm.expireTime = "";
+      }
+      this.box = true;
     },
-    mounted() {},
-  };
+    handleDatasource() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      if (this.selectionList.length !== 1) {
+        this.$message.warning("只能选择一条数据");
+        return;
+      }
+      getDetail(this.selectionList[0].id).then((res) => {
+        const data = res.data.data;
+        this.datasourceForm.datasourceId = data.datasourceId;
+      });
+      this.datasourceBox = true;
+    },
+    handleSubmit(form, done, loading) {
+      setting(this.ids, form).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "配置成功!",
+          });
+          done();
+          this.box = false;
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    handleDatasourceSubmit(form, done, loading) {
+      datasource(this.tenantId, form.datasourceId).then(
+        () => {
+          this.$message({
+            type: "success",
+            message: "配置成功!",
+          });
+          done();
+          this.datasourceBox = false;
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    currentChange(currentPage) {
+      this.page.currentPage = currentPage;
+    },
+    sizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    onLoad(page, params = {}) {
+      this.loading = true;
+      getList(
+        page.currentPage,
+        page.pageSize,
+        Object.assign(params, this.query)
+      ).then((res) => {
+        // console.log(res);
+        // this.onceData = res.data.data.records[0];
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        this.loading = false;
+        this.selectionClear();
+      });
+    },
+    rowClick(val) {
+      //行点击事件 //右侧弹窗事件
+      this.onceData = val;
+      this.dialogVisible = true;
+    },
+    rowClicks(val) {
+      //弹窗行点击事件
+      // console.log(val);
+      // this.$router.push({ path: "/dataL/dataL", query: val });
+      let routeData = this.$router.resolve({
+        path: "/datalOnce",
+        query: val,
+      });
+      window.open(routeData.href, "_blank");
+    },
+    changeDataOpen(dat) {
+      //处理弹出框数据
+      console.log(dat);
+      if (dat.length > 0) {
+        for (var key in dat) {
+          let states;
+          // if (dat[key].state != "") {
+          //   states = "故障";
+          // } else {
+          //   if (dat[key].jtype != 1) {
+          //     if (dat[key].onlineStatus == 1) {
+          //       states = "在线";
+          //     } else {
+          //       states = "掉线";
+          //     }
+          //   } else {
+          //     states = "预警";
+          //   }
+          // }
+          states =
+            dat[key].dtype == 0
+              ? "掉线"
+              : dat[key].dtype == 1
+              ? "正常"
+              : dat[key].dtype == 2
+              ? "预警"
+              : dat[key].dtype == 3
+              ? "故障"
+              : "";
+          // console.log(states);
+          dat[key].states = states;
+          dat[key].stateSevicestate =
+            dat[key].devicestate == "0"
+              ? "撤防"
+              : dat[key].devicestate == "1"
+              ? "布防"
+              : "无";
+        }
+      }
+    },
+    getMout(fid) {
+      getListliuc(fid).then((res) => {
+        // console.log(res.data.data);
+        this.getUser(res.data.data);
+      });
+    },
+    getUser(dat) {
+      //建立使用方搜索关键词
+      // console.log(dat);
+      if (dat.length > 0) {
+        this.users = [];
+        for (var key in dat) {
+          this.users.push({
+            label: dat[key].title,
+            value: dat[key].id,
+          });
+        }
+      }
+      // this.users.push([
+      //   {
+
+      //   }
+      // ])
+      this.options.column[2].dicData = this.users;
+    },
+    searchResets() {
+      //清空搜索框中的内容
+      this.querys = {};
+      //清空this.$route.query
+      this.$router.push({ querys: {} });
+      this.onLoads(this.pages);
+    },
+    searchChanges(params, done) {
+      //搜索
+      console.log(params, done, 222);
+      this.querys = params;
+      this.pages.currentPage = 1;
+      this.onLoads(this.pages, params);
+      done();
+    },
+    currentChanges(currentPage) {
+      //分页改变时候触发
+      this.pages.currentPage = currentPage;
+    },
+    sizeChanges(pageSize) {
+      this.pages.pageSize = pageSize;
+    },
+    onLoads(pages, params = {}) {
+      // this.$message.success("分页信息:" + JSON.stringify(pages));
+      // this.pages.total = 40;
+      // console.log(1)
+      this.loadings = true;
+      //  console.log(2)
+      let values = {
+        ...params,
+      };
+      // console.log(3)
+      // getListliu(1, 10, {}, val.id).then((res) => {
+      var useId = this.onceData.deptId;
+      // console.log(4)
+      getListliu(pages.currentPage, pages.pageSize, values, useId).then(
+        (res) => {
+          // console.log(5)
+          // console.log(pages.currentPage, pages.pageSize, values, useId,332332)
+          // console.log(this.datas);
+          // getListliu('1', '10', {}, '1353972967828533249').then((res) => {
+          //拿到数据
+          this.datas = res.data.data.records;
+          // console.log(this.datas);
+          // console.log(pages.currentPage);
+          // console.log(pages.pageSize);
+          // console.log(this.onceData);
+          const data = res.data.data;
+          this.pages.total = data.total;
+          this.changeDataOpen(this.datas);
+          this.getMout(this.onceData.deptId);
+          this.loadings = false;
+        }
+      );
+    },
+  },
+  mounted() {},
+};
 </script>
 
 <style lang="scss" >
-  //scoped
-  $city-m-l: 10px;
+//scoped
+$city-m-l: 10px;
 
-  /*页面样式clientManagement.vue的样式   liuyg改*/
-  .el-card__body .city1 {
-    width: 155px;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+/*页面样式clientManagement.vue的样式   liuyg改*/
+.el-card__body .city1 {
+  width: 155px;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  .el-card__body .city2 {
-    width: 100px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+.el-card__body .city2 {
+  width: 100px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  .el-card__body .city3 {
-    width: 100px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+.el-card__body .city3 {
+  width: 100px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  /*新增窗体样式*/
-  .el-dialog .city1 {
-    width: 210px;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+/*新增窗体样式*/
+.el-dialog .city1 {
+  width: 210px;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  .el-dialog .city2 {
-    width: 105px;
-    padding-left: 5px !important;
-    padding-right: 5px !important;
-    margin-left: $city-m-l;
-  }
+.el-dialog .city2 {
+  width: 105px;
+  padding-left: 5px !important;
+  padding-right: 5px !important;
+  margin-left: $city-m-l;
+}
 
-  .el-dialog .city3 {
-    width: 105px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
-  .city2 div label {
-    display: none;
-  }
+.el-dialog .city3 {
+  width: 105px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
+.city2 div label {
+  display: none;
+}
 
-  .city3 div label {
-    display: none;
-  }
+.city3 div label {
+  display: none;
+}
 
-  /*页面样式*/
-  .el-card__body .cityClass1 {
-    width: 155px;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+/*页面样式*/
+.el-card__body .cityClass1 {
+  width: 155px;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  .el-card__body .cityClass2 {
-    width: 100px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+.el-card__body .cityClass2 {
+  width: 100px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  .el-card__body .cityClass3 {
-    width: 100px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-    margin-left: $city-m-l;
-  }
+.el-card__body .cityClass3 {
+  width: 100px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+  margin-left: $city-m-l;
+}
 
-  /*新增窗体样式*/
-  .el-dialog .cityClass1,
-  .el-dialog .cityClass2,
-  .el-dialog .cityClass3 {
-    margin-left: $city-m-l;
-    position: relative;
-    left: -10px;
-  }
-  .el-dialog .cityClass1 {
-    width: 220px;
-    padding-right: 0px !important;
-  }
+/*新增窗体样式*/
+.el-dialog .cityClass1,
+.el-dialog .cityClass2,
+.el-dialog .cityClass3 {
+  margin-left: $city-m-l;
+  position: relative;
+  left: -10px;
+}
+.el-dialog .cityClass1 {
+  width: 220px;
+  padding-right: 0px !important;
+}
 
-  .el-dialog .cityClass2 {
-    width: 130px;
-    padding-left: 5px !important;
-    padding-right: 5px !important;
-  }
+.el-dialog .cityClass2 {
+  width: 130px;
+  padding-left: 5px !important;
+  padding-right: 5px !important;
+}
 
-  .el-dialog .cityClass3 {
-    width: 130px;
-    padding-left: 0px !important;
-    padding-right: 0px !important;
-  }
+.el-dialog .cityClass3 {
+  width: 130px;
+  padding-left: 0px !important;
+  padding-right: 0px !important;
+}
 
-  .cityClass2 div label {
-    display: none;
-  }
+.cityClass2 div label {
+  display: none;
+}
 
-  .cityClass3 div label {
-    display: none;
-  }
+.cityClass3 div label {
+  display: none;
+}
 
-  .tabFontSize {
-    font-size: 15px;
-  }
+.tabFontSize {
+  font-size: 15px;
+}
 
-  .el-input__inner {
-    width: aotu;
-  }
-  .right-open {
-    //右侧弹窗样式
-    display: flex;
-    justify-content: center;
-    align-items: Center;
+.el-input__inner {
+  width: aotu;
+}
+.right-open {
+  //右侧弹窗样式
+  display: flex;
+  justify-content: center;
+  align-items: Center;
+  overflow: hidden;
+
+  .el-dialog {
+    margin: 0 auto !important;
+    height: 100%;
     overflow: hidden;
-
-    .el-dialog {
-      margin: 0 auto !important;
-      height: 100%;
-      overflow: hidden;
-      position: fixed;
-      top: 0;
+    position: fixed;
+    top: 0;
+    right: 0;
+    .el-dialog__body {
+      position: absolute;
+      left: 0;
+      top: 54px;
+      bottom: 0;
       right: 0;
-      .el-dialog__body {
-        position: absolute;
-        left: 0;
-        top: 54px;
-        bottom: 0;
-        right: 0;
-        padding: 0;
-        z-index: 1;
-        overflow: hidden;
-        overflow-y: auto;
-      }
-    }
-    @keyframes dialog-fade-in {
-      0% {
-        transform: translate3d(0, 0, 0, 100%);
-        opacity: 0;
-      }
-      100% {
-        transform: translate3d(0, 0, 0, 0);
-        opacity: 1;
-      }
-    }
-    @keyframes dialog-fade-out {
-      0% {
-        transform: translate3d(0, 0, 0);
-        opacity: 1;
-      }
-      100% {
-        transform: translate3d(0, 0, 0);
-        opacity: 0;
-      }
-    }
-    .r-o-our {
-      width: calc(100% - 2px);
-      height: calc(100% - 28px);
-      // border: hotpink 1px solid;
-      overflow: auto;
+      padding: 0;
+      z-index: 1;
+      overflow: hidden;
+      overflow-y: auto;
     }
   }
-  .diaoxianl {
-    border: 1px solid #fff;
-    color: #fff;
-    background-color: #cdcdcd;
+  @keyframes dialog-fade-in {
+    0% {
+      transform: translate3d(0, 0, 0, 100%);
+      opacity: 0;
+    }
+    100% {
+      transform: translate3d(0, 0, 0, 0);
+      opacity: 1;
+    }
   }
-  .zaixianl {
-    border: 1px solid #fff;
-    color: #fff;
-    background-color: #32c1a2;
+  @keyframes dialog-fade-out {
+    0% {
+      transform: translate3d(0, 0, 0);
+      opacity: 1;
+    }
+    100% {
+      transform: translate3d(0, 0, 0);
+      opacity: 0;
+    }
   }
-  .guzhagnl {
-    border: 1px solid #fff;
-    color: #fff;
-    background-color: #f49966;
+  .r-o-our {
+    width: calc(100% - 2px);
+    height: calc(100% - 28px);
+    // border: hotpink 1px solid;
+    overflow: auto;
   }
-  .baojinl {
-    border: 1px solid #fff;
-    color: #fff;
-    background-color: #f35b5b;
-  }
+}
+.diaoxianl {
+  border: 1px solid #fff;
+  color: #fff;
+  background-color: #cdcdcd;
+}
+.zaixianl {
+  border: 1px solid #fff;
+  color: #fff;
+  background-color: #32c1a2;
+}
+.guzhagnl {
+  border: 1px solid #fff;
+  color: #fff;
+  background-color: #f49966;
+}
+.baojinl {
+  border: 1px solid #fff;
+  color: #fff;
+  background-color: #f35b5b;
+}
 </style>

--
Gitblit v1.9.3