保安监管系统-验收版本
liuyg
2021-12-01 2c562e0c277ffe2bc90a39081a2b456e9d23c948
Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/zhba_regulatory_ys
8 files modified
1 files added
660 ■■■■■ changed files
public/geo.js 153 ●●●●● patch | view | raw | blame | history
public/index.html 3 ●●●● patch | view | raw | blame | history
src/components/map/main.vue 2 ●●●●● patch | view | raw | blame | history
src/views/commandQuery/taskDistribution.vue 36 ●●●● patch | view | raw | blame | history
src/views/home/index.scss 1 ●●●● patch | view | raw | blame | history
src/views/home/index.vue 357 ●●●●● patch | view | raw | blame | history
src/views/home/indexEchart.js 51 ●●●● patch | view | raw | blame | history
src/views/map/carGps.vue 32 ●●●●● patch | view | raw | blame | history
src/views/map/peopleGps.vue 25 ●●●● patch | view | raw | blame | history
public/geo.js
New file
@@ -0,0 +1,153 @@
/**
 * Created by Wandergis on 2015/7/8.
 * 提供了百度坐标(BD-09)、国测局坐标(火星坐标,GCJ-02)、和 WGS-84 坐标系之间的转换
 */
// UMD 魔法代码
// if the module has no dependencies, the above pattern can be simplified to
(function (root, factory) {
  if (typeof define === 'function' && define.amd) {
    // AMD. Register as an anonymous module.
    define([], factory);
  } else if (typeof module === 'object' && module.exports) {
    // Node. Does not work with strict CommonJS, but
    // only CommonJS-like environments that support module.exports,
    // like Node.
    module.exports = factory();
  } else {
    // Browser globals (root is window)
    root.coordtransform = factory();
  }
}(this, function () {
  // 定义一些常量
  var x_PI = 3.14159265358979324 * 3000.0 / 180.0;
  var PI = 3.1415926535897932384626;
  var a = 6378245.0;
  var ee = 0.00669342162296594323;
  /**
   * 百度坐标系 (BD-09) 与 火星坐标系 (GCJ-02) 的转换
   * 即 百度 转 谷歌、高德
   * @param bd_lng
   * @param bd_lat
   * @returns {*[]}
   */
  var bd09togcj02 = function bd09togcj02(bd_lng, bd_lat) {
    var bd_lng = +bd_lng;
    var bd_lat = +bd_lat;
    var x = bd_lng - 0.0065;
    var y = bd_lat - 0.006;
    var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_PI);
    var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_PI);
    var gg_lng = z * Math.cos(theta);
    var gg_lat = z * Math.sin(theta);
    return [gg_lng, gg_lat]
  };
  /**
   * 火星坐标系 (GCJ-02) 与百度坐标系 (BD-09) 的转换
   * 即 谷歌、高德 转 百度
   * @param lng
   * @param lat
   * @returns {*[]}
   */
  var gcj02tobd09 = function gcj02tobd09(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    var z = Math.sqrt(lng * lng + lat * lat) + 0.00002 * Math.sin(lat * x_PI);
    var theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * x_PI);
    var bd_lng = z * Math.cos(theta) + 0.0065;
    var bd_lat = z * Math.sin(theta) + 0.006;
    return [bd_lng, bd_lat]
  };
  /**
   * WGS-84 转 GCJ-02
   * @param lng
   * @param lat
   * @returns {*[]}
   */
  var wgs84togcj02 = function wgs84togcj02(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    if (out_of_china(lng, lat)) {
      return [lng, lat]
    } else {
      var dlat = transformlat(lng - 105.0, lat - 35.0);
      var dlng = transformlng(lng - 105.0, lat - 35.0);
      var radlat = lat / 180.0 * PI;
      var magic = Math.sin(radlat);
      magic = 1 - ee * magic * magic;
      var sqrtmagic = Math.sqrt(magic);
      dlat = (dlat * 180.0) / ((a * (1 - ee)) / (magic * sqrtmagic) * PI);
      dlng = (dlng * 180.0) / (a / sqrtmagic * Math.cos(radlat) * PI);
      var mglat = lat + dlat;
      var mglng = lng + dlng;
      return [mglng, mglat]
    }
  };
  /**
   * GCJ-02 转换为 WGS-84
   * @param lng
   * @param lat
   * @returns {*[]}
   */
  var gcj02towgs84 = function gcj02towgs84(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    if (out_of_china(lng, lat)) {
      return [lng, lat]
    } else {
      var dlat = transformlat(lng - 105.0, lat - 35.0);
      var dlng = transformlng(lng - 105.0, lat - 35.0);
      var radlat = lat / 180.0 * PI;
      var magic = Math.sin(radlat);
      magic = 1 - ee * magic * magic;
      var sqrtmagic = Math.sqrt(magic);
      dlat = (dlat * 180.0) / ((a * (1 - ee)) / (magic * sqrtmagic) * PI);
      dlng = (dlng * 180.0) / (a / sqrtmagic * Math.cos(radlat) * PI);
      var mglat = lat + dlat;
      var mglng = lng + dlng;
      return [lng * 2 - mglng, lat * 2 - mglat]
    }
  };
  var transformlat = function transformlat(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    var ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * Math.sqrt(Math.abs(lng));
    ret += (20.0 * Math.sin(6.0 * lng * PI) + 20.0 * Math.sin(2.0 * lng * PI)) * 2.0 / 3.0;
    ret += (20.0 * Math.sin(lat * PI) + 40.0 * Math.sin(lat / 3.0 * PI)) * 2.0 / 3.0;
    ret += (160.0 * Math.sin(lat / 12.0 * PI) + 320 * Math.sin(lat * PI / 30.0)) * 2.0 / 3.0;
    return ret
  };
  var transformlng = function transformlng(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    var ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * Math.sqrt(Math.abs(lng));
    ret += (20.0 * Math.sin(6.0 * lng * PI) + 20.0 * Math.sin(2.0 * lng * PI)) * 2.0 / 3.0;
    ret += (20.0 * Math.sin(lng * PI) + 40.0 * Math.sin(lng / 3.0 * PI)) * 2.0 / 3.0;
    ret += (150.0 * Math.sin(lng / 12.0 * PI) + 300.0 * Math.sin(lng / 30.0 * PI)) * 2.0 / 3.0;
    return ret
  };
  /**
   * 判断是否在国内,不在国内则不做偏移
   * @param lng
   * @param lat
   * @returns {boolean}
   */
  var out_of_china = function out_of_china(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    // 纬度 3.86~53.55, 经度 73.66~135.05
    return !(lng > 73.66 && lng < 135.05 && lat > 3.86 && lat < 53.55);
  };
  return {
    bd09togcj02: bd09togcj02,
    gcj02tobd09: gcj02tobd09,
    wgs84togcj02: wgs84togcj02,
    gcj02towgs84: gcj02towgs84
  }
}));
public/index.html
@@ -18,6 +18,7 @@
  <link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/2.8.12/index.css">
  <script src="<%= BASE_URL %>cdn/xlsx/FileSaver.min.js"></script>
  <script src="<%= BASE_URL %>cdn/xlsx/xlsx.full.min.js"></script>
  <script src="./geo.js"></script>
  <link rel="icon" href="<%= BASE_URL %>favicon.png">
  <!-- <title>保安监管系统</title> -->
  <title>智慧保安监管模块</title>
