Browse Source

界面升级,将子系统分为4个类别,鼠标移入到主类型上时,滑动展示子系统,鼠标点击子系统做对应的操作

罗浩军 2 năm trước cách đây
mục cha
commit
1135a1bed5

+ 1 - 13
index.html

@@ -7,18 +7,6 @@
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <title>许昌市建安区中州水务有限公司</title>
 
-    <!-- <link href="static/css/index.css" rel="stylesheet">
-
-    <link href="static/css/earth.css" rel="stylesheet">
-
-    <link href="static/css/navLinkContent.css" rel="stylesheet">
-
-    <link href="static/css/backgroundLayer.css" rel="stylesheet">
-
-    <link href="static/css/iconFamily.css" rel="stylesheet">
-
-    <link href="static/css/weatherTime.css" rel="stylesheet"> -->
-
     <style>
         /* html,
         html body {
@@ -48,7 +36,7 @@
 <body>
     <div id="app" class="assembly-html-body">
         <div class="test1">
-            <iframe src="view.html" frameborder="0" allowfullscreen="allowfullscreen"
+            <iframe src="./view.html" frameborder="0" allowfullscreen="allowfullscreen"
                 :style="{flex: '0 0 1920px', height: '1080px', transform: 'scale('+scaleNum+')'}"></iframe>
         </div>
     </div>

+ 8 - 8
static/css/backgroundLayer.css

@@ -226,7 +226,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     left: 64px;
     top: 205px;
@@ -238,7 +238,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     left: 62px;
     top: 390px;
@@ -248,7 +248,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     bottom: 321px;
     left: 62px;
@@ -258,7 +258,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     bottom: 136px;
     left: 62px;
@@ -268,7 +268,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     right: 58px;
     top: 206px;
@@ -278,7 +278,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     right: 58px;
     top: 390px;
@@ -288,7 +288,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     bottom: 319px;
     right: 59px;
@@ -298,7 +298,7 @@
     padding: 0px;
     width: 780px;
     height: 185px;
-    overflow: hidden;
+    overflow: visible;
     position: absolute;
     bottom: 135px;
     right: 58px;

+ 173 - 14
static/css/navLinkContent.css

@@ -8,12 +8,11 @@
     cursor: default;
     position: relative;
 }
-
-/* .NavLinkContent1:hover {
+.NavLinkContent1:hover {
     background-image: url("../images/navOneHover.png");
 }
 
-.NavLinkContent1:hover .ShowContent .LeftPart {
+/* .NavLinkContent1:hover .ShowContent .LeftPart {
     background-image: url("../images/navSevenIconHover.png");
 }
 
@@ -43,6 +42,15 @@
     margin-right: 28px;
 }
 
+.NavLinkContent1:hover .ShowContent .LeftPart {
+    width: 88px;
+    height: 88px;
+    background-image: url("../images/icon-map-hover.png");
+    background-repeat: no-repeat;
+    background-size: contain;
+    margin-right: 28px;
+}
+
 .NavLinkContent1 .ShowContent .LeftPart.custom-img {
     /* width: 100px;
     height: 100px; */
@@ -120,7 +128,7 @@
     font-size: 36px;
     font-family: PangMenZhengDao-3, PangMenZhengDao;
     font-weight: normal;
-    color: #ffffff;
+    color: #2bb5eb;
     line-height: 41px;
     margin-bottom: 16px;
     text-align: start;
@@ -144,6 +152,7 @@
     background-image: url("../images/navThree.png");
     background-repeat: no-repeat;
     background-size: contain;
+    background-position: 4px center;
     cursor: pointer;
     position: relative;
 }
@@ -166,7 +175,7 @@
     align-items: center;
     height: 185px;
     position: absolute;
