Ver Fonte

修改增加地图窗帘效果

zhbyyy há 2 anos atrás
pai
commit
78033ddd6b

+ 16 - 14
investment/investHomeGroup.html

@@ -7,6 +7,7 @@
   <meta name="viewport" content="width=device-width, initial-scale=1" />
   <!-- 引入样式 -->
   <link rel="stylesheet" href="./styles/investHomeGroup.css" />
+  <link rel="stylesheet" href="./styles/animate.css" />
   <!-- 引入js -->
   <script src="./libs/vue@2.7.10.js"></script>
   <script src="./libs/echarts.min2.js"></script>
@@ -167,11 +168,11 @@
       <header class="my-header">
         <span class="pointer" @click.stop="showTitlePop('1.png','数智化投资管理驾驶舱')">数智化投资管理驾驶舱</span>
       </header>
-      <div class="main">
-        <div class="h-full w-full center-l">
+      <div class="main" v-if="centerShow">
+        <div class="h-full w-full center-l animate__animated animate__fadeInLeft" >
           <div class="card">
             <div class="title">
-              <span class="text">投资收益总览</span>
+              <span class="text ">投资收益总览</span>
             </div>
             <div class="content">
               <div class="boxs">
@@ -181,7 +182,7 @@
                     <i class="el-icon-more"></i>
                   </p>
                   <p>
-                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[0])}}</span>亿</i>
+                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[0])}}</span><span style="font-size: 26px;">亿</span></i>
                   </p>
                 </div>
                 <div class="pointer" @click.stop="showChartLTipSingle('项目总数')">
@@ -190,7 +191,7 @@
                     <i class="el-icon-more"></i>
                   </p>
                   <p>
-                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[1])}}</span>个</i>
+                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[1])}}</span><span style="font-size: 26px;"></span></i>
                   </p>
                 </div>
                 <div class="pointer" @click.stop="showChartLTipSingle('固定资产')">
@@ -199,7 +200,7 @@
                     <i class="el-icon-more"></i>
                   </p>
                   <p>
-                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[2])}}</span>亿</i>
+                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[2])}}</span><span style="font-size: 26px;">亿</span></i>
                   </p>
                 </div>
                 <div class="pointer" @click.stop="showChartLTipSingle('股权投资')">
@@ -208,7 +209,7 @@
                     <i class="el-icon-more"></i>
                   </p>
                   <p>
-                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[3])}}</span>亿</i>
+                    <i style="width:100%;text-align: center;"><span class="num">{{numFormat(center1[3])}}</span><span style="font-size: 26px;">亿</span></i>
                   </p>
                 </div>
               </div>
@@ -232,7 +233,7 @@
           </div>
         </div>
         <div class="h-full w-full">
-          <div class="top">
+          <div class="top animate__animated animate__fadeInDown" >
             <div class="box">
               <div class="t">
                 <img src="./groupImg/center1.png" />
@@ -266,12 +267,12 @@
               </div>
             </div>
           </div>
-          <div class="map-box">
-            <img src="./groupImg/back.png" alt="" class="mapBack pointer" @click="backChina" v-show="backShow">
+          <div class="map-box animate__animated animate__zoomIn">
+            <img src="./groupImg/back.png" alt="" class="mapBack pointer" @click="backChina">
             <div ref="echarts-map" id="echarts-map" style="height: calc(100% - 155px);"></div>
             <!-- 项目状态 -->
 
-            <div class="status">
+            <div class="status animate__animated animate__fadeInUp" >
               <p>项目状态</p>
               <ul style="padding-left: 30px; margin-bottom: 10px;">
                 <li>通过: <i>112</i></li>
@@ -284,7 +285,7 @@
             </div>
           </div>
         </div>
-        <div class="h-full w-full center-r">
+        <div class="h-full w-full center-r animate__animated animate__fadeInRight" >
           <div class="card">
             <div class="title">
               <span class="text">五个一体化</span>
@@ -311,6 +312,7 @@
           </div>
         </div>
       </div>