@@ -121,4 +122,4 @@
  <script src="<%= BASE_URL %>cdn/avue/2.8.12/avue.min.js" charset="utf-8"></script>
</body>
</html>
</html>
src/components/map/main.vue
@@ -196,6 +196,8 @@
  },
  methods: {
    addEntitys(item, icon, scale, name, type) {
      console.log(item, 565)
      this[type].getSource().clear();
      const iconFeature = new Feature({
src/views/commandQuery/taskDistribution.vue
@@ -86,7 +86,7 @@
// import { datasing } from "./dataqualificationExamination";
// import { getList } from "@/api/qualificationExamination/qualificationExamination";
import { getLisperetaskDistribution } from "@/api/commandQuery/commandQuery";
import { getDirectiveLiveLocationVoList, getDirectiveLocusInfoList, getNewPeople, getNewTark } from "@/api/map/people";
import { getDirectiveLiveLocationVoList, getDirectiveLocusInfoList, getNewPeople } from "@/api/map/people";
import peoplePng from "@/assets/img/people.png";
@@ -496,38 +496,20 @@
                startTime: start,
                endTime: end,
            }).then((res) => {
                getNewTark().then(res => {
                    if (JSON.stringify(res.data.track) != "{}") {
                        if (res.data.track.length > 1) {
                var result = res.data.data;
                if (JSON.stringify(res) != "[]") {
                    result.forEach((item) => {
                        if (item.length > 1) {
                            let arr = [];
                            res.data.track.forEach((item) => {
                                arr.push([Number(item.gis_jd), Number(item.gis_wd)]);
                            item.forEach((data) => {
                                arr.push([Number(data.longitude), Number(data.latitude)]);
                            });
                            this.$refs.tarckForm.addLines(arr);
                        }
                    }
                })
                // 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);
                //         }
                //     })
                // }
                    })
                }
            });
        },
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;
src/views/home/index.vue
@@ -132,34 +132,34 @@
              ></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="联系人"
                prop="detailObj"
                label="厂商"
              ></el-table-column>
              <el-table-column
              <!-- <el-table-column
                :key="curTableType"
                show-overflow-tooltip
                prop="tel"
                label="联系电话"
              ></el-table-column>
              ></el-table-column> -->
            </template>
            <template v-if="curTableType === 1">
              <el-table-column
@@ -171,30 +171,30 @@
              <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="备注">
              </el-table-column>-->
              </el-table-column> -->
            </template>
            <template v-if="curTableType === 3">
              <el-table-column
@@ -206,34 +206,40 @@
              <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="联系电话"
              ></el-table-column> </template
            ><template v-if="curTableType === 4">
                prop="issueUnit"
                label="发证单位"
              ></el-table-column>
              <el-table-column
                :key="curTableType"
                prop="cardNumber"
                label="用枪编号"
              ></el-table-column>
            </template>
            <template v-if="curTableType === 4">
              <el-table-column
                :key="curTableType"
                type="index"
@@ -714,8 +720,9 @@
  getSubstationWarnInfoPage
} 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";
@@ -816,13 +823,15 @@
            var arr = res.data.sort(function(a, b) {
              return a["date"] < b["date"] ? 1 : -1;
            });
            var csGps = [Number(arr[0].gis_jd), Number(arr[0].gis_wd)];
            this.peopleGps = {
              LGTD: arr[0].gis_jd,
              LTTD: arr[0].gis_wd
              LGTD: csGps[0],
              LTTD: csGps[1]
            };
          }
          this.getCarPosition();
        });
      });
    },
