From 3efe6739a547da2e75f89c65c98c73727bdfb3d5 Mon Sep 17 00:00:00 2001
From: zhengpz <1838927346@qq.com>
Date: Thu, 02 Dec 2021 14:30:27 +0800
Subject: [PATCH] 改首页车辆人员及枪支接口

---
 src/views/home/index.scss     |   11 
 src/views/home/index.vue      |  323 ++++++++++++++++++++++++++++-----------------
 src/api/index/index.js        |   26 +++
 src/views/home/indexEchart.js |   52 +++---
 4 files changed, 260 insertions(+), 152 deletions(-)

diff --git a/src/api/index/index.js b/src/api/index/index.js
index c22df6f..e1668cb 100644
--- a/src/api/index/index.js
+++ b/src/api/index/index.js
@@ -158,3 +158,29 @@
     params: params
   });
 };
+// 获取押运人员列表
+export const getSelectPeo = params => {
+  return request({
+    url: "/api/blade-user/selectPeo",
+    method: "get",
+    params: params
+  });
+};
+
+// 获取车辆列表
+export const getSelectCar = (param) => {
+  return request({
+    url: '/api/car/selectCar',
+    method: 'get',
+    params: param
+  })
+}
+
+// 获取枪支列表
+export const getSelectGun = (param) => {
+  return request({
+    url: '/api/equipage/selectGun',
+    method: 'get',
+    params: param
+  })
+}
diff --git a/src/views/home/index.scss b/src/views/home/index.scss
index 6c4b929..4aa35ac 100644
--- a/src/views/home/index.scss
+++ b/src/views/home/index.scss
@@ -259,6 +259,7 @@
     /deep/ .el-table td,
     .el-table th.is-leaf {
       border-bottom-color: transparent;
+      background: rgb(3, 34, 91) !important;
     }
     /deep/ .el-table__header th {
       border-bottom: 1px solid #031a38 !important;
@@ -694,28 +695,28 @@
     height: 77%;
   }
 }
