Explorar o código

feat: 更新时间联调 / 移上名词解释

@dayan_hjm %!s(int64=2) %!d(string=hai) anos
pai
achega
6605dee12e

+ 5 - 1
src/App/index.less

@@ -10,7 +10,11 @@
10
 //   font-family: "DINAlternate-Bold";
10
 //   font-family: "DINAlternate-Bold";
11
 //   src: url('../assets/fonts/DIN-Black.otf');
11
 //   src: url('../assets/fonts/DIN-Black.otf');
12
 // }
12
 // }
13
-
13
+.ant-tooltip-inner{
14
+  background-color:#000000d9;
15
+    border-radius: 2px;
16
+    border: 1px solid #69FFDE;
17
+}
14
 .app {
18
 .app {
15
   color: #000;
19
   color: #000;
16
 
20
 

+ 38 - 22
src/assets/css/styleTemplate.less

@@ -2,7 +2,7 @@
2
  * @Author: dayan_hjm 茶百道主题样式
2
  * @Author: dayan_hjm 茶百道主题样式
3
  * @Date: 2022-10-27 10:56:37 
3
  * @Date: 2022-10-27 10:56:37 
4
  * @Last Modified by: dayan_hjm
4
  * @Last Modified by: dayan_hjm
5
- * @Last Modified time: 2023-11-05 09:43:29
5
+ * @Last Modified time: 2023-11-07 11:02:52
6
  */
6
  */
7
 
7
 
8
 @import url("../../themes/themes.less");
8
 @import url("../../themes/themes.less");
@@ -252,8 +252,16 @@
252
         width: 4em;
252
         width: 4em;
253
         height: 3em;
253
         height: 3em;
254
         padding-right: 1em;
254
         padding-right: 1em;
255
-        border-right: 1px solid #3d5271;
255
+        // border-right: 1px solid #3d5271;
256
+        // margin-right: 1em;
257
+      }
258
+
259
+      >span {
260
+        width: 1px;
261
+        height: 1.8em;
262
+        background: #5d5d5db8;
256
         margin-right: 1em;
263
         margin-right: 1em;
264
+        margin-top: 0.2em;
257
       }
265
       }
258
 
266
 
259
       >h1 {
267
       >h1 {
@@ -487,18 +495,21 @@
487
                 width: 45%;
495
                 width: 45%;
488
                 height: 90%;
496
                 height: 90%;
489
               }
497
               }
490
-              #echarts6_box{
498
+
499
+              #echarts6_box {
491
                 margin-top: -2em;
500
                 margin-top: -2em;
492
                 position: relative;
501
                 position: relative;
502
+
493
                 // background: url(../imgs/dataVimg/guanghuan.png) no-repeat left 43% / 102% 120%;
503
                 // background: url(../imgs/dataVimg/guanghuan.png) no-repeat left 43% / 102% 120%;
494
-                .guanghuan{
504
+                .guanghuan {
495
                   width: 102%;
505
                   width: 102%;
496
-    height: 120%;
497
-    position: absolute;
498
-    left: 0;
499
-    top: -1.5em;
506
+                  height: 120%;
507
+                  position: absolute;
508
+                  left: 0;
509
+                  top: -1.5em;
500
                 }
510
                 }
501
-                #echarts6{
511
+
512
+                #echarts6 {
502
                   width: 100%;
513
                   width: 100%;
503
                   height: 100%;
514
                   height: 100%;
504
                 }
515
                 }
@@ -1120,7 +1131,8 @@
1120
       text-align: right;
1131
       text-align: right;
1121
     }
1132
     }
1122
   }
1133
   }
