shuishen
2021-09-15 93142831f31a0b4f2ea2e3eebeabb8ac7113d49f
Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/zhba_regulatory
20 files modified
497 ■■■■■ changed files
src/api/securityCompany/companyDetails.js 14 ●●●●● patch | view | raw | blame | history
src/page/index/top/index.vue 4 ●●●● patch | view | raw | blame | history
src/views/authority/role.vue 46 ●●●● patch | view | raw | blame | history
src/views/home/index.vue 185 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/branchOffice.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/cancellationOfFiling.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/crossRegion.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/securityGuard.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/securityPermit.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/securityTraining.vue 4 ●●●● patch | view | raw | blame | history
src/views/permit/permit.vue 4 ●●●● patch | view | raw | blame | history
src/views/record/record.vue 4 ●●●● patch | view | raw | blame | history
src/views/recordk/recordk.vue 4 ●●●● patch | view | raw | blame | history
src/views/revoke/revoke.vue 4 ●●●● patch | view | raw | blame | history
src/views/securityCompany/column.js 6 ●●●●● patch | view | raw | blame | history
src/views/securityCompany/companyDetails.vue 39 ●●●● patch | view | raw | blame | history
src/views/securityUnitOperation/economicAnalysis.vue 37 ●●●● patch | view | raw | blame | history
src/views/securityUnitOperation/operationAnalysis.vue 63 ●●●● patch | view | raw | blame | history
src/views/statisticalQueryManagement/securityGuardStatistics.vue 61 ●●●● patch | view | raw | blame | history
vue.config.js 2 ●●● patch | view | raw | blame | history
src/api/securityCompany/companyDetails.js
@@ -76,3 +76,17 @@
    }
  })
}
export const usejurisdiction = () => {
  return request({
    url: '/api/jurisdiction/lazy-tree',
    method: 'get',
    // params: {
    //   ...params,
    //   current,
    //   size,
    //   creditcode,
    // }
  })
}
src/page/index/top/index.vue
@@ -51,13 +51,13 @@
          <top-theme></top-theme>
        </div>
      </el-tooltip>
      <el-tooltip effect="dark"
      <!-- <el-tooltip effect="dark"
                  :content="$t('navbar.notice')"
                  placement="bottom">
        <div class="top-bar__item top-bar__item--show">
          <top-notice></top-notice>
        </div>
      </el-tooltip>
      </el-tooltip> -->
      <el-tooltip effect="dark"
                  :content="$t('navbar.language')"
                  placement="bottom">