-    left: 166px;
+    left: 88px;
 }
 
 .NavLinkContent3 .ShowContent .LeftPart {
@@ -179,14 +188,14 @@
 }
 
 .NavLinkContent3 .ShowContent .RightPart .RightPart_TopPart {
-    width: 180px;
+    width: 250px;
     height: 36px;
     font-size: 36px;
     font-family: PangMenZhengDao-3, PangMenZhengDao;
     font-weight: normal;
-    color: #ffffff;
+    color: #2bb5eb;
     line-height: 41px;
-    margin-bottom: 16px;
+    /* margin-bottom: 16px; */
     text-align: start;
 }
 
@@ -252,7 +261,7 @@
     font-size: 36px;
     font-family: PangMenZhengDao-3, PangMenZhengDao;
     font-weight: normal;
-    color: #ffffff;
+    color: #2bb5eb;
     line-height: 41px;
     margin-bottom: 16px;
     text-align: start;
@@ -280,11 +289,11 @@
     position: relative;
 }
 
-/* .NavLinkContent5:hover {
+.NavLinkContent5:hover {
     background-image: url("../images/navFiveHover.png");
 }
 
-.NavLinkContent5:hover .ShowContent .LeftPart {
+/* .NavLinkContent5:hover .ShowContent .LeftPart {
     background-image: url("../images/navTwoIconHover.png");
 }
 
@@ -314,13 +323,22 @@
     margin-right: 28px;
 }
 
+.NavLinkContent5:hover .ShowContent .LeftPart {
+    width: 88px;
+    height: 88px;
+    background-image: url("../images/icon-users-hover.png");
+    background-repeat: no-repeat;
+    background-size: contain;
+    margin-right: 28px;
+}
+
 .NavLinkContent5 .ShowContent .LeftPart.custom-img {
     /* width: 100px;
     height: 100px; */
 }
 
 .NavLinkContent5 .ShowContent .RightPart .RightPart_TopPart {
-    width: 210px;
+    width: 265px;
     /* height: 36px; */
     font-size: 36px;
     font-family: PangMenZhengDao-3, PangMenZhengDao;
@@ -452,14 +470,14 @@
 }
 
 .NavLinkContent7 .ShowContent .RightPart .RightPart_TopPart {
-    width: 180px;
+    width: 230px;
     height: 36px;
     font-size: 36px;
     font-family: PangMenZhengDao-3, PangMenZhengDao;
     font-weight: normal;
     color: #ffffff;
     line-height: 41px;
-    margin-bottom: 16px;
+    /* margin-bottom: 16px; */
     text-align: start;
 }
 
@@ -536,4 +554,145 @@
     color: #ff9c27;
     line-height: 17px;
     text-align: start;