1123
-  .testDiv{
1134
+
1135
+  .testDiv {
1124
     width: 4em;
1136
     width: 4em;
1125
     display: flex;
1137
     display: flex;
1126
     align-items: center;
1138
     align-items: center;
@@ -1128,29 +1140,33 @@
1128
     flex-wrap: wrap;
1140
     flex-wrap: wrap;
1129
     margin-left: -2.2em;
1141
     margin-left: -2.2em;
1130
     margin-top: -1.5em;
1142
     margin-top: -1.5em;
1131
-    .p3{
1143
+
1144
+    .p3 {
1132
       font-size: 0.4em;
1145
       font-size: 0.4em;
1133
-    margin-left: 0.2em;
1134
-    display: inline-block;
1146
+      margin-left: 0.2em;
1147
+      display: inline-block;
1135
     }
1148
     }
1136
-    .p2{
1149
+
1150
+    .p2 {
1137
       font-size: 0.5em;
1151
       font-size: 0.5em;
1138
       text-align: center;
1152
       text-align: center;
1139
       width: 100%;
1153
       width: 100%;
1140
-      color:#CDF1FF;
1154
+      color: #CDF1FF;
1141
       line-height: 0.3em;
1155
       line-height: 0.3em;
1142
       margin-top: 0.2em;
1156
       margin-top: 0.2em;
1143
     }
1157
     }
1144
-    .p1{
1158
+
1159
+    .p1 {
1145
       text-align: center;
1160
       text-align: center;
1146
-    width: 100%;
1147
-    display: flex;
1148
-    align-items: baseline;
1149
-    justify-content: center;
1150
-    font-size: 1.6em;
1151
-  
1161
+      width: 100%;
1162
+      display: flex;
1163
+      align-items: baseline;
1164
+      justify-content: center;
1165
+      font-size: 1.6em;
1166
+
1152
     }
1167
     }
1153
   }
1168
   }
