Administrator
2021-07-19 d40f7acd9f1bef59c63dd45323bbe38a3d489b2e
Merge branch 'master' of http://192.168.0.105:10010/r/jfptweb-publicSecurity
11 files modified
1 files added
607 ■■■■■ changed files
public/map/framework.css 24 ●●●●● patch | view | raw | blame | history
public/map/lib/layui/css/modules/layer/myskin/region-name.css 10 ●●●● patch | view | raw | blame | history
public/map/lib/layui/css/modules/layer/myskin/routename-and-peoplename.css 11 ●●●● patch | view | raw | blame | history
public/map/popup/style/region-name.css 28 ●●●●● patch | view | raw | blame | history
public/map/popup/style/route-name-layer.css 46 ●●●● patch | view | raw | blame | history
public/map/popup/style/routename-and-peoplename.css 24 ●●●● patch | view | raw | blame | history
public/map/widgets/patrolManagement/PatrolManagement.css 40 ●●●● patch | view | raw | blame | history
public/map/widgets/patrolManagement/template.html 6 ●●●● patch | view | raw | blame | history
src/api/home/home.js 8 ●●●●● patch | view | raw | blame | history
src/styles/element-ui.scss 17 ●●●● patch | view | raw | blame | history
src/views/wel/home.vue 392 ●●●● patch | view | raw | blame | history
vue.config.js 1 ●●●● patch | view | raw | blame | history
public/map/framework.css
@@ -393,3 +393,27 @@
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.police-container-patrol{
  background-color: #004CA7 !important;
  padding-right: 1px;
}
.police-container .table table tr th, .police-container .table table tr td{
  color: #fff !important;
}
.police-dispatching .police-container .police-container-patrol .tab-header li{
  color: #fff !important;
}
.police-container .table table tr td a{
  color: #fff !important;
}
.route-name-layer .layui-layer-title,.route-name-layer .layui-layer-content{
  background-color: #004CA7 !important;
  color: #fff !important;
}
/* .route-name-layer-input{
  background-color: #004CA7 !important;
  color: #fff !important;
  border: 1px solid #007bc3 !important;
  border-radius: 5px !important;
} */
public/map/lib/layui/css/modules/layer/myskin/region-name.css
@@ -12,14 +12,18 @@
.region-name .layui-layer-title {
    padding: 0 80px;
    text-align: center;
    background: #fff;
    /* background: #fff; */
    border: none;
    color: #677788;
    /* color: #677788; */
    font-size: 20px;
    border-radius: 10px 10px 0 0;
    background-color: #004CA7 !important;
    color: #fff !important;
    /* border: 1px solid #007bc3 !important; */
    /* border-radius: 5px !important; */
}
.region-name .layui-layer-content {
    background: #fff;
    background: #004CA7;
    border-radius: 0 0 10px 10px;
}
public/map/lib/layui/css/modules/layer/myskin/routename-and-peoplename.css
@@ -12,14 +12,19 @@
.routename-and-peoplename .layui-layer-title {
    padding: 0 80px;
    text-align: center;
    background: #fff;
    /* background: #fff; */
    border: none;
    color: #677788;
    /* color: #677788; */
    font-size: 20px;
    border-radius: 10px 10px 0 0;
    background-color: #004CA7 !important;
    color: #fff !important;
    /* border: 1px solid #007bc3 !important; */
    /* border-radius: 5px !important; */
}
.routename-and-peoplename .layui-layer-content {
    background: #fff;
    background: #004CA7;
    border-radius: 0 0 10px 10px;
}
public/map/popup/style/region-name.css
@@ -38,13 +38,25 @@
.region-name-box li:nth-child(2) {
    height: 80px;
}
.region-name-box li:nth-child(2) textarea::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.region-name-box li:nth-child(2) textarea {
    width: 100%;
    height: 100%;
    text-indent: 2em;
    font-size: 14px;
    line-height: 24px;
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.region-name-box input {
@@ -53,11 +65,23 @@
    vertical-align: middle;
    outline: none;
}
.region-name-box .region-name-input::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.region-name-box .region-name-input {
    width: 100%;
    height: 28px;
    font-size: 14px;
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.region-name-box .start-editing {
public/map/popup/style/route-name-layer.css
@@ -38,25 +38,49 @@
.route-name-layer-box li:nth-child(2) {
    height: 80px;
}
.route-name-layer-box li:nth-child(2) textarea::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.route-name-layer-box li:nth-child(2) textarea {
    width: 100%;
    height: 100%;
    text-indent: 2em;
    font-size: 14px;
    line-height: 24px;
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.route-name-layer-box li:nth-child(3) select::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.route-name-layer-box li:nth-child(3) select {
    padding-left: 12px;
    height: 28px;
    width: 100%;
    outline: none;
    color: #677788;
    /* color: #677788; */
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.route-name-layer-box li:nth-child(3) select option {
    color: #000;
    color: #fff;
}
.route-name-layer-box input {
@@ -65,11 +89,23 @@
    vertical-align: middle;
    outline: none;
}
.route-name-layer-box .route-name-layer-input::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.route-name-layer-box .route-name-layer-input {
    width: 100%;
    height: 28px;
    font-size: 14px;
    background-color: #004CA7 !important;
  color: #fff !important;
  border: 1px solid #007bc3 !important;
  border-radius: 5px !important;
}
.route-name-layer-box .start-editing {
public/map/popup/style/routename-and-peoplename.css
@@ -22,7 +22,7 @@
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    color: #677788;
    color: #fff;
}
.routename-and-peoplename-box li {
@@ -39,7 +39,15 @@
.routename-and-peoplename-box li span {
    flex: 2;
}
.routename-and-peoplename-box li:nth-child(2) select::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.routename-and-peoplename-box li:nth-child(2) select {
    margin-top: 6px;
    padding: 0 10px;
@@ -47,11 +55,15 @@
    flex: 6;
    height: 28px;
    outline: none;
    color: #677788;
    /* colorgb(37, 20, 20)fff; */
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.routename-and-peoplename-box li:nth-child(2) select option {
    color: #677788;
    color: #fff;
}
@@ -65,6 +77,10 @@
    outline: none;
    height: 28px;
    font-size: 14px;
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.routename-and-peoplename-box .confirm-update {
public/map/widgets/patrolManagement/PatrolManagement.css
@@ -620,12 +620,24 @@
.police-container .police-container-patrol .distribute-table-content .operation>div {
    flex: 8;
}
.police-container .police-container-patrol .distribute-table-content .operation input[type='text']::-webkit-input-placeholder {
    color: #fff;
  }
  input::-moz-input-placeholder {
    color: #fff;
  }
  input::-ms-input-placeholder {
    color: #fff;
  }
.police-container .police-container-patrol .distribute-table-content .operation input[type='text'] {
    flex: 8;
    padding: 0 10px;
    height: 30px;
    border: 1px solid rgba(231, 234, 243, 1);
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.police-container .police-container-patrol .distribute-table-content .operation input[type='button'] {
@@ -726,11 +738,15 @@
.police-container .main-content .select>ul>li:first-child {
    position: relative;
    padding-left: 10px;
    color: #677788;
    background: rgb(255, 255, 255);
    border: 1px solid rgba(231, 234, 243, 1);
    color: #fff;
    /* background: rgb(255, 255, 255); */
    /* border: 1px solid rgba(231, 234, 243, 1); */
    box-sizing: border-box;
    text-align: left;
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
@@ -741,7 +757,7 @@
    left: 48px;
    width: calc(100% - 48px);
    height: 32px;
    color: #677788;
    color: #fff;
    padding-left: 10px;
    box-sizing: border-box;
    cursor: pointer;
@@ -788,16 +804,20 @@
    flex: 1;
    padding-left: 10px;
    height: 34px;
    border-top: 1px solid rgba(231, 234, 243, 1);
    background: rgb(255, 255, 255);
    color: #677788;
    /* border-top: 1px solid rgba(231, 234, 243, 1); */
    /* background: rgb(255, 255, 255); */
    color: #fff;
    box-sizing: border-box;
    cursor: pointer;
    background-color: #004CA7 !important;
    color: #fff !important;
    border: 1px solid #007bc3 !important;
    border-radius: 5px !important;
}
.police-container .main-content .select>ul>li:first-child ul li:hover {
    color: #15a2fe;
    background: #beeeff;
    color: #fff;
    background: #007bc3;
}
.police-container .main-content .select>ul>li:first-child ul li:first-child {
public/map/widgets/patrolManagement/template.html
@@ -124,11 +124,11 @@
                                    <li id='patrolRoute'>
                                        区域:
                                        <div>
                                        </div>
                                        <div class='select-list'>
                                            <ul>
                                            </ul>
                                        </div>
                                    </li>
@@ -257,6 +257,6 @@
    </div>
    <div class="tips">
        单击左键开始绘制。
        单击左键开始绘制。
    </div>
</div>
src/api/home/home.js
New file
@@ -0,0 +1,8 @@
import request from '@/router/axios';
export const getList = () => {
  return request({
    url: '/api/blade-user/getUserRegisterStatisticsData',
    method: 'get'
  })
}
src/styles/element-ui.scss
@@ -146,8 +146,8 @@
  color: $fontColor !important;
}
.el-menu-item:hover {
  // background-color: $mainBhover !important;
  color: red !important;
  background-color: $mainBhover !important;
  // color: red !important;
}
.el-input__inner {
  background-color: $inputB !important;
@@ -408,3 +408,16 @@
.avue-main {
  background-color: $mainBx2 !important;
}
//角色管理 权限设置
.el-tabs--border-card {
  background-color: $mainB !important;
}
.el-tabs--border-card > .el-tabs__header {
  background-color: $mainB !important;
}
.el-tabs--border-card > .el-tabs__header .el-tabs__item.is-active {
  background-color: transparent !important;
  border-bottom: 1px solid $mainB !important;
}
src/views/wel/home.vue
@@ -6,35 +6,38 @@
          <div>
            <div>
              <div>
                <div>群防群控队伍</div>
                <div>
                  群防群控队伍
                  <div class="title-1">({{ OURnum }})</div>
                </div>
              </div>
              <div id="on_three_yjy">
                <div>
                  <div>
                    <div><img src="/img/wyh.png" alt="" /><span>10</span></div>
                    <span> 治安保卫委员会 </span>
                    <div><img src="/img/wyh.png" alt="" /><span>20</span></div>
                    <span> 治保会队伍 </span>
                  </div>
                  <div>
                    <div><img src="/img/zabw.png" alt="" /><span>44</span></div>
                    <span> 治安保卫队伍 </span>
                    <div><img src="/img/zabw.png" alt="" /><span>15</span></div>
                    <span> 内保干部队伍 </span>
                  </div>
                  <div>
                    <div><img src="/img/xf.png" alt="" /><span>42</span></div>
                    <div><img src="/img/xf.png" alt="" /><span>30</span></div>
                    <span> 治安巡防队伍 </span>
                  </div>
                </div>
                <div>
                  <div>
                    <div><img src="/img/xxy.png" alt="" /><span>36</span></div>
                    <div><img src="/img/xxy.png" alt="" /><span>26</span></div>
                    <span> 信息员队伍 </span>
                  </div>
                  <div>
                    <div><img src="/img/badw.png" alt="" /><span>52</span></div>
                    <span> 保安队伍 </span>
                    <div><img src="/img/badw.png" alt="" /><span>30</span></div>
                    <span> 保安员队伍 </span>
                  </div>
                  <div>
                    <div><img src="/img/ldz.png" alt="" /><span>25</span></div>
                    <span> 楼栋长 </span>
                    <span> 警务辅助队伍</span>
                  </div>
                </div>
              </div>
@@ -42,7 +45,7 @@
            <div>
              <div>
                <div>生长树</div>
                <div>能量树</div>
              </div>
              <div id="on_four_yjy">
                <div class="tree">
@@ -98,6 +101,7 @@
import * as echarts from "echarts";
import geojson from "@/geojson/nanchang.json";
import { getList } from "@/api/home/home";
export default {
  data() {
@@ -110,15 +114,24 @@
      pluss: false, // 水滴值+1动画开关
      movetree: true, // 树动画开关
      ranksNum: [],
      option1: "",
      echarts1: "",
    };
  },
  computed: {},
  computed: {
    OURnum() {
      return 146;
    },
  },
  created() {},
  mounted() {
    // eslint-disable-next-line no-undef
    this.onTwoEcharts();
    this.onSixEcharts();
    this.createechart1(); //建立图表1
    this.onSixEcharts(); //图表1数据
    this.createMapJson();
  },
  methods: {
@@ -142,7 +155,7 @@
        grid: {
          borderWidth: 0,
          top: "10%",
          left: "8%",
          left: "10%",
          bottom: "10%",
          right: "8%",
          textStyle: {
@@ -244,172 +257,192 @@
      myChart.setOption(option, true);
    },
    onSixEcharts() {
    createechart1() {
      var myChart = echarts.init(document.getElementById("on_six_yjy"));
      this.echarts1 = myChart;
    },
    onSixEcharts() {
      this.echarts1.clear();
      //改折线图
      var option = {
        tooltip: {
          trigger: "axis",
          axisPointer: {
            type: "shadow",
          },
        },
        legend: {
          data: ["在线率", "注册量"],
          align: "right",
          right: 10,
          textStyle: {
            color: "#fff",
          },
          itemWidth: 10,
          itemHeight: 10,
          itemGap: 35,
        },
        grid: {
          left: "3%",
          right: "4%",
          bottom: "3%",
          containLabel: true,
        },
        xAxis: [
          {
            type: "category",
            data: [
              "东湖区",
              "西湖区",
              "青云谱区",
              "青山湖区",
              "新建区",
              "红谷滩区",
              "南昌县",
              "安义县",
              "进贤县",
            ],
            axisLine: {
              show: true,
              lineStyle: {
                color: "#063374",
                width: 1,
                type: "solid",
              },
            },
            axisTick: {
              show: false,
            },
            axisLabel: {
              show: true,
              textStyle: {
                color: "#00c7ff",
              },
              rotate: 45,
            },
          },
        ],
        yAxis: [
          {
            type: "value",
            name: "注册量",
            // min: 0,
            // max: 250,
            // interval: 50,
            axisLabel: {
              formatter: "{value}",
            },
            axisTick: {
              show: false,
            },
            axisLine: {
              show: false,
              lineStyle: {
                color: "#00c7ff",
                width: 1,
                type: "solid",
              },
            },
            // max: 100,
            // min: 0,
            splitLine: {
              lineStyle: {
                color: "#063374",
              },
            },
          },
          {
            type: "value",
            name: "在线率",
            axisLabel: {
              formatter: "{value} %",
            },
            axisTick: {
              show: false,
            },
            axisLine: {
              show: false,
              lineStyle: {
                color: "#00c7ff",
                width: 1,
                type: "solid",
              },
            },
            max: 100,
            min: 0,
            splitLine: {
              lineStyle: {
                color: "#063374",
              },
            },
          },
        ],
        series: [
          {
            name: "在线率",
            type: "bar",
            data: [44, 46, 48, 52, 55, 45, 56, 38, 66],
            barWidth: 6, //柱子宽度
            barGap: 0.4, //柱子之间间距
            itemStyle: {
              normal: {
                color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
                  {
                    offset: 0,
                    color: "#008cff",
                  },
                  {
                    offset: 1,
                    color: "#005193",
                  },
                ]),
                opacity: 1,
              },
            },
          },
          {
            name: "注册量",
            type: "line",
            data: [50, 54, 58, 55, 65, 72, 44, 55, 58],
            barWidth: 6,
            barGap: 0.4,
            itemStyle: {
              normal: {
                color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
                  {
                    offset: 0,
                    color: "#c4e300",
                  },
                  {
                    offset: 1,
                    color: "#728400",
                  },
                ]),
                opacity: 1,
              },
            },
          },
        ],
      };
      var that = this;
      getList().then((res) => {
        var data = [];
        var datax = [];
        var d = res.data.data;
        for (var k in d) {
          data.push(d[k].num);
          datax.push(d[k].region);
        }
        console.log(res, 243423);
      myChart.setOption(option);
        var option = {
          tooltip: {
            trigger: "axis",
            axisPointer: {
              type: "shadow",
            },
          },
          legend: {
            data: ["注册量", "在线率"],
            align: "right",
            right: 10,
            textStyle: {
              color: "#fff",
            },
            itemWidth: 10,
            itemHeight: 10,
            itemGap: 35,
          },
          grid: {
            left: "3%",
            right: "2%",
            bottom: "3%",
            containLabel: true,
          },
          xAxis: [
            {
              type: "category",
              data: datax,
              // [
              //   "东湖区",
              //   "西湖区",
              //   "青云谱区",
              //   "青山湖区",
              //   "新建区",
              //   "红谷滩区",
              //   "南昌县",
              //   "安义县",
              //   "进贤县",
              // ],
              axisLine: {
                show: true,
                lineStyle: {
                  color: "#063374",
                  width: 1,
                  type: "solid",
                },
              },
              axisTick: {
                show: false,
              },
              axisLabel: {
                show: true,
                textStyle: {
                  color: "#00c7ff",
                },
                rotate: 45,
              },
            },
          ],
          yAxis: [
            {
              type: "value",
              name: "注册量",
              axisLabel: {
                formatter: "{value}",
              },
              position: "left",
              axisTick: {
                show: false,
              },
              minInterval: 1,
              axisLine: {
                show: false,
                lineStyle: {
                  color: "#00c7ff",
                  width: 1,
                  type: "solid",
                },
              },
              // max: 3,
              // min: 0,
              splitLine: {
                lineStyle: {
                  color: "#063374",
                },
              },
            },
            {
              type: "value",
              name: "在线率",
              // min: 0,
              // max: 250,
              // interval: 50,
              axisLabel: {
                formatter: "{value} %",
              },
              position: "right",
              axisTick: {
                show: false,
              },
              axisLine: {
                show: false,
                lineStyle: {
                  color: "#00c7ff",
                  width: 1,
                  type: "solid",
                },
              },
              max: 100,
              min: 0,
              splitLine: {
                lineStyle: {
                  color: "#063374",
                },
              },
            },
          ],
          series: [
            {
              name: "注册量",
              type: "bar",
              // data: [44, 46, 48, 52, 55, 45, 56, 38, 66],
              data: data,
              barWidth: 6, //柱子宽度
              barGap: 0.4, //柱子之间间距
              itemStyle: {
                normal: {
                  color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
                    {
                      offset: 0,
                      color: "#008cff",
                    },
                    {
                      offset: 1,
                      color: "#005193",
                    },
                  ]),
                  opacity: 1,
                },
              },
            },
            {
              name: "在线率",
              type: "line",
              data: [50, 54, 58, 55, 65, 72, 44, 55, 58],
              // barWidth: 6,
              // barGap: 0.4,
              yAxisIndex: 1,
              itemStyle: {
                normal: {
                  color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
                    {
                      offset: 0,
                      color: "#c4e300",
                    },
                    {
                      offset: 1,
                      color: "#728400",
                    },
                  ]),
                  opacity: 1,
                },
              },
            },
          ],
        };
        that.echarts1.setOption(option);
      });
    },
    createMapJson() {
@@ -1246,4 +1279,9 @@
.move-3 {
  animation: move-3 1s;
}
.title-1 {
  display: inline;
  padding-left: 20px;
}
</style>
vue.config.js
@@ -37,6 +37,7 @@
      '/api': {
        //本地服务接口地址
        target: 'http://s16s652780.51mypc.cn/api/',
        // target: 'http://192.168.0.114:82/',
        //target: 'http://localhost:82/',
        //target: 'https://web.byisf.com/api/',
        //远程演示服务地址,可用于直接启动项目