+}
+[class*="NavLinkContent"] .ShowContent .RightPart .RightPart_TopPart{
+    color: #2bb5eb;
+}
+
+[class*="NavLinkContent"]:hover .ShowContent .RightPart .RightPart_TopPart{
+    color: #ffffff;
+}
+.sub-nav{
+    display: none;
+    height: auto;
+    width: 470px;
+    position: absolute;
+    top: 100%;
+    right: 0;
+}
+
+[class*="NavLinkContent"]:hover > .sub-nav{
+    display: block;
+}
+
+.sub-nav-item{
+    height: 42px;
+    color: #2bb5eb;
+    line-height: 40px;
+    padding: 1px 10px;
+    font-size: 36px;
+    margin-top: 10px;
+    background-repeat: no-repeat;
+    background-image: url("../images/sub-nav-bg.png");
+    background-position: center;
+    text-align: center;
+    cursor: pointer;
+    position: relative;
+    font-family: PangMenZhengDao-3, PangMenZhengDao;
+}
+.sub-nav-item + .sub-nav-item{
+    margin-top: 15px;
+}
+.sub-nav-item:hover{
+    color: #ffffff;
+}
+.sub-nav-item.is-disabled{
+    color: #2bb5eb;
+}
+
+.NavLinkContent1 .sub-nav, .NavLinkContent3 .sub-nav{
+    left: 99px;
+    right: auto;
+} 
+
+.NavLinkContent3 .sub-nav{
+    left: 107px;
+}
+.NavLinkContent1 .sub-nav .sub-nav-item{
+    background-position: right center;
+    
+}
+.NavLinkContent1:hover .sub-nav-item, .NavLinkContent3:hover .sub-nav-item{
+   animation: slide-left 1.5s 0s ease-in-out;
+}
+.NavLinkContent1 .sub-nav .sub-nav-item:nth-child(1){
+    width: 446px;
+    background-image: url("../images/sub-nav-01.png");
+}
+.NavLinkContent1 .sub-nav .sub-nav-item:nth-child(2){
+    width: 421px;
+    background-image: url("../images/sub-nav-02.png");
+}
+.NavLinkContent1 .sub-nav .sub-nav-item:nth-child(3){
+    width: 408px;
+    background-image: url("../images/sub-nav-03.png");
+}
+
+.NavLinkContent3 .sub-nav .sub-nav-item:nth-child(1){
+    width: 480px;
+    background-image: url("../images/sub-nav-04.png");
+}
+.NavLinkContent3 .sub-nav .sub-nav-item:nth-child(2){
+    width: 536px;
+    background-image: url("../images/sub-nav-05.png");
+}
+.NavLinkContent3 .sub-nav .sub-nav-item:nth-child(3){
+    width: 631px;
+    background-image: url("../images/sub-nav-06.png");
+}
+.NavLinkContent5 .sub-nav{
+    right: 102px;
+    overflow: hidden;
+}
+.NavLinkContent5 .sub-nav .sub-nav-item, .NavLinkContent7 .sub-nav .sub-nav-item{
+    background-position: left center;
+    float: right;
+    animation: slide-right 1.5s 0s ease-in-out;
+}
+.NavLinkContent5 .sub-nav .sub-nav-item:nth-child(1){
+    width: 442px;
+    background-image: url("../images/sub-nav-07.png");
+}
+.NavLinkContent5 .sub-nav .sub-nav-item:nth-child(2){
+    width: 417px;
+    background-image: url("../images/sub-nav-08.png");
+}
+.NavLinkContent5 .sub-nav .sub-nav-item:nth-child(3){
+    width: 403px;
+    background-image: url("../images/sub-nav-09.png");
+}
+
+.NavLinkContent7 .sub-nav{
+    right: 102px;
+    overflow: visible;
+}
+.NavLinkContent7 .sub-nav .sub-nav-item:nth-child(1){
+    width: 480px;
+    background-image: url("../images/sub-nav-10.png");
+}
+.NavLinkContent7 .sub-nav .sub-nav-item:nth-child(2){
+    width: 536px;
+    background-image: url("../images/sub-nav-11.png");
+}
+.NavLinkContent7 .sub-nav .sub-nav-item:nth-child(3){
+    width: 631px;
+    background-image: url("../images/sub-nav-12.png");
+}
+
+@keyframes slide-left{
+    0%{
+        transform: translateX(-100%) rotateX(90deg);
+    }
+    100%{
+        transform: translateX(0%) rotateX(0deg);
+    }
+}
+
+@keyframes slide-right{
+    0%{
+        transform: translateX(100%) rotateX(90deg);
+    }
+    100%{
+        transform: translateX(0%) rotateX(0deg);
+    }
 }

BIN
static/images/icon-map-hover.png


BIN
static/images/icon-map.png


BIN
static/images/icon-users-hover.png


BIN
static/images/icon-users.png


BIN
static/images/pic_selected_6.png


BIN
static/images/pic_selected_7.png


BIN
static/images/sub-nav-01.png


BIN
static/images/sub-nav-02.png


BIN
static/images/sub-nav-03.png


BIN
static/images/sub-nav-04.png


BIN
static/images/sub-nav-05.png


BIN
static/images/sub-nav-06.png


BIN
static/images/sub-nav-07.png


BIN
static/images/sub-nav-08.png


BIN
static/images/sub-nav-09.png


BIN
static/images/sub-nav-10.png


BIN
static/images/sub-nav-11.png


BIN
static/images/sub-nav-bg.png


+ 170 - 13
static/js/index.js

