From fd61a737e45cc7075b1d008524f1883dcea15aad Mon Sep 17 00:00:00 2001
From: zpzgiser <45806316+zpzgiser@users.noreply.github.com>
Date: Sun, 18 Jul 2021 00:20:07 +0800
Subject: [PATCH] 首页文字更改,保安单位经营情况四个页面

---
 src/views/home/index.scss                             |   17 
 src/views/securityUnitOperation/securityEchart.js     |  189 ++++++
 public/img/bajgxt/u1618.png                           |    0 
 src/views/home/index.vue                              |  298 +++++++----
 public/img/bajgxt/u1.png                              |    0 
 src/views/home/indexEchart.js                         |   29 +
 src/views/securityUnitOperation/economicAnalysis.vue  |  245 +++++++++
 src/views/securityUnitOperation/economicTable.vue     |  286 +++++++++++
 src/views/securityUnitOperation/operationAnalysis.vue |  113 +++-
 src/views/securityUnitOperation/operationTable.vue    |  304 ++++++++++-
 10 files changed, 1,266 insertions(+), 215 deletions(-)

diff --git a/public/img/bajgxt/u1.png b/public/img/bajgxt/u1.png
new file mode 100644
index 0000000..3a94eb7
--- /dev/null
+++ b/public/img/bajgxt/u1.png
Binary files differ
diff --git a/public/img/bajgxt/u1618.png b/public/img/bajgxt/u1618.png
new file mode 100644
index 0000000..2dca504
--- /dev/null
+++ b/public/img/bajgxt/u1618.png
Binary files differ
diff --git a/src/views/home/index.scss b/src/views/home/index.scss
index 64302d2..6ec1710 100644
--- a/src/views/home/index.scss
+++ b/src/views/home/index.scss
@@ -241,6 +241,7 @@
   }
   /deep/ .el-table .cell {
     color: #fff;
+    text-align: center;
   }
   /deep/ .el-table td,
   .el-table th.is-leaf {
@@ -258,7 +259,7 @@
     border-radius: 2px;
   }
   /deep/ .el-input {
-    width: 94px;
+    width: 138px;
   }
   /deep/ .el-select {
     line-height: 55px;
@@ -305,12 +306,13 @@
     width: 100%;
   }
   .card-list {
-    margin: 20px 60px;
+    margin: 20px 60px 20px 90px;
     display: flex;
     height: 55px;
     line-height: 55px;
     img:first-child {
       height: 55px;
+      z-index: 22;
     }
     img:nth-child(2) {
       position: absolute;
@@ -318,19 +320,24 @@
       width: 35px;
       height: 35px;
       margin-top: 9px;
+      z-index: 22;
     }
-    span:nth-child(3) {
+    img:nth-child(3) {
+      margin-left: -20px;
+    }
+    span:nth-child(4) {
       color: red;
       font-size: 30px;
       display: block;
       width: 71px;
-      margin: 0px 20px;
+      margin-left: -74px;
     }
-    span:nth-child(4) {
+    span:nth-child(5) {
       color: #7ff3f4;
       font-size: 18px;
       display: block;
       width: 129px;
+      margin-left: 30px;
     }
   }
   .mapBtn,
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 083b542..4a10cbd 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="bajgxt-home">
     <div class="head-title">
-      <span>保安监管系统可视化平台</span>
+      <span>智慧保安监管模块</span>
       <!-- <img src="../../../public/img/bajgxt/linkimg.png"
                  @click.stop="goSystemHome"
                  title="进入系统" /> -->
@@ -10,9 +10,10 @@
     <div class="content">
       <div class="left">
         <div class="left1">
+          <!-- <img src="../../../public/img/bajgxt/line.jpg" /> -->
           <div class="title-pane">
             <img src="../../../public/img/bajgxt/icon1.png" />
-            <span>业务对象统计--单位</span>
+            <span>各辖区单位情况统计</span>
           </div>
           <div id="left1Echart"></div>
         </div>
@@ -56,52 +57,43 @@
           <div class="leftbottom"></div>
           <div class="righttop"></div>
           <div class="rightbottom"></div>
-          <el-table :data="tableData" stripe>
-            <el-table-column type="index" label="序号" width="50">
-            </el-table-column>
-            <el-table-column
-              v-if="curTableType === 'car'"
-              prop="carNum"
-              label="押运车辆车牌号"
-              width="180"
-            >
-            </el-table-column>
-            <el-table-column
-              v-if="curTableType === 'peo'"
-              prop="name"
-              label="押运人员名称"
-              width="180"
-            >
-            </el-table-column>
-            <el-table-column
-              v-if="curTableType === 'gun'"
-              prop="number"
-              label="枪支编号"
-              width="180"
-            >
-            </el-table-column>
-            <el-table-column prop="location" label="实时位置">
-            </el-table-column>
-            <el-table-column prop="company" label="所属公司"> </el-table-column>
-            <el-table-column
-              v-if="curTableType === 'car'"
-              prop="linkman"
-              label="联系人"
-            >
-            </el-table-column>
-            <el-table-column
-              v-if="curTableType === 'gun'"
-              prop="linkman"
-              label="负责人"
-            >
-            </el-table-column>
-            <el-table-column prop="tel" label="联系电话"> </el-table-column>
-            <el-table-column
-              v-if="curTableType === 'peo'"
-              prop="bz"
-              label="备注"
-            >
-            </el-table-column>
+          <el-table :data="tableData" stripe ref="indexTable">
+            <template v-if="curTableType === 'car'">
+              <el-table-column type="index" label="序号" width="50">
+              </el-table-column>
+              <el-table-column prop="carNum" label="押运车辆车牌号" width="180">
+              </el-table-column>
+              <el-table-column prop="location" label="实时位置">
+              </el-table-column>
+              <el-table-column prop="company" label="所属公司">
+              </el-table-column>
+              <el-table-column prop="linkman" label="联系人"> </el-table-column>
+              <el-table-column prop="tel" label="联系电话"> </el-table-column>
+            </template>
+            <template v-if="curTableType === 'peo'">
+              <el-table-column type="index" label="序号" width="50">
+              </el-table-column>
+              <el-table-column prop="name" label="押运人员名称" width="180">
+              </el-table-column>
+              <el-table-column prop="location" label="实时位置">
+              </el-table-column>
+              <el-table-column prop="company" label="所属公司">
+              </el-table-column>
+              <el-table-column prop="tel" label="联系电话"> </el-table-column>
+              <el-table-column prop="bz" label="备注"> </el-table-column>
+            </template>
+            <template v-if="curTableType === 'gun'">
+              <el-table-column type="index" label="序号" width="50">
+              </el-table-column>
+              <el-table-column prop="number" label="枪支编号" width="180">
+              </el-table-column>
+              <el-table-column prop="location" label="实时位置">
+              </el-table-column>
+              <el-table-column prop="company" label="所属公司">
+              </el-table-column>
+              <el-table-column prop="linkman" label="负责人"> </el-table-column>
+              <el-table-column prop="tel" label="联系电话"> </el-table-column>
+            </template>
           </el-table>
         </div>
       </div>
@@ -124,14 +116,16 @@
             <div class="card-list">
               <img src="../../../public/img/bajgxt/u4.png" />
               <img src="../../../public/img/bajgxt/u256.png" />
+              <img src="../../../public/img/bajgxt/u1.png" />
               <span>45</span>
               <span>现实表现差</span>
             </div>
             <div class="card-list">
               <img src="../../../public/img/bajgxt/u4.png" />
               <img src="../../../public/img/bajgxt/u230.png" />
+              <img src="../../../public/img/bajgxt/u1.png" />
               <span>76</span>
-              <span>资格审查</span>
+              <span>资格审查异常</span>
             </div>
           </div>
           <!-- <div class="card-text"> -->
@@ -158,12 +152,14 @@
             <div class="card-list">
               <img src="../../../public/img/bajgxt/u4.png" />
               <img src="../../../public/img/bajgxt/u235.png" />
+              <img src="../../../public/img/bajgxt/u1.png" />
               <span>21</span>
               <span>未缴纳社保</span>
             </div>
             <div class="card-list">
               <img src="../../../public/img/bajgxt/u4.png" />
               <img src="../../../public/img/bajgxt/u251.png" />
+              <img src="../../../public/img/bajgxt/u1.png" />
               <span>26</span>
               <span>未持证</span>
             </div>
@@ -191,17 +187,24 @@
 import * as echarts from "echarts";
 import optionJs from "./indexEchart";
 import TileLayer from "ol/layer/Tile";
-import { transform } from "ol/proj";
 import XYZ from "ol/source/XYZ";
 import { Map, View } from "ol";
 import { Tile, Group } from "ol/layer";
 import { OSM, TileJSON } from "ol/source";
 import VectorLayer from "ol/layer/Vector";
 import VectorSource from "ol/source/Vector";
-import { Fill, Stroke, Circle, Style } from "ol/style";
+
+import Feature from "ol/Feature.js";
+import Point from "ol/geom/Point.js";
+import { Fill, Stroke, Circle, Style, Icon } from "ol/style";
 import GeoJSON from "ol/format/GeoJSON";
 import axios from "../../router/axios";
 import { securityTotal, holderNum, securityPer } from "../../api/index/index";
+
+import car from "@/assets/img/car.png";
+import peo from "@/assets/img/people.png";
+import gun from "@/assets/img/gun.png";
+
 export default {
   data() {
     return {
@@ -209,25 +212,53 @@
       curTableType: "car",
       tableData: [],
       value1: "1",
+      carVectorLayer: null,
+      peoVectorLayer: null,
+      gunVectorLayer: null,
+
       options1: [
         {
           value: "1",
-          label: "南昌市"
+          label: "南昌市公安局"
         },
         {
           value: "2",
-          label: "赣州市"
+          label: "东湖分局"
+        },
+        {
+          value: "3",
+          label: "西湖分局"
+        },
+        {
+          value: "4",
+          label: "青云谱分局"
+        },
+        {
+          value: "5",
+          label: "青山湖分局"
         }
       ],
       value2: "1",
       options2: [
         {
           value: "1",
-          label: "南昌市"
+          label: "南昌市公安局"
         },
         {
           value: "2",
-          label: "赣州市"
+          label: "东湖分局"
+        },
+        {
+          value: "3",
+          label: "西湖分局"
+        },
+        {
+          value: "4",
+          label: "青云谱分局"
+        },
+        {
+          value: "5",
+          label: "青山湖分局"
         }
       ]
     };
@@ -273,8 +304,28 @@
     },
 
     getTableData(type) {
+      this.carVectorLayer.getSource().clear();
+      this.peoVectorLayer.getSource().clear();
+      this.gunVectorLayer.getSource().clear();
       this.curTableType = type;
+      let curLayer = null;
+      let imgUrl = null;
+      let geoData = [];
       if (type === "car") {
+        curLayer = this.carVectorLayer;
+        imgUrl = car;
+        geoData = [
+          [115.759941, 28.89309],
+          [115.757056, 28.895082],
+          [115.755648, 28.897737],
+          [115.75487, 28.904896],
+          [115.750814, 28.910861],
+          [115.742915, 28.916431],
+          [115.740537, 28.918827],
+          [115.738363, 28.928465],
+          [115.734182, 28.930418],
+          [115.729585, 28.93114]
+        ];
         this.tableData = [
           {
             carNum: "111111111111",
@@ -313,6 +364,20 @@
           }
         ];
       } else if (type === "peo") {
+        curLayer = this.peoVectorLayer;
+        imgUrl = peo;
+        geoData = [
+          [115.726802, 28.929966],
+          [115.726306, 28.920866],
+          [115.723726, 28.917826],
+          [115.719647, 28.916816],
+          [115.714486, 28.91849],
+          [115.708041, 28.921607],
+          [115.700649, 28.920751],
+          [115.69488, 28.922982],
+          [115.683128, 28.924531],
+          [115.678677, 28.923011]
+        ];
         this.tableData = [
           {
             name: "小张",
@@ -358,6 +423,21 @@
           }
         ];
       } else if (type === "gun") {
+        curLayer = this.gunVectorLayer;
+        imgUrl = gun;
+        geoData = [
+          [115.67702, 28.923656],
+          [115.674372, 28.927773],
+          [115.666361, 28.928937],
+          [115.663882, 28.93339],
+          [115.664626, 28.936632],
+          [115.671646, 28.940989],
+          [115.674091, 28.941672],
+          [115.678384, 28.940729],
+          [115.681877, 28.943114],
+          [115.682857, 28.946865],
+          [115.680694, 28.948442]
+        ];
         this.tableData = [
           {
             number: "Q1111",
@@ -403,67 +483,79 @@
           }
         ];
       }
+
+      let features = [];
+      let style = new Style({
+        image: new Icon({
+          src: imgUrl,
+          opacity: 1,
+          scale: 0.5
+        })
+      });
+      geoData.forEach(item => {
+        let carFeature = new Feature({
+          geometry: new Point(item)
+        });
+        carFeature.setStyle(style);
+        features.push(carFeature);
+      });
+      curLayer.getSource().addFeatures(features);
+      let extent = curLayer.getSource().getExtent();
+      this.map.getView().fit(extent, this.map.getSize());
+      this.$nextTick(() => {
+        this.$refs.indexTable.doLayout();
+      });
     },
 
     initMap() {
       this.map = new Map({
-        target: "map", // 对应页面里 id 为 map 的元素
+        target: "map",
         layers: [
-          // 图层
+          // new Tile({
+          //   source: new OSM()
+          // })
           new Tile({
-            source: new OSM() // 图层数据源
+            zIndex: 4,
+            title: "影像",
+            source: new XYZ({
+              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" // 注记
+            })
           })
         ],
         view: new View({
-          // 地图视图
-          projection: "EPSG:4326", // 坐标系,有EPSG:4326和EPSG:3857
-          center: [115.892151, 28.676493], //坐标 厦门
-          // minZoom: 10, // 地图缩放最小级别
-          zoom: 11 //地图缩放级别
+          projection: "EPSG:4326",
+          center: [115.892151, 28.676493],
+          zoom: 11
         })
       });
-      var image = new Circle({
-        radius: 5,
-        fill: new Fill({
-          color: "rgba(255, 0, 0, 1)"
-        }),
-        stroke: new Stroke({ color: "red", width: 1 })
+      this.carVectorLayer = new VectorLayer({
+        zIndex: 99,
+        source: new VectorSource()
       });
 
-      var styles = {
-        Point: new Style({
-          image: image
-        })
-      };
-      axios.get("./nc.json").then(res => {
-        let data = res.data.features;
-        let vectorSource = new VectorSource({
-          features: new GeoJSON().readFeatures(data)
-        });
-        let vectorLayer = new VectorLayer({
-          source: vectorSource,
-          style: styles
-        });
-        this.map.addLayer(vectorLayer);
+      this.peoVectorLayer = new VectorLayer({
+        zIndex: 99,
+        source: new VectorSource()
       });
-      // var center = new transform(
-      //   [104.06667, 30.66667],
-      //   "EPSG:4326",
-      //   "EPSG:3857"
-      // );
-      // this.map = new Map({
-      //   view: new View({
-      //     center: center,
-      //     zoom: 4
-      //   }),
-      //   target: "map"
-      // });
-      // var offlineMapLayer = new TileLayer({
-      //   source: new XYZ({
-      //     url: "./offlineMapTiles/{z}/{x}/{y}.png"
-      //   })
-      // });
-      // this.map.addLayer(offlineMapLayer);
+
+      this.gunVectorLayer = new VectorLayer({
+        zIndex: 99,
+        source: new VectorSource()
+      });
+      this.map.addLayer(this.carVectorLayer);
+      this.map.addLayer(this.peoVectorLayer);
+      this.map.addLayer(this.gunVectorLayer);
+
+      this.getTableData("car");
     },
 
     goSystemHome() {
@@ -472,7 +564,7 @@
   },
   mounted() {
     this.initEchart();
-    this.getTableData("car");
+    // this.getTableData("car");
     this.initMap();
   }
 };
diff --git a/src/views/home/indexEchart.js b/src/views/home/indexEchart.js
index 321e9fe..38c400c 100644
--- a/src/views/home/indexEchart.js
+++ b/src/views/home/indexEchart.js
@@ -362,6 +362,34 @@
     {
       name: "西湖区",
       value: 200
+    },
+    {
+      name: "东湖区",
+      value: 250
+    },
+    {
+      name: "经开区",
+      value: 281
+    },
+    {
+      name: "青云谱区",
+      value: 320
+    },
+    {
+      name: "高新区",
+      value: 231
+    },
+    {
+      name: "湾里区",
+      value: 210
+    },
+    {
+      name: "进贤县",
+      value: 187
+    },
+    {
+      name: "青山湖区",
+      value: 190
     }
   ];
   // let arrName = getArrayValue(data, "name");
@@ -503,7 +531,6 @@
   };
   return option;
 }
-
 export default {
   left1Data,
   left2Data,
diff --git a/src/views/securityUnitOperation/economicAnalysis.vue b/src/views/securityUnitOperation/economicAnalysis.vue
index 8e8da32..3c72c2b 100644
--- a/src/views/securityUnitOperation/economicAnalysis.vue
+++ b/src/views/securityUnitOperation/economicAnalysis.vue
@@ -1,7 +1,238 @@
-/*
- * @Author: mikey.zhaopeng 
- * @Date: 2021-07-17 00:19:50 
- * @Last Modified by: mikey.zhaopeng
- * @Last Modified time: 2021-07-17 00:20:31
-  * @description:公司经济情况智能分析详情
- */
\ No newline at end of file
+<template>
+  <div class="page1">
+    <el-row>
+      <el-col :span="24">
+        <div class="rowContent first-menu">
+          <div class="rowTitle">
+            <img src="../../../public/img/bajgxt/u1618.png" />
+            <span>数据概览</span>
+            <el-button>进入数据统计表</el-button>
+            <el-select class="select1" v-model="value1" placeholder="请选择">
+              <el-option
+                v-for="item in options1"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              >
+              </el-option>
+            </el-select>
+            <el-select class="select2" v-model="value2" placeholder="请选择">
+              <el-option
+                v-for="item in options2"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              >
+              </el-option>
+            </el-select>
+          </div>
+
+          <div class="col-content">
+            <div class="box-card">
+              <span>社保缴纳人数</span>
+              <span>11291</span>
+              <span>较上月增加12人</span>
+            </div>
+            <div class="box-card">
+              <span>社保缴纳总额(万)</span>
+              <span>410</span>
+              <span>较上月增加15万</span>
+            </div>
+            <div class="box-card">
+              <span>公司派遣人数</span>
+              <span>1121</span>
+              <span>较上月增加13人</span>
+            </div>
+            <div class="box-card">
+              <span>社保缴纳人数占比</span>
+              <span>85%</span>
+              <span>较上月上涨2%</span>
+            </div>
+          </div>
+        </div>
+      </el-col>
+    </el-row>
+    <el-row :gutter="20">
+      <el-col :span="16">
+        <div class="rowContent">
+          <span class="span-title">社保缴纳</span>
+          <div id="middleEchart1"></div>
+        </div>
+      </el-col>
+      <el-col :span="8">
+        <div class="rowContent">
+          <span class="span-title">派遣人员占比</span>
+          <div id="middleEchart2"></div>
+        </div>
+      </el-col>
+    </el-row>
+    <el-row>
+      <el-col :span="24">
+        <div class="rowContent">
+          <span class="span-title">公司经济运转趋势</span>
+          <div id="bottomEchart"></div>
+        </div>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import * as echarts from "echarts";
+import echartJs from "./securityEchart.js";
+export default {
+  data() {
+    return {
+      value1: "1",
+      value2: "1",
+      options1: [
+        {
+          value: "1",
+          label: "南昌市公安局"
+        },
+        {
+          value: "2",
+          label: "东湖分局"
+        },
+        {
+          value: "3",
+          label: "西湖分局"
+        },
+        {
+          value: "4",
+          label: "青云谱分局"
+        },
+        {
+          value: "5",
+          label: "青山湖分局"
+        }
+      ],
+      options2: [
+        {
+          value: "1",
+          label: "江西省永安保安服务有限公司"
+        },
+        {
+          value: "2",
+          label: "南昌市赣水保安服务有限公司"
+        },
+        {
+          value: "3",
+          label: "江西中业兴达保安服务有限公司"
+        }
+      ]
+    };
+  },
+  methods: {
+    setEchart() {
+      let data = [];
+      let bottomEchart = echarts.init(document.getElementById("bottomEchart"));
+      bottomEchart.setOption(echartJs.bottomOption(data));
+      let middleEchart1 = echarts.init(
+        document.getElementById("middleEchart1")
+      );
+      middleEchart1.setOption(echartJs.economicMiddle(data));
+      let middleEchart2 = echarts.init(
+        document.getElementById("middleEchart2")
+      );
+      middleEchart2.setOption(echartJs.economicPieOption(data));
+    }
+  },
+  mounted() {
+    this.setEchart();
+  }
+};
+</script>
+<style lang="scss" scoped>
+.page1 {
+  height: 100%;
+  width: 100%;
+}
+#bottomEchart,
+#middleEchart1,
+#middleEchart2 {
+  height: calc(100% - 40px);
+  width: 100%;
+}
+.el-row:first-child {
+  height: calc(40% - 80px);
+  margin-bottom: 20px;
+}
+.el-row:nth-child(2) {
+  margin-bottom: 20px;
+}
+.el-row:nth-child(2),
+.el-row:nth-child(3) {
+  height: 30%;
+}
+.el-col {
+  height: 100%;
+}
+.rowContent {
+  padding: 5px 20px 0px 10px;
+  height: calc(100% - 5px);
+  width: calc(100% - 30px);
+  background: rgba(255, 255, 255, 0.1);
+  box-shadow: 0px 0px 1px #fff;
+  .span-title {
+    color: #fff;
+    font-size: 17px;
+    margin-left: 35px;
+    font-weight: 600;
+  }
+}
+.box-card {
+  width: 150px;
+  background: #00aaf1;
+  height: 135px;
+  text-align: center;
+  margin-right: 66px;
+  box-shadow: 5px 5px 5px rgba($color: #000, $alpha: 0.35);
+  line-height: 40px;
+}
+.box-card span {
+  display: block;
+  width: 100%;
+  color: #fff;
+}
+.box-card span:nth-child(2) {
+  color: #06ffff;
+  font-size: 34px;
+}
+.rowTitle {
+  height: 40px;
+  display: flex;
+  line-height: 40px;
+  img {
+    width: 30px;
+    height: 30px;
+    margin-top: 5px;
+  }
+  span {
+    color: #fff;
+    font-size: 17px;
+    font-weight: 600;
+    margin-left: 11px;
+  }
+  .select1 {
+    position: absolute;
+    right: 140px;
+  }
+  .select2 {
+    position: absolute;
+    right: 0px;
+  }
+  .el-button {
+    position: absolute;
+    right: 300px;
+  }
+  /deep/ .el-input__inner {
+    width: 120px;
+  }
+}
+.col-content {
+  display: flex;
+  margin-top: 15px;
+  margin-left: 36px;
+}
+</style>
diff --git a/src/views/securityUnitOperation/economicTable.vue b/src/views/securityUnitOperation/economicTable.vue
index 5012b55..27f04bd 100644
--- a/src/views/securityUnitOperation/economicTable.vue
+++ b/src/views/securityUnitOperation/economicTable.vue
@@ -1,7 +1,279 @@
-/*
- * @Author: mikey.zhaopeng 
- * @Date: 2021-07-17 00:19:50 
- * @Last Modified by: mikey.zhaopeng
- * @Last Modified time: 2021-07-17 00:20:33
-  * @description:公司经济情况智能分析统计
- */
+<template>
+  <div class="operation-table">
+    <el-row>
+      <el-col>
+        <span>时间范围:</span>
+        <el-date-picker
+          v-model="value2"
+          type="daterange"
+          align="right"
+          unlink-panels
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+          :picker-options="pickerOptions"
+        >
+        </el-date-picker>
+        <span>类别:</span>
+        <el-select v-model="typeValue" placeholder="请选择">
+          <el-option
+            v-for="item in typeOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+        <span>分局:</span>
+        <el-select v-model="subofficeValue" placeholder="请选择">
+          <el-option
+            v-for="item in subofficeOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+        <span>公司名称:</span>
+        <el-input v-model="companyName"></el-input>
+        <el-button>查询</el-button>
+        <el-button>重置</el-button>
+      </el-col>
+    </el-row>
+    <el-row>
+      <el-col>
+        <div class="table">
+          <el-button @click="downExcel">下载</el-button>
+          <el-table id="table" :data="tableData" style="width: 100%">
+            <el-table-column type="index" label="序号" width="50">
+            </el-table-column>
+            <el-table-column prop="company" label="公司名称" width="180">
+            </el-table-column>
+            <el-table-column prop="subOffice" label="所属分局" width="180">
+            </el-table-column>
+            <el-table-column prop="time" label="时间"> </el-table-column>
+            <el-table-column prop="sbjnrs" label="社保缴纳人数">
+            </el-table-column>
+            <el-table-column prop="sbjnze" label="社保缴纳总额(万)">
+            </el-table-column>
+            <el-table-column prop="gspqrs" label="公司派遣人数">
+            </el-table-column>
+            <el-table-column prop="sbjnrszb" label="社保缴纳人数占比(%)">
+            </el-table-column>
+            <el-table-column prop="bz" label="备注"> </el-table-column>
+          </el-table>
+          <el-pagination background layout="prev, pager, next" :total="tableData.length">
+          </el-pagination>
+        </div>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+<script>
+import FileSaver from "file-saver";
+import XLSX from "xlsx";
+export default {
+  data() {
+    return {
+      pickerOptions: {
+        shortcuts: [
+          {
+            text: "最近一周",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
+              picker.$emit("pick", [start, end]);
+            }
+          },
+          {
+            text: "最近一个月",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
+              picker.$emit("pick", [start, end]);
+            }
+          },
+          {
+            text: "最近三个月",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
+              picker.$emit("pick", [start, end]);
+            }
+          }
+        ]
+      },
+      value1: "",
+      value2: "",
+      tableData: [
+        {
+          company: "江西省永安保安服务有限公司",
+          subOffice: "南昌市公安局",
+          time: "2021年6月",
+          sbjnrs: "12200",
+          sbjnze: "400",
+          gspqrs: "110",
+          sbjnrszb: "10",
+          bz: ""
+        },
+        {
+          company: "南昌市赣水保安服务有限公司",
+          subOffice: "东湖分局",
+          time: "2021年6月",
+          sbjnrs: "12200",
+          sbjnze: "400",
+          gspqrs: "110",
+          sbjnrszb: "10",
+          bz: ""
+        },
+        {
+          company: "江西中业兴达保安服务有限公司",
+          subOffice: "西湖分局",
+          time: "2021年6月",
+          sbjnrs: "12200",
+          sbjnze: "400",
+          gspqrs: "110",
+          sbjnrszb: "10",
+          bz: ""
+        }
+      ],
+      typeValue: "0",
+      typeOptions: [
+        {
+          value: "0",
+          label: "全部"
+        },
+        {
+          value: "1",
+          label: "社保缴纳人数"
+        },
+        {
+          value: "2",
+          label: "社保缴纳总额"
+        },
+        {
+          value: "3",
+          label: "公司派遣人数"
+        },
+        {
+          value: "4",
+          label: "社保缴纳人数占比"
+        }
+      ],
+      subofficeValue: "0",
+      subofficeOptions: [
+        {
+          value: "0",
+          label: "南昌市公安局"
+        },
+        {
+          value: "2",
+          label: "东湖分局"
+        },
+        {
+          value: "3",
+          label: "西湖分局"
+        },
+        {
+          value: "4",
+          label: "青云谱分局"
+        },
+        {
+          value: "5",
+          label: "青山湖分局"
+        }
+      ],
+      companyName: ""
+    };
+  },
+  methods: {
+    downExcel() {
+      let et = XLSX.utils.table_to_book(document.getElementById("table"));
+      let etout = XLSX.write(et, {
+        bookType: "xlsx",
+        bookSST: true,
+        type: "array"
+      });
+      try {
+        FileSaver.saveAs(
+          new Blob([etout], {
+            type: "application/octet-stream"
+          }),
+          `表.xlsx`
+        ); //导出的文件名
+      } catch (e) {
+        console.log(e, etout);
+      }
+      return etout;
+    }
+  },
+  mounted() {}
+};
+</script>
+<style lang="scss" scoped>
+.operation-table {
+  height: 100%;
+  width: 100%;
+  .el-row:first-child {
+    height: 100px;
+    margin-bottom: 20px;
+    background: rgba(255, 255, 255, 0.1);
+    box-shadow: 0px 0px 1px #fff;
+    .el-col {
+      padding: 20px;
+      .el-date-editor {
+        margin-right: 20px;
+      }
+      .el-select {
+        width: 115px;
+        margin-right: 20px;
+      }
+      .el-input {
+        width: 115px;
+        margin-right: 20px;
+      }
+      .el-button {
+        width: 70px !important;
+      }
+    }
+  }
+  .el-row:nth-child(2) {
+    height: calc(100% - 120px);
+    background: rgba(255, 255, 255, 0.1);
+    box-shadow: 0px 0px 1px #fff;
+  }
+  .el-col {
+    height: 100%;
+    span {
+      color: #fff;
+    }
+  }
+}
+.table {
+  padding: 20px;
+  height: calc(100% - 40px);
+  width: calc(100% - 40px);
+  .el-button {
+    width: 55px;
+    height: 30px;
+    padding: 0px;
+    margin-left: calc(100% - 55px);
+  }
+}
+/deep/ .el-table {
+  width: 100%;
+  height: calc(100% - 100px);
+  margin: 10px 0px;
+  .cell {
+    color: #fff;
+    text-align: center;
+  }
+}
+.el-pagination {
+  height: 40px;
+  float: right;
+}
+</style>
diff --git a/src/views/securityUnitOperation/operationAnalysis.vue b/src/views/securityUnitOperation/operationAnalysis.vue
index 8e8743e..8dde9fb 100644
--- a/src/views/securityUnitOperation/operationAnalysis.vue
+++ b/src/views/securityUnitOperation/operationAnalysis.vue
@@ -4,6 +4,7 @@
       <el-col :span="24">
         <div class="rowContent first-menu">
           <div class="rowTitle">
+            <img src="../../../public/img/bajgxt/u1618.png" />
             <span>数据概览</span>
             <el-button>进入数据统计表</el-button>
             <el-select class="select1" v-model="value1" placeholder="请选择">
@@ -26,41 +27,41 @@
             </el-select>
           </div>
 
-          <div style="display: flex ;margin-top: 15px;">
+          <div class="col-content">
             <div class="box-card">
               <span>总保安数</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>23708</span>
+              <span>较上月增加123人</span>
             </div>
             <div class="box-card">
               <span>正常保安员</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>22176</span>
+              <span>较上月增加13人</span>
             </div>
             <div class="box-card">
               <span>持证保安员</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>21003</span>
+              <span>较上月增加31人</span>
             </div>
             <div class="box-card">
               <span>过考保安员</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>21003</span>
+              <span>较上月增加31人</span>
             </div>
             <div class="box-card">
               <span>服务客户</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>56</span>
+              <span>较上月增加34人</span>
             </div>
             <div class="box-card">
               <span>缴纳社保</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>23708</span>
+              <span>较上月增加3人</span>
             </div>
             <div class="box-card">
               <span>保安派遣</span>
-              <span>500</span>
-              <span>较上月上涨2%</span>
+              <span>12720</span>
+              <span>较上月增加31人</span>
             </div>
           </div>
         </div>
@@ -68,15 +69,22 @@
     </el-row>
     <el-row :gutter="20">
       <el-col :span="16">
-        <div class="rowContent" id="middleEchart1"></div>
+        <div class="rowContent">
+          <span class="span-title">公司保安类数据对比</span>
+          <div id="middleEchart1"></div>
+        </div>
       </el-col>
       <el-col :span="8">
-        <div class="rowContent" id="middleEchart2"></div>
+        <div class="rowContent">
+          <span class="span-title">服务客户</span>
+          <div id="middleEchart2"></div>
+        </div>
       </el-col>
     </el-row>
     <el-row>
       <el-col :span="24">
         <div class="rowContent">
+          <span class="span-title">公司运营趋势</span>
           <div id="bottomEchart"></div>
         </div>
       </el-col>
@@ -95,13 +103,37 @@
       options1: [
         {
           value: "1",
-          label: "南昌市"
+          label: "南昌市公安局"
+        },
+        {
+          value: "2",
+          label: "东湖分局"
+        },
+        {
+          value: "3",
+          label: "西湖分局"
+        },
+        {
+          value: "4",
+          label: "青云谱分局"
+        },
+        {
+          value: "5",
+          label: "青山湖分局"
         }
       ],
       options2: [
         {
           value: "1",
-          label: "保安公司"
+          label: "江西省永安保安服务有限公司"
+        },
+        {
+          value: "2",
+          label: "南昌市赣水保安服务有限公司"
+        },
+        {
+          value: "3",
+          label: "江西中业兴达保安服务有限公司"
         }
       ]
     };