+      <div ref="chinaMap" id="chinaMap" class="h-full w-full animate__animated animate__zoomIn" v-show="!centerShow"></div>
       <!-- 标题专属弹窗 -->
       <div class="tip-box" v-if="mapTipShow">
         <div class="absolute poptitle">{{titleName}}</div>
@@ -449,12 +451,12 @@
                     style="margin-left: 10px;color: #0FA9E2;">·</span></div>
                 <div class="center-l-list flex items-center justify-center flex-col" style="padding-left: 30%;">
                   <span style="color:#69c0ff;"><span
-                      style="font-size:30px;font-weight: bold;">{{item.value}}</span>个</span>
+                      style="font-size:30px;font-weight: bold;">{{item.value}}</span><span style="font-size: 20px;">个</span></span>
                   <span>项目数量</span>
                 </div>
                 <div class="center-l-list2 flex items-center justify-center flex-col" style="padding-left: 30%;">
                   <span style="color:#69c0ff;"><span
-                      style="font-size:30px;font-weight: bold;">{{item.value2}}</span>个</span>
+                      style="font-size:30px;font-weight: bold;">{{item.value2}}</span><span style="font-size: 20px;">个</span></span>
                   <span>总投资额</span>
                 </div>
               </div>

+ 21 - 78
investment/js/investHomeGroup.js

