Hwt 2 vuotta sitten
vanhempi
commit
3864129357

+ 11 - 11
operationSupport/src/assets/css/color-dark.css

@@ -1,21 +1,21 @@
-.header{
+.header {
     background-color: #242f42;
 }
-.login-wrap{
+.login-wrap {
     background: #324157;
 }
-.plugins-tips{
+.plugins-tips {
     background: #eef1f6;
 }
-.plugins-tips a{
-    color: #2887F2;
+.plugins-tips a {
+    color: #2887f2;
 }
 .el-upload--text em {
-    color: #2887F2;
+    color: #2887f2;
 }
-.pure-button{
-    background: #2887F2;
+.pure-button {
+    background: #2887f2;
+}
+.message-title {
+    color: #2887f2;
 }
-.message-title{
-    color: #2887F2;
-}

+ 22 - 22
operationSupport/src/assets/css/main.scss

@@ -1,4 +1,4 @@
-@import "./public-style.scss";
+@import './public-style.scss';
 
 * {
     margin: 0;
@@ -23,8 +23,8 @@ ul li {
 }
 
 body {
-    font-family: "PingFang SC", "Microsoft YaHei", "微软雅黑", Microsoft YaHei, "Helvetica Neue", Helvetica,
-        "Hiragino Sans GB", Arial, sans-serif;
+    font-family: 'PingFang SC', 'Microsoft YaHei', '微软雅黑', Microsoft YaHei, 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial,
+        sans-serif;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     margin: 0;
@@ -32,8 +32,8 @@ body {
 
 textarea,
 textarea::-webkit-input-placeholder {
-    font-family: "PingFang SC", "Microsoft YaHei", "微软雅黑", Microsoft YaHei, "Helvetica Neue", Helvetica,
-        "Hiragino Sans GB", Arial, sans-serif;
+    font-family: 'PingFang SC', 'Microsoft YaHei', '微软雅黑', Microsoft YaHei, 'Helvetica Neue', Helvetica, 'Hiragino Sans GB', Arial,
+        sans-serif;
 }
 .dmp-app {
     height: 100%;
@@ -120,7 +120,7 @@ a {
     transform: translate(-50%, -120%);
     word-break: break-all;
     &:after {
-        content: " ";
+        content: ' ';
         position: absolute;
         bottom: -(vw(9));
         left: 50%;
@@ -240,7 +240,7 @@ a {
 }
 .notice_icon {
     .el-icon-close:before {
-        content: "关闭";
+        content: '关闭';
         display: flex;
         align-items: center;
         justify-content: center;
@@ -461,7 +461,7 @@ a {
         visibility: hidden;
         display: block;
         font-size: 0;
-        content: " ";
+        content: ' ';
         clear: both;
         height: 0;
     }
@@ -501,12 +501,12 @@ a {
     }
 
     .el-submenu > .el-submenu__title > .el-submenu__icon-arrow:before {
-        content: "\e791";
+        content: '\e791';
         color: #ffffff;
     }
 
     .el-submenu.is-active > .el-submenu__title > .el-submenu__icon-arrow:before {
-        content: "\e791";
+        content: '\e791';
         color: $mainTextColor;
     }
 
@@ -529,7 +529,7 @@ a {
 }
 
 .sidebar-el-menu .el-icon-arrow-down:before {
-    content: "\e791";
+    content: '\e791';
 }
 
 /*菜单关闭*/
@@ -610,13 +610,13 @@ a {
             top: 17px;
         }
         .dmp-icon-btn.icon-error {
-            background-image: url("../img/icon_error.png");
+            background-image: url('../img/icon_error.png');
         }
         .dmp-icon-btn.icon-warning {
-            background-image: url("../img/icon-warning.png");
+            background-image: url('../img/icon-warning.png');
         }
         .dmp-icon-btn.icon-success {
-            background-image: url("/static/imgs/icon-success.png");
+            background-image: url('/static/imgs/icon-success.png');
         }
         .title {
             width: 273px;
@@ -631,10 +631,10 @@ a {
             height: 10px;
             width: 10px;
             cursor: pointer;
-            background: url("../../assets/img/icon-close-off.png") no-repeat center;
+            background: url('../../assets/img/icon-close-off.png') no-repeat center;
             background-size: 10px 10px;
             &:hover {
-                background-image: url("../../assets/img/icon-close-on.png");
+                background-image: url('../../assets/img/icon-close-on.png');
             }
         }
     }
@@ -680,14 +680,14 @@ a {
 }
 
 @font-face {
-    font-family: "iconfont"; /* Project id 2167017 */
-    src: url("//at.alicdn.com/t/font_2167017_wrd31fts4a.woff2?t=1623035434172") format("woff2"),
-        url("//at.alicdn.com/t/font_2167017_wrd31fts4a.woff?t=1623035434172") format("woff"),
-        url("//at.alicdn.com/t/font_2167017_wrd31fts4a.ttf?t=1623035434172") format("truetype");
+    font-family: 'iconfont'; /* Project id 2167017 */
+    src: url('//at.alicdn.com/t/font_2167017_wrd31fts4a.woff2?t=1623035434172') format('woff2'),
+        url('//at.alicdn.com/t/font_2167017_wrd31fts4a.woff?t=1623035434172') format('woff'),
+        url('//at.alicdn.com/t/font_2167017_wrd31fts4a.ttf?t=1623035434172') format('truetype');
 }
 
 .zoniot_font {
-    font-family: "zoniot_font" !important;
+    font-family: 'zoniot_font' !important;
     color: $mainTextColor;
     font-size: 16px;
     line-height: 15px;
@@ -698,7 +698,7 @@ a {
     cursor: pointer;
 }
 .iconfont {
-    font-family: "iconfont" !important;
+    font-family: 'iconfont' !important;
     font-size: 14px;
     font-style: normal;
     -webkit-font-smoothing: antialiased;

+ 34 - 34
operationSupport/src/assets/css/public-style.scss

@@ -1,67 +1,67 @@
 /*主色调*/
-$mainTextColor: #0eaeff;
-$mainBgColor: #0eaeff;
+$mainTextColor: #0be5f0;
+$mainBgColor: #0be5f0;
 $white: white;
 $greenColor: #44d7b6;
 $redColor: #ff7171;
 $ashColor: #dcdcdc;
 
 @function vw($size) {
-  @return ($size/19.2) * 1vw;
+    @return ($size/19.2) * 1vw;
 }
 @function vh($size) {
-  @return ($size/10.8) * 1vh;
+    @return ($size/10.8) * 1vh;
 }
 $base_fontSize: 100;
 @function rem($px) {
-  @return $px / $base_fontSize * 1rem;
+    @return $px / $base_fontSize * 1rem;
 }
 .mainTextColor {
-  color: $mainTextColor !important;
+    color: $mainTextColor !important;
 }
 .greenText {
-  color: $greenColor !important;
+    color: $greenColor !important;
 }
 .redText {
-  color: $redColor !important;
+    color: $redColor !important;
 }
 .ashText {
-  color: $ashColor !important;
+    color: $ashColor !important;
 }
 .height100 {
-  min-height: inherit;
-  height: 100%;
+    min-height: inherit;
+    height: 100%;
 }
 
 .formContent-item_title {
-  font-size: 14px;
-  position: relative;
-  margin-left: 14px;
-  margin-bottom: 20px;
-  font-family: PingFangSC-Medium, PingFang SC;
-  &::before {
-    position: absolute;
-    left: -14px;
-    top: 4px;
-    width: 4px;
-    height: 12px;
-    border-radius: 2px;
-    display: block;
-    background: $mainBgColor;
-    content: " ";
-  }
+    font-size: 14px;
+    position: relative;
+    margin-left: 14px;
+    margin-bottom: 20px;
+    font-family: PingFangSC-Medium, PingFang SC;
+    &::before {
+        position: absolute;
+        left: -14px;
+        top: 4px;
+        width: 4px;
+        height: 12px;
+        border-radius: 2px;
+        display: block;
+        background: $mainBgColor;
+        content: ' ';
+    }
 }
-/deep/ label[for="companyOrgId"] + .el-form-item__content {
-  line-height: 0;
+/deep/ label[for='companyOrgId'] + .el-form-item__content {
+    line-height: 0;
 }
 
 /deep/ .amap-marker-label {
-  border: 0 none;
-  white-space: nowrap;
-  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
-  border-radius: 5px;
+    border: 0 none;
+    white-space: nowrap;
+    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
+    border-radius: 5px;
 }
 /deep/ .amap-logo,
 /deep/ .amap-copyright {
-  display: none !important;
+    display: none !important;
 }

BIN
operationSupport/src/assets/img/btn_shousuo.png


BIN
operationSupport/src/assets/img/btn_zhankai.png


+ 2 - 1
operationSupport/src/components/common/Header.vue

@@ -359,7 +359,8 @@ export default {
     height: rem(46);
     font-size: rem(14);
     color: #fff;
-    background: #2c354a;
+    // background: #2c354a;
+    background: #384856;
     display: flex;
     align-items: center;
     justify-content: space-between;

+ 2 - 1
operationSupport/src/components/common/Home.vue

@@ -143,7 +143,8 @@ export default {
     height: 100%;
 }
 .newWorkBench {
-    background-color: #2c354a;
+    // background-color: #2c354a;
+    background-color: #384856;
     overflow: hidden;
     padding-top: 0;
 }

+ 120 - 98
operationSupport/src/components/common/Sidebar.vue

@@ -1,109 +1,126 @@
 <template>
-    <div class="sidebar" :style="collapse ? 'width:85px' : 'width:220px'">
-        <div class="logo" v-if="!collapse">
-            <img style="width: rem(90); height: rem(24)" src="@/assets/img/img_logo2.png" />
-            <div class="title"><span class="point"></span>{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
-        </div>
-        <div class="logo shrink" v-else>
-            <div class="text">{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
-        </div>
-        <div class="menu-wrap no-scrollbar">
-            <el-menu
-                class="sidebar-el-menu"
-                ref="sidebarelmenu"
-                :default-active="onRoutes"
-                :collapse="collapse"
-                background-color="#171F32"
-                text-color="#aaadba"
-                active-text-color="#2887f2"
-                unique-opened
-                collapse-transition
-                router
-                :style="collapse ? 'width:84px' : 'width:220px'"
-            >
-                <menu-tree :menuList="menuList" :collapse="collapse" :openArray="openArray"></menu-tree>
-            </el-menu>
-        </div>
-        <div class="footer">
-            <img
-                :class="[collapse ? 'expandhover' : 'packuphover']"
-                :src="collapse ? btnCollpaseright : btnCollpaseleft"
-                @click="collapseChage"
-            />
-        </div>
+  <div
+    class="sidebar"
+    :style="collapse ? 'width:85px' : 'width:220px'"
+  >
+    <div
+      class="logo"
+      v-if="!collapse"
+    >
+      <img
+        style="width: rem(90); height: rem(24)"
+        src="@/assets/img/img_logo2.png"
+      />
+      <div class="title"><span class="point"></span>{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
     </div>
+    <div
+      class="logo shrink"
+      v-else
+    >
+      <div class="text">{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
+    </div>
+    <div class="menu-wrap no-scrollbar">
+      <el-menu
+        class="sidebar-el-menu"
+        ref="sidebarelmenu"
+        :default-active="onRoutes"
+        :collapse="collapse"
+        background-color="#192D39"
+        text-color="#aaadba"
+        active-text-color="#0be5f0"
+        unique-opened
+        collapse-transition
+        router
+        :style="collapse ? 'width:84px' : 'width:220px'"
+      >
+        <menu-tree
+          :menuList="menuList"
+          :collapse="collapse"
+          :openArray="openArray"
+        ></menu-tree>
+      </el-menu>
+    </div>
+    <div class="footer">
+      <img
+        :class="[collapse ? 'expandhover' : 'packuphover']"
+        :src="collapse ? btnCollpaseright : btnCollpaseleft"
+        @click="collapseChage"
+      />
+    </div>
+  </div>
 </template>
 
 <script>
 import MenuTree from './MenuTree.vue';
 export default {
-    data() {
-        return {
-            btnCollpaseright: require('@assets/img/btn_collpaseright.png'),
-            btnCollpaseleft: require('@assets/img/btn_collpaseleft.png'),
-            openList: []
-        };
-    },
-    components: {
-        MenuTree
+  data () {
+    return {
+
+      btnCollpaseright: require('@assets/img/btn_zhankai.png'),
+      btnCollpaseleft: require('@assets/img/btn_shousuo.png'),
+      openList: []
+    };
+  },
+  components: {
+    MenuTree
+  },
+  computed: {
+    onRoutes () {
+      return this.$route.path;
     },
-    computed: {
-        onRoutes() {
-            return this.$route.path;
-        },
-        collapse() {
-            return this.$store.getters['getCollapse'];
-        },
-        menuList() {
-            let list = this.$store.getters['getMenuList'];
-            return list;
-        },
-        openArray() {
-            return this.openList;
-        },
-        sessSetThisDetai() {
-            let text = '';
-            if (!!window.sessionStorage.getItem('setThisDetai')) {
-                text = JSON.parse(window.sessionStorage.getItem('setThisDetai')).name;
-            }
-            return text;
-        }
+    collapse () {
+      return this.$store.getters['getCollapse'];
     },
-    methods: {
-        // 侧边栏折叠
-        collapseChage() {
-            this.$store.dispatch('collapse', !this.collapse);
-        },
-        thisfindMen(arr, indexPath) {
-            let status = [];
-            arr.map((v) => {
-                if (v.children) {
-                    v.children.map((s) => {
-                        if ('/' + s.linkPath === indexPath) {
-                            status.push(v.linkPath, s.linkPath);
-                        }
-                    });
-                } else {
-                    if ('/' + v.linkPath === indexPath) {
-                        status.push(v.linkPath);
-                    }
-                }
-            });
-            return status;
-        }
+    menuList () {
+      let list = this.$store.getters['getMenuList'];
+      return list;
     },
-    watch: {
-        $route(newValue, oldValue) {
-            this.openList = this.thisfindMen(this.$store.getters['getMenuList'], newValue.path);
-        }
+    openArray () {
+      return this.openList;
     },
-    created() {
-        this.openList = this.thisfindMen(this.$store.getters['getMenuList'], this.$route.path);
+    sessSetThisDetai () {
+      let text = '';
+      if (!!window.sessionStorage.getItem('setThisDetai')) {
+        text = JSON.parse(window.sessionStorage.getItem('setThisDetai')).name;
+      }
+      return text;
+    }
+  },
+  methods: {
+    // 侧边栏折叠
+    collapseChage () {
+      this.$store.dispatch('collapse', !this.collapse);
     },
-    mounted() {
-        // this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0;
-        // console.log((this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0));
+    thisfindMen (arr, indexPath) {
+      let status = [];
+      arr.map((v) => {
+        if (v.children) {
+          v.children.map((s) => {
+            if ('/' + s.linkPath === indexPath) {
+              status.push(v.linkPath, s.linkPath);
+            }
+          });
+        } else {
+          if ('/' + v.linkPath === indexPath) {
+            status.push(v.linkPath);
+          }
+        }
+      });
+      return status;
+    }
+  },
+  watch: {
+    $route (newValue, oldValue) {
+      this.openList = this.thisfindMen(this.$store.getters['getMenuList'], newValue.path);
     }
+  },
+  created () {
+    this.openList = this.thisfindMen(this.$store.getters['getMenuList'], this.$route.path);
+  },
+  mounted () {
+    // this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0;
+    // console.log((this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0));
+  }
 };
 </script>
 
@@ -113,7 +130,8 @@ export default {
     width: rem(220);
     display: flex;
     flex-direction: column;
-    background: #171f32;
+    background: #19323f;
+
     border-radius: 0px rem(30) rem(30) 0px;
     z-index: 2;
     .logo {
@@ -212,17 +230,21 @@ export default {
 .sidebar-el-menu > div > .el-submenu.is-opened.is-active > .el-submenu__title {
     background: #2c354a !important;
     border-radius: rem(32) 0px 0px rem(32);
-    color: rgb(39, 135, 241) !important;
+    // color: rgb(39, 135, 241) !important;
+    color: #0be5f0 !important;
     border-right: 2px solid #2787f1;
     .el-submenu__icon-arrow::before {
-        color: rgb(39, 135, 241);
+        // color: rgb(39, 135, 241);
+        color: #0be5f0;
     }
 }
 .el-menu-item.is-active {
-    color: rgb(39, 135, 241);
+    // color: rgb(39, 135, 241);
+    color: #0be5f0;
 }
 .el-submenu.is-active > div > span {
-    color: rgb(39, 135, 241);
+    // color: rgb(39, 135, 241);
+    color: #0be5f0;
 }
 
 .sidebar .logo.shrink {

+ 135 - 102
operationSupport/src/components/common/alertModal.vue

@@ -6,122 +6,155 @@
  * @Description: element-ui Dialog弹窗封装
 -->
 <template>
-    <!-- <transition name="el-zoom-in-center"> -->
-    <el-dialog
-        v-if="modal.show"
-        :visible.sync="modal.show"
-        class="alert-modal"
-        :width="modal.width"
-        :fullscreen="modal.fullscreen"
-        :custom-class="modal.customClass || 'alert-el-modal'"
-        :class="{ 'is-modal': !modal.fullscreen, newpop: modal.class }"
-        :append-to-body="true"
-        :lock-scroll="true"
-        @closed="close"
-        ref="alertModal"
-        top="0"
-        :close-on-click-modal="false"
-        :close-on-press-escape="false"
+  <!-- <transition name="el-zoom-in-center"> -->
+  <el-dialog
+    v-if="modal.show"
+    :visible.sync="modal.show"
+    class="alert-modal"
+    :width="modal.width"
+    :fullscreen="modal.fullscreen"
+    :custom-class="modal.customClass || 'alert-el-modal'"
+    :class="{ 'is-modal': !modal.fullscreen, newpop: modal.class }"
+    :append-to-body="true"
+    :lock-scroll="true"
+    @closed="close"
+    ref="alertModal"
+    top="0"
+    :close-on-click-modal="false"
+    :close-on-press-escape="false"
+  >
+    <div slot="title">
+      <div class="title_row">
+        <strong class="title">{{ modal.title }}</strong>
+        {{ modal.star }}
+        <span v-if="modal.hideStar"></span>
+        <span v-else-if="modal.title && !modal.notip"> (<span class="color-danger">*为必填项</span>) </span>
+        <!-- <i class="close" @click="close"></i> -->
+      </div>
+    </div>
+    <!-- :style="`height:${modal.showFooter ? 'calc(100% - 50px)' : 'calc(100% - 54px)'}`" -->
+    <!-- <div class="body_content"> -->
+    <div
+      class="content"
+      v-scroll
     >
-        <div slot="title">
-            <div class="title_row">
-                <strong class="title">{{ modal.title }}</strong>
-                {{ modal.star }}
-                <span v-if="modal.hideStar"></span>
-                <span v-else-if="modal.title && !modal.notip"> (<span class="color-danger">*为必填项</span>) </span>
-                <!-- <i class="close" @click="close"></i> -->
-            </div>
-        </div>
-        <!-- :style="`height:${modal.showFooter ? 'calc(100% - 50px)' : 'calc(100% - 54px)'}`" -->
-        <!-- <div class="body_content"> -->
-        <div class="content" v-scroll>
-            <component :id="modal.id" :is="modal.component" :params="modal.props" :ref="modal.id" @close="close"></component>
-        </div>
-        <!-- </div> -->
-        <span slot="footer" class="dialog-footer" v-if="!modal.fullscreen || modal.showFooter">
-            <el-button @click="previousStep(modal.id)" type="primary" class="previousStep" v-if="modal.previousStepButton"
-                >上一步</el-button
-            >
-            <el-button @click="alertReset(modal.id)" class="reset" v-if="modal.showResetButton">重置</el-button>
-            <el-button @click="close" class="reset" v-if="!modal.showCancelButton">{{ modal.cancelButtonText || '取消' }}</el-button>
-            <el-button type="primary" v-if="!modal.showConfirmButton" @click="submit(modal.id)">{{
+      <component
+        :id="modal.id"
+        :is="modal.component"
+        :params="modal.props"
+        :ref="modal.id"
+        @close="close"
+      ></component>
+    </div>
+    <!-- </div> -->
+    <span
+      slot="footer"
+      class="dialog-footer"
+      v-if="!modal.fullscreen || modal.showFooter"
+    >
+      <el-button
+        @click="previousStep(modal.id)"
+        type="primary"
+        class="previousStep"
+        v-if="modal.previousStepButton"
+      >上一步</el-button>
+      <el-button
+        @click="alertReset(modal.id)"
+        class="reset"
+        v-if="modal.showResetButton"
+      >重置</el-button>
+      <el-button
+        @click="close"
+        class="reset"
+        v-if="!modal.showCancelButton"
+      >{{ modal.cancelButtonText || '取消' }}</el-button>
+      <el-button
+        type="primary"
+        v-if="!modal.showConfirmButton"
+        @click="submit(modal.id)"
+      >{{
                 modal.confirmButtonText || '保存'
             }}</el-button>
-            <el-button @click="nextStep(modal.id)" type="primary" class="nextStep" v-if="modal.nextStepButton">下一步</el-button>
-        </span>
-    </el-dialog>
-    <!-- </transition> -->
+      <el-button
+        @click="nextStep(modal.id)"
+        type="primary"
+        class="nextStep"
+        v-if="modal.nextStepButton"
+      >下一步</el-button>
+    </span>
+  </el-dialog>
+  <!-- </transition> -->
 </template>
 
 <script>
 const preventBrowserBack = () => {
-    history.pushState(null, null, document.URL);
+  history.pushState(null, null, document.URL);
 };
 /* 
   使用vuex this.$store.dispatch("openModal", {})打开弹窗,具体参数去store查看
 */
 export default {
-    name: 'alert-modal',
-    props: {
-        params: {
-            type: Object,
-            default() {
-                return {};
-            }
-        }
+  name: 'alert-modal',
+  props: {
+    params: {
+      type: Object,
+      default () {
+        return {};
+      }
+    }
+  },
+  data () {
+    return {
+      // modal:{}
+    };
+  },
+  computed: {
+    modal () {
+      // const xx = this.$store.getters['getPopups'];
+      let obj = this.params;
+      if (obj && obj.height) {
+        this.$nextTick(() => {
+          if (this.$refs.alertModal && this.$refs.alertModal.$el && this.$refs.alertModal.$el.childNodes) {
+            this.$refs.alertModal.$el.childNodes[0].style.height = obj.height;
+          }
+        });
+      }
+      if (obj.show) {
+        history.pushState(null, null, document.URL);
+        window.addEventListener('popstate', preventBrowserBack, false);
+      } else {
+        window.removeEventListener('popstate', preventBrowserBack);
+      }
+      return obj;
+    }
+  },
+  watch: {},
+  methods: {
+    close () {
+      this.$store.dispatch('delPopup', this.modal.id);
     },
-    data() {
-        return {
-            // modal:{}
-        };
+    // 弹窗重置,执行弹出组件的reset方法
+    alertReset (id) {
+      const component = this.$refs[id];
+      component.reset && component.reset();
     },
-    computed: {
-        modal() {
-            // const xx = this.$store.getters['getPopups'];
-            let obj = this.params;
-            if (obj && obj.height) {
-                this.$nextTick(() => {
-                    if (this.$refs.alertModal && this.$refs.alertModal.$el && this.$refs.alertModal.$el.childNodes) {
-                        this.$refs.alertModal.$el.childNodes[0].style.height = obj.height;
-                    }
-                });
-            }
-            if (obj.show) {
-                history.pushState(null, null, document.URL);
-                window.addEventListener('popstate', preventBrowserBack, false);
-            } else {
-                window.removeEventListener('popstate', preventBrowserBack);
-            }
-            return obj;
-        }
+    submit (id) {
+      const component = this.$refs[id];
+      component.submit && component.submit();
     },
-    watch: {},
-    methods: {
-        close() {
-            this.$store.dispatch('delPopup', this.modal.id);
-        },
-        // 弹窗重置,执行弹出组件的reset方法
-        alertReset(id) {
-            const component = this.$refs[id];
-            component.reset && component.reset();
-        },
-        submit(id) {
-            const component = this.$refs[id];
-            component.submit && component.submit();
-        },
-        previousStep(id) {
-            const component = this.$refs[id];
-            component.previousStep && component.previousStep(id);
-        },
-        nextStep(id) {
-            const component = this.$refs[id];
-            component.nextStep && component.nextStep(id);
-        }
+    previousStep (id) {
+      const component = this.$refs[id];
+      component.previousStep && component.previousStep(id);
     },
-    created() {
-        // debugger
-        // this.modal=this.params;
+    nextStep (id) {
+      const component = this.$refs[id];
+      component.nextStep && component.nextStep(id);
     }
+  },
+  created () {
+    // debugger
+    // this.modal=this.params;
+  }
 };
 </script>
 
@@ -163,14 +196,14 @@ export default {
             bottom: 10px;
             margin-top: 10px;
             .dialog-footer .reset {
-                border: 1px solid #0eaeff;
-                color: #0eaeff;
+                border: 1px solid #0be5f0;
+                color: #0be5f0;
             }
             .dialog-footer .previousStep {
                 float: left;
             }
             .el-button--primary {
-                background-color: #0eaeff;
+                background-color: #0be5f0;
                 // border-color: #0eaeff;
             }
         }

+ 271 - 167
operationSupport/src/components/common/newsearch.vue

@@ -6,45 +6,134 @@
  * @Description: 通用搜索
 -->
 <template>
-  <form class="zz-search" ref="searchForm" @submit.prevent="search" action="">
+  <form
+    class="zz-search"
+    ref="searchForm"
+    @submit.prevent="search"
+    action=""
+  >
     <div class="search-normal">
-      <div class="col" v-for='(item, index) in normal' :key='index'>
+      <div
+        class="col"
+        v-for='(item, index) in normal'
+        :key='index'
+      >
         <span class="search-box">
-					<span v-if="item.label" class='search-label'>{{item.label}}</span>
+          <span
+            v-if="item.label"
+            class='search-label'
+          >{{item.label}}</span>
           <span class="search-content">
-            <el-select v-if='item.options' :class="item.class" v-model="query[item.prop]" :placeholder="item.placeholder" clearable>
-              <el-option v-for='(o, ot) in item.options' :key='ot' :label="o.label" :value="o.value || o.id"></el-option>
+            <el-select
+              v-if='item.options'
+              :class="item.class"
+              v-model="query[item.prop]"
+              :placeholder="item.placeholder"
+              clearable
+            >
+              <el-option
+                v-for='(o, ot) in item.options'
+                :key='ot'
+                :label="o.label"
+                :value="o.value || o.id"
+              ></el-option>
             </el-select>
-            <slot v-else-if='item.slot' :name="item.slot"></slot>
-            <el-input v-else :type="item.type" @input="(val)=> inputChange(val, item)" :class="item.class" :placeholder="item.placeholder" v-model.trim="query[item.prop]" clearable></el-input>
+            <slot
+              v-else-if='item.slot'
+              :name="item.slot"
+            ></slot>
+            <el-input
+              v-else
+              :type="item.type"
+              @input="(val)=> inputChange(val, item)"
+              :class="item.class"
+              :placeholder="item.placeholder"
+              v-model.trim="query[item.prop]"
+              clearable
+            ></el-input>
           </span>
-				</span>
+        </span>
       </div>
-      <el-button plain v-if='more.length'  @click="showMore = !showMore" class="more-search el-mgRight-md">
-					高级搜索<i  :class="showMore ? 'el-icon-arrow-up' : 'el-icon-arrow-down'" class="el-icon--right"></i></el-button>	
-      <el-button v-if="normal.length && !showMore" native-type="submit" :disabled="btnDisabled" type='primary' class='search-btn' icon="el-icon-search">搜索</el-button>
+      <el-button
+        plain
+        v-if='more.length'
+        @click="showMore = !showMore"
+        class="more-search el-mgRight-md"
+      >
+        高级搜索<i
+          :class="showMore ? 'el-icon-arrow-up' : 'el-icon-arrow-down'"
+          class="el-icon--right"
+        ></i></el-button>
+      <el-button
+        v-if="normal.length && !showMore"
+        native-type="submit"
+        :disabled="btnDisabled"
+        type="primary"
+        class='search-btn'
+        icon="el-icon-search"
+      >搜索</el-button>
 
       <!-- <el-button class="button-has-icon" v-if='more.length' @click="showMore = !showMore">
         高级搜索<i class="el-icon-caret-bottom el-icon--right" :class="{'top': showMore}"></i></el-button>
       <el-button type="primary" native-type="submit" v-if='normal.length && !showMore'>搜索</el-button> -->
     </div>
     <el-collapse-transition>
-      <div class='search-more' v-show="showMore">
-        <div v-for="(item, index) in more" :key='index' class="col" :class="{'margin0': (index+1) % 6 === 0}">
+      <div
+        class='search-more'
+        v-show="showMore"
+      >
+        <div
+          v-for="(item, index) in more"
+          :key='index'
+          class="col"
+          :class="{'margin0': (index+1) % 6 === 0}"
+        >
           <span class="search-box">
-            <span v-if="item.label" class='search-label'>{{item.label}}</span>
+            <span
+              v-if="item.label"
+              class='search-label'
+            >{{item.label}}</span>
             <span class="search-content">
-              <el-select v-if='item.options' :class="item.class" v-model="query[item.prop]" :placeholder="item.placeholder" clearable>
-                <el-option v-for='(o, ot) in item.options' :key='ot' :label="o.label" :value="o.value || o.id"></el-option>
+              <el-select
+                v-if='item.options'
+                :class="item.class"
+                v-model="query[item.prop]"
+                :placeholder="item.placeholder"
+                clearable
+              >
+                <el-option
+                  v-for='(o, ot) in item.options'
+                  :key='ot'
+                  :label="o.label"
+                  :value="o.value || o.id"
+                ></el-option>
               </el-select>
-              <slot v-else-if='item.slot' :name="item.slot"></slot>
-              <el-input v-else :type="item.type"  @input="(val)=> inputChange(val, item)" :class="item.class" :placeholder="item.placeholder" v-model.trim="query[item.prop]" clearable></el-input>
+              <slot
+                v-else-if='item.slot'
+                :name="item.slot"
+              ></slot>
+              <el-input
+                v-else
+                :type="item.type"
+                @input="(val)=> inputChange(val, item)"
+                :class="item.class"
+                :placeholder="item.placeholder"
+                v-model.trim="query[item.prop]"
+                clearable
+              ></el-input>
             </span>
           </span>
         </div>
-        <div  class="col">
-          <el-button type="primary" native-type="submit" icon="el-icon-search">搜索</el-button>
-          <el-button class="reset_button" @click="reset">重置</el-button>
+        <div class="col">
+          <el-button
+            type="primary"
+            native-type="submit"
+            icon="el-icon-search"
+          >搜索</el-button>
+          <el-button
+            class="reset_button"
+            @click="reset"
+          >重置</el-button>
         </div>
       </div>
     </el-collapse-transition>
@@ -65,53 +154,53 @@ export default {
   props: {
     normal: {
       type: Array,
-      default() {
+      default () {
         return []
       }
     },
     more: {
       type: Array,
-      default() {
+      default () {
         return []
       }
     },
     query: {
       type: Object,
-      default() {
+      default () {
         return {}
       }
     },
     resetQuery: {
       type: Object,
-      default() {
+      default () {
         return {}
       }
     },
     // 不重置的字段集合
     noSetKeys: {
       type: Array,
-      default() {
+      default () {
         return []
       }
     },
     btnDisabled: {
       type: Boolean,
-      default() {
+      default () {
         return false
       }
     }
   },
-  data() {
+  data () {
     return {
       showMore: false
     }
   },
   methods: {
-    search() {
+    search () {
       //this.showMore = false;
       this.$emit('search');
     },
-    reset() {
+    reset () {
       const set = new Set(this.noSetKeys)
       if (_.isEmpty(this.resetQuery)) {
         Object.keys(this.query).forEach((item) => {
@@ -130,10 +219,10 @@ export default {
       }
       this.$emit("reset");
     },
-    inputChange(val, item) {
-      const {type, maxlength} = item;
-      if(type == 'number' && maxlength) {
-        if(val.toString().length > maxlength) {
+    inputChange (val, item) {
+      const { type, maxlength } = item;
+      if (type == 'number' && maxlength) {
+        if (val.toString().length > maxlength) {
           this.query[item.prop] = Number(val.toString().slice(0, maxlength));
         }
       }
@@ -147,7 +236,7 @@ export default {
       }
     };
   }, */
-  created() {
+  created () {
     const data = {}
     this.more.forEach((item) => {
       data[item.prop] = ''
@@ -164,149 +253,164 @@ export default {
 </script>
 <style lang="scss">
 .zz-search {
-  position:relative;
-	
-  .col {
-    display:inline-block;
-    vertical-align:middle;
-    .el-input,.el-select,.el-calendar,.el-cascader {
-      width: 180px;
-      input::-webkit-outer-spin-button,input::-webkit-inner-spin-button {
-        -webkit-appearance: none;
-        margin: 0;
-      }
-      input[type="number"] {
-        -moz-appearance: textfield;
-      }
-    }
-    .inherit-css {
-      width: 140px !important;
-      .el-input {
-        width: 100% !important;
-      }
-    }
-    .min-css{
-      width: 110px !important;
-      .el-input {
-        width: 100% !important;
-      }
-    }
-  }
-  .search-box {
-    display: flex;
-    align-items:center;
-    .search-label {
-      margin-right: 0.520833333333333vw;
-      color: #3b4045;
-      font-size: 0.729166666666667vw;
-      vertical-align: middle;
-      display: inline-block;
-      //min-width vw(60)
-      text-align: justify;
-      text-align-last: justify;
-    }
-  }
-  .search-normal {
-    
-    // margin: 20px 0;
-    .col, .el-button {
-      margin-right: 20px;
-    }
-    .el-button {
-      vertical-align: middle;
-      margin-right: 15px;
-    }
-    .el-button +.el-button {
-      margin-left: 0;
-    }
-    &:before {
-      content:' ';
-      width: 0;
-      height: 100%;
-      display: inline-block;
-      vertical-align: middle;
-    }
-    .button-has-icon {
-      padding-right: 5px;
-      .el-icon-caret-bottom {
-        transition: all .3s;
-        &.top {
-          transform: scale(0.8) rotate(180deg);
-        }
-      }
-    }
-  }
-  .search-more {
-    padding: 0 15px;
-    font-size: 0;
-    width: 100%;
-    .el-input, .el-select {
-      width: 100%;
-    }
+    position: relative;
+
     .col {
-      margin-right: 20px;
-      margin-bottom: 20px;
-      .el-input,.el-select,.el-calendar,.el-cascader {
-        width: 180px;
-      }
-    }
-    
-    .el-button {
-      min-width: 68px;	
-    }
-		.reset_button{
-			border: 1px solid #0D87F9;
-			opacity: 1;
-			border-radius: 4px;
-		}
-    .el-button--default {
-      margin-left: 20px;
+        display: inline-block;
+        vertical-align: middle;
+        .el-input,
+        .el-select,
+        .el-calendar,
+        .el-cascader {
+            width: 180px;
+            input::-webkit-outer-spin-button,
+            input::-webkit-inner-spin-button {
+                -webkit-appearance: none;
+                margin: 0;
+            }
+            input[type='number'] {
+                -moz-appearance: textfield;
+            }
+        }
+        .inherit-css {
+            width: 140px !important;
+            .el-input {
+                width: 100% !important;
+            }
+        }
+        .min-css {
+            width: 110px !important;
+            .el-input {
+                width: 100% !important;
+            }
+        }
     }
-    .dmp-date-picker .el-input__inner {
-      border: none;
-      padding: 0 15px;
+    .search-box {
+        display: flex;
+        align-items: center;
+        .search-label {
+            margin-right: 0.520833333333333vw;
+            color: #3b4045;
+            font-size: 0.729166666666667vw;
+            vertical-align: middle;
+            display: inline-block;
+            //min-width vw(60)
+            text-align: justify;
+            text-align-last: justify;
+        }
     }
-  }
-  .opt {
-    position: absolute;
-    top: 0;
-    right: 0;
-    img{
-      width:30px;
-      height:30px;
-      margin-right: 10px;
+    .search-normal {
+        // margin: 20px 0;
+        .col,
+        .el-button {
+            margin-right: 20px;
+        }
+        .el-button {
+            vertical-align: middle;
+            margin-right: 15px;
+        }
+        .el-button + .el-button {
+            margin-left: 0;
+        }
+        &:before {
+            content: ' ';
+            width: 0;
+            height: 100%;
+            display: inline-block;
+            vertical-align: middle;
+        }
+        .button-has-icon {
+            padding-right: 5px;
+            .el-icon-caret-bottom {
+                transition: all 0.3s;
+                &.top {
+                    transform: scale(0.8) rotate(180deg);
+                }
+            }
+        }
     }
-    &>.dmp-icon-big, &>.dmp-icon-big .dmp-icon-big{
-      width: 32px;
-      height: 32px;
-      margin-left: 20px;
-      font-size: 14px !important;
-      justify-content: center;
-      display: flex;
-      align-items: center;
-      padding: 0;
+    .search-more {
+        padding: 0 15px;
+        font-size: 0;
+        width: 100%;
+        .el-input,
+        .el-select {
+            width: 100%;
+        }
+        .col {
+            margin-right: 20px;
+            margin-bottom: 20px;
+            .el-input,
+            .el-select,
+            .el-calendar,
+            .el-cascader {
+                width: 180px;
+            }
+        }
+
+        .el-button {
+            min-width: 68px;
+        }
+        .reset_button {
+            border: 1px solid #0d87f9;
+            opacity: 1;
+            border-radius: 4px;
+        }
+        .el-button--default {
+            margin-left: 20px;
+        }
+        .dmp-date-picker .el-input__inner {
+            border: none;
+            padding: 0 15px;
+        }
     }
-    &>.dmp-icon-big .dmp-icon-big {
-      margin: 0;
+    .opt {
+        position: absolute;
+        top: 0;
+        right: 0;
+        img {
+            width: 30px;
+            height: 30px;
+            margin-right: 10px;
+        }
+        & > .dmp-icon-big,
+        & > .dmp-icon-big .dmp-icon-big {
+            width: 32px;
+            height: 32px;
+            margin-left: 20px;
+            font-size: 14px !important;
+            justify-content: center;
+            display: flex;
+            align-items: center;
+            padding: 0;
+        }
+        & > .dmp-icon-big .dmp-icon-big {
+            margin: 0;
+        }
     }
-  }
 }
 @media screen and (min-width: 1600px) {
-  .zz-search {
-    .search-normal .col {
-      .el-input,.el-select,.el-calendar,.el-cascader {
-        width: 180px;
-      }
+    .zz-search {
+        .search-normal .col {
+            .el-input,
+            .el-select,
+            .el-calendar,
+            .el-cascader {
+                width: 180px;
+            }
+        }
     }
-  }
 }
 @media screen and (max-width: 1599px) {
-  .zz-search {
-    .search-normal .col {
-      .el-input,.el-select,.el-calendar,.el-cascader {
-        width: 125px !important
-      }
+    .zz-search {
+        .search-normal .col {
+            .el-input,
+            .el-select,
+            .el-calendar,
+            .el-cascader {
+                width: 125px !important;
+            }
+        }
     }
-  }
 }
 </style>

+ 33 - 33
smart/src/assets/css/public-style.scss

@@ -1,63 +1,63 @@
 /*主色调*/
-$mainTextColor: #0eaeff;
-$mainBgColor: #0eaeff;
+$mainTextColor: #0be5f0;
+$mainBgColor: #0be5f0;
 $white: white;
 $greenColor: #44d7b6;
 $redColor: #ff7171;
 $ashColor: #dcdcdc;
 
 @function vw($size) {
-  @return ($size/19.2) * 1vw;
+    @return ($size/19.2) * 1vw;
 }
 @function vh($size) {
-  @return ($size/10.8) * 1vh;
+    @return ($size/10.8) * 1vh;
 }
 $base_fontSize: 100;
 @function rem($px) {
-  @return $px / $base_fontSize * 1rem;
+    @return $px / $base_fontSize * 1rem;
 }
 .greenText {
-  color: $greenColor !important;
+    color: $greenColor !important;
 }
 .redText {
-  color: $redColor !important;
+    color: $redColor !important;
 }
 .ashText {
-  color: $ashColor !important;
+    color: $ashColor !important;
 }
 .height100 {
-  min-height: inherit;
-  height: 100%;
+    min-height: inherit;
+    height: 100%;
 }
 
 .formContent-item_title {
-  font-size: 14px;
-  position: relative;
-  margin-left: 14px;
-  margin-bottom: 20px;
-  &::before {
-    position: absolute;
-    left: -14px;
-    top: 4px;
-    width: 4px;
-    height: 12px;
-    border-radius: 2px;
-    display: block;
-    background: $mainBgColor;
-    content: " ";
-  }
-}
-/deep/ label[for="companyOrgId"] + .el-form-item__content {
-  line-height: 0;
+    font-size: 14px;
+    position: relative;
+    margin-left: 14px;
+    margin-bottom: 20px;
+    &::before {
+        position: absolute;
+        left: -14px;
+        top: 4px;
+        width: 4px;
+        height: 12px;
+        border-radius: 2px;
+        display: block;
+        background: $mainBgColor;
+        content: ' ';
+    }
+}
+/deep/ label[for='companyOrgId'] + .el-form-item__content {
+    line-height: 0;
 }
 
 /deep/ .amap-marker-label {
-  border: 0 none;
-  white-space: nowrap;
-  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
-  border-radius: 5px;
+    border: 0 none;
+    white-space: nowrap;
+    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
+    border-radius: 5px;
 }
 /deep/ .amap-logo,
 /deep/ .amap-copyright {
-  display: none !important;
+    display: none !important;
 }

+ 2 - 1
smart/src/components/common/Header.vue

@@ -358,7 +358,8 @@ export default {
     height: rem(46);
     font-size: rem(14);
     color: #fff;
-    background: #2c354a;
+    // background: #2c354a;
+    background: #384856;
     display: flex;
     align-items: center;
     justify-content: space-between;

+ 113 - 95
smart/src/components/common/Sidebar.vue

@@ -1,109 +1,125 @@
 <template>
-    <div class="sidebar" :style="collapse ? 'width:85px' : 'width:220px'">
-        <div class="logo" v-if="!collapse">
-            <img style="width: rem(90); height: rem(24)" src="@/assets/img/img_logo2.png" />
-            <div class="title"><span class="point"></span>{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
-        </div>
-        <div class="logo shrink" v-else>
-            <div class="text">{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
-        </div>
-        <div class="menu-wrap no-scrollbar">
-            <el-menu
-                class="sidebar-el-menu"
-                ref="sidebarelmenu"
-                :default-active="onRoutes"
-                :collapse="collapse"
-                background-color="#171F32"
-                text-color="#aaadba"
-                active-text-color="#2887f2"
-                unique-opened
-                collapse-transition
-                router
-                :style="collapse ? 'width:84px' : 'width:220px'"
-            >
-                <menu-tree :menuList="menuList" :collapse="collapse" :openArray="openArray"></menu-tree>
-            </el-menu>
-        </div>
-        <div class="footer">
-            <img
-                :class="[collapse ? 'expandhover' : 'packuphover']"
-                :src="collapse ? btnCollpaseright : btnCollpaseleft"
-                @click="collapseChage"
-            />
-        </div>
+  <div
+    class="sidebar"
+    :style="collapse ? 'width:85px' : 'width:220px'"
+  >
+    <div
+      class="logo"
+      v-if="!collapse"
+    >
+      <img
+        style="width: rem(90); height: rem(24)"
+        src="@/assets/img/img_logo2.png"
+      />
+      <div class="title"><span class="point"></span>{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
     </div>
+    <div
+      class="logo shrink"
+      v-else
+    >
+      <div class="text">{{ $store.getters['getThisDetai'].name || sessSetThisDetai }}</div>
+    </div>
+    <div class="menu-wrap no-scrollbar">
+      <el-menu
+        class="sidebar-el-menu"
+        ref="sidebarelmenu"
+        :default-active="onRoutes"
+        :collapse="collapse"
+        background-color="#192D39"
+        text-color="#aaadba"
+        active-text-color="#0BE5F0"
+        unique-opened
+        collapse-transition
+        router
+        :style="collapse ? 'width:84px' : 'width:220px'"
+      >
+        <menu-tree
+          :menuList="menuList"
+          :collapse="collapse"
+          :openArray="openArray"
+        ></menu-tree>
+      </el-menu>
+    </div>
+    <div class="footer">
+      <img
+        :class="[collapse ? 'expandhover' : 'packuphover']"
+        :src="collapse ? btnCollpaseright : btnCollpaseleft"
+        @click="collapseChage"
+      />
+    </div>
+  </div>
 </template>
 
 <script>
 import MenuTree from './MenuTree.vue';
 export default {
-    data() {
-        return {
-            btnCollpaseright: require('@assets/img/btn_collpaseright.png'),
-            btnCollpaseleft: require('@assets/img/btn_collpaseleft.png'),
-            openList: []
-        };
+  data () {
+    return {
+      btnCollpaseright: require('@assets/img/btn_collpaseright.png'),
+      btnCollpaseleft: require('@assets/img/btn_collpaseleft.png'),
+      openList: []
+    };
+  },
+  components: {
+    MenuTree
+  },
+  computed: {
+    onRoutes () {
+      return this.$route.path;
     },
-    components: {
-        MenuTree
+    collapse () {
+      return this.$store.getters['getCollapse'];
     },
-    computed: {
-        onRoutes() {
-            return this.$route.path;
-        },
-        collapse() {
-            return this.$store.getters['getCollapse'];
-        },
-        menuList() {
-            let list = this.$store.getters['getMenuList'];
-            return list;
-        },
-        openArray() {
-            return this.openList;
-        },
-        sessSetThisDetai() {
-            let text = '';
-            if (!!window.sessionStorage.getItem('setThisDetai')) {
-                text = JSON.parse(window.sessionStorage.getItem('setThisDetai')).name;
-            }
-            return text;
-        }
+    menuList () {
+      let list = this.$store.getters['getMenuList'];
+      return list;
     },
-    methods: {
-        // 侧边栏折叠
-        collapseChage() {
-            this.$store.dispatch('collapse', !this.collapse);
-        },
-        thisfindMen(arr, indexPath) {
-            let status = [];
-            arr.map((v) => {
-                if (v.children) {
-                    v.children.map((s) => {
-                        if ('/' + s.linkPath === indexPath) {
-                            status.push(v.linkPath, s.linkPath);
-                        }
-                    });
-                } else {
-                    if ('/' + v.linkPath === indexPath) {
-                        status.push(v.linkPath);
-                    }
-                }
-            });
-            return status;
-        }
+    openArray () {
+      return this.openList;
     },
-    watch: {
-        $route(newValue, oldValue) {
-            this.openList = this.thisfindMen(this.$store.getters['getMenuList'], newValue.path);
-        }
-    },
-    created() {
-        this.openList = this.thisfindMen(this.$store.getters['getMenuList'], this.$route.path);
+    sessSetThisDetai () {
+      let text = '';
+      if (!!window.sessionStorage.getItem('setThisDetai')) {
+        text = JSON.parse(window.sessionStorage.getItem('setThisDetai')).name;
+      }
+      return text;
+    }
+  },
+  methods: {
+    // 侧边栏折叠
+    collapseChage () {
+      this.$store.dispatch('collapse', !this.collapse);
     },
-    mounted() {
-        // this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0;
-        // console.log((this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0));
+    thisfindMen (arr, indexPath) {
+      let status = [];
+      arr.map((v) => {
+        if (v.children) {
+          v.children.map((s) => {
+            if ('/' + s.linkPath === indexPath) {
+              status.push(v.linkPath, s.linkPath);
+            }
+          });
+        } else {
+          if ('/' + v.linkPath === indexPath) {
+            status.push(v.linkPath);
+          }
+        }
+      });
+      return status;
+    }
+  },
+  watch: {
+    $route (newValue, oldValue) {
+      this.openList = this.thisfindMen(this.$store.getters['getMenuList'], newValue.path);
     }
+  },
+  created () {
+    this.openList = this.thisfindMen(this.$store.getters['getMenuList'], this.$route.path);
+  },
+  mounted () {
+    // this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0;
+    // console.log((this.$refs.sidebarelmenu.$children[0].$children[0].$el.style.paddingLeft = 0));
+  }
 };
 </script>
 
@@ -113,7 +129,8 @@ export default {
     width: rem(220);
     display: flex;
     flex-direction: column;
-    background: #171f32;
+    // background: #171f32;
+    background: #19323f;
     border-radius: 0px rem(30) rem(30) 0px;
     z-index: 2;
     .logo {
@@ -222,7 +239,8 @@ export default {
     color: rgb(39, 135, 241);
 }
 .el-submenu.is-active > div > span {
-    color: rgb(39, 135, 241);
+    // color: rgb(39, 135, 241);
+    color: #0be5f0;
 }
 
 .sidebar .logo.shrink {

+ 117 - 92
smart/src/components/common/alertModal.vue

@@ -6,110 +6,135 @@
  * @Description: element-ui Dialog弹窗封装
 -->
 <template>
-    <!-- <transition name="el-zoom-in-center"> -->
-    <el-dialog
-        v-if="modal.show"
-        :visible.sync="modal.show"
-        class="alert-modal"
-        :width="modal.width"
-        :fullscreen="modal.fullscreen"
-        :custom-class="modal.customClass || 'alert-el-modal'"
-        :class="{ 'is-modal': !modal.fullscreen, newpop: modal.class }"
-        :append-to-body="true"
-        :lock-scroll="true"
-        @closed="close"
-        ref="alertModal"
-        top="0"
-        :close-on-click-modal="false"
-        :close-on-press-escape="false"
+  <!-- <transition name="el-zoom-in-center"> -->
+  <el-dialog
+    v-if="modal.show"
+    :visible.sync="modal.show"
+    class="alert-modal"
+    :width="modal.width"
+    :fullscreen="modal.fullscreen"
+    :custom-class="modal.customClass || 'alert-el-modal'"
+    :class="{ 'is-modal': !modal.fullscreen, newpop: modal.class }"
+    :append-to-body="true"
+    :lock-scroll="true"
+    @closed="close"
+    ref="alertModal"
+    top="0"
+    :close-on-click-modal="false"
+    :close-on-press-escape="false"
+  >
+    <div slot="title">
+      <div class="title_row">
+        <strong class="title">{{ modal.title }}</strong>
+        {{ modal.star }}
+        <span v-if="modal.hideStar"></span>
+        <span v-else-if="modal.title && !modal.notip"> (<span class="color-danger">*为必填项</span>) </span>
+        <!-- <i class="close" @click="close"></i> -->
+      </div>
+    </div>
+    <!-- :style="`height:${modal.showFooter ? 'calc(100% - 50px)' : 'calc(100% - 54px)'}`" -->
+    <!-- <div class="body_content"> -->
+    <div
+      class="content"
+      v-scroll
     >
-        <div slot="title">
-            <div class="title_row">
-                <strong class="title">{{ modal.title }}</strong>
-                {{ modal.star }}
-                <span v-if="modal.hideStar"></span>
-                <span v-else-if="modal.title && !modal.notip"> (<span class="color-danger">*为必填项</span>) </span>
-                <!-- <i class="close" @click="close"></i> -->
-            </div>
-        </div>
-        <!-- :style="`height:${modal.showFooter ? 'calc(100% - 50px)' : 'calc(100% - 54px)'}`" -->
-        <!-- <div class="body_content"> -->
-        <div class="content" v-scroll>
-            <component :id="modal.id" :is="modal.component" :params="modal.props" :ref="modal.id" @close="close"></component>
-        </div>
-        <!-- </div> -->
-        <span slot="footer" class="dialog-footer" v-if="!modal.fullscreen || modal.showFooter">
-            <el-button @click="alertReset(modal.id)" class="reset" v-if="modal.showResetButton">重置</el-button>
-            <el-button @click="close" class="reset" v-if="!modal.showCancelButton">{{ modal.cancelButtonText || '取消' }}</el-button>
-            <el-button type="primary" v-if="!modal.showConfirmButton" @click="submit(modal.id)">{{
+      <component
+        :id="modal.id"
+        :is="modal.component"
+        :params="modal.props"
+        :ref="modal.id"
+        @close="close"
+      ></component>
+    </div>
+    <!-- </div> -->
+    <span
+      slot="footer"
+      class="dialog-footer"
+      v-if="!modal.fullscreen || modal.showFooter"
+    >
+      <el-button
+        @click="alertReset(modal.id)"
+        class="reset"
+        v-if="modal.showResetButton"
+      >重置</el-button>
+      <el-button
+        @click="close"
+        class="reset"
+        v-if="!modal.showCancelButton"
+      >{{ modal.cancelButtonText || '取消' }}</el-button>
+      <el-button
+        type="primary"
+        v-if="!modal.showConfirmButton"
+        @click="submit(modal.id)"
+      >{{
                 modal.confirmButtonText || '保存'
             }}</el-button>
-        </span>
-    </el-dialog>
-    <!-- </transition> -->
+    </span>
+  </el-dialog>
+  <!-- </transition> -->
 </template>
 
 <script>
 const preventBrowserBack = () => {
-    history.pushState(null, null, document.URL);
+  history.pushState(null, null, document.URL);
 };
 /* 
   使用vuex this.$store.dispatch("openModal", {})打开弹窗,具体参数去store查看
 */
 export default {
-    name: 'alert-modal',
-    props: {
-        params: {
-            type: Object,
-            default() {
-                return {};
-            }
-        }
-    },
-    data() {
-        return {
-            // modal:{}
-        };
-    },
-    computed: {
-        modal() {
-            // const xx = this.$store.getters['getPopups'];
-            let obj = this.params;
-            if (obj && obj.height) {
-                this.$nextTick(() => {
-                    if (this.$refs.alertModal && this.$refs.alertModal.$el && this.$refs.alertModal.$el.childNodes) {
-                        this.$refs.alertModal.$el.childNodes[0].style.height = obj.height;
-                    }
-                });
-            }
-            if (obj.show) {
-                history.pushState(null, null, document.URL);
-                window.addEventListener('popstate', preventBrowserBack, false);
-            } else {
-                window.removeEventListener('popstate', preventBrowserBack);
-            }
-            return obj;
-        }
+  name: 'alert-modal',
+  props: {
+    params: {
+      type: Object,
+      default () {
+        return {};
+      }
+    }
+  },
+  data () {
+    return {
+      // modal:{}
+    };
+  },
+  computed: {
+    modal () {
+      // const xx = this.$store.getters['getPopups'];
+      let obj = this.params;
+      if (obj && obj.height) {
+        this.$nextTick(() => {
+          if (this.$refs.alertModal && this.$refs.alertModal.$el && this.$refs.alertModal.$el.childNodes) {
+            this.$refs.alertModal.$el.childNodes[0].style.height = obj.height;
+          }
+        });
+      }
+      if (obj.show) {
+        history.pushState(null, null, document.URL);
+        window.addEventListener('popstate', preventBrowserBack, false);
+      } else {
+        window.removeEventListener('popstate', preventBrowserBack);
+      }
+      return obj;
+    }
+  },
+  watch: {},
+  methods: {
+    close () {
+      this.$store.dispatch('delPopup', this.modal.id);
     },
-    watch: {},
-    methods: {
-        close() {
-            this.$store.dispatch('delPopup', this.modal.id);
-        },
-        // 弹窗重置,执行弹出组件的reset方法
-        alertReset(id) {
-            const component = this.$refs[id];
-            component.reset && component.reset();
-        },
-        submit(id) {
-            const component = this.$refs[id];
-            component.submit && component.submit();
-        }
+    // 弹窗重置,执行弹出组件的reset方法
+    alertReset (id) {
+      const component = this.$refs[id];
+      component.reset && component.reset();
     },
-    created() {
-        // debugger
-        // this.modal=this.params;
+    submit (id) {
+      const component = this.$refs[id];
+      component.submit && component.submit();
     }
+  },
+  created () {
+    // debugger
+    // this.modal=this.params;
+  }
 };
 </script>
 
@@ -151,11 +176,11 @@ export default {
             bottom: 10px;
             margin-top: 10px;
             .dialog-footer .reset {
-                border: 1px solid #0eaeff;
-                color: #0eaeff;
+                border: 1px solid #0be5f0;
+                color: #0be5f0;
             }
             .el-button--primary {
-                background-color: #0eaeff;
+                // background-color: #0eaeff;
                 // border-color: #0eaeff;
             }
         }