@@ -4,7 +4,7 @@ var app = new Vue({
         // let isinline = /^(192.168)/.test(location.hostname);
         return {
             companyName: "许昌市建安区中州水务",
-            sysName: "信息管理平台",
+            sysName: "数字化管理平台",
             inline: /^(192.168)/.test(location.hostname),
             memuList: [
                 {
@@ -20,7 +20,7 @@ var app = new Vue({
                     introName: "",
                     fn: "openWindow",
                     param: {
-                        inline: "//192.168.100.12:8200",
+                        inline: "//192.168.100.203:8200",
                         outline: "//42.227.69.38:8200"
                     }
                 },
@@ -31,7 +31,7 @@ var app = new Vue({
                     introName: "",
                     fn: "openWindow",
                     param: {
-                        inline: "//192.168.100.12:8000",
+                        inline: "//192.168.100.203:8000",
                         outline: "//42.227.69.38:8000"
                     }
                 },
@@ -42,7 +42,7 @@ var app = new Vue({
                     introName: "",
                     fn: "openWindow",
                     param: {
-                        inline: "//192.168.100.12:8000/#/large-screen",
+                        inline: "//192.168.100.203:8000/#/large-screen",
                         outline: "//42.227.69.38:8000/#/large-screen"
                     }
                 },
@@ -86,6 +86,172 @@ var app = new Vue({
                     }
                 },
             ],
+            memuList: [
+                {   
+                    id: 1,
+                    menuName: "管网地理信息系统",
+                    className: ["nav-one-wrap"],
+                    children: [
+                        {
+                            id: 1,
+                            className: ["sub-nav-one"],
+                            menuName: "综合展示",
+                            introName: "",
+                            fn: "openWindow",
+                            param: {
+                                inline: "//192.168.100.203:8000/#/large-screen",
+                                outline: "//42.227.69.38:8000/#/large-screen"
+                            }
+                        },
+                        {
+                            id: 2,
+                            className: ["sub-nav-two"],
+                            menuName: "管网GIS",
+                            introName: "",
+                            fn: "openWindow",
+                            param: {
+                                inline: "//192.168.100.203:8200",
+                                outline: "//42.227.69.38:8200"
+                            }
+                        },
+                        {
+                            id: 3,
+                            className: ["sub-nav-three"],
+                            menuName: "巡检抢修",
+                            introName: "",
+                            fn: "openWindow",
+                            param: {
+                                inline: "//192.168.100.203:8000",
+                                outline: "//42.227.69.38:8000"
+                            }
+                        }
+                    ]
+                },
+                {   
+                    id: 5,
+                    menuName: "营业综合管理平台",
+                    className: ["nav-five-wrap"],
+                    children: [
+                        {
+                            id: 4,
+                            className: ["sub-nav-one"],
+                            menuName: "营业收费",
+                            introName: "",
+                            fn: "openWindow",
+                            param: {
+                                inline: "https://sales.zzwatercloud.com//smallPortal/#/login?tenantCode=%20",
+                                outline: "https://sales.zzwatercloud.com//smallPortal/#/login?tenantCode=%20"
+                            }
+                        },
+                        {
+                            id: 5,
+                            className: ["sub-nav-two"],
+                            menuName: "抄表平台",
+                            introName: "",
+                            fn: "openWindow",
+                            param: {
+                                inline: "https://sales.zzwatercloud.com//smallPortal/#/login?tenantCode=%20",
+                                outline: "https://sales.zzwatercloud.com//smallPortal/#/login?tenantCode=%20"
+                            }
+                        },
+                        {
+                            id: 6,
+                            className: ["sub-nav-three"],
+                            menuName: "报装系统",
+                            introName: "",
+                            fn: "openWindow",
+                            param: {
+                                inline: "https://sales.zzwatercloud.com//smallPortal/#/login?tenantCode=%20",
+                                outline: "https://sales.zzwatercloud.com//smallPortal/#/login?tenantCode=%20"
+                            }
+                        }
+                    ]
+                },
+                {
+                    id: 3,
+                    menuName: "生产自动化系统",
+                    className: ["nav-three-wrap"],
+                    children: [
+                        {
+                            id: 7,
+                            className: ["sub-nav-one"],
+                            menuName: "制水工艺自控",
+                            fn: "",
+                            param: {
+                                inline: "",
+                                outline: ""
+                            }
+                        },
+                        {
+                            id: 8,
+                            className: ["sub-nav-two"],
+                            menuName: "送水泵站自控",
+                            fn: "",
+                            param: {
+                                inline: "",
+                                outline: ""
+                            }
+                        },
+                        {
+                            id: 9,
+                            className: ["sub-nav-three"],
+                            menuName: "水质监测",
+                            fn: "",
+                            param: {
+                                inline: "",
+                                outline: ""
+                            }
+                        }
+                    ]
+                },
+                {
+                    id: 7,
+                    menuName: "视频监控平台",
+                    className: ["nav-seven-wrap"],
+                    children: [
+                        {
+                            id: 10,
+                            className: ["sub-nav-one"],
+                            menuName: "水厂监控系统",
+                            fn: "",
+                            param: {
+                                inline: "",
+                                outline: ""
+                            }
+                        },
+                        {
+                            id: 10,
+                            className: ["sub-nav-one"],
+                            menuName: "水站监控系统",
+                            fn: "",
+                            param: {
+                                inline: "",
+                                outline: ""
+                            }
+                        }
+                        // {
+                        //     id: 5,
+                        //     className: ["sub-nav-two"],
+                        //     menuName: "送水泵站自控",
+                        //     fn: "",
+                        //     param: {
+                        //         inline: "",
+                        //         outline: ""
+                        //     }
+                        // },
+                        // {
+                        //     id: 5,
+                        //     className: ["sub-nav-three"],
+                        //     menuName: "水质监测",
+                        //     fn: "",
+                        //     param: {
+                        //         inline: "",
+                        //         outline: ""
+                        //     }
+                        // }
+                    ]
+                }
+            ],
             dateObj: {},
             timer: null,
             time: "--",
@@ -130,15 +296,6 @@ var app = new Vue({
             if (!href) return;
             window.open(href, target || "_blank");
         },
-        oneInfo() {
-            window.open("http://42.227.69.38:8000", "_blank");
-        },
-        twoInfo() {
-            window.open("http://42.227.69.38:8000/#/large-screen", "_blank");
-        },
-        fiveInfo() {
-            window.open("http://42.227.69.38:8200", "_blank");
-        },
     },
     created() {
         this.initDate();

+ 12 - 4
view.html

@@ -116,12 +116,10 @@
                         </span>
                     </div>
 
-
-
                     <div v-for="(item,index) in memuList" :key="item.id" class="assembly-wrap" :class="item.className"
                         v-on:click="menuClick(item)">
                         <div class="component-element component-custom" style="position: relative;">
-                            <div :class="'NavLinkContent' + item.id">
+                            <div :class="'NavLinkContent'+item.id">
                                 <div class="ShowContent custom-content">
                                     <div class="LeftPart custom-img"></div>
                                     <div class="RightPart">
@@ -131,6 +129,16 @@
                                         </div>
                                     </div>
                                 </div>
+                                <ul class="sub-nav">
+                                    <li 
+                                        :class="['sub-nav-item', subItem.fn ? '' : 'is-disabled']" 
+                                        v-for="subItem in item.children" 
+                                        :key="'subNav-'+subItem.id"
+                                        v-on:click="menuClick(subItem)">
+                                        <span class="sub-nav-item__title">{{subItem.menuName}}</span>
+                                        <span class="sub-nav-item__bg"></span>
+                                    </li>
+                                </ul>
                             </div>
                         </div>
                     </div>
@@ -263,7 +271,7 @@
     </div>
 
     <script src="./static/externals/vue/vue.min.js"></script>
-    <script src="./static/js/index.js"></script>
+    <script src="./static/js/index.js?t=230609"></script>
 </body>
 
 </html>