@@ -831,12 +840,11 @@
        var res = result.data.data;
        if (JSON.stringify(res) != "{}") {
          this.carGps = {
            LGTD: res.x,
            LTTD: res.y
            LGTD: Number(res.x),
            LTTD: Number(res.y)
          };
        }
        this.getTableData(0);
        this.getTableData();
      });
    },
    //点击节点
@@ -1118,51 +1126,52 @@
      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 = middleData;
      this.mapData = {
        1: {
          table: [],
          geoData: []
@@ -1174,76 +1183,158 @@
        3: {
          table: [],
          geoData: []
        },
        4: {
          table: [],
          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,
              id: m.id
            };
            // if (
            //   m.longitude &&
            //   m.latitude &&
            //   m.longitude !== "0" &&
            //   m.latitude !== "0"
            // ) {
              if (m.type === 1) {
                middleData[m.type]["geoData"].push([
                  m.id,
                  Number(this.peopleGps.LGTD),
                  Number(this.peopleGps.LTTD)
                ]);
                middleData[m.type]["table"].push(obj);
              } else if (m.type === 2) {
                middleData[m.type]["geoData"].push([
                  m.id,
                  Number(this.carGps.LGTD),
                  Number(this.carGps.LTTD)
                ]);
                middleData[m.type]["table"].push(obj);
              } else {
                middleData[m.type]["geoData"].push([
                  m.id,
                  Number(m.longitude),
                  Number(m.latitude)
                ]);
                middleData[m.type]["table"].push(obj);
              }
            // }
            // if (
            //   m.longitude &&
            //   m.latitude &&
            //   m.longitude !== "0" &&
            //   m.latitude !== "0"
            // ) {
            //   middleData[m.type]["geoData"].push([
            //     m.id,
            //     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);
          // this.getCompanyMap();
        } else {
          this.$message.error(res.msg);
        }
      this.getCompanyMap();
      // 获取人员列表
      getPeopleList({
        current: 1,
        size: 100000
      }).then(res => {
        var records = res.data.data.records;
        records.forEach(m => {
          let obj = {
            address: m.address,
            realName: m.realName,
            deptName: m.deptName,
            phone: m.phone,
            id: m.id
          };
          this.mapData[1]["geoData"].push([
            m.id,
            Number(this.peopleGps.LGTD),
            Number(this.peopleGps.LTTD)
          ]);
          this.mapData[1]["table"].push(obj);
        });
        this.peoNum = this.mapData[1]["table"].length;
      });
      //获取车辆列表
      getCarList({
        current: 1,
        size: 100000
      }).then(res => {
        var records = res.data.data.records;
        records.forEach(m => {
          let obj = {
            mode: m.mode,
            personInCharge: m.personInCharge,
            dateForProduction: m.dateForProduction,
            detailObj: m.detailObj,
            // location: m.address,
            // name: m.name,
            // company: m.deptName,
            // tel: m.phone,
            id: m.id
          };
          this.mapData[2]["geoData"].push([
            m.id,
            Number(this.carGps.LGTD),
            Number(this.carGps.LTTD)
          ]);
          this.mapData[2]["table"].push(obj);
        });
        this.carNum = this.mapData[2]["table"].length;
        this.setMapData(2);
      });
      // 获取枪支列表
      getGunList({
        current: 1,
        size: 100000
      }).then(res => {
        var records = res.data.data.records;
        records.forEach(m => {
          let obj = {
            gunMode: m.gunMode,
            personInCharge: m.personInCharge,
            issueTime: m.issueTime,
            validTime: m.validTime,
            issueUnit: m.issueUnit,
            cardNumber: m.cardNumber,
            id: m.id
          };
          this.mapData[3]["geoData"].push([
            m.id,
            Number(this.carGps.LGTD),
            Number(this.carGps.LTTD)
          ]);
          this.mapData[3]["table"].push(obj);
        });
        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,
      //         id: m.id
      //       };
      //       // if (
      //       //   m.longitude &&
      //       //   m.latitude &&
      //       //   m.longitude !== "0" &&
      //       //   m.latitude !== "0"
      //       // ) {
      //       // if (m.type === 1) {
      //       //   middleData[m.type]["geoData"].push([
      //       //     m.id,
      //       //     Number(this.peopleGps.LGTD),
      //       //     Number(this.peopleGps.LTTD)
      //       //   ]);
      //       //   middleData[m.type]["table"].push(obj);
      //       // } else
      //       if (m.type === 2) {
      //         middleData[m.type]["geoData"].push([
      //           m.id,
      //           Number(this.carGps.LGTD),
      //           Number(this.carGps.LTTD)
      //         ]);
      //         middleData[m.type]["table"].push(obj);
      //       } else {
      //         middleData[m.type]["geoData"].push([
      //           m.id,
      //           Number(m.longitude),
      //           Number(m.latitude)
      //         ]);
      //         middleData[m.type]["table"].push(obj);
      //       }
      //       // }
      //       // if (
      //       //   m.longitude &&
      //       //   m.latitude &&
      //       //   m.longitude !== "0" &&
      //       //   m.latitude !== "0"
      //       // ) {
      //       //   middleData[m.type]["geoData"].push([
      //       //     m.id,
      //       //     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;
      //   } else {
      //     this.$message.error(res.msg);
      //   }
      // });
    },
    // 获取保安公司地图数据
    getCompanyMap() {
@@ -1279,7 +1370,7 @@
            obj["table"].push(item);
          });
          this.companyNum = obj["table"].length;
          this.mapData["4"] = {};
          // this.mapData["4"] = {};
          this.mapData["4"] = obj;
        }
      });
