From cc1c0a396698648256c350f6f0fe2cb2f0b02c7e Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 27 Mar 2024 15:44:10 +0800
Subject: [PATCH] 许可按钮放出,备案审批按钮放出

---
 src/views/commandQuery/taskDistribution.vue |  254 +++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 185 insertions(+), 69 deletions(-)

diff --git a/src/views/commandQuery/taskDistribution.vue b/src/views/commandQuery/taskDistribution.vue
index 622df65..d8a7608 100644
--- a/src/views/commandQuery/taskDistribution.vue
+++ b/src/views/commandQuery/taskDistribution.vue
@@ -1,13 +1,14 @@
-/*
- * @Author: Morpheus
- * @Date: 2021-07-07 17:30:05
- * @Last Modified by: Morpheus
- * @Last Modified time: 2021-07-10 16:06:14
- * menu-name 监管信息
- */
+/* * @Author: Morpheus * @Date: 2021-07-07 17:30:05 * @Last Modified by:
+Morpheus * @Last Modified time: 2021-11-25 14:54:40 * menu-name 监管信息 */
 <template>
-  <basic-container>
+  <basic-container
+    :class="[
+      $store.state.control.screenSize == 1366 ? 'smallSize' : 'normalSize',
+      $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : '',
+    ]"
+  >
     <avue-crud
+      class="tablesss"
       :option="option"
       :table-loading="loading"
       :data="data"
@@ -15,9 +16,6 @@
       :permission="permissionList"
       v-model="form"
       ref="crud"
-      @row-update="rowUpdates"
-      @row-save="rowSave"
-      @row-del="rowDel"
       @search-change="searchChange"
       @search-reset="searchReset"
       @selection-change="selectionChange"
@@ -26,7 +24,57 @@
       @refresh-change="refreshChange"
       @on-load="onLoad"
     >
+      <template slot-scope="{ type, size, row }" slot="menu">
+        <el-button
+          icon="el-icon-location-outline"
+          :size="size"
+          :type="type"
+          @click.stop="seeLocation(row)"
+          >位置查看</el-button
+        >
+        <el-button
+          icon="el-icon-place"
+          :size="size"
+          :type="type"
+          @click.stop="seeTrack(row)"
+          >轨迹查看
+        </el-button>
+      </template>
     </avue-crud>
+
+    <el-dialog
+      class="see-location"
+      title="位置查看"
+      :visible.sync="seeLocationFlag"
+      :modal-append-to-body="false"
+      width="width"
+    >
+      <Map v-if="seeLocationFlag" ref="locationForm" />
+    </el-dialog>
+
+    <el-dialog
+      class="see-track"
+      title="轨迹查看"
+      :visible.sync="seeTrackFlag"
+      :modal-append-to-body="false"
+      width="width"
+    >
+      <div class="search">
+        选择时间:<el-date-picker
+          v-model="trackTime"
+          type="datetimerange"
+          range-separator="至"
+          start-placeholder="开始日期"
+          size="mini"
+          :editable="false"
+          end-placeholder="结束日期"
+        >
+        </el-date-picker>
+        <el-button type="text" @click="lookTrack"> 查看轨迹 </el-button>
+      </div>
+
+      <Map v-if="seeTrackFlag" ref="tarckForm" />
+    </el-dialog>
   </basic-container>
 </template>
 
@@ -42,10 +90,20 @@
 // import { datasing } from "./dataqualificationExamination";
 // import { getList } from "@/api/qualificationExamination/qualificationExamination";
 import { getLisperetaskDistribution } from "@/api/commandQuery/commandQuery";