@@ -130,22 +162,12 @@
 .page1 {
   height: 100%;
   width: 100%;
-  /* background: #003688; */
 }
 #bottomEchart,
 #middleEchart1,
 #middleEchart2 {
-  height: 100%;
+  height: calc(100% - 40px);
   width: 100%;
-}
-.rowContent {
-  height: 20%;
-  background: rgba(255, 255, 255, 0.1);
-  box-shadow: 0px 0px 1px #fff;
-}
-.first-menu {
-  padding: 5px 20px 20px 20px;
-  height: calc(100% - 25px) !important;
 }
 .el-row:first-child {
   height: calc(40% - 80px);
@@ -158,9 +180,21 @@
 .el-row:nth-child(3) {
   height: 30%;
 }
-.el-col,
-.rowContent {
+.el-col {
   height: 100%;
+}
+.rowContent {
+  padding: 5px 20px 0px 10px;
+  height: calc(100% - 5px);
+  width: calc(100% - 30px);
+  background: rgba(255, 255, 255, 0.1);
+  box-shadow: 0px 0px 1px #fff;
+  .span-title {
+    color: #fff;
+    font-size: 17px;
+    margin-left: 35px;
+    font-weight: 600;
+  }
 }
 .box-card {
   width: 150px;
@@ -183,11 +217,17 @@
 .rowTitle {
   height: 40px;
   display: flex;
+  line-height: 40px;
+  img {
+    width: 30px;
+    height: 30px;
+    margin-top: 5px;
+  }
   span {
     color: #fff;
-    font-size: 25px;
+    font-size: 17px;
     font-weight: 600;
-    margin-right: 20px;
+    margin-left: 11px;
   }
   .select1 {
     position: absolute;
@@ -205,4 +245,9 @@
     width: 120px;
   }
 }
+.col-content {
+  display: flex;
+  margin-top: 15px;
+  margin-left: 36px;
+}
 </style>
diff --git a/src/views/securityUnitOperation/operationTable.vue b/src/views/securityUnitOperation/operationTable.vue
index a88aa2e..4698328 100644
--- a/src/views/securityUnitOperation/operationTable.vue
+++ b/src/views/securityUnitOperation/operationTable.vue
@@ -1,17 +1,81 @@
 <template>
-  <div class="table1">
-    <div class="about">
-      <el-button @click="downExcel">下载</el-button>
-      <el-table id="table" :data="tableData" stripe style="width: 100%">
-        <el-table-column prop="date" label="日期" width="180">
-        </el-table-column>
-        <el-table-column prop="name" label="姓名" width="180">
-        </el-table-column>
-        <el-table-column prop="address" label="地址"> </el-table-column>
-      </el-table>
-      <el-pagination background layout="prev, pager, next" :total="1000">
-      </el-pagination>
-    </div>
+  <div class="operation-table">
+    <el-row>
+      <el-col>
+        <span>时间范围:</span>
+        <el-date-picker
+          v-model="value2"
+          type="daterange"
+          align="right"
+          unlink-panels
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+          :picker-options="pickerOptions"
+        >
+        </el-date-picker>
+        <span>类别:</span>
+        <el-select v-model="typeValue" placeholder="请选择">
+          <el-option
+            v-for="item in typeOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+        <span>分局:</span>
+        <el-select v-model="subofficeValue" placeholder="请选择">
+          <el-option
+            v-for="item in subofficeOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+        <span>公司名称:</span>
+        <el-input v-model="companyName"></el-input>
+        <el-button>查询</el-button>
+        <el-button>重置</el-button>
+      </el-col>
+    </el-row>
+    <el-row>
+      <el-col>
+        <div class="table">
+          <el-button @click="downExcel">下载</el-button>
+          <el-table id="table" :data="tableData" style="width: 100%">
+            <el-table-column type="index" label="序号" width="50">
+            </el-table-column>
+            <el-table-column prop="company" label="公司名称" width="180">
+            </el-table-column>
+            <el-table-column prop="subOffice" label="所属分局" width="180">
+            </el-table-column>
+            <el-table-column prop="time" label="时间"> </el-table-column>
+            <el-table-column prop="totalSec" label="总保安人数">
+            </el-table-column>
+            <el-table-column prop="normalSec" label="正常保安数">
+            </el-table-column>
+            <el-table-column prop="holderSec" label="持证保安数">
+            </el-table-column>
+            <el-table-column prop="sendSec" label="保安派遣数">
+            </el-table-column>
+            <el-table-column prop="passSec" label="过考保安数">
+            </el-table-column>
+            <el-table-column prop="unit" label="服务单位数"> </el-table-column>
+            <el-table-column prop="socialSec" label="缴纳社保保安数">
+            </el-table-column>
+            <el-table-column prop="bz" label="备注"> </el-table-column>
+          </el-table>
+          <el-pagination
+            background
+            layout="prev, pager, next"
+            :total="tableData.length"
+          >
+          </el-pagination>
+        </div>
+      </el-col>
+    </el-row>
   </div>
 </template>
 <script>
@@ -20,28 +84,139 @@
 export default {
   data() {
     return {
+      pickerOptions: {
+        shortcuts: [
+          {
+            text: "最近一周",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
+              picker.$emit("pick", [start, end]);
+            }
+          },
+          {
+            text: "最近一个月",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
+              picker.$emit("pick", [start, end]);
+            }
+          },
+          {
+            text: "最近三个月",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
+              picker.$emit("pick", [start, end]);
+            }
+          }
+        ]
+      },
+      value1: "",
+      value2: "",
       tableData: [
         {
-          date: "2016-05-02",
-          name: "王小虎",
-          address: "上海市普陀区金沙江路 1518 弄",
+          company: "江西省永安保安服务有限公司",
+          subOffice: "南昌市公安局",
+          time: "2020年7月",
+          totalSec: "1200",
+          normalSec: "1150",
+          holderSec: "1160",
+          sendSec: "1000",
+          passSec: "1180",
+          unit: "50",
+          socialSec: "1180",
+          bz: ""
         },
         {
-          date: "2016-05-04",
-          name: "王小虎",
-          address: "上海市普陀区金沙江路 1517 弄",
+          company: "南昌市赣水保安服务有限公司",
+          subOffice: "东湖分局",
+          time: "2020年7月",
+          totalSec: "1200",
+          normalSec: "1150",
+          holderSec: "1160",
+          sendSec: "1000",
+          passSec: "1180",
+          unit: "50",
+          socialSec: "1180",
+          bz: ""
         },
         {
-          date: "2016-05-01",
-          name: "王小虎",
-          address: "上海市普陀区金沙江路 1519 弄",
-        },
-        {
-          date: "2016-05-03",
-          name: "王小虎",
-          address: "上海市普陀区金沙江路 1516 弄",
-        },
+          company: "江西中业兴达保安服务有限公司",
+          subOffice: "西湖分局",
+          time: "2020年7月",
+          totalSec: "1200",
+          normalSec: "1150",
+          holderSec: "1160",
+          sendSec: "1000",
+          passSec: "1180",
+          unit: "50",
+          socialSec: "1180",
+          bz: ""
+        }
       ],
+      typeValue: "0",
+      typeOptions: [
+        {
+          value: "0",
+          label: "全部"
+        },
+        {
+          value: "1",
+          label: "总保安人数"
+        },
+        {
+          value: "2",
+          label: "正常保安数"
+        },
+        {
+          value: "3",
+          label: "持证保安数"
+        },
+        {
+          value: "4",
+          label: "保安派遣数"
+        },
+        {
+          value: "5",
+          label: "过考保安数"
+        },
+        {
+          value: "6",
+          label: "服务单位数"
+        },
+        {
+          value: "7",
+          label: "缴纳社保保安数"
+        }
+      ],
+      subofficeValue: "0",
+      subofficeOptions: [
+        {
+          value: "0",
+          label: "南昌市公安局"
+        },
+        {
+          value: "2",
+          label: "东湖分局"
+        },
+        {
+          value: "3",
+          label: "西湖分局"
+        },
+        {
+          value: "4",
+          label: "青云谱分局"
+        },
+        {
+          value: "5",
+          label: "青山湖分局"
+        }
+      ],
+      companyName: ""
     };
   },
   methods: {
@@ -50,12 +225,12 @@
       let etout = XLSX.write(et, {
         bookType: "xlsx",
         bookSST: true,
-        type: "array",
+        type: "array"
       });
       try {
         FileSaver.saveAs(
           new Blob([etout], {
-            type: "application/octet-stream",
+            type: "application/octet-stream"
           }),
           `表.xlsx`
         ); //导出的文件名
@@ -63,15 +238,72 @@
         console.log(e, etout);
       }
       return etout;
-    },
+    }
   },