src/views/authority/role.vue
@@ -156,29 +156,29 @@
              },
            ],
          },
          {
            label: "所属租户",
            prop: "tenantId",
            type: "tree",
            dicUrl: "/api/blade-system/tenant/select",
            addDisplay: false,
            editDisplay: false,
            viewDisplay: website.tenantMode,
            span: 24,
            props: {
              label: "tenantName",
              value: "tenantId",
            },
            hide: !website.tenantMode,
            search: website.tenantMode,
            rules: [
              {
                required: true,
                message: "请输入所属租户",
                trigger: "click",
              },
            ],
          },
          // {
          //   label: "所属租户",
          //   prop: "tenantId",
          //   type: "tree",
          //   dicUrl: "/api/blade-system/tenant/select",
          //   addDisplay: false,
          //   editDisplay: false,
          //   viewDisplay: website.tenantMode,
          //   span: 24,
          //   props: {
          //     label: "tenantName",
          //     value: "tenantId",
          //   },
          //   hide: !website.tenantMode,
          //   search: website.tenantMode,
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属租户",
          //       trigger: "click",
          //     },
          //   ],
          // },
          {
            label: "角色别名",
            prop: "roleAlias",
src/views/home/index.vue
@@ -235,30 +235,16 @@
          <div class="title-pane1">
            <img src="../../../public/img/bajgxt/icon2.png" />
            <span>保安员预警统计</span>
            <!-- <el-select v-model="value1" @change="companyWarning">
              <el-option
                v-for="item in options1"
                :key="item.id"
                :label="item.title"
                :value="item.value"
              ></el-option>
            </el-select> -->
            <el-select
              ref="treeForm1"
              v-model="node1.title"
              placeholder="请选择"
            >
              <el-option style="height: auto" :value="node1">
                <el-tree
                  :data="options1"
                  default-expand-all
                  node-key="id"
                  @node-click="handleNodeClick1"
                  :props="props"
                >
                </el-tree>
              </el-option>
            </el-select>
            <avue-input-tree
              default-expand-all
              v-model="value1"
              placeholder="请选择内容"
              type="tree"
              :dic="options1"
              :props="props"
              @change="handleNodeClick1"
            ></avue-input-tree>
          </div>
          <div class="right-content" v-loading="right1loading">
            <span
@@ -308,19 +294,8 @@
          <div class="title-pane1">
            <img src="../../../public/img/bajgxt/icon2.png" />
            <span>保安公司预警统计</span>
            <!-- <el-select
              v-model="value2"
              placeholder="请选择"
              @change="peoWarning"
            >
              <el-option
                v-for="item in options2"
                :key="item.id"
                :label="item.title"
                :value="item.value"
              ></el-option>
            </el-select> -->
            <el-select
              ref="treeForm2"
              v-model="node2.title"
              placeholder="请选择"
@@ -335,7 +310,16 @@
                >
                </el-tree>
              </el-option>
            </el-select>
            </el-select> -->
            <avue-input-tree
              default-expand-all
              v-model="value2"
              placeholder="请选择内容"
              type="tree"
              :dic="options2"
              :props="props"
              @change="handleNodeClick2"
            ></avue-input-tree>
          </div>
          <div class="right-content" v-loading="right2loading">
            <div class="rightData rightData1" @click="shoeDialog('wg')">
@@ -699,7 +683,7 @@
  selectJy,
  selectWg,
  punishList,
  lazyTrees,
  lazyTrees
} from "../../api/index/index";
import car from "@/assets/img/car.png";
@@ -728,7 +712,7 @@
        materialNum: 0,
        punishNum: 0,
        wgNum: 0,
        ymwsNum: 0,
        ymwsNum: 0
      },
      carNum: 0,
      peoNum: 0,
@@ -738,7 +722,7 @@
        left1Echart: null,
        left2Echart: null,
        mapEchart: null,
        right3Echart: null,
        right3Echart: null
      },
      left1loading: true,
      left2loading: true,
@@ -755,7 +739,7 @@
        wz: 0,
        kqy: 0,
        nan: 0,
        nv: 0,
        nv: 0
      },
      left2EchartType: 0,
      poorPerformanceType: 3,
