Explorar o código

feat: tlk联调

@dayan_hjm hai 1 ano
pai
achega
f8dc103b32
Modificáronse 39 ficheiros con 255 adicións e 44 borrados
  1. 0 0
      src/assets/imgs/dataVImg/light.png
  2. BIN=BIN
      src/assets/imgs/dataVImg/quanShang.png
  3. BIN=BIN
      src/assets/imgs/dataVImg/quanXia.png
  4. BIN=BIN
      src/assets/imgs/dataVImg/quanZhong.png
  5. BIN=BIN
      src/assets/imgs/dataVImg/tlkRight.gif
  6. BIN=BIN
      src/assets/imgs/dataVImg/tlkRight2.gif
  7. BIN=BIN
      src/assets/imgs/dataVImg/一次合格率.png
  8. BIN=BIN
      src/assets/imgs/dataVImg/一次合格率@2x.png
  9. BIN=BIN
      src/assets/imgs/dataVImg/光环 1.png
  10. BIN=BIN
      src/assets/imgs/dataVImg/光环 1@2x.png
  11. BIN=BIN
      src/assets/imgs/dataVImg/工厂.png
  12. BIN=BIN
      src/assets/imgs/dataVImg/工厂@2x.png
  13. BIN=BIN
      src/assets/imgs/dataVImg/底部栏.png
  14. BIN=BIN
      src/assets/imgs/dataVImg/总产值底盘.png
  15. BIN=BIN
      src/assets/imgs/dataVImg/悬浮内容.png
  16. BIN=BIN
      src/assets/imgs/dataVImg/悬浮内容@2x.png
  17. BIN=BIN
      src/assets/imgs/dataVImg/损工率右.png
  18. BIN=BIN
      src/assets/imgs/dataVImg/损工率右@2x.png
  19. BIN=BIN
      src/assets/imgs/dataVImg/损工率左.png
  20. BIN=BIN
      src/assets/imgs/dataVImg/损工率底座.png
  21. BIN=BIN
      src/assets/imgs/dataVImg/矿场.png
  22. BIN=BIN
      src/assets/imgs/dataVImg/矿场@2x.png
  23. BIN=BIN
      src/assets/imgs/dataVImg/计划完成率底座1.png
  24. BIN=BIN
      src/assets/imgs/dataVImg/计划完成率底座1@2x.png
  25. BIN=BIN
      src/assets/imgs/dataVImg/计划完成率底座2.png
  26. BIN=BIN
      src/assets/imgs/dataVImg/计划完成率底座2@2x.png
  27. BIN=BIN
      src/assets/imgs/dataVImg/计划完成率底座3.png
  28. BIN=BIN
      src/assets/imgs/dataVImg/计划完成率底座3@2x.png
  29. BIN=BIN
      src/assets/imgs/dataVImg/顶部栏.png
  30. BIN=BIN
      src/assets/imgs/dataVImg/飞光.png
  31. BIN=BIN
      src/assets/imgs/dataVImg/飞光@2x.png
  32. 1 1
      src/pages/tlk/api.js
  33. 2 2
      src/pages/tlk/component/mapView.jsx
  34. 3 2
      src/pages/tlk/component/oneQualified.jsx
  35. 3 2
      src/pages/tlk/component/oneSendView.jsx
  36. 2 1
      src/pages/tlk/component/rightBottomView.jsx
  37. 1 0
      src/pages/tlk/mod.js
  38. 149 7
      src/pages/tlk/style.less
  39. 94 29
      src/pages/tlk/view.jsx

src/assets/imgs/dataVImg/光环.png → src/assets/imgs/dataVImg/light.png


BIN=BIN
src/assets/imgs/dataVImg/quanShang.png


BIN=BIN
src/assets/imgs/dataVImg/quanXia.png


BIN=BIN
src/assets/imgs/dataVImg/quanZhong.png


BIN=BIN
src/assets/imgs/dataVImg/tlkRight.gif


BIN=BIN
src/assets/imgs/dataVImg/tlkRight2.gif


BIN=BIN
src/assets/imgs/dataVImg/一次合格率.png


BIN=BIN
src/assets/imgs/dataVImg/一次合格率@2x.png


BIN=BIN
src/assets/imgs/dataVImg/光环 1.png


BIN=BIN
src/assets/imgs/dataVImg/光环 1@2x.png


BIN=BIN
src/assets/imgs/dataVImg/工厂.png


BIN=BIN
src/assets/imgs/dataVImg/工厂@2x.png


BIN=BIN
src/assets/imgs/dataVImg/底部栏.png