-  mounted() {},
+  mounted() {}
 };
 </script>
-<style>
-.table1 {
+<style lang="scss" scoped>
+.operation-table {
   height: 100%;
-  width: 1005;
-  display: none;
+  width: 100%;
+  .el-row:first-child {
+    height: 100px;
+    margin-bottom: 20px;
+    background: rgba(255, 255, 255, 0.1);
+    box-shadow: 0px 0px 1px #fff;
+    .el-col {
+      padding: 20px;
+      .el-date-editor {
+        margin-right: 20px;
+      }
+      .el-select {
+        width: 115px;
+        margin-right: 20px;
+      }
+      .el-input {
+        width: 115px;
+        margin-right: 20px;
+      }
+      .el-button {
+        width: 70px !important;
+      }
+    }
+  }
+  .el-row:nth-child(2) {
+    height: calc(100% - 120px);
+    background: rgba(255, 255, 255, 0.1);
+    box-shadow: 0px 0px 1px #fff;
+  }
+  .el-col {
+    height: 100%;
+    span {
+      color: #fff;
+    }
+  }
+}
+.table {
+  padding: 20px;
+  height: calc(100% - 40px);
+  width: calc(100% - 40px);
+  .el-button {
+    width: 55px;
+    height: 30px;
+    padding: 0px;
+    margin-left: calc(100% - 55px);
+  }
+}
+/deep/ .el-table {
+  width: 100%;
+  height: calc(100% - 100px);
+  margin: 10px 0px;
+  .cell {
+    color: #fff;
+    text-align: center;
+  }
+}
+.el-pagination {
+  height: 40px;
+  float: right;
 }
 </style>
diff --git a/src/views/securityUnitOperation/securityEchart.js b/src/views/securityUnitOperation/securityEchart.js
index 1dfe7d4..972689d 100644
--- a/src/views/securityUnitOperation/securityEchart.js
+++ b/src/views/securityUnitOperation/securityEchart.js
@@ -1,10 +1,27 @@
 function bottomOption(data) {
   let option = {
-    title: {
-      text: "公司运营趋势",
+    // title: {
+    //   text: "公司运营趋势",
+    //   textStyle: {
+    //     color: "#fff"
+    //   }
+    // },
+    grid: {
+      top: "10%",
+      left: "3%",
+      right: "4%",
+      bottom: "15%",
+      containLabel: true
+    },
+    legend: {
+      data: ["趋势"],
+      bottom: "0%",
       textStyle: {
         color: "#fff"
       }
+    },
+    tooltip: {
+      trigger: "item"
     },
     xAxis: {
       type: "category",
@@ -35,7 +52,8 @@
     },
     series: [
       {
-        data: [820, 932, 901, 934, 1290, 1330, 1320, 132, 1111, 321, 342, 134],
+        name: "趋势",
+        data: [0.1, 0.3, 0.2, 0.5, 0.1,0.4, 0.32, 0.13, 0.21, 0.12, 0.25, 0.11],
         type: "line",
         smooth: true,
         areaStyle: {}
@@ -46,12 +64,12 @@
 }
 function middleOption1(data) {
   let option = {
-    title: {
-      text: "公司保安类数据对比",
-      textStyle: {
-        color: "#fff"
-      }
-    },
+    // title: {
+    //   text: "公司保安类数据对比",
+    //   textStyle: {
+    //     color: "#fff"
+    //   }
+    // },
     tooltip: {
       trigger: "axis"
     },
@@ -64,13 +82,14 @@
         "缴纳社保保安数",
         "缴纳社保数"
       ],
-      bottom: "2%",
+      bottom: "0%",
       textStyle: {
         color: "#fff"
       }
     },
     grid: {
-      left: "3%",
+      top: "10%",
+      left: "5%",
       right: "4%",
       bottom: "15%",
       containLabel: true
@@ -145,12 +164,12 @@
 }
 function middleOption2(data) {
   let option = {
-    title: {
-      text: "服务客户",
-      textStyle: {
-        color: "#fff"
-      }
-    },
+    // title: {
+    //   text: "服务客户",
+    //   textStyle: {
+    //     color: "#fff"
+    //   }
+    // },
     tooltip: {
       trigger: "axis",
       axisPointer: {
@@ -159,15 +178,16 @@
     },
     legend: {
       data: ["客户数"],
-      bottom: "5%",
+      bottom: "0%",
       textStyle: {
         color: "#fff"
       }
     },
     grid: {
-      left: "3%",
+      top: "10%",
+      left: "12%",
       right: "4%",
-      bottom: "7%",
+      bottom: "15%",
       containLabel: true
     },
     xAxis: {
@@ -199,9 +219,132 @@
     },
     series: [
       {
-        name: "2011年",
+        name: "客户数",
         type: "bar",
         data: [231, 123, 441, 123, 321, 333, 111, 221, 332, 442, 132, 51]
+      }
+    ]
+  };
+  return option;
+}
+
+function economicMiddle(data) {
+  let option = {
+    // title: {
+    //   text: "公司保安类数据对比",
+    //   textStyle: {
+    //     color: "#fff"
+    //   }
+    // },
+    tooltip: {
+      trigger: "axis"
+    },
+    legend: {
+      data: [
+        "缴纳社保人数",
+        '公司派遣人数'
+      ],
+      bottom: "0%",
+      textStyle: {
+        color: "#fff"
+      }
+    },
+    grid: {
+      top: "10%",
+      left: "5%",
+      right: "4%",
+      bottom: "15%",
+      containLabel: true
+    },
+    xAxis: {
+      type: "category",
+      boundaryGap: false,
+      axisLabel: {
+        color: "#fff"
+      },
+      data: [
+        "一月",
+        "二月",
+        "三月",
+        "四月",
+        "五月",
+        "六月",
+        "七月",
+        "八月",
+        "九月",
+        "十月",
+        "十一月",
+        "十二月"
+      ]
+    },
+    yAxis: {
+      type: "value",
+      axisLabel: {
+        color: "#fff"
+      }
+    },
+    series: [
+      {
+        name: "缴纳社保人数",
+        type: "line",
+        stack: "总量",
+        data: [120, 132, 101, 134, 90, 230, 210, 214, 123, 22, 132, 321]
+      },
+      {
+        name: "公司派遣人数",
+        type: "line",
+        stack: "总量",
+        data: [220, 182, 191, 234, 290, 330, 310, 111, 222, 132, 143, 123]
+      },
+    ]
+  };
+  return option;
+}
+function economicPieOption() {
+  let title = "总";
+  let total = "111";
+  let option = {
+    title: [
+      {
+        text: "{name|" + title + "}\n{val|" + total + "}",
+        top: "center",
+        left: "center",
+        textStyle: {
+          rich: {
+            name: {
+              fontSize: 14,
+              fontWeight: "normal",
+              color: "#fff",
+              padding: [10, 0]
+            },
+            val: {
+              fontSize: 20,
+              fontWeight: "bold",
+              color: "#fff"
+            }
+          }
+        }
+      }
+    ],
+    tooltip: {
+      trigger: "item"
+    },
+    legend: {
+      bottom: "0%",
+      left: "center",
+      textStyle: {
+        color: "#fff"
+      }
+    },
+    series: [
+      {
+        name: "人员分布",
+        type: "pie",
+        radius: ["40%", "70%"],
+        data: [
+          { value: 1048, name: "已派遣人数" },
+          { value: 735, name: "未派遣人" }
+        ]
       }
     ]
   };
@@ -211,5 +354,7 @@
 export default {
   bottomOption,
   middleOption1,
-  middleOption2
+  middleOption2,
+  economicMiddle,
+  economicPieOption
 };

--
Gitblit v1.9.3