@@ -1578,7 +1669,7 @@
    this.initEchart();
    this.getHolderNum(0);
    // this.getTableData(0);
    this.getCompanyMap();
    // this.getCompanyMap();
    this.getOfficeData();
  }
};
src/views/home/indexEchart.js
@@ -556,6 +556,7 @@
  return option;
}
function middleData(allData, type) {
  debugger;
  var ncMap = nc;
  let name = "";
  let label = "";
@@ -568,13 +569,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,
@@ -584,16 +585,14 @@
      } else if (item.id === items[0] && 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,
@@ -603,16 +602,18 @@
      } else if (item.id === items[0] && 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,
src/views/map/carGps.vue
@@ -2,7 +2,7 @@
 * @Author: Morpheus
 * @Date: 2021-07-05 16:31:54
 * @Last Modified by: Morpheus
 * @Last Modified time: 2021-11-25 15:24:53
 * @Last Modified time: 2021-11-30 17:31:34
 * menu-name 押运人员定位
 */
<template>
@@ -203,16 +203,16 @@
        },
        positionClick (val) {
            // console.log(val)
            getNewPosition({ imei: "861636056082414" }).then((result) => {
                var res = result.data.data;
                if (JSON.stringify(res) != "{}") {
                    this.$refs.modalForm.addEntitys(
                        {
                            LGTD: res.x,
                            LTTD: res.y,
                            LGTD: Number(res.x),
                            LTTD: Number(res.y),
                            name: "车辆位置",
                        },
                        carPng,
@@ -254,7 +254,7 @@
                ":" +
                this.disposeTime(startTime.getSeconds());
            const startTWO =
            const startTwo =
                startTime.getFullYear() + '' +
                this.disposeTime(startTime.getMonth() + 1) + '' +
                this.disposeTime(startTime.getDate());
@@ -277,7 +277,7 @@
                ":" +
                this.disposeTime(endTime.getSeconds());
            const endTWO =
            const endTwo =
                endTime.getFullYear() + '' +
                this.disposeTime(endTime.getMonth() + 1) + '' +
                this.disposeTime(endTime.getDate());
@@ -290,19 +290,25 @@
            }).then((res) => {
                getNewCarTark({
                    beginTime: startTWO,
                    endTime: endTWO,
                    beginTime: startTwo,
                    endTime: endTwo,
                    rectify: 0,
                    callbackId: 123
                }).then(res => {
                    axios.get('http://s16s652780.51mypc.cn/car/' + res.data.data).then(result => {
                        var ret = d3.csvParse(result.data)
                        var ret = d3.csvParse(result.data);
                        var b = ret.slice(0, ret.length - 1);
                        var array = b.sort(function (a, b) {
                            return a['ts'] > b['ts'] ? 1 : -1
                        })
                        let arr = [];
                        ret.forEach((item, index) => {
                            if (index < ret.length - 1) {
                                arr.push([Number(item.x), Number(item.y)]);
                            }
                        array.forEach((item) => {
                            arr.push([Number(item.x), Number(item.y)]);
                        })
src/views/map/peopleGps.vue
@@ -2,7 +2,7 @@
 * @Author: Morpheus
 * @Date: 2021-07-05 16:31:54
 * @Last Modified by: Morpheus
 * @Last Modified time: 2021-11-25 13:48:23
 * @Last Modified time: 2021-11-30 17:27:53
 * menu-name 押运人员定位
 */
<template>
@@ -197,10 +197,12 @@
                            return a['date'] < b['date'] ? 1 : -1
                        })
                        var csGps = window.coordtransform.bd09togcj02(Number(arr[0].gis_jd), Number(arr[0].gis_wd));
                        this.$refs.modalForm.addEntitys(
                            {
                                LGTD: arr[0].gis_jd,
                                LTTD: arr[0].gis_wd,
                                LGTD: csGps[0],
                                LTTD: csGps[1],
                                name: "人员位置",
                            },
                            peoplePng,
@@ -284,15 +286,24 @@
                endTime: end,
            }).then((result) => {
                getNewTark().then(res => {
                getNewTark({
                    startTime: start,
                    endTime: end,
                }).then(res => {
                    if (JSON.stringify(res.data.track) != "{}") {
                        if (res.data.track.length > 1) {
                        var array = res.data.track.sort(function (a, b) {
                            return a['date'] > b['date'] ? 1 : -1
                        })
                        if (array.length > 1) {
                            let arr = [];
                            res.data.track.forEach((item) => {
                                arr.push([Number(item.gis_jd), Number(item.gis_wd)]);
                            array.forEach((item) => {
                                var csGps = window.coordtransform.bd09togcj02(Number(item.gis_jd), Number(item.gis_wd));
                                arr.push([Number(csGps[0]), Number(csGps[1])]);
                            });
                            this.$refs.modalForm.addLines(arr);