-.bottom-table{
+.bottom-table {
   width: calc(100% - 40px);
   height: 100%;
   margin: 0px 20px 15px;
   top: 50px;
-  .el-table{
+  .el-table {
     width: 100%;
     height: calc(100% - 65px);
     top: 50px;
     overflow-y: auto;
   }
 }
-::-webkit-scrollbar{
+::-webkit-scrollbar {
   display: none;
 }
-.dialog-table{
+.dialog-table {
   top: 0px !important;
   margin: 0px !important;
   width: 100% !important;
   height: calc(100% - 50px) !important;
   overflow: auto;
-  .el-table{
+  .el-table {
     width: 100%;
     height: 100%;
     overflow: auto;
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index f47c706..fe40664 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -126,33 +126,27 @@
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
-                  prop="carNum"
-                  label="押运车辆车牌号"
+                  prop="mode"
+                  label="车辆型号"
                   width="180"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="location"
-                  label="实时位置"
+                  prop="personInCharge"
+                  label="责任人"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="company"
-                  label="所属公司"
+                  prop="dateForProduction"
+                  label="出厂日期"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="linkman"
-                  label="联系人"
-                ></el-table-column>
-                <el-table-column
-                  :key="curTableType"
-                  show-overflow-tooltip
-                  prop="tel"
-                  label="联系电话"
+                  prop="detailObj"
+                  label="厂商"
                 ></el-table-column>
               </template>
               <template v-if="curTableType === 1">
@@ -165,26 +159,26 @@
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="name"
+                  prop="realName"
                   label="押运人员名称"
                   width="180"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="location"
-                  label="实时位置"
+                  prop="address"
+                  label="联系地址"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="company"
+                  prop="deptName"
                   label="所属公司"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="tel"
+                  prop="phone"
                   label="联系电话"
                 ></el-table-column>
                 <!-- <el-table-column :key="curTableType" prop="bz" label="备注">
@@ -200,32 +194,37 @@
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="number"
-                  label="枪支编号"
+                  prop="gunMode"
+                  label="枪支类型"
                   width="180"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="location"
-                  label="实时位置"
+                  prop="personInCharge"
+                  label="责任人"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="company"
-                  label="所属公司"
+                  prop="issueTime"
+                  label="发证日期"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
                   show-overflow-tooltip
-                  prop="linkman"
-                  label="负责人"
+                  prop="validTime"
+                  label="有效日期"
                 ></el-table-column>
                 <el-table-column
                   :key="curTableType"
-                  prop="tel"
-                  label="联系电话"
+                  prop="issueUnit"
+                  label="发证单位"
+                ></el-table-column>
+                <el-table-column
+                  :key="curTableType"
+                  prop="cardNumber"
+                  label="用枪编号"
                 ></el-table-column>
               </template>
             </el-table>
@@ -763,10 +762,14 @@
   selectWg,
   punishList,
   lazyTrees,
-  getSecurityUnitInfoPage
+  getSecurityUnitInfoPage,
+  getSelectPeo,
+  getSelectCar,
+  getSelectGun
 } from "../../api/index/index";
-import { getPosition, getNewPeople } from "@/api/map/people";
-import { getNewPosition } from "@/api/map/car";
+import { getPeopleList, getPosition, getNewPeople } from "@/api/map/people";
+import { getCarList, getNewPosition } from "@/api/map/car";
+import { getGunList } from "@/api/map/gun";
 
 import car from "@/assets/img/car.png";
 import peo from "@/assets/img/people.png";
@@ -865,31 +868,36 @@
   },
   methods: {
     getPeoplePosition() {
-      getPosition({ type: 1, workerId: "1432897970143014913" }).then(result => {
-        getNewPeople().then(res => {
-          if (JSON.stringify(res.data) != "{}") {
-            var arr = res.data.sort(function(a, b) {
-              return a["date"] < b["date"] ? 1 : -1;
-            });
+      getNewPeople({ type: 1, workerId: "1432897970143014913" }).then(
+        result => {
+          var res = result.data.data;
+          if (JSON.stringify(res) != "{}") {
+            var csGps = window.coordtransform.bd09togcj02(
+              Number(res.longitude),
+              Number(res.latitude)
+            );
+            // var arr = res.data.sort(function(a, b) {
+            //   return a["date"] < b["date"] ? 1 : -1;
+            // });
             this.peopleGps = {
-              LGTD: arr[0].gis_jd,
-              LTTD: arr[0].gis_wd
+              LGTD: csGps[0],
+              LTTD: csGps[1]
             };
           }
-          this.getTableData(0);
-        });
-      });
+          this.getCarPosition();
+        }
+      );
     },
     getCarPosition() {
-      getNewPosition({ imei: "861636056082414" }).then(result => {
+      getNewPosition({ type: 2, workerId: "861636056082414" }).then(result => {
         var res = result.data.data;
         if (JSON.stringify(res) != "{}") {
           this.carGps = {
-            LGTD: res.x,
-            LTTD: res.y
+            LGTD: Number(res.longitude),
+            LTTD: Number(res.latitude)
           };
         }
-        this.getTableData(0);
+        this.getTableData();
       });
     },
     //点击节点
@@ -1092,51 +1100,51 @@
       if (type === 2) {
         this.tableData.forEach(item => {
           let obj =
-            "押运车辆车牌号" +
-            item.carNum +
-            ",当前位置" +
-            item.location +
-            ",所属公司" +
-            item.company +
-            ",联系人" +
-            item.linkman +
-            ",联系电话" +
-            item.tel;
+            "押运车辆型号" +
+            item.mode +
+            ",责任人" +
+            item.personInCharge +
+            ",出厂日期" +
+            item.dateForProduction +
+            ",厂商" +
+            item.detailObj;
           this.textArr.push(obj);
         });
       } else if (type === 1) {
         this.tableData.forEach(item => {
           let obj =
             "押运人员" +
-            item.name +
-            ",当前位置" +
-            item.location +
+            item.realName +
+            ",联系地址" +
+            item.address +
             ",所属公司" +
-            item.linkman +
+            item.deptName +
             ",联系电话" +
-            item.tel;
+            item.phone;
           this.textArr.push(obj);
         });
       } else if (type === 3) {
         this.tableData.forEach(item => {
           let obj =
-            "枪支编号" +
-            item.number +
-            ",当前位置" +
-            item.location +
-            ",所属公司" +
-            item.company +
-            ",负责人" +
-            item.linkman +
-            ",联系电话" +
-            item.tel;
+            "枪支类型" +
+            item.gunMode +
+            ",责任人" +
+            item.personInCharge +
+            ",发证日期" +
+            item.issueTime +
+            ",有效日期" +
+            item.validTime +
+            ",发证单位" +
+            item.issueUnit +
+            ",用枪编号" +
+            item.cardNumber;
           this.textArr.push(obj);
         });
       }
     },
     // 获取表格及地图上的数据
-    getTableData(type) {
-      let middleData = {
+    getTableData() {
+      this.mapData = {
         1: {
           table: [],
           geoData: []
@@ -1150,58 +1158,131 @@
           geoData: []
         }
       };
-      getLiveLocationVoList({ type: type }).then(res => {
-        if (res.data.code === 200) {
-          let allData = res.data.data;
-          allData.forEach(m => {
-            let obj = {
-              location: m.location,
-              name: m.name,
-              number: m.number,
-              linkman: m.linkman,
-              company: m.company,
-              tel: m.tel,
-              carNum: m.carNum
-            };
+      // 获取人员列表
+      getSelectPeo({ type: 1, deptId: "1460129345988239362" }).then(res => {
+        var records = res.data.data;
+        records.forEach(m => {
+          let obj = {
+            address: m.address,
+            realName: m.real_name,
+            deptName: m.deptName,
+            phone: m.phone,
+            id: m.id
+          };
+          this.mapData[1]["geoData"].push([
+            Number(this.peopleGps.LGTD),
+            Number(this.peopleGps.LTTD)
+          ]);
+          this.mapData[1]["table"].push(obj);
+        });
+        this.peoNum = this.mapData[1]["table"].length;
+      });
 
-            // let geoObj = {
-            //   name: type,
-            //   value: [Number(m.longitude), Number(m.latitude)],
-            // };
-            // if (m.type === 1) {
-            //   middleData[m.type]["geoData"].push([
-            //     Number(this.peopleGps.LGTD),
-            //     Number(this.peopleGps.LTTD)
-            //   ]);
-            //   middleData[m.type]["table"].push(obj);
-            // } else if (m.type === 2) {
-            //   middleData[m.type]["geoData"].push([
-            //     Number(this.carGps.LGTD),
-            //     Number(this.carGps.LTTD)
-            //   ]);
-            //   middleData[m.type]["table"].push(obj);
-            // } else {
-            //   middleData[m.type]["geoData"].push([
-            //     Number(m.longitude),
-            //     Number(m.latitude)
-            //   ]);
-            //   middleData[m.type]["table"].push(obj);
-            // }
-            middleData[m.type]["geoData"].push([
+      //获取车辆列表
+      getSelectCar({
+        type: 1,
+        deptId: "1460129345988239362"
+      }).then(res => {
+        var records = res.data.data;
+        records.forEach(m => {
+          let obj = {
+            mode: m.mode,
+            personInCharge: m.person_in_charge,
+            dateForProduction: m.date_for_production,
+            detailObj: m.brand,
+            // location: m.address,
+            // name: m.name,
+            // company: m.deptName,
+            // tel: m.phone,
+            id: m.id
+          };
+          this.mapData[2]["geoData"].push([
+            Number(this.carGps.LGTD),
+            Number(this.carGps.LTTD)
+          ]);
+          this.mapData[2]["table"].push(obj);
+        });
+        this.carNum = this.mapData[2]["table"].length;
+        this.setMapData(2);
+      });
+
+      // 获取枪支列表
+      getLiveLocationVoList({
+        type: 3
+      }).then(res => {
+        if (res.data.code === 200) {
+          let records = res.data.data;
+          records.forEach(m => {
+            let obj = {
+              gunMode: m.number,
+              personInCharge: m.linkman,
+              issueTime: m.issueTime,
+              validTime: m.validTime,
+              issueUnit: m.issueUnit,
+              cardNumber: m.gunNum,
+              id: m.id
+            };
+            this.mapData[3]["geoData"].push([
               Number(m.longitude),
               Number(m.latitude)
             ]);
-            middleData[m.type]["table"].push(obj);
+            this.mapData[3]["table"].push(obj);
           });
-          this.carNum = middleData[2]["table"].length;
-          this.peoNum = middleData[1]["table"].length;
-          this.gunNum = middleData[3]["table"].length;
-          this.mapData = middleData;
-          this.setMapData(2);
-        } else {
-          this.$message.error(res.msg);
+          this.gunNum = this.mapData[3]["table"].length;
         }
       });
+      // getLiveLocationVoList({ type: type }).then(res => {
+      //   if (res.data.code === 200) {
+      //     let allData = res.data.data;
+      //     allData.forEach(m => {
+      //       let obj = {
+      //         location: m.location,
+      //         name: m.name,
+      //         number: m.number,
+      //         linkman: m.linkman,
+      //         company: m.company,
+      //         tel: m.tel,
+      //         carNum: m.carNum
+      //       };
+
+      //       // let geoObj = {
+      //       //   name: type,
+      //       //   value: [Number(m.longitude), Number(m.latitude)],
+      //       // };
+      //       // if (m.type === 1) {
+      //       //   middleData[m.type]["geoData"].push([
+      //       //     Number(this.peopleGps.LGTD),
+      //       //     Number(this.peopleGps.LTTD)
+      //       //   ]);
+      //       //   middleData[m.type]["table"].push(obj);
+      //       // } else if (m.type === 2) {
+      //       //   middleData[m.type]["geoData"].push([
+      //       //     Number(this.carGps.LGTD),
+      //       //     Number(this.carGps.LTTD)
+      //       //   ]);
+      //       //   middleData[m.type]["table"].push(obj);
+      //       // } else {
+      //       //   middleData[m.type]["geoData"].push([
+      //       //     Number(m.longitude),
+      //       //     Number(m.latitude)
+      //       //   ]);
+      //       //   middleData[m.type]["table"].push(obj);
+      //       // }
+      //       middleData[m.type]["geoData"].push([
+      //         Number(m.longitude),
+      //         Number(m.latitude)
+      //       ]);
+      //       middleData[m.type]["table"].push(obj);
+      //     });
+      //     this.carNum = middleData[2]["table"].length;
+      //     this.peoNum = middleData[1]["table"].length;
+      //     this.gunNum = middleData[3]["table"].length;
+      //     this.mapData = middleData;
+      //     this.setMapData(2);
+      //   } else {
+      //     this.$message.error(res.msg);
+      //   }
+      // });
     },
 
     // 获取辖区列表
@@ -1488,14 +1569,14 @@
     }
   },
   mounted() {
-    // this.getPeoplePosition();
+    this.getPeoplePosition();
     // this.getCarPosition();
     this.initEchart();
     this.getHolderNum(0);
     // this.getPoorPerformance(3);
     // this.getTableData("car");
     // this.initMap();
-    this.getTableData(0);
+    // this.getTableData(0);
     // this.initMapEchart();
     this.getOfficeData();
   }
diff --git a/src/views/home/indexEchart.js b/src/views/home/indexEchart.js
index b0c6a9f..cd3f3d0 100644
--- a/src/views/home/indexEchart.js
+++ b/src/views/home/indexEchart.js
@@ -199,7 +199,7 @@
       type: "category",
       axisLabel: {
         color: "#fff",
-        rotate: 40,
+        rotate: 40
       },
       data: nameArr
     },
@@ -579,13 +579,13 @@
       name = "保安员名称";
       label =
         "押运人员:" +
-        item.name +
-        "<br />当前位置:" +
-        item.location +
+        item.realName +
+        "<br />联系地址:" +
+        item.address +
         "<br />所属公司:" +
-        item.linkman +
+        item.deptName +
         "<br />联系电话:" +
-        item.tel;
+        item.phone;
       symbolUrl = require("@/assets/img/people.png");
       obj = {
         name: label,
@@ -594,16 +594,14 @@
     } else if (type === 2) {
       name = "押运车辆";
       label =
-        "押运车辆车牌号:" +
-        item.carNum +
-        "<br />当前位置:" +
-        item.location +
-        "<br />所属公司:" +
-        item.company +
-        "<br />联系人:" +
-        item.linkman +
-        "<br />联系电话:" +
-        item.tel;
+        "押运车辆型号:" +
+        item.mode +
+        "<br />责任人:" +
+        item.personInCharge +
+        "<br />出厂日期:" +
+        item.dateForProduction +
+        "<br />厂商:" +
+        item.detailObj;
       symbolUrl = require("@/assets/img/car.png");
       obj = {
         name: label,
@@ -612,16 +610,18 @@
     } else if (type === 3) {
       name = "枪支";
       label =
-        "枪支编号:" +
-        item.number +
-        "<br />当前位置:" +
-        item.location +
-        "<br />所属公司:" +
-        item.company +
-        "<br />负责人:" +
-        item.linkman +
-        "<br />联系电话:" +
-        item.tel;
+        "枪支类型:" +
+        item.gunMode +
+        "<br />责任人:" +
+        item.personInCharge +
+        "<br />发证日期:" +
+        item.issueTime +
+        "<br />有效日期:" +
+        item.validTime +
+        "<br />发证单位:" +
+        item.issueUnit +
+        "<br />用枪编号:" +
+        item.cardNumber;
       symbolUrl = require("@/assets/img/gun.png");
       obj = {
         name: label,

--
Gitblit v1.9.3