1169
+
1154
   .leftContent .bottomContent {
1170
   .leftContent .bottomContent {
1155
     height: 100% !important;
1171
     height: 100% !important;
1156
 
1172
 

+ 1 - 0
src/pages/frame/component/top/view.jsx

@@ -715,6 +715,7 @@ export default observer(function (props) {
715
             src={require("@assets/imgs/dataVimg/logo.png").default}
715
             src={require("@assets/imgs/dataVimg/logo.png").default}
716
             width="17"
716
             width="17"
717
           />
717
           />
718
+          <span></span>
718
           <h1>运营数据中心</h1>
719
           <h1>运营数据中心</h1>
719
         </div>
720
         </div>
720
         {/* {history.location.pathname === "/home/index" && (
721
         {/* {history.location.pathname === "/home/index" && (

+ 33 - 4
src/pages/tqcDataVHome/api.js

@@ -37,10 +37,10 @@ export function dataengineCenterOneservice(params) {
37
 /**库存金额 */
37
 /**库存金额 */
38
 export function momeyService(params) {
38
 export function momeyService(params) {
39
   return request({
39
   return request({
40
-    url: "/data-screen/dataengine-center-oneservice/list/1356247728606450795",
40
+    url: "/data-screen/dataengine-center-oneservice/list/1356776817075459329",
41
     method: "POST",
41
     method: "POST",
42
     data: {
42
     data: {
43
-      "apiId": "1356247728606450795",
43
+      "apiId": "1356776817075459329",
44
       "appKey": "200000134",
44
       "appKey": "200000134",
45
       "env": "PROD",
45
       "env": "PROD",
46
       "reqProtocol": 1,
46
       "reqProtocol": 1,
@@ -54,10 +54,10 @@ export function momeyService(params) {
54
       "useResultCache": false
54
       "useResultCache": false
55
     },
55
     },
56
     headers: {
56
     headers: {
57
-      sign: 'c8c1b40b31930c3fd50214bf3e02ee0f',
57
+      sign: 'd58de970856e583f126d186662251024',
58
       account: 'yunxi_fuxue',
58
       account: 'yunxi_fuxue',
59
       'Cache-Control': 'no-cache',
59
       'Cache-Control': 'no-cache',
60
-      apiId: '1356247728606450795',
60
+      apiId: '1356776817075459329',
61
       appKey: '200000134',
61
       appKey: '200000134',
62
       execType: '3',
62
       execType: '3',
63
       env: 'PROD',
63
       env: 'PROD',
@@ -192,4 +192,33 @@ export function twoService(params) {
192
   });
192
   });
193
 }
193
 }
194
 
194
 
195
+/**更新时间*/
196
+export function updateTimeService(params) {
197
+  return request({
198
+    url: "/data-screen/dataengine-center-oneservice/list/1356778817327502618",
199
+    method: "POST",
200
+    data: {
201
+      "apiId": "1356778817327502618",
202
+      "appKey": "200000134",
203
+      "env": "PROD",
204
+      "reqProtocol": 1,
205
+      "returnFields": [
206
+        "etlTime"
207
+      ],
208
+      "pageNum": 1,
209
+      "pageSize": 10,
210
+      "useResultCache": false
211
+    },
212
+    headers: {
213
+      sign: '4365b6564b25c852fcf0228188f48114',
214
+      account: 'yunxi_fuxue',
215
+      'Cache-Control': 'no-cache',
216
+      apiId: '1356778817327502618',
217
+      appKey: '200000134',
218
+      execType: '3',
219
+      env: 'PROD',
220
+    }
221
+  });
222
+}
223
+
195
 
224
 

+ 4 - 6
src/pages/tqcDataVHome/component/leftMenoyView.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: 2023-11-05 10:03:24
5
+ * @Last Modified time: 2023-11-06 15:18:24
6
  */
6
  */
7
 
7
 
8
 
8
 
@@ -134,14 +134,12 @@ class LeftMenoyView extends Component {
134
       if (+resultCode === 0) {
134
       if (+resultCode === 0) {
135
         let year = [], missionsIntensity_arr = [];
135
         let year = [], missionsIntensity_arr = [];
136
         data.map((x, i) => {
136
         data.map((x, i) => {
137
-          year.push(x.indexName);
137
+          year.push(x.prodCatgory);
138
           data_style[i].value = x.indexValue;
138
           data_style[i].value = x.indexValue;
139
-          data_style[i].name = x.indexName;
139
+          data_style[i].name = x.prodCatgory;
140
           missionsIntensity_arr.push(data_style[i])
140
           missionsIntensity_arr.push(data_style[i])
141
         });
141
         });
142
         this.setState({ year, missionsIntensity_arr });
142
         this.setState({ year, missionsIntensity_arr });
143
-        debugger
144
-
145
         this.setData();
143
         this.setData();
146
         this.setData2();
144
         this.setData2();
147
       }
145
       }
@@ -407,7 +405,7 @@ class LeftMenoyView extends Component {
407
         <ul className={"name_ul"}>
405
         <ul className={"name_ul"}>
408
           {
406
           {
409
             this.state.year.map(x=>{
407
             this.state.year.map(x=>{
410
-              return (<li>x</li>)
408
+              return <li>{x}</li>
411
             })
409
             })
412
           }
410
           }
413
         </ul>
411
         </ul>

+ 94 - 61
src/pages/tqcDataVHome/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: 2023-11-05 11:14:56
5
+ * @Last Modified time: 2023-11-07 11:26:49
6
  */
6
  */
7
 /*
7
 /*
8
  * @Author: dayan_hjm 
8
  * @Author: dayan_hjm 
@@ -15,7 +15,7 @@ import React, { useState, useEffect, Component } from "react";
15
 import styles from "./style.less";
15
 import styles from "./style.less";
16
 import { useHistory, useLocation, withRouter } from "react-router-dom";
16
 import { useHistory, useLocation, withRouter } from "react-router-dom";
17
 import { observer, observable } from "mobx-react";
17
 import { observer, observable } from "mobx-react";
18
-import { message, Space, Form, Popconfirm, Modal, Carousel, Icon, Button } from "antd";
18
+import { message, Space, Form, Popconfirm, Modal, Tooltip, Icon, Button } from "antd";
19
 import mod from './mod';
19
 import mod from './mod';
20
 import { toJS } from "mobx";
20
 import { toJS } from "mobx";
21
 import BottomLineForSend from "./component/bottomLineForSend.jsx";
21
 import BottomLineForSend from "./component/bottomLineForSend.jsx";
@@ -27,6 +27,7 @@ import MapView from "./component/mapView.jsx";
27
 import {
27
 import {
28
   timeService,
28
   timeService,
29
   numberService,
29
   numberService,
30
+  updateTimeService
30
 } from "./api";
31
 } from "./api";
31
 
32
 
32
 import 'animate.css';
33
 import 'animate.css';
@@ -38,21 +39,22 @@ class Home extends Component {
38
     super(props, context);
39
     super(props, context);
39
     this.store = mod;
40
     this.store = mod;
40
     this.state = {
41
     this.state = {
42
+      updateTime: '',
41
       changGif: false,
43
       changGif: false,
42
-      plannedCompletionData:[
43
-        {name:'射洪',value:78.1},
44
-        {name:'广东',value:12},
45
-        {name:'珠海',value:65},
46
-        {name:'潮汕',value:45},
44
+      plannedCompletionData: [
45
+        { name: '射洪', value: 78.1 },
46
+        { name: '广东', value: 12 },
47
+        { name: '珠海', value: 65 },
48
+        { name: '潮汕', value: 45 },
47
       ],
49
       ],
48
-      plannedCompletionNum:1,
49
-      manHourData:[
50
-        {name:'射洪',value:0.2},
51
-        {name:'广东',value:33},
52
-        {name:'珠海',value:65},
53
-        {name:'潮汕',value:65},
50
+      plannedCompletionNum: 1,
51
+      manHourData: [
52
+        { name: '射洪', value: 0.2 },
53
+        { name: '广东', value: 33 },
54
+        { name: '珠海', value: 65 },
55
+        { name: '潮汕', value: 65 },
54
       ],
56
       ],
55
-      manHourNum:1,
57
+      manHourNum: 1,
56
     };
58
     };
57
     this.timer = null //定时器,用于检测同步状态
59
     this.timer = null //定时器,用于检测同步状态
58
   }
60
   }
@@ -61,6 +63,7 @@ class Home extends Component {
61
     this.fontMsgChange();
63
     this.fontMsgChange();
62
     this.getUrl();
64
     this.getUrl();
63
     this.getUrl2()
65
     this.getUrl2()
66
+    this.getUrl3();
64
     setTimeout(() => {
67
     setTimeout(() => {
65
       this.videoStart();
68
       this.videoStart();
66
     }, 200)
69
     }, 200)
@@ -125,81 +128,88 @@ class Home extends Component {
125
 
128
 
126
   }
129
   }
127
 
130
 
128
-  async getUrl(){
129
-    await timeService().then(({ data=[], resultCode }) => {
131
+  async getUrl() {
132
+    await timeService().then(({ data = [], resultCode }) => {
130
       if (+resultCode === 0) {
133
       if (+resultCode === 0) {
131
-        let plannedCompletionData = [],manHourData = [];
132
-        data.map((x,i)=>{
133
-          if(x.indexName == '产量计划完成率'){
134
+        let plannedCompletionData = [], manHourData = [];
135
+        data.map((x, i) => {
136
+          if (x.indexName == '产量计划完成率') {
134
             plannedCompletionData.push({
137
             plannedCompletionData.push({
135
-              name:x.factoryName,
136
-              value:x.indexValue*100,
138
+              name: x.factoryName,
139
+              value: x.indexValue * 100,
137
             })
140
             })
138
-          }else{
141
+          } else {
139
             manHourData.push({
142
             manHourData.push({
140
-              name:x.factoryName,
141
-              value:x.indexValue*100,
143
+              name: x.factoryName,
144
+              value: x.indexValue * 100,
142
             })
145
             })
143
           }
146
           }
144
         });
147
         });
145
-        this.setState({plannedCompletionData,manHourData,plannedCompletionNum:1,manHourNum:1});
148
+        this.setState({ plannedCompletionData, manHourData, plannedCompletionNum: 1, manHourNum: 1 });
146
       }
149
       }
147
     });
150
     });
148
   }
151
   }
149
-  async getUrl2(){
150
-    await numberService().then(({ data=[], resultCode }) => {
152
+  async getUrl2() {
153
+    await numberService().then(({ data = [], resultCode }) => {
151
       if (+resultCode === 0) {
154
       if (+resultCode === 0) {
152
-        let totalValue = 0,yearDecline = 0,yearSend=0,productInventory=0;
153
-        data.map((x,i)=>{
154
-          if(x.indexName == '产值'){
155
+        let totalValue = 0, yearDecline = 0, yearSend = 0, productInventory = 0;
156
+        data.map((x, i) => {
157
+          if (x.indexName == '产值') {
155
             totalValue = x.indexValue
158
             totalValue = x.indexValue
156
-          }else if(x.indexName == '年度产量'){
159
+          } else if (x.indexName == '年度产量') {
157
             yearDecline = x.indexValue
160
             yearDecline = x.indexValue
158
-          }else if(x.indexName == '产品库存'){
161
+          } else if (x.indexName == '产品库存') {
159
             yearSend = x.indexValue
162
             yearSend = x.indexValue
160
-          }else if(x.indexName == '年度产量'){
163
+          } else if (x.indexName == '年度产量') {
161
             productInventory = x.indexValue
164
             productInventory = x.indexValue
162
           }
165
           }
163
         });
166
         });
164
-        this.store.saveState({totalValue,yearDecline,yearSend,productInventory});
167
+        this.store.saveState({ totalValue, yearDecline, yearSend, productInventory });
165
         setTimeout(() => {
168
         setTimeout(() => {
166
           $(".shu1").numScroll();
169
           $(".shu1").numScroll();
167
         }, 2500)
170
         }, 2500)
168
       }
171
       }
169
     });
172
     });
170
   }
173
   }
174
+  async getUrl3() {
175
+    await updateTimeService().then(({ data = [], resultCode }) => {
176
+      if (+resultCode === 0) {
177
+        this.setState({ updateTime: data?.[0]?.etlTime || '' })
178
+      }
179
+    });
180
+  }
171
 
181
 
172
-  componentDidCatch(){
182
+  componentDidCatch() {
173
     clearInterval(this.timer);
183
     clearInterval(this.timer);
174
     this.timer = null;
184
     this.timer = null;
175
   }
185
   }
176
 
186
 
177
-  fontMsgChange(){
187
+  fontMsgChange() {
178
     this.timer = setInterval(() => {
188
     this.timer = setInterval(() => {
179
-      const { plannedCompletionData,plannedCompletionNum,manHourData,manHourNum } = this.state;
189
+      const { plannedCompletionData, plannedCompletionNum, manHourData, manHourNum } = this.state;
180
 
190
 
181
       //产量计划完成率
191
       //产量计划完成率
182
       var p1 = document.getElementById('plannedCompletionBox');
192
       var p1 = document.getElementById('plannedCompletionBox');
183
-      const datas_ = plannedCompletionData[plannedCompletionNum-1];
184
-      var res = '<div class="topMsg_box animate__animated animate__zoomIn"><span class="topMsg_number shu1">' + datas_.value + '</span><span class="topMsg_number_2" style={{fontSize: "0.75em",color: "#fff"}}>%</span><p class="topMsg_number_p">'+datas_.name+'</p></div>';
193
+      const datas_ = plannedCompletionData[plannedCompletionNum - 1];
194
+      var res = '<div class="topMsg_box animate__animated animate__zoomIn"><span class="topMsg_number shu1">' + datas_.value + '</span><span class="topMsg_number_2" style={{fontSize: "0.75em",color: "#fff"}}>%</span><p class="topMsg_number_p">' + datas_.name + '</p></div>';
185
       p1.innerHTML = res;
195
       p1.innerHTML = res;
186
 
196
 
187
       //百万工时损工率
197
       //百万工时损工率
188
       var p2 = document.getElementById('manHourBox');
198
       var p2 = document.getElementById('manHourBox');
189
-      const datas_2 = manHourData[manHourNum-1];
190
-      var res2 = '<div class="topMsg_box animate__animated animate__zoomIn"><span class="topMsg_number shu1">' + datas_2.value + '</span><span class="topMsg_number_2">%</span><p class="topMsg_number_p">'+datas_2.name+'</p></div>';
199
+      const datas_2 = manHourData[manHourNum - 1];
200
+      var res2 = '<div class="topMsg_box animate__animated animate__zoomIn"><span class="topMsg_number shu1">' + datas_2.value + '</span><span class="topMsg_number_2">%</span><p class="topMsg_number_p">' + datas_2.name + '</p></div>';
191
       p2.innerHTML = res2;
201
       p2.innerHTML = res2;
192
 
202
 
193
-      const num_ = plannedCompletionNum+1 >= plannedCompletionData.length ? 1 : plannedCompletionNum+1;
194
-      const num_2 = manHourNum+1 >= manHourData.length ? 1 : manHourNum+1;
195
-      this.setState({plannedCompletionNum:num_,manHourNum:num_2})
203
+      const num_ = plannedCompletionNum + 1 >= plannedCompletionData.length ? 1 : plannedCompletionNum + 1;
204
+      const num_2 = manHourNum + 1 >= manHourData.length ? 1 : manHourNum + 1;
205
+      this.setState({ plannedCompletionNum: num_, manHourNum: num_2 })
196
     }, 4000)
206
     }, 4000)
197
   }
207
   }
198
 
208
 
199
   render() {
209
   render() {
200
     const stores = this.store.state;
210
     const stores = this.store.state;
201
-    const {totalValue,yearDecline,yearSend,productInventory} = this.store.state;
202
-    let { changGif,plannedCompletionData, } = this.state;
211
+    const { totalValue, yearDecline, yearSend, productInventory } = this.store.state;
212
+    let { changGif, updateTime, } = this.state;
203
     return (
213
     return (
204
       <div className={"home_box"}>
214
       <div className={"home_box"}>
205
         {/* 视频播放器 */}
215
         {/* 视频播放器 */}
@@ -212,7 +222,9 @@ class Home extends Component {
212
 
222
 
213
             <div class="topMsg2 animate__animated animate__fadeInDown animate__slower">
223
             <div class="topMsg2 animate__animated animate__fadeInDown animate__slower">
214
               <div className="topMsg">
224
               <div className="topMsg">
215
-                <p className="topMsg_title">总产值</p>
225
+                <Tooltip placement="bottom" title={' ● 从1月至m-1月的产值累计,产值计算方式:销售单价*产量'}>
226
+                  <p className="topMsg_title">总产值</p>
227
+                </Tooltip>
216
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"}>
228
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"}>
217
                   <span className="topMsg_number" class="shu1">{totalValue}</span><span className="topMsg_number_2">万元</span>
229
                   <span className="topMsg_number" class="shu1">{totalValue}</span><span className="topMsg_number_2">万元</span>
218
                 </div>
230
                 </div>
@@ -221,7 +233,9 @@ class Home extends Component {
221
 
233
 
222
             <div class="center_box2 animate__animated animate__fadeInDown animate__slower animate__delay-1s">
234
             <div class="center_box2 animate__animated animate__fadeInDown animate__slower animate__delay-1s">
223
               <div className="center_box">
235
               <div className="center_box">
224
-                <p className="topMsg_title">库存金额</p>
236
+                <Tooltip placement="bottom" title={' ● 即为 t-1天的库存金额,百分比即为产品库存金额占总体金额的百分比'}>
237
+                  <p className="topMsg_title" style={{position: "relative",zIndex: 999999}}>库存金额</p>
238
+                </Tooltip>
225
                 <div className="topMsg_content">
239
                 <div className="topMsg_content">
226
                   <LeftMenoyView></LeftMenoyView>
240
                   <LeftMenoyView></LeftMenoyView>
227
                 </div>
241
                 </div>
@@ -230,7 +244,9 @@ class Home extends Component {
230
 
244
 
231
             <div class="bottomContent2 animate__animated animate__fadeInDown animate__slower animate__delay-1s">
245
             <div class="bottomContent2 animate__animated animate__fadeInDown animate__slower animate__delay-1s">
232
               <div className="bottomContent bigDivPd">
246
               <div className="bottomContent bigDivPd">
233
-                <p className="topMsg_title">月度产量/发货量</p>
247
+                <Tooltip placement="bottom" title={' ● m-6至m月的产量和发货量的对比数据(含外加工)当月的数据计算至t-1天'}>
248
+                  <p className="topMsg_title">月度产量/发货量</p>
249
+                </Tooltip>
234
                 <div className="topMsg_content">
250
                 <div className="topMsg_content">
235
                   <MoodSendView></MoodSendView>
251
                   <MoodSendView></MoodSendView>
236
                 </div>
252
                 </div>
@@ -248,20 +264,26 @@ class Home extends Component {
248
                       <div className="right_li">
264
                       <div className="right_li">
249
                         <span className="topMsg_number" class="shu1">{yearDecline}</span>
265
                         <span className="topMsg_number" class="shu1">{yearDecline}</span>
250
                         <p className="topMsg_line"></p>
266
                         <p className="topMsg_line"></p>
251
-                        <span className="topMsg_tip">年度产量/吨</span>
267
+                        <Tooltip placement="bottom" title={' ● 即为从1/1至t-1天的产量之和(含外加工)'}>
268
+                          <span className="topMsg_tip">年度产量/吨</span>
269
+                        </Tooltip>
252
                       </div>
270
                       </div>
253
                     </div>
271
                     </div>
254
                     <div className="center_li">
272
                     <div className="center_li">
255
                       <div className="right_li">
273
                       <div className="right_li">
256
                         <span className="topMsg_number" class="shu1">{yearSend}</span>
274
                         <span className="topMsg_number" class="shu1">{yearSend}</span>
257
                         <p className="topMsg_line"></p>
275
                         <p className="topMsg_line"></p>
258
-                        <span className="topMsg_tip">年度发货量/吨</span>
276
+                        <Tooltip placement="bottom" title={' ● 即为从当年1/1至t-1天的发货量之和(含外加工)'}>
277
+                          <span className="topMsg_tip">年度发货量/吨</span>
278
+                        </Tooltip>
259
                       </div>
279
                       </div>
260
                     </div>
280
                     </div>
261
                     <div className="center_li">
281
                     <div className="center_li">
262
                       <span className="topMsg_number" class="shu1">{productInventory}</span>
282
                       <span className="topMsg_number" class="shu1">{productInventory}</span>
263
                       <p className="topMsg_line"></p>
283
                       <p className="topMsg_line"></p>
264
-                      <span className="topMsg_tip">产品库存/吨</span>
284
+                      <Tooltip placement="bottom" title={' ● t-1天的产品库存数量(含外加工)'}>
285
+                        <span className="topMsg_tip">产品库存/吨</span>
286
+                      </Tooltip>
265
                     </div>
287
                     </div>
266
                   </div>
288
                   </div>
267
                 </div>
289
                 </div>
@@ -269,7 +291,9 @@ class Home extends Component {
269
             </div>
291
             </div>
270
             <div class="bottomContent3 animate__animated animate__fadeInUp animate__slower">
292
             <div class="bottomContent3 animate__animated animate__fadeInUp animate__slower">
271
               <div className="bottomContent">
293
               <div className="bottomContent">
272
-                <p className="topMsg_title">近30天产量</p>
294
+                <Tooltip placement="bottom" title={' ● t-31 至t-1 天的产量(含外加工)'}>
295
+                  <p className="topMsg_title">近30天产量</p>
296
+                </Tooltip>
273
                 <div className="topMsg_content">
297
                 <div className="topMsg_content">
274
                   <BottomLineForSend></BottomLineForSend>
298
                   <BottomLineForSend></BottomLineForSend>
275
                 </div>
299
                 </div>
@@ -282,7 +306,9 @@ class Home extends Component {
282
           <div className="rightContent">
306
           <div className="rightContent">
283
             <div class="topMsg2 animate__animated animate__fadeInDown animate__slower">
307
             <div class="topMsg2 animate__animated animate__fadeInDown animate__slower">
284
               <div className="topMsg bigDivPd">
308
               <div className="topMsg bigDivPd">
285
-                <p className="topMsg_title">百万工时损工率</p>
309
+                <Tooltip placement="bottom" title={' ● 即为m-1月的百万工时损工率'}>
310
+                  <p className="topMsg_title">百万工时损工率</p>
311
+                </Tooltip>
286
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"} id="manHourBox">
312
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"} id="manHourBox">
287
                   <div className="topMsg_box">
313
                   <div className="topMsg_box">
288
                     <span className="topMsg_number" class="shu1"></span><span className="topMsg_number_2"></span>
314
                     <span className="topMsg_number" class="shu1"></span><span className="topMsg_number_2"></span>
@@ -294,7 +320,10 @@ class Home extends Component {
294
 
320
 
295
             <div class="topMsg_22 animate__animated animate__fadeInDown animate__slower">
321
             <div class="topMsg_22 animate__animated animate__fadeInDown animate__slower">
296
               <div className="topMsg_2">
322
               <div className="topMsg_2">
297
-                <p className="topMsg_title">一次合格率</p>
323
+                <Tooltip placement="bottom" title={' ● m-6至m月\n近六个月的产品一次合格率和目标值合格率;\n当月的数据计算至t-1天'}>
324
+                  <p className="topMsg_title">一次合格率</p>
325
+                </Tooltip>
326
+
298
                 <div className="topMsg_content">
327
                 <div className="topMsg_content">
299
                   <OneQualified></OneQualified>
328
                   <OneQualified></OneQualified>
300
                 </div>
329
                 </div>
@@ -303,7 +332,9 @@ class Home extends Component {
303
 
332
 
304
             <div class="topMsg_33 animate__animated animate__fadeInDown animate__slower animate__delay-1s">
333
             <div class="topMsg_33 animate__animated animate__fadeInDown animate__slower animate__delay-1s">
305
               <div className="topMsg_3">
334
               <div className="topMsg_3">
306
-                <p className="topMsg_title">产量计划完成率</p>
335
+                <Tooltip placement="bottom" title={' ● 即为从当年1月至m-1月的累计产量计划完成率;'}>
336
+                  <p className="topMsg_title">产量计划完成率</p>
337
+                </Tooltip>
307
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"} id="plannedCompletionBox">
338
                 <div className={changGif ? "topMsg_content changBg_topMsg_content" : "topMsg_content"} id="plannedCompletionBox">
308
                   <div className="topMsg_box">
339
                   <div className="topMsg_box">
309
                     <span className="topMsg_number" class="shu1"></span><span className="topMsg_number_2"></span>
340
                     <span className="topMsg_number" class="shu1"></span><span className="topMsg_number_2"></span>
@@ -312,10 +343,12 @@ class Home extends Component {
312
                 </div>
343
                 </div>
313
               </div>
344
               </div>
314
             </div>
345
             </div>
315
-            
346
+
316
             <div class="bottomContent2 animate__animated animate__fadeInDown animate__slower  animate__delay-1s">
347
             <div class="bottomContent2 animate__animated animate__fadeInDown animate__slower  animate__delay-1s">
317
               <div className="bottomContent bigDivPd">
348
               <div className="bottomContent bigDivPd">
318
-                <p className="topMsg_title">碳排放</p>
349
+                <Tooltip placement="bottom" title={' ● 近三年的碳排放强度、碳排放总量数据'}>
350
+                  <p className="topMsg_title">碳排放</p>
351
+                </Tooltip>
319
                 <div className="topMsg_content">
352
                 <div className="topMsg_content">
320
                   <RightBottomView></RightBottomView>
353
                   <RightBottomView></RightBottomView>
321
                 </div>
354
                 </div>
@@ -323,9 +356,9 @@ class Home extends Component {
323
             </div>
356
             </div>
324
           </div>
357
           </div>
325
           <div className="bottom_box">
358
           <div className="bottom_box">
326
-              <p style={{color:"#6a818d"}}>
327
-                更新时间:2023-10-18
328
-              </p>
359
+            <p style={{ color: "#6a818d" }}>
360
+              更新时间 : {updateTime}
361
+            </p>
329
           </div>
362
           </div>
330
 
363
 
331
         </div>
364
         </div>