BIN=BIN
src/assets/imgs/dataVImg/总产值底盘.png


BIN=BIN
src/assets/imgs/dataVImg/悬浮内容.png


BIN=BIN
src/assets/imgs/dataVImg/悬浮内容@2x.png


BIN=BIN
src/assets/imgs/dataVImg/损工率右.png


BIN=BIN
src/assets/imgs/dataVImg/损工率右@2x.png


BIN=BIN
src/assets/imgs/dataVImg/损工率左.png


BIN=BIN
src/assets/imgs/dataVImg/损工率底座.png


BIN=BIN
src/assets/imgs/dataVImg/矿场.png


BIN=BIN
src/assets/imgs/dataVImg/矿场@2x.png


BIN=BIN
src/assets/imgs/dataVImg/计划完成率底座1.png


BIN=BIN
src/assets/imgs/dataVImg/计划完成率底座1@2x.png


BIN=BIN
src/assets/imgs/dataVImg/计划完成率底座2.png


BIN=BIN
src/assets/imgs/dataVImg/计划完成率底座2@2x.png


BIN=BIN
src/assets/imgs/dataVImg/计划完成率底座3.png


BIN=BIN
src/assets/imgs/dataVImg/计划完成率底座3@2x.png


BIN=BIN
src/assets/imgs/dataVImg/顶部栏.png


BIN=BIN
src/assets/imgs/dataVImg/飞光.png


BIN=BIN
src/assets/imgs/dataVImg/飞光@2x.png


+ 1 - 1
src/pages/tlk/api.js

@@ -156,7 +156,7 @@ export function mondService(params) {
156
       "useResultCache": false
156
       "useResultCache": false
157
     },
157
     },