@@ -765,44 +749,45 @@
        total: 0,
        current: 1,
        type: "zg",
        title: "资格异常人员清单",
        title: "资格异常人员清单"
      },
      dialogTable: {
        wgTable: [],
        jyTable: [],
        ymTable: [],
        ymTable: []
      },
      props: {
        children: "children",
        label: "title",
        value: "id",
        value: "id"
      },
      // props2: {
      //   children: "children",
      //   label: "enterpriseName",
      //   value: "departmentid"
      // },
      node1: {}, //选中的记录
      node2: {},
      node2: {}
    };
  },
  computed: {
    text() {
      return {
        id: this.number,
        val: this.textArr[this.number],
        val: this.textArr[this.number]
      };
    },
    }
  },
  methods: {
    //点击节点
    handleNodeClick1(data) {
      this.node1 = data;
      this.value1 = data.id;
      this.$refs.treeForm1.blur();
      this.value1 = data;
      this.right1loading = true;
      this.getPoorPerformance(3);
    },
    //点击节点
    handleNodeClick2(data) {
      this.node2 = data;
      this.value2 = data.id;
      this.$refs.treeForm2.blur();
      this.value2 = data;
      this.peoWarning();
    },
    sexFormatter(row, column) {
@@ -841,7 +826,7 @@
    // 左侧表的接口返回数据
    initEchart() {
      securityTotal().then((res) => {
      securityTotal().then(res => {
        if (res.data.code == 200) {
          let securityData = res.data.data;
          if (!this.echarts.left1Echart) {
@@ -855,10 +840,10 @@
        }
        this.left1loading = false;
      });
      seCountI({ jurisdiction: "", deptid: "" }).then((res) => {
      seCountI({ jurisdiction: "", deptid: "" }).then(res => {
        if (res.data.code == 200) {
          let data = res.data.data;
          data.forEach((item) => {
          data.forEach(item => {
            if (item.stats === "0") {
              this.leftData.zz = item.num;
            }
@@ -879,7 +864,7 @@
          this.$message.error(res.msg);
        }
      });
      selectFj().then((res) => {
      selectFj().then(res => {
        // debugger;
        if (res.data.code === 200) {
          if (!this.echarts.right3Echart) {
@@ -904,7 +889,7 @@
        this.echarts.left2Echart.clear();
      }
      if (type === 0) {
        holderNum().then((res) => {
        holderNum().then(res => {
          if (res.data.code === 200) {
            let data = res.data.data;
            this.echarts.left2Echart = echarts.init(
@@ -917,7 +902,7 @@
          this.left2loading = false;
        });
      } else {
        seCountUg({ jurisdiction: "", deptid: "" }).then((res) => {
        seCountUg({ jurisdiction: "", deptid: "" }).then(res => {
          if (res.data.code === 200) {
            this.echarts.left2Echart = echarts.init(
              document.getElementById("left2Echart")
@@ -951,7 +936,7 @@
      this.middleloading = false;
      this.textArr = [];
      if (type === 2) {
        this.tableData.forEach((item) => {
        this.tableData.forEach(item => {
          let obj =
            "押运车辆车牌号" +
            item.carNum +
@@ -966,7 +951,7 @@
          this.textArr.push(obj);
        });
      } else if (type === 1) {
        this.tableData.forEach((item) => {
        this.tableData.forEach(item => {
          let obj =
            "押运人员" +
            item.name +
@@ -979,7 +964,7 @@
          this.textArr.push(obj);
        });
      } else if (type === 3) {
        this.tableData.forEach((item) => {
        this.tableData.forEach(item => {
          let obj =
            "枪支编号" +
            item.number +
@@ -1000,21 +985,21 @@
      let middleData = {
        1: {
          table: [],
          geoData: [],
          geoData: []
        },
        2: {
          table: [],
          geoData: [],
          geoData: []
        },
        3: {
          table: [],
          geoData: [],
        },
          geoData: []
        }
      };
      getLiveLocationVoList({ type: type }).then((res) => {
      getLiveLocationVoList({ type: type }).then(res => {
        if (res.data.code === 200) {
          let allData = res.data.data;
          allData.forEach((m) => {
          allData.forEach(m => {
            let obj = {
              location: m.location,
              name: m.name,
@@ -1022,7 +1007,7 @@
              linkman: m.linkman,
              company: m.company,
              tel: m.tel,
              carNum: m.carNum,
              carNum: m.carNum
            };
            // let geoObj = {
@@ -1031,7 +1016,7 @@
            // };
            middleData[m.type]["geoData"].push([
              Number(m.longitude),
              Number(m.latitude),
              Number(m.latitude)
            ]);
            middleData[m.type]["table"].push(obj);
          });
@@ -1057,36 +1042,38 @@
            zIndex: 4,
            title: "影像",
            source: new XYZ({
              url: "http://t3.tianditu.com/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=e9533f5acb2ac470b07f406a4d24b4f0", // 行政区划
            }),
              url:
                "http://t3.tianditu.com/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=e9533f5acb2ac470b07f406a4d24b4f0" // 行政区划
            })
          }),
          new Tile({
            zIndex: 5,
            title: "道路+中文注记",
            source: new XYZ({
              url: "http://t3.tianditu.com/DataServer?T=cta_w&x={x}&y={y}&l={z}&tk=e9533f5acb2ac470b07f406a4d24b4f0", // 注记
            }),
          }),
              url:
                "http://t3.tianditu.com/DataServer?T=cta_w&x={x}&y={y}&l={z}&tk=e9533f5acb2ac470b07f406a4d24b4f0" // 注记
            })
          })
        ],
        view: new View({
          projection: "EPSG:4326",
          center: [115.892151, 28.676493],
          zoom: 10,
        }),
          zoom: 10
        })
      });
      this.carVectorLayer = new VectorLayer({
        zIndex: 99,
        source: new VectorSource(),
        source: new VectorSource()
      });
      this.peoVectorLayer = new VectorLayer({
        zIndex: 99,
        source: new VectorSource(),
        source: new VectorSource()
      });
      this.gunVectorLayer = new VectorLayer({
        zIndex: 99,
        source: new VectorSource(),
        source: new VectorSource()
      });
      this.map.addLayer(this.carVectorLayer);
      this.map.addLayer(this.peoVectorLayer);
@@ -1096,7 +1083,7 @@
    },
    // 获取辖区列表
    getOfficeData() {
      lazyTrees().then((res) => {
      lazyTrees().then(res => {
        if (res.data.code === 200) {
          this.options1 = res.data.data;
          this.options2 = res.data.data;
@@ -1138,7 +1125,7 @@
      }
    },
    getWgTable() {
      this.dialogTable.wgTable.forEach((item) => {
      this.dialogTable.wgTable.forEach(item => {
        let czl = 0;
        if (Number(item.cznum) !== 0 && Number(item.znum) !== 0) {
          czl =
@@ -1156,7 +1143,7 @@
      this.gridData.total = this.dialogTable.wgTable.length;
    },
    getJyTable() {
      this.dialogTable.jyTable.forEach((item) => {
      this.dialogTable.jyTable.forEach(item => {
        let pql = 0;
        if (Number(item.painum) !== 0 && Number(item.znum) !== 0) {
          pql =
@@ -1184,9 +1171,9 @@
      let params = {
        current: this.gridData.current,
        size: 10,
        jurisdiction: this.value2,
        jurisdiction: this.value2
      };
      punishList(params).then((res) => {
      punishList(params).then(res => {
        if (res.data.code === 200) {
          this.gridData.data = res.data.data.records;
          this.gridData.total = res.data.data.total;
@@ -1224,9 +1211,9 @@
        current: this.gridData.current,
        size: 10,
        examinationType: 1,
        jurisdiction: this.value1,
        jurisdiction: this.value1
      };
      qualificationPages(params).then((res) => {
      qualificationPages(params).then(res => {
        if (res.data.code === 200) {
          this.gridData.data = res.data.data.records;
          this.gridData.total = res.data.data.total;
@@ -1247,9 +1234,9 @@
      let params = {
        current: this.gridData.current,
        size: 10,
        jurisdiction: this.value2,
        jurisdiction: this.value2
      };
      punishList(params).then((res) => {
      punishList(params).then(res => {
        if (res.data.code === 200) {
          this.gridData.data = res.data.data.records;
          this.gridData.total = res.data.data.total;
@@ -1260,7 +1247,7 @@
    },
    // 经营不善
    getMaterial() {
      selectJy({ jurisdiction: this.value2 }).then((res) => {
      selectJy({ jurisdiction: this.value2 }).then(res => {
        if (res.data.code === 200) {
          this.rightData.materialNum = res.data.data.count;
          this.dialogTable.jyTable = res.data.data.List;
@@ -1272,7 +1259,7 @@
    },
    // 有名无实
    getselectYs() {
      selectYs({ jurisdiction: this.value2 }).then((res) => {
      selectYs({ jurisdiction: this.value2 }).then(res => {
        if (res.data.code === 200) {
          this.rightData.ymwsNum = res.data.data.count;
          this.dialogTable.ymTable = res.data.data.List;
@@ -1284,7 +1271,7 @@
    },
    // 违规经营
    getselectWg() {
      selectWg({ jurisdiction: this.value2 }).then((res) => {
      selectWg({ jurisdiction: this.value2 }).then(res => {
        if (res.data.code === 200) {
          this.rightData.wgNum = res.data.data.count;
          this.dialogTable.wgTable = res.data.data.list;
@@ -1314,8 +1301,8 @@
      // this.rightData.qualification = 45;
      selectBx({
        jurisdiction: this.value1,
        type: this.poorPerformanceType,
      }).then((res) => {
        type: this.poorPerformanceType
      }).then(res => {
        if (res.data.code === 200) {
          this.rightData.poorPerformance = res.data.data[0].count;
        } else {
@@ -1325,8 +1312,8 @@
      });
      selectExtype({
        jurisdiction: this.value1,
        type: this.poorPerformanceType,
      }).then((res) => {
        type: this.poorPerformanceType
      }).then(res => {
        if (res.data.code === 200) {
          this.rightData.qualification = res.data.data[0].count;
        } else {
@@ -1365,7 +1352,7 @@
      // this.$router.push({ path: "/register/index" });
      // this.$router.push({ path: "/securityGuardManagement/register" });
      this.$router.push({ path: website.fistPage.value });
    },
    }
  },
  mounted() {
    this.initEchart();
@@ -1376,7 +1363,7 @@
    this.getTableData(0);
    // this.initMapEchart();
    this.getOfficeData();
  },
  }
};
</script>
@@ -1390,7 +1377,7 @@
  @import "./index_1600_900.scss";
}
// 适配分辨率1920*1080
@media screen and (min-width: 1601px) and (max-width: 1920px) {
@media screen and (min-width: 1601px) {
  @import "./index.scss";
}
src/views/licenseApproval/branchOffice.vue
@@ -414,13 +414,13 @@
            ],
          },
          // {
          //   label: "所属地区",
          //   label: "所属辖区",
          //   hide: true,
          //   prop: "region",
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属地区",
          //       message: "请输入所属辖区",
          //       trigger: "blur",
          //     },
          //   ],
src/views/licenseApproval/cancellationOfFiling.vue
@@ -315,13 +315,13 @@
            ],
          },
          // {
          //   label: "所属地区",
          //   label: "所属辖区",
          //   hide: true,
          //   prop: "region",
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属地区",
          //       message: "请输入所属辖区",
          //       trigger: "blur",
          //     },
          //   ],
src/views/licenseApproval/crossRegion.vue
@@ -412,13 +412,13 @@
            ],
          },
          // {
          //   label: "所属地区",
          //   label: "所属辖区",
          //   hide: true,
          //   prop: "region",
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属地区",
          //       message: "请输入所属辖区",
          //       trigger: "blur",
          //     },
          //   ],
src/views/licenseApproval/securityGuard.vue
@@ -465,13 +465,13 @@
            ],
          },
          // {
          //   label: "所属地区",
          //   label: "所属辖区",
          //   hide: true,
          //   prop: "region",
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属地区",
          //       message: "请输入所属辖区",
          //       trigger: "blur",
          //     },
          //   ],
src/views/licenseApproval/securityPermit.vue
@@ -427,13 +427,13 @@
            ],
          },
          // {
          //   label: "所属地区",
          //   label: "所属辖区",
          //   hide: true,
          //   prop: "region",
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属地区",
          //       message: "请输入所属辖区",
          //       trigger: "blur",
          //     },
          //   ],
src/views/licenseApproval/securityTraining.vue
@@ -427,13 +427,13 @@
            ],
          },
          // {
          //   label: "所属地区",
          //   label: "所属辖区",
          //   hide: true,
          //   prop: "region",
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入所属地区",
          //       message: "请输入所属辖区",
          //       trigger: "blur",
          //     },
          //   ],
src/views/permit/permit.vue
@@ -406,13 +406,13 @@
            ],
          },
          {
            label: "所属地区",
            label: "所属辖区",
            hide: true,
            prop: "region",
            rules: [
              {
                required: true,
                message: "请输入所属地区",
                message: "请输入所属辖区",
                trigger: "blur",
              },
            ],
src/views/record/record.vue
@@ -320,12 +320,12 @@
            ],
          },
          {
            label: "所属地区",
            label: "所属辖区",
            prop: "region",
            rules: [
              {
                required: true,
                message: "请输入所属地区",
                message: "请输入所属辖区",
                trigger: "blur",
              },
            ],
src/views/recordk/recordk.vue
@@ -255,12 +255,12 @@
            ],
          },
          {
            label: "所属地区",
            label: "所属辖区",
            prop: "region",
            rules: [
              {
                required: true,
                message: "请输入所属地区",
                message: "请输入所属辖区",
                trigger: "blur",
              },
            ],
src/views/revoke/revoke.vue
@@ -253,13 +253,13 @@
            ],
          },
          {
            label: "所属地区",
            label: "所属辖区",
            prop: "region",
            overHidden: true,
            rules: [
              {
                required: true,
                message: "请输入所属地区",
                message: "请输入所属辖区",
                trigger: "blur",
              },
            ],
src/views/securityCompany/column.js
@@ -140,6 +140,12 @@
        prop: "region",
        labelWidth: 160,
        // width: 110,
        type: "tree",
        dicUrl: "/api/jurisdiction/lazy-tree",
        props: {
            label: "title",
            value: "id",
        },
        // search: true,
        overHidden: true
    },
src/views/securityCompany/companyDetails.vue
@@ -2,7 +2,7 @@
 * @Author: Morpheus
 * @Date: 2021-07-05 16:31:54
 * @Last Modified by: liu
 * @Last Modified time: 2021-09-06 10:21:32
 * @Last Modified time: 2021-09-13 20:55:12
 * menu-name 保安公司详细资料
 */
<template>
@@ -106,7 +106,7 @@
                <el-row>
                  <el-col span="12">
                    <el-form-item label="所属地区">
                    <el-form-item label="所属辖区">
                      <el-input
                        disabled="true"
                        v-model="form.region"
@@ -343,6 +343,7 @@
  examinationList,
  getInvestorList,
  getManageList,
  usejurisdiction,
} from "@/api/securityCompany/companyDetails";
import equipment from "./computents/equipment.vue"; //装备管理
import staff from "./computents/staff.vue"; //保安员信息
@@ -519,7 +520,7 @@
      that = this;
    this.$store.state.tags.tagList.forEach((item, index) => {
      if (item.label == "保安公司详细资料") {
      if (item.label == "保安公司详细信息") {
        if (flag == false) {
          ind = index;
          flag = true;
@@ -548,13 +549,37 @@
      // })
    } else {
      this.form = this.$route.query;
      console.log(this.form, "obj1");
      // console.log(this.form, "obj1");
    }
  },
  mounted() {
    // this.$store.state.tags.tag.label = '保安详细资料'
    usejurisdiction().then((res) => {
      const data = res.data.data;
      console.log(data);
      let d = this.inspects(data, this.form.region);
      this.form.region = d;
    });
  },
  methods: {
    inspects(d, val) {
      var a = "";
      var doit = (d, val) => {
        for (let k in d) {
          if (d[k].key == val) {
            a = d[k].title;
            break;
          } else {
            if (d[k].hasChildren) {
              doit(d[k].children, val);
            } else {
            }
          }
        }
      };
      doit(d, val);
      // if (a == "") {
      //   a = val;
      // }
      return a;
    },
    handleClick(tab) {
      if (tab.index == 1) {
        this.investorSearchReset();
src/views/securityUnitOperation/economicAnalysis.vue
@@ -15,7 +15,7 @@
              >
              </el-option>
            </el-select> -->
            <el-select
            <!-- <el-select
              class="select1"
              ref="treeForm"
              v-model="node.title"
@@ -31,8 +31,28 @@
                >
                </el-tree>
              </el-option>
            </el-select>
            <el-select
            </el-select> -->
            <avue-input-tree
              class="select1"
              default-expand-all
              v-model="value1"
              placeholder="请选择内容"
              type="tree"
              :dic="options1"
              :props="props"
              @change="handleNodeClick"
            ></avue-input-tree>
            <avue-input-tree
              class="select2"
              default-expand-all
              v-model="value2"
              placeholder="请选择公司"
              type="tree"
              :dic="options2"
              :props="props2"
              @change="changeCompanys"
            ></avue-input-tree>
            <!-- <el-select
              class="select2"
              v-model="value2"
              placeholder="请选择"
@@ -45,7 +65,7 @@
                :value="item.departmentid"
              >
              </el-option>
            </el-select>
            </el-select> -->
            <el-button @click="toEconomicTable">进入数据统计表</el-button>
          </div>
@@ -165,15 +185,18 @@
        label: "title",
        value: "id"
      },
      props2: {
        children: "children",
        label: "enterpriseName",
        value: "departmentid"
      },
      node: {} //选中的记录
    };
  },
  methods: {
    //点击节点
    handleNodeClick(data) {
      this.node = data;
      this.value1 = data.id;
      this.$refs.treeForm.blur();
      this.value1 = data;
      this.getCompanys();
    },
    toEconomicTable() {
src/views/securityUnitOperation/operationAnalysis.vue
@@ -6,33 +6,27 @@
          <div class="rowTitle">
            <img src="../../../public/img/bajgxt/u1618.png" />
            <span>数据概览</span>
            <!-- <el-select class="select0" v-model="value0" placeholder="请选择">
              <el-option
                v-for="item in options0"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              ></el-option>
            </el-select> -->
            <el-select
            <avue-input-tree
              class="select1"
              ref="treeForm"
              v-model="node.title"
              placeholder="请选择"
            >
              <el-option style="height: auto;" :value="node">
                <el-tree
                  :data="options1"
                  default-expand-all
                  node-key="id"
                  @node-click="handleNodeClick"
                  :props="props"
                >
                </el-tree>
              </el-option>
            </el-select>
            <el-select
              default-expand-all
              v-model="value1"
              placeholder="请选择内容"
              type="tree"
              :dic="options1"
              :props="props"
              @change="handleNodeClick"
            ></avue-input-tree>
            <avue-input-tree
              class="select2"
              default-expand-all
              v-model="value2"
              placeholder="请选择公司"
              type="tree"
              :dic="options2"
              :props="props2"
              @change="changeCompanys"
            ></avue-input-tree>
            <!-- <el-select
              class="select2"
              v-model="value2"
              placeholder="请选择"
@@ -44,7 +38,7 @@
                :label="item.enterpriseName"
                :value="item.departmentid"
              ></el-option>
            </el-select>
            </el-select> -->
            <el-button @click="toOperationTable">进入数据统计表</el-button>
          </div>
@@ -219,15 +213,18 @@
        label: "title",
        value: "id"
      },
      props2: {
        children: "children",
        label: "enterpriseName",
        value: "departmentid"
      },
      node: {} //选中的记录
    };
  },
  methods: {
    //点击节点
    handleNodeClick(data) {
      this.node = data;
      this.value1 = data.id;
      this.$refs.treeForm.blur();
    handleNodeClick(id) {
      this.value1 = id;
      this.getCompanys();
    },
    setAgeEchart() {
@@ -509,7 +506,7 @@
  }
}
// 适配分辨率1600*900
@media screen and (min-width: 1281px)and (max-width: 1600px)  {
@media screen and (min-width: 1281px) and (max-width: 1600px) {
  .box-card {
    font-size: 15px;
    width: 128px;
@@ -594,7 +591,7 @@
    }
  }
}
@media screen and (min-width: 1601px)and (max-width: 1920px) {
@media screen and (min-width: 1601px) and (max-width: 1920px) {
  .box-card {
    width: 150px;
    background: #00aaf1;
src/views/statisticalQueryManagement/securityGuardStatistics.vue
@@ -25,9 +25,9 @@
import { mapGetters } from "vuex";
import {
  selectLi,
  dictionaryList
  dictionaryList,
} from "../../api/statisticalQueryManagement/statisticalQueryManagement";
import { lazyTreeJu ,lazyTrees} from "../../api/index/index";
import { lazyTreeJu, lazyTrees } from "../../api/index/index";
export default {
  name: "业务情况统计",
  data() {
@@ -35,7 +35,7 @@
      page: {
        pageSize: 10,
        currentPage: 1,
        total: 0
        total: 0,
      },
      query: {},
      value1: "",
@@ -104,7 +104,7 @@
            search: true,
            searchSpan: 4,
            width: 300,
            display: false
            display: false,
          },
          {
            label: "单位类型",
@@ -115,9 +115,9 @@
            type: "select",
            props: {
              label: "dictValue",
              value: "dictKey"
              value: "dictKey",
            },
            dicData: []
            dicData: [],
          },
          {
            label: "所属辖区",
@@ -126,7 +126,7 @@
            type: "tree",
            props: {
              label: "title",
              value: "value"
              value: "value",
            },
            // dicUrl: "/api/information/lazyTreeJu",
            // dicMethod:'post',
@@ -157,39 +157,39 @@
              {
                required: true,
                message: "请选择所属辖区",
                trigger: "blur"
              }
            ]
                trigger: "blur",
              },
            ],
          },
          {
            label: "保安员总数",
            prop: "num",
            display: false
            display: false,
          },
          {
            label: "持证上岗人数",
            prop: "cznum",
            display: false
            display: false,
          },
          {
            label: "未派遣人数",
            prop: "wpaiqnum",
            display: false
            display: false,
          },
          {
            label: "派遣人数",
            prop: "paiqnum",
            display: false
            display: false,
          },
          {
            label: "未采集照片人数",
            prop: "wcaijnum",
            display: false
            display: false,
          },
          {
            label: "资格审查异常人数",
            prop: "yicnum",
            display: false
            display: false,
          },
          // {
          //   label: "过考保安人数",
@@ -199,12 +199,12 @@
          {
            label: "缴纳社保人数",
            prop: "sbnum",
            display: false
          }
        ]
            display: false,
          },
        ],
      },
      companyName: "",
      loading: true
      loading: true,
    };
  },
  computed: {
@@ -214,15 +214,15 @@
        addBtn: this.vaildData(this.permission.post_add, false),
        viewBtn: this.vaildData(this.permission.post_view, false),
        delBtn: this.vaildData(this.permission.post_delete, false),
        editBtn: this.vaildData(this.permission.post_edit, false)
        editBtn: this.vaildData(this.permission.post_edit, false),
      };
    }
    },
  },
  methods: {
    getSubOfficeData() {
      lazyTrees().then(res => {
      lazyTrees().then((res) => {
        if (res.data.code === 200) {
          this.tableOption.column.forEach(item => {
          this.tableOption.column.forEach((item) => {
            if (item.label == "所属辖区") {
              // let data = res.data.data;
              item.dicData = res.data.data;
@@ -244,9 +244,9 @@
    //   });
    // },
    getDictionaryList() {
      dictionaryList().then(res => {
      dictionaryList().then((res) => {
        if (res.data.code === 200) {
          this.tableOption.column.forEach(item => {
          this.tableOption.column.forEach((item) => {
            if (item.label == "单位类型") {
              item.dicData = res.data.data;
            }
@@ -284,7 +284,7 @@
      param["stats"] = params["stats"] || "";
      param["current"] = page.currentPage;
      param["size"] = page.pageSize;
      selectLi(param).then(res => {
      selectLi(param).then((res) => {
        const data = res.data.data;
        this.page.total = data.total;
        this.tableData = data.records;
@@ -293,14 +293,15 @@
    },
    handleRowClick(row, event, column) {
      this.$router.push({
        path: "/statisticalQueryManagement/companyDetails?deptid=" + row.dept_id
        path:
          "/statisticalQueryManagement/companyDetails?deptid=" + row.dept_id,
      });
    }
    },
  },
  mounted() {
    this.getSubOfficeData();
    this.getDictionaryList();
  }
  },
};
</script>
<style lang="scss" scoped>
vue.config.js
@@ -30,7 +30,7 @@
                // target: 'http://192.168.0.109:1',
                //远程演示服务地址,可用于直接启动项目
                // target: 'http://2h3f861221.wicp.vip:58646',
                // target: 'http://s16s652780.51mypc.cn/api',
                target: 'http://s16s652780.51mypc.cn/api',
                // target: 'http://192.168.0.114:82',
                // target: 'http://192.168.0.108:82',
                target: 'http://s16s652780.51mypc.cn/api',