+import {
+  getDirectiveLiveLocationVoList,
+  getDirectiveLocusInfoList,
+} from "@/api/map/people";
+
+import peoplePng from "@/assets/img/people.png";
 
 export default {
   data() {
     return {
+      seeLocationFlag: false,
+      seeTrackFlag: false,
+      trackTime: [],
+      rowData: null,
       form: {},
       query: {},
       loading: true,
@@ -53,15 +111,18 @@
         pageSize: 10,
         currentPage: 1,
         total: 0,
+        ...this.$store.state.control.changePageSize,
       },
+
       selectionList: [],
+
       option: {
         // 操作栏多余按钮去除
         delBtn: false,
         editBtn: false,
         addBtn: false,
         selection: true,
-        menu: false,
+        menu: true,
 
         searchShowBtn: false,
 
@@ -74,6 +135,7 @@
         index: true,
         viewBtn: true,
         dialogClickModal: false,
+        ...this.$store.state.control.clearOtherBut,
 
         column: [
           //   {
@@ -110,8 +172,8 @@
             label: "发送指令人",
             prop: "sendName",
             search: true,
-            searchLabelWidth: 120,
-            searchSpan: 5,
+            searchLabelWidth: 90,
+            searchSpan: 4,
             //     hide: true,
             //     editDisplay: false,
             //     addDisplay: false
@@ -120,8 +182,9 @@
           {
             label: "接收指令人",
             prop: "receiveName",
-            search: true,
-            searchLabelWidth: 120,
+            // search: true,
+            // searchSpan: 4,
+            searchLabelWidth: 90,
           },
           {
             label: "发送指令时间",
@@ -133,6 +196,8 @@
           {
             label: "指令内容",
             prop: "content",
+            search: true,
+            searchSpan: 4,
           },
           {
             label: "图片",
@@ -142,6 +207,7 @@
           },
         ],
       },
+
       data: [
         // {
         //   deptid: "江西众泰保安公司",
@@ -172,57 +238,10 @@
       return ids.join(",");
     },
   },
+  mounted() {
+    this.$store.commit("setWindowSizeHeightAdd");
+  },
   methods: {
-    rowSave(row, done, loading) {
-      adddata(row).then(
-        () => {
-          this.onLoad(this.page);
-          this.$message({
-            type: "success",
-            message: "操作成功!",
-          });
-          done();
-        },
-        (error) => {
-          window.console.log(error);
-          loading();
-        }
-      );
-    },
-    rowUpdates(row, index, done, loading) {
-      // console.log(42342);
-      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(() => {
-          return remove(row.id);
-        })
-        .then(() => {
-          this.onLoad(this.page);
-          this.$message({
-            type: "success",
-            message: "操作成功!",
-          });
-        });
-    },
     // beforeOpen(done, type) {
     //   if (["edit", "view"].includes(type)) {
     //     getDetail(this.form.id).then((res) => {
@@ -271,7 +290,8 @@
         // for (var k in this.data) {
         //   this.data[k]["url"] = "https://avuejs.com/images/logo-bg.jpg";
         // }
-        console.log(this.data, "getLisperetaskDistribution");
+        this.$store.commit("setWindowSizeHeightAdd");
+        // console.log(this.data, "getLisperetaskDistribution");
         this.loading = false;
         // this.selectionClear();
       });
@@ -320,9 +340,105 @@
         query: obj,
       });
     },
+
+    seeLocation(row) {
+      this.seeLocationFlag = true;
+
+      getDirectiveLiveLocationVoList({
+        type: 1,
+        userIds: row.receiveDirectiveIds,
+      }).then((result) => {
+        var res = result.data.data;
+        if (JSON.stringify(res) != "[]") {
+          res.forEach((data) => {
+            this.$refs.locationForm.addEntitys(
+              {
+                LGTD: data.longitude,
+                LTTD: data.latitude,
+                name: "人员位置",
+              },
+              peoplePng,
+              0.5,
+              "peoplelayer",
+              "peopleAddlayer"
+            );
+          });
+        }
+      });
+    },
+
+    seeTrack(row) {
+      this.trackTime = [];
+      this.rowData = "";
+      this.rowData = row;
+      this.seeTrackFlag = true;
+    },
+
+    lookTrack() {
+      if (this.trackTime.length == 0) {
+        this.$message({ message: "请选择开始时间", duration: 2000 });
+        return;
+      }
+      const startTime = new Date(this.trackTime[0]);
+      const start =
+        startTime.getFullYear() +
+        "-" +
+        this.disposeTime(startTime.getMonth() + 1) +
+        "-" +
+        this.disposeTime(startTime.getDate()) +
+        " " +
+        this.disposeTime(startTime.getHours()) +
+        ":" +
+        this.disposeTime(startTime.getMinutes()) +
+        ":" +
+        this.disposeTime(startTime.getSeconds());
+      if (this.trackTime.length == 1) {
+        this.$message({ message: "请选择结束时间", duration: 2000 });
+        return;
+      }
+      const endTime = new Date(this.trackTime[1]);
+      const end =
+        endTime.getFullYear() +
+        "-" +
+        this.disposeTime(endTime.getMonth() + 1) +
+        "-" +
+        this.disposeTime(endTime.getDate()) +
+        " " +
+        this.disposeTime(endTime.getHours()) +
+        ":" +
+        this.disposeTime(endTime.getMinutes()) +
+        ":" +
+        this.disposeTime(endTime.getSeconds());
+
+      getDirectiveLocusInfoList({
+        userIds: this.rowData.receiveDirectiveIds,
+        type: 1,
+        startTime: start,
+        endTime: end,
+      }).then((res) => {
+        var result = res.data.data;
+        if (JSON.stringify(res) != "[]") {
+          result.forEach((item) => {
+            if (item.length > 1) {
+              let arr = [];
+
+              item.forEach((data) => {
+                arr.push([Number(data.longitude), Number(data.latitude)]);
+              });
+
+              this.$refs.tarckForm.addLines(arr);
+            }
+          });
+        }
+      });
+    },
+
+    // 处理时间补零操作
+    disposeTime(s) {
+      return s < 10 ? "0" + s : s;
+    },
   },
 };
 </script>
 
-<style>
-</style>
+<style></style>

--
Gitblit v1.9.3