158
     headers: {
158
     headers: {
159
-      sign: '4995cb5ad27388171ede287e7e7d32b7',
159
+      sign: '43cd181c6b8897f1e849a2d0db07f9d0',
160
       account: 'yunxi_fuxue',
160
       account: 'yunxi_fuxue',
161
       'Cache-Control': 'no-cache',
161
       'Cache-Control': 'no-cache',
162
       apiId: '1387839381046678787',
162
       apiId: '1387839381046678787',

+ 2 - 2
src/pages/tlk/component/mapView.jsx

@@ -14,7 +14,7 @@
14
         preload 属性 :
14
         preload 属性 :
15
         设置 auto , 表示 预先加载视频 ;
15
         设置 auto , 表示 预先加载视频 ;
16
         设置 none , 表示 不预先加载视频 ;
16
         设置 none , 表示 不预先加载视频 ;
17
- * @Last Modified time: 2023-11-01 15:54:40
17
+ * @Last Modified time: 2024-10-18 14:46:37
18
  */
18
  */
19
 import React, { useState, useEffect, Component } from "react";
19
 import React, { useState, useEffect, Component } from "react";
20
 import { useHistory, useLocation, withRouter } from "react-router-dom";
20
 import { useHistory, useLocation, withRouter } from "react-router-dom";
@@ -100,7 +100,7 @@ class MapView extends Component {
100
   render() {
100
   render() {
101
     const { changGif } = this.state;
101
     const { changGif } = this.state;
102
     return (
102
     return (
103
-      <div class="video_box video_box_hide animate__animated animate__fadeOut animate__delay-2s animate__slower">
103
+      <div class="video_box video_box_hide animate__animated animate__fadeOut animate__slower">
104
           <video src={require("@assets/imgs/dataVImg/tlk.mp4").default} autoplay="autoplay" class="video1"></video>
104
           <video src={require("@assets/imgs/dataVImg/tlk.mp4").default} autoplay="autoplay" class="video1"></video>
105
       </div>
105
       </div>
106
     )
106
     )

+ 3 - 2
src/pages/tlk/component/oneQualified.jsx

@@ -2,7 +2,7 @@
2
  * @Author: dayan_hjm 一次合格率
2
  * @Author: dayan_hjm 一次合格率
3
  * @Date: 2023-10-23 09:32:12 
3
  * @Date: 2023-10-23 09:32:12 
4
  * @Last Modified by: dayan_hjm
4
  * @Last Modified by: dayan_hjm
5
- * @Last Modified time: 2024-10-17 11:28:28
5
+ * @Last Modified time: 2024-10-18 15:17:26
6
  */
6
  */
7
 
7
 
8
 
8
 
@@ -68,7 +68,7 @@ class BottomLineForSend extends Component {
68
       var option = {
68
       var option = {
69
         grid: {
69
         grid: {
70
           left: '2%',
70
           left: '2%',
71
-          top: '15%',
71
+          top: '20%',
72
           right: '0%',
72
           right: '0%',
73
           bottom: '5%',
73
           bottom: '5%',
74
           containLabel: true
74
           containLabel: true
@@ -89,6 +89,7 @@ class BottomLineForSend extends Component {
89
           backgroundColor:"#0000008a"
89
           backgroundColor:"#0000008a"
90
         },
90
         },
91
         legend: {
91
         legend: {
92
+          type: 'scroll',
92
           data: ['锂辉石消耗量\n(Spodunene Consumption)', '锂辉石计划消耗量\n(Spodumene Consumption Plan)','锂辉石计划执行率\n(Execution rate of spodumene plan)'],
93
           data: ['锂辉石消耗量\n(Spodunene Consumption)', '锂辉石计划消耗量\n(Spodumene Consumption Plan)','锂辉石计划执行率\n(Execution rate of spodumene plan)'],
93
           fontFamily:'DingTalkJinBuTi',
94
           fontFamily:'DingTalkJinBuTi',
94
           padding: [0, 0, 10, 0],
95
           padding: [0, 0, 10, 0],

+ 3 - 2
src/pages/tlk/component/oneSendView.jsx

@@ -2,7 +2,7 @@
2
  * @Author: dayan_hjm 月度产量/发货量
2
  * @Author: dayan_hjm 月度产量/发货量
3
  * @Date: 2023-10-23 09:32:12 
3
  * @Date: 2023-10-23 09:32:12 
4
  * @Last Modified by: dayan_hjm
4
  * @Last Modified by: dayan_hjm
5
- * @Last Modified time: 2024-10-17 11:01:37
5
+ * @Last Modified time: 2024-10-18 15:13:53
6
  */
6
  */
7
 
7
 
8
 
8
 
@@ -62,7 +62,7 @@ class OneSendView extends Component {
62
       var option = {
62
       var option = {
63
         grid: {
63
         grid: {
64
           left: '2%',
64
           left: '2%',
65
-          top: '18%',
65
+          top: '25%',
66
           right: '0%',
66
           right: '0%',
67
           bottom: '8%',
67
           bottom: '8%',
68
           containLabel: true
68
           containLabel: true
@@ -83,6 +83,7 @@ class OneSendView extends Component {
83
           backgroundColor:"#0000008a"
83
           backgroundColor:"#0000008a"
84
         },
84
         },
85
         legend: {
85
         legend: {
86
+          type: 'scroll',
86
           data: ['预算产量(Monthly Budget)', '产量(Net Production)','计划完成率(Prodction Efflciebcy)'],
87
           data: ['预算产量(Monthly Budget)', '产量(Net Production)','计划完成率(Prodction Efflciebcy)'],
87
           fontFamily:'DingTalkJinBuTi',
88
           fontFamily:'DingTalkJinBuTi',
88
           padding: [15, 0, 0, 0],
89
           padding: [15, 0, 0, 0],

+ 2 - 1
src/pages/tlk/component/rightBottomView.jsx

@@ -2,7 +2,7 @@
2
  * @Author: dayan_hjm 近30天产量
2
  * @Author: dayan_hjm 近30天产量
3
  * @Date: 2023-10-23 09:32:12 
3
  * @Date: 2023-10-23 09:32:12 
4
  * @Last Modified by: dayan_hjm
4
  * @Last Modified by: dayan_hjm
5
- * @Last Modified time: 2024-10-17 11:30:23
5
+ * @Last Modified time: 2024-10-18 15:30:14
6
  */
6
  */
7
 
7
 
8
 
8
 
@@ -76,6 +76,7 @@ class RightBottomView extends Component {
76
           containLabel: true
76
           containLabel: true
77
         },
77
         },
78
         legend: {
78
         legend: {
79
+          type: 'scroll',
79
           data: ['产量一次合格率(First Pass Yield)', '累计一次合格率(Cumulative First Pass Yield)'],
80
           data: ['产量一次合格率(First Pass Yield)', '累计一次合格率(Cumulative First Pass Yield)'],
80
           fontFamily: 'DingTalkJinBuTi',
81
           fontFamily: 'DingTalkJinBuTi',
81
           padding: [5, 0, 40, 0],
82
           padding: [5, 0, 40, 0],

+ 1 - 0
src/pages/tlk/mod.js

@@ -17,6 +17,7 @@ const defaultState = {
17
   totalValue:0,
17
   totalValue:0,
18
   yearDecline:0,
18
   yearDecline:0,
19
   yearSend:0,
19
   yearSend:0,
20
+  tailiTotal:0,
20
   implementationOfThePlan:0,
21
   implementationOfThePlan:0,
21
   annualPlan:0,
22
   annualPlan:0,
22
   productInventory:0,
23
   productInventory:0,

+ 149 - 7
src/pages/tlk/style.less

@@ -2,6 +2,7 @@
2
 
2
 
3
 @assetUrl: "../../assets/imgs/home";
3
 @assetUrl: "../../assets/imgs/home";
4
 
4
 
5
+
5
 .bg_after {
6
 .bg_after {
6
   content: "";
7
   content: "";
7
   display: block;
8
   display: block;
@@ -11,12 +12,85 @@
11
   height: 10px;
12
   height: 10px;
12
 }
13
 }
13
 .tlk_box{
14
 .tlk_box{
14
-  background: url(../../assets/imgs/dataVImg/homeBgDataV2.jpg) no-repeat 0 -10% #041b40!important;
15
-  :global {
15
+  background: #041b40!important;
16
+  :global {  
17
+    .rightContent .topMsg .changBg_topMsg_content{
18
+      background: url(../../assets/imgs/dataVImg/tlkRight2.gif) no-repeat 48% 0/91% 112%!important;
19
+    }     
20
+    .centerCon .topMsg3 {
21
+      width: 100%;
22
+      height: 16%!important;
23
+      margin-top: 1em!important;
24
+    }
25
+    .imgMsg {
26
+      width: 100%;
27
+      position: absolute;
28
+      left: 0;
29
+      top: 0;
30
+      height: 100%;
31
+      color: #fff;
32
+      li {
33
+        position: absolute;
34
+        width: 24em;
35
+        z-index: 10;
36
+        height: 4em;
37
+        opacity: 1;
38
+        background: linear-gradient(0deg, #ffffff26 0%, #ffffff00 100%);
39
+        border-radius: 0.5em;
40
+        padding: 0.5em;
41
+        box-sizing: border-box;
42
+        font-size: 0.85em;
43
+        color: #cdf1ffcf;
44
+        text-align: left;
45
+        .nums {
46
+          font-size: 1.3em;
47
+          color: #69FFDE;
48
+          display: inline-block !important;
49
+      }
50
+      .sma {
51
+        font-size: 0.7em;
52
+        color: #CDF1FF;
53
+        display: inline-block;
54
+        margin-left: 0.2em;
55
+    }
56
+    }
57
+      .lastLi{
58
+        width: 20em;
59
+        text-align: center;
60
+        padding-top: 7em;
61
+        height: 20em;
62
+        background: url(../../assets/imgs/dataVImg/quanShang.png) no-repeat 40% 40% !important;
63
+        background-size: 100% 100% !important;
64
+        .nums{
65
+          font-size: 1.8em;
66
+          .sma {
67
+            font-size: 1em;
68
+          }
69
+        }
70
+      
71
+        .zhuan{
72
+          background: url(../../assets/imgs/dataVImg/quanZhong.png) no-repeat 0 0 !important;
73
+          width: 100%;
74
+          height: 100%;
75
+          display: block;
76
+          position: absolute;
77
+          left: 0;
78
+          top: 0;
79
+          background-size: 100% 100% !important;
80
+        }
81
+        .animate__animated.animate__slower{
82
+          animation-duration: calc(var(--animate-duration)* 15)!important;
83
+        }
84
+
85
+      }
86
+    }
16
     .video_box {
87
     .video_box {
17
       width: 100% !important;
88
       width: 100% !important;
18
       background: url(../../assets/imgs/dataVImg/homeBgDataV2.jpg) no-repeat 0 -10em / 108% 120% #041b40!important;
89
       background: url(../../assets/imgs/dataVImg/homeBgDataV2.jpg) no-repeat 0 -10em / 108% 120% #041b40!important;
19
     }
90
     }
91
+    .video_box_hide{
92
+      background: #000!important;
93
+    }
20
     .leftContent .bottomContent2{
94
     .leftContent .bottomContent2{
21
       height: 31%!important;
95
       height: 31%!important;
22
       .topMsg_content{
96
       .topMsg_content{
@@ -33,17 +107,19 @@
33
       height: 27%;
107
       height: 27%;
34
     }
108
     }
35
     .centerCon .right_li{
109
     .centerCon .right_li{
36
-      margin-top: -24px;
110
+      margin-top: -27px;
37
     }
111
     }
38
     .topMsg_tip2{
112
     .topMsg_tip2{
39
       margin-top: 0!important;
113
       margin-top: 0!important;
40
     }
114
     }
41
     .rightContent .topMsg2{
115
     .rightContent .topMsg2{
42
       height: 30%!important;
116
       height: 30%!important;
117
+      margin-bottom: 4%!important;
43
     }
118
     }
44
     .centerCon .bottomContent3{
119
     .centerCon .bottomContent3{
45
-      bottom: 7%!important;
120
+      bottom: 5%!important;
46
     }
121
     }
122
+
47
     .leftContent .bottomContent2{
123
     .leftContent .bottomContent2{
48
       margin-bottom: 3%!important;
124
       margin-bottom: 3%!important;
49
     }
125
     }
@@ -53,7 +129,10 @@
53
     
129
     
54
     .rightContent .topMsg_22{
130
     .rightContent .topMsg_22{
55
       height: 30%!important;
131
       height: 30%!important;
56
-      margin-bottom: 5%;
132
+      margin-bottom: 6%;
133
+      .topMsg_title{
134
+        margin-bottom: 1%;
135
+      }
57
       #echarts5{
136
       #echarts5{
58
         height: 100%!important;
137
         height: 100%!important;
59
       }
138
       }
@@ -71,9 +150,18 @@
71
     }
150
     }
72
     .video_box video{
151
     .video_box video{
73
       width: 100%!important;
152
       width: 100%!important;
74
-      height: 70%!important;
75
-      padding: 0 0 9% 0!important;
153
+      height: 75%!important;
154
+      padding: 0 4% 11% 0!important;
155
+    }
156
+    @media (min-height: 1000px) {//横屏大屏
157
+      .video_box video{
158
+        width: 100%!important;
159
+        height: 71%!important;
160
+        padding: 0 2% 14% 0!important;
161
+      }
76
     }
162
     }
163
+
164
+
77
     .rightContent .topMsg .topMsg_content .topMsg_box .topMsg_number_p{
165
     .rightContent .topMsg .topMsg_content .topMsg_box .topMsg_number_p{
78
       margin-bottom: 0.1rem;
166
       margin-bottom: 0.1rem;
79
       color: #84b8dc!important;
167
       color: #84b8dc!important;
@@ -90,6 +178,60 @@
90
     .rightContent .topMsg .topMsg_content .topMsg_box{
178
     .rightContent .topMsg .topMsg_content .topMsg_box{
91
       width: 32%!important;
179
       width: 32%!important;
92
     }
180
     }
181
+    @media (max-height: 768px) {//电脑小屏
182
+      .rightContent .topMsg .topMsg_content .topMsg_box{
183
+        width: 38% !important;
184
+      }
185
+      .video_box video{
186
+        width: 100% !important;
187
+        height: 64% !important;
188
+        padding: 0 0% 6% 0 !important;
189
+      }
190
+      .leftContent{
191
+        height: 95%;
192
+        width: 26% !important;
193
+    margin-left: 0;
194
+    #onesendbox{
195
+      width: 100%!important;
196
+    }
197
+      }
198
+      .leftContent .bottomContent2 {
199
+        height: 30% !important;
200
+      }
201
+      .leftContent .center_box2{
202
+        height: 30% !important;
203
+      }
204
+      .imgMsg li{
205
+        width: auto;
206
+        height: auto;
207
+      }
208
+      .imgMsg li:nth-child(1){
209
+        right: 5%;
210
+      }
211
+      .imgMsg .lastLi{
212
+        left: 66%!important;
213
+        top: 45%!important;
214
+        width: 18em;
215
+        text-align: center;
216
+        padding-top: 6.5em;
217
+        height: 18em;
218
+      }
219
+    }
220
+    @media (max-height: 768px) {//电脑小屏
221
+      .centerCon .topMsg_content .center_li:nth-last-child(1){
222
+        height: 107%!important;
223
+      }
224
+    }
225
+    @media (max-height: 900px) {
226
+      .centerCon .topMsg_content .center_li:nth-last-child(1){
227
+        height: 107%!important;
228
+      }
229
+      .rightContent .topMsg .topMsg_content .topMsg_box{
230
+        width: 38% !important;
231
+      }
232
+
233
+    }
234
+
93
     .topMsg_title{
235
     .topMsg_title{
94
       background: url(../../assets/imgs/dataVimg/tipleBg2.png) no-repeat 0 0 / 100% 100%!important;
236
       background: url(../../assets/imgs/dataVimg/tipleBg2.png) no-repeat 0 0 / 100% 100%!important;
95
       color: #e0f6ff!important;
237
       color: #e0f6ff!important;

+ 94 - 29
src/pages/tlk/view.jsx

@@ -2,7 +2,7 @@
2
  * @Author: dayan_hjm 
2
  * @Author: dayan_hjm 
3
  * @Date: 2023-10-25 10:32:44 
3
  * @Date: 2023-10-25 10:32:44 
4
  * @Last Modified by: dayan_hjm
4
  * @Last Modified by: dayan_hjm
5
- * @Last Modified time: 2024-10-17 10:46:43
5
+ * @Last Modified time: 2024-10-18 15:00:12
6
  */
6
  */
7
 /*
7
 /*
8
  * @Author: dayan_hjm 
8
  * @Author: dayan_hjm 
@@ -27,7 +27,7 @@ import OneQualified from "./component/oneQualified.jsx";
27
 import MapView from "./component/mapView.jsx";
27
 import MapView from "./component/mapView.jsx";
28
 import $store from "@store/";
28
 import $store from "@store/";
29
 import {
29
 import {
30
-  timeService,
30
+  momeyService,
31
   numberService,
31
   numberService,
32
   checkToken,
32
   checkToken,
33
   updateTimeService
33
   updateTimeService
@@ -48,6 +48,7 @@ class Home extends Component {
48
       updateTime: '',
48
       updateTime: '',
49
       changGif: false,
49
       changGif: false,
50
       changNun: false,
50
       changNun: false,
51
+      imgMsgData: [],
51
       plannedCompletionData: [
52
       plannedCompletionData: [
52
       ],
53
       ],
53
       plannedCompletionNum: 1,
54
       plannedCompletionNum: 1,
@@ -85,9 +86,9 @@ class Home extends Component {
85
   }
86
   }
86
   componentDidMount() {
87
   componentDidMount() {
87
     this.fontMsgChange();
88
     this.fontMsgChange();
88
-    this.getUrl();
89
     this.getUrl2()
89
     this.getUrl2()
90
     this.getUrl3();
90
     this.getUrl3();
91
+    this.getUrl();
91
     setTimeout(() => {
92
     setTimeout(() => {
92
       this.videoStart();
93
       this.videoStart();
93
     }, 200)
94
     }, 200)
@@ -156,33 +157,39 @@ class Home extends Component {
156
   }
157
   }
157
 
158
 
158
   async getUrl() {
159
   async getUrl() {
159
-    await timeService().then(({ data = [], resultCode }) => {
160
+    const name_ = ["累计运输锂辉石 /Total Spodumene Shipments: ", "锂辉石库存量 /Spodumene Inventory:", "锂辉石库存量 /Spodumene Inventory:", "锂辉石库存量 /Spodumene Inventory:",""];
161
+    const style__ = [{ left: "3%", top: "29%" }, { right: "9%", top: "38%" }, { right: "32%", top: "48%" }, { left: "5%", top: "64%" }, { left: "65%", top: "47%" }]
162
+    let datas = [];
163
+    await momeyService().then(({ data = [], resultCode }) => {
160
       if (+resultCode === 0) {
164
       if (+resultCode === 0) {
161
-        let plannedCompletionData = [], manHourData = [];
165
+        function changeName(x, num) {
166
+          return {
167
+            ...x,
168
+            total: x.IndexValue,
169
+            totalName: name_[num],
170
+            styles: style__[num],
171
+          }
172
+        }
162
         data.map((x, i) => {
173
         data.map((x, i) => {
163
-          if (x.indexValue || x.indexValue == 0) {
164
-            if (x.indexName == '产量计划完成率') {
165
-              plannedCompletionData.push({
166
-                name: x.factoryName,
167
-                value: Number((x.indexValue * 100).toFixed(2)),
168
-              })
169
-            } else {
170
-              manHourData.push({
171
-                name: x.factoryName,
172
-                // value: Number((x.indexValue * 100).toFixed(2)),
173
-                value: Number(x.indexValue),
174
-              })
175
-            }
174
+          datas[0] = changeName({ IndexValue: this.store.state.tailiTotal }, 0);
175
+          if (x.IndexCode == '22') {
176
+            datas[1] = changeName(x, 1);
177
+          } else if (x.IndexCode == '23') {
178
+            datas[2] = changeName(x, 2);
179
+          } else if (x.IndexCode == '21') {
180
+            datas[3] = changeName(x, 3);
181
+          } else if (x.IndexCode == '24') {
182
+            datas[4] = changeName(x, 4);
176
           }
183
           }
177
         });
184
         });
178
-        this.setState({ plannedCompletionData, manHourData, plannedCompletionNum: 1, manHourNum: 1 });
185
+        this.setState({ imgMsgData: datas });
179
       }
186
       }
180
     });
187
     });
181
   }
188
   }
182
   async getUrl2() {
189
   async getUrl2() {
183
     await numberService().then(({ data = [], resultCode }) => {
190
     await numberService().then(({ data = [], resultCode }) => {
184
       if (+resultCode === 0) {
191
       if (+resultCode === 0) {
185
-        let totalValue = 0, productInventory=0,yearDecline = 0, yearSend = 0, annualPlan = 0, implementationOfThePlan = 0;
192
+        let tailiTotal = 0, totalValue = 0, productInventory = 0, yearDecline = 0, yearSend = 0, annualPlan = 0, implementationOfThePlan = 0;
186
         data.map((x, i) => {
193
         data.map((x, i) => {
187
           if (x.IndexCode == '1') {
194
           if (x.IndexCode == '1') {
188
             yearDecline = x.IndexValue
195
             yearDecline = x.IndexValue
@@ -194,9 +201,11 @@ class Home extends Component {
194
             annualPlan = x.IndexValue //年度产量完成率
201
             annualPlan = x.IndexValue //年度产量完成率
195
           } else if (x.IndexCode == '5') {
202
           } else if (x.IndexCode == '5') {
196
             implementationOfThePlan = x.IndexValue //年度锂辉石执行率
203
             implementationOfThePlan = x.IndexValue //年度锂辉石执行率
204
+          } else if (x.IndexCode == '6') {
205
+            tailiTotal = x.IndexValue //年度锂辉石执行率
197
           }
206
           }
198
         });
207
         });
199
-        this.store.saveState({ totalValue, yearDecline, yearSend, productInventory,annualPlan,implementationOfThePlan });
208
+        this.store.saveState({ tailiTotal, totalValue, yearDecline, yearSend, productInventory, annualPlan, implementationOfThePlan });
200
         setTimeout(() => {
209
         setTimeout(() => {
201
           $(".shu1").numScroll();
210
           $(".shu1").numScroll();
202
         }, 2500)
211
         }, 2500)
@@ -254,8 +263,8 @@ class Home extends Component {
254
 
263
 
255
   render() {
264
   render() {
256
     const stores = this.store.state;
265
     const stores = this.store.state;
257
-    let { totalValue, yearDecline, yearSend, productInventory,annualPlan,implementationOfThePlan } = this.store.state;
258
-    let { changGif, updateTime, changNun } = this.state;
266
+    let { totalValue, yearDecline, yearSend, productInventory, annualPlan, implementationOfThePlan } = this.store.state;
267
+    let { changGif, updateTime, changNun, imgMsgData } = this.state;
259
     return (
268
     return (
260
       <div className={[styles.tlk_box + ' home_box ']}>
269
       <div className={[styles.tlk_box + ' home_box ']}>
261
         {/* 水印 */}
270
         {/* 水印 */}
@@ -366,7 +375,7 @@ class Home extends Component {
366
                         !changNun && <span className="topMsg_number" class="shu1">{yearSend}</span>
375
                         !changNun && <span className="topMsg_number" class="shu1">{yearSend}</span>
367
                       }
376
                       }
368
                       {
377
                       {
369
-                        changNun && <span className="topMsg_number">{getThousandNum(yearSend,true)}%</span>
378
+                        changNun && <span className="topMsg_number">{getThousandNum(yearSend, true)}%</span>
370
                       }
379
                       }
371
                       <p className="topMsg_line"></p>
380
                       <p className="topMsg_line"></p>
372
                       <Tooltip placement="bottom" title={' ● 截止更新日期的主产品库存数量。'}>
381
                       <Tooltip placement="bottom" title={' ● 截止更新日期的主产品库存数量。'}>
@@ -388,6 +397,62 @@ class Home extends Component {
388
                 </div>
397
                 </div>
389
               </div>
398
               </div>
390
             </div>
399
             </div>
400
+            <ul className="imgMsg">
401
+              {
402
+                toJS(imgMsgData).map((item, index) => {
403
+                  if (!item) { return }
404
+                  return (
405
+                    <li style={{ ...item?.styles }} class={index != 4 ? "animate__animated animate__bounceInUp animate__slower" : "animate__animated animate__bounceInUp animate__slower lastLi"}>
406
+                      {/* 矿产 */}
407
+                      {
408
+                        index != 4 && <div>
409
+                          {
410
+                            item.totalName && <p className="name">{item.totalName}</p>
411
+                          }
412
+                          {
413
+                            item.totalName && !changGif && <span class="shu1 nums">{item.total}</span>
414
+                          }
415
+                          {
416
+                            item.totalName && changGif && <span class="nums">{getThousandNum(item.total)}</span>
417
+                          }
418
+                          {
419
+                            item.totalName && <span className="sma">t</span>
420
+                          }
421
+
422
+                        </div>
423
+                      }
424
+                      {
425
+                        index == 4 && <span class="zhuan animate__animated animate__delay-1s animate__rotateIn animate__infinite animate__slower"></span>
426
+                      }
427
+                      {
428
+                        index == 4 && <div>
429
+                          
430
+                          {
431
+                            item.total && !changGif && <span class="shu1 nums">{item.total}</span>
432
+                          }
433
+                          {
434
+                            item.total && changGif && <span class="nums">{getThousandNum(item.total)}</span>
435
+                          }
436
+                          {
437
+                            item.total && <span className="sma">t</span>
438
+                          }
439
+                          {
440
+                            <p className="name">锂辉石库存总量</p>
441
+                          }
442
+                          {
443
+                            <p className="name" style={{marginTop:'-0.5em'}}>Spodumene Inventory</p>
444
+                          }
445
+
446
+                        </div>
447
+                      }
448
+
449
+
450
+                    </li>
451
+                  )
452
+                })
453
+              }
454
+            </ul>
455
+
391
 
456
 
392
           </div>
457
           </div>
393
 
458
 
@@ -396,21 +461,21 @@ class Home extends Component {
396
             <div class="topMsg2 animate__animated animate__fadeInDown animate__slower">
461
             <div class="topMsg2 animate__animated animate__fadeInDown animate__slower">
397
               <div className="topMsg bigDivPd">
462
               <div className="topMsg bigDivPd">
398
                 <Tooltip placement="bottom" title={' ● 近一年的百万工时损工率。'}>
463
                 <Tooltip placement="bottom" title={' ● 近一年的百万工时损工率。'}>
399
-                  <p className="topMsg_title">计划完成率 <span className="topMsg_tips">/ Plan Completion Rate</span></p>
464
+                  <p className="topMsg_title" style={{marginBottom:'8px'}}>计划完成率 <span className="topMsg_tips">/ Plan Completion Rate</span></p>
400
                 </Tooltip>
465
                 </Tooltip>
401
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"} id="manHourBox">
466
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"} id="manHourBox">
402
                   <div className="topMsg_box">
467
                   <div className="topMsg_box">
403
                     <p className="topMsg_number_p topMsg_number_p_big">年度产量计划完成率</p>
468
                     <p className="topMsg_number_p topMsg_number_p_big">年度产量计划完成率</p>
404
                     <p className="topMsg_number_p">Completion rate of</p>
469
                     <p className="topMsg_number_p">Completion rate of</p>
405
-                    <p className="topMsg_number_p" style={{marginBottom:'0.05rem'}}>annual production plan</p>
406
-                    <span className="topMsg_number" class="shu1">{getThousandNum(annualPlan,true)}</span>
470
+                    <p className="topMsg_number_p" style={{ marginBottom: '0.05rem' }}>annual production plan</p>
471
+                    <span className="topMsg_number" class="shu1">{getThousandNum(annualPlan, true)}</span>
407
                     <span className="topMsg_number_2">%</span>
472
                     <span className="topMsg_number_2">%</span>
408
                   </div>
473
                   </div>
409
                   <div className="topMsg_box">
474
                   <div className="topMsg_box">
410
                     <p className="topMsg_number_p topMsg_number_p_big">年度锂辉石计划执行率</p>
475
                     <p className="topMsg_number_p topMsg_number_p_big">年度锂辉石计划执行率</p>
411
                     <p className="topMsg_number_p">Annual lithium pyroxene</p>
476
                     <p className="topMsg_number_p">Annual lithium pyroxene</p>
412
-                    <p className="topMsg_number_p" style={{marginBottom:'0.05rem'}}>plan execution rate</p>
413
-                    <span className="topMsg_number" class="shu1">{getThousandNum(implementationOfThePlan,true)}</span>
477
+                    <p className="topMsg_number_p" style={{ marginBottom: '0.05rem' }}>plan execution rate</p>
478
+                    <span className="topMsg_number" class="shu1">{getThousandNum(implementationOfThePlan, true)}</span>
414
                     <span className="topMsg_number_2">%</span>
479
                     <span className="topMsg_number_2">%</span>
415
                   </div>
480
                   </div>
416
                 </div>
481
                 </div>