@@ -2,6 +2,7 @@ let app = new Vue({
   el: '#app',
   data () {
     return {
+      centerShow:false, // 中间内容显示
       echartR4Chart: '',// 倒数第二个专用
       echartR5Chart: '', // 倒是第一个专用
       echartEnterpriseShow: false, // 企业额度分析控制
@@ -11,7 +12,6 @@ let app = new Vue({
       echartSingleTipShow: false,
       echartDoubleTipShow: false,
       projectListTipShow: false, //项目列表专属弹窗
-      backShow: false,
       titleUrl: '',
       titleName: '',
       yellowCount: 0, // 黄圈轮播参数
@@ -139,12 +139,12 @@ let app = new Vue({
       this.initChartL11()
       this.changeTopColor()
       // 大屏二
-      this.initChartC1()
-      this.initChartC2()
-      this.initChartC3()
-      this.initChartC4()
+      // this.initChartC1()
+      // this.initChartC2()
+      // this.initChartC3()
+      // this.initChartC4()
       this.initChinaChart()
-      this.initProjectList()
+      // this.initProjectList()
       // 大屏三
       this.initChartR1()
       this.initChartR2()
@@ -229,7 +229,7 @@ let app = new Vue({
     },
     // 回到中国地图
     backChina () {
-      this.backShow = false
+      this.centerShow = false
       this.mapChart.dispose()
       setTimeout(() => {
         this.initChinaChart()
@@ -2995,7 +2995,7 @@ let app = new Vue({
           backgroundColor: 'rgba(0,0,0,0)',
           options3d: {
             enabled: true,
-            alpha: 45,
+            alpha: 60,
             //beta: 0
           },
           events: {
@@ -3081,7 +3081,7 @@ let app = new Vue({
             cursor: 'pointer',
             size: 500,
             innerSize: 330, //环形图中间空白,0为饼图
-            depth: 50, //立体高度
+            depth: 75, //立体高度
             slicedOffset: 40, //动画距离
             dataLabels: {
               enabled: false,  // 是否展示指示线
@@ -3846,7 +3846,7 @@ let app = new Vue({
       //   ],
       // }
       /*获取地图数据*/
-      this.mapChart = echarts.init(this.$refs['echarts-map'])
+      this.mapChart = echarts.init(this.$refs['chinaMap'])
       echarts.registerMap('shanxi', china)
       var mapFeatures = echarts.getMap('shanxi').geoJson.features
       mapFeatures.forEach(v => {
@@ -4010,77 +4010,20 @@ let app = new Vue({
             animation: false,
             data: data,
           },
-          // {
-          //   name: '点',
-          //   type: 'scatter',
-          //   coordinateSystem: 'geo',
-          //   zlevel: 6,
-          // },
-          // {
-          //   name: 'Top 5',
-          //   type: 'effectScatter',
-          //   coordinateSystem: 'geo',
-          //   data: this.convertData(
-          //     data
-          //       .sort(function (a, b) {
-          //         return b.value - a.value
-          //       })
-          //       .slice(0, 5)
-          //   ),
-          //   symbolSize: function (val) {
-          //     return 15
-          //   },
-          //   showEffectOn: 'render',
-          //   rippleEffect: {
-          //     brushType: 'stroke',
-          //   },
-          //   hoverAnimation: true,
-          //   label: {
-          //     normal: {
-          //       formatter: '{b}',
-          //       position: 'left',
-          //       show: false,
-          //     },
-          //   },
-          //   itemStyle: {
-          //     normal: {
-          //       color: 'yellow',
-          //       shadowBlur: 10,
-          //       shadowColor: 'yellow',
-          //     },
-          //   },
-          //   zlevel: 1000,
-          // },
-          // {
-          //   name: '线路',
-          //   type: 'lines',
-          //   zlevel: 2,
-          //   effect: {
-          //     show: true,
-          //     period: 4, //箭头指向速度,值越小速度越快
-          //     trailLength: 0.02, //特效尾迹长度[0,1]值越大,尾迹越长重
-          //     symbol: 'arrow', //箭头图标
-          //     symbolSize: 5, //图标大小
-          //   },
-          //   lineStyle: {
-          //     normal: {
-          //       color: '#00FFFF',
-          //       width: 1,
-          //       type: 'dashed',
-          //       opacity: 0.5, //尾迹线条透明度
-          //       curveness: -0.3, //尾迹线条曲直度
-          //     },
-          //   },
-          //   data: moveLine.normal,
-          // },
         ],
       }
       let that = this
       this.mapChart.on('click', function (params) {
         if (params.name == '山西') {
-          that.backShow = true
-          setTimeout(() => {
+          that.mapChart.dispose()
+          that.centerShow = true
+          setTimeout(()=>{
+            that.initChartC1()
+            that.initChartC2()
+            that.initChartC3()
+            that.initChartC4()
             that.initProvinceChart()
+            that.initProjectList()
           })
         }
       })
@@ -4245,7 +4188,7 @@ let app = new Vue({
           backgroundColor: 'rgba(0,0,0,0)',
           options3d: {
             enabled: true,
-            alpha: 45,
+            alpha: 60,
             //beta: 0
           },
           events: {
@@ -4356,7 +4299,7 @@ let app = new Vue({
             cursor: 'pointer',
             size: 500,
             innerSize: 330, //环形图中间空白,0为饼图
-            depth: 50, //立体高度
+            depth: 75, //立体高度
             slicedOffset: 40, //动画距离
             dataLabels: {
               enabled: false,  // 是否展示指示线
@@ -4367,7 +4310,7 @@ let app = new Vue({
         series: [{
           type: 'pie',
           name: '占比',
-          center: ['60%', '45%'],
+          center: ['60%', '50%'],
           y: -10,
           point: {
             events: {

Diff do ficheiro suprimidas por serem muito extensas
+ 6 - 0
investment/styles/animate.css


+ 2 - 2
investment/styles/investHomeGroup.css

@@ -82,7 +82,7 @@ div {
   display: grid;
   grid-template-columns: 3fr 4fr 3fr;
   gap: 10px;
-  background: url('../groupImg/back-center.png') center center no-repeat;
+  /* background: url('../groupImg/back-center.png') center center no-repeat; */
   background-size: 100% 100%;
 }
 .LeftBox > .main {
@@ -375,7 +375,7 @@ div {
   color: #ed3248;
 }
 .CenterBox .boxs .num {
-  font-size: 30px;
+  font-size: 36px;
   font-weight: bold;
   margin-right: 5px;
 }

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff