Yansen 2 years ago
parent
commit
d54ebf1708

+ 1
- 1
config/routes.js View File

@@ -35,7 +35,7 @@ export default [
35 35
   {
36 36
     path: '/MonitoringScreen2',
37 37
     layout: false,
38
-    name: '数据大屏2',
38
+    name: '作业大屏',
39 39
     icon: 'DesktopOutlined',
40 40
     component: './MonitoringScreen2',
41 41
     access: 'screen',

+ 1
- 1
src/components/ScreenBox/ScreenHeader/index.jsx View File

@@ -6,7 +6,7 @@ export default (props) => {
6 6
   return (
7 7
     <div className={Styles['screen-header-box']}>
8 8
       <div className={Styles['screen-header-left']}>
9
-        <div>数据概览</div>
9
+        <div>{props.title || '数据概览'}</div>
10 10
       </div>
11 11
       <div className={Styles['screen-header-left']}>
12 12
         <Clock className={Styles['clock-date']} />

+ 11
- 6
src/pages/MonitoringScreen2/components/Banner.jsx View File

@@ -1,13 +1,13 @@
1 1
 import React from 'react';
2 2
 import StatisCard from '@/components/ScreenBox/StatisCard';
3
-import { getBasic } from '@/services/monitoringScreen';
3
+import { getDeviceStatis } from '@/services/monitoringScreen';
4 4
 
5 5
 export default (props) => {
6 6
   const [basic, setBasic] = React.useState();
7 7
 
8 8
   React.useEffect(() => {
9 9
     //顶部基本数据
10
-    getBasic()
10
+    getDeviceStatis()
11 11
       .then((res) => {
12 12
         var data = {};
13 13
         for (let i = 0; i < res.length; i++) {
@@ -32,11 +32,16 @@ export default (props) => {
32 32
       <StatisCard
33 33
         color="#0BDAFF"
34 34
         icon="icon2"
35
-        value={basic?.totalMachineryUsed}
36
-        title="农机使用数(台)"
35
+        value={basic?.totalDeviceNum}
36
+        title="设备总数(台)"
37 37
       />
38
-      <StatisCard color="#F5CC5C" icon="icon3" value={basic?.totalOrderNum} title="总预约数" />
39
-      <StatisCard color="#C579FF" icon="icon4" value={basic?.totalServiceNum} title="总服务数" />
38
+      <StatisCard
39
+        color="#F5CC5C"
40
+        icon="icon3"
41
+        value={basic?.totalOnlineDeviceNum}
42
+        title="在线设备(台)"
43
+      />
44
+      <StatisCard color="#C579FF" icon="icon4" value={basic?.totalAreaNum} title="作业面积(亩)" />
40 45
     </>
41 46
   );
42 47
 };

+ 1
- 1
src/pages/MonitoringScreen2/components/MachineryInfo.jsx View File

@@ -36,7 +36,7 @@ export default React.forwardRef((props, ref) => {
36 36
       </Row>
37 37
       <Row gutter={16}>
38 38
         <Col span={8}>位置信息</Col>
39
-        <Col span={16}>{data.loc || ''}</Col>
39
+        <Col span={16}>{data.address || ''}</Col>
40 40
       </Row>
41 41
     </div>
42 42
   );

+ 2
- 33
src/pages/MonitoringScreen2/index.jsx View File

@@ -75,38 +75,7 @@ export default (props) => {
75 75
   useEffect(() => {
76 76
     const params = deviceType ? { deviceType } : undefined;
77 77
     getDeviceMachineryList(params).then((res) => {
78
-      const locIds = [];
79
-      const locList = [];
80
-      const list = res || [];
81
-
82
-      for (let item of list) {
83
-        if (item.location && item.location.indexOf('0.0') === -1) {
84
-          locIds.push(item.machineryId);
85
-          locList.push(item.location);
86
-        }
87
-      }
88
-
89
-      if (locList.length > 0) {
90
-        // 高德接口, 请求地址的描述
91
-        regeo({ location: locList.join('|') })
92
-          .then((regs) => {
93
-            if (regs.status === '1') {
94
-              regs.regeocodes.forEach((addrs, inx) => {
95
-                const addr = addrs['formatted_address'];
96
-                const addressComponent = addrs.addressComponent;
97
-                const machine = list.filter((x) => x.machineryId === locIds[inx])[0];
98
-                machine.loc = addr.replace(addressComponent.province, ''); // 去掉省
99
-              });
100
-            }
101
-
102
-            setMachines(list);
103
-          })
104
-          .catch((er) => {
105
-            console.error(er);
106
-
107
-            setMachines(list);
108
-          });
109
-      }
78
+      setMachines(res || []);
110 79
     });
111 80
   }, [deviceType]);
112 81
 
@@ -135,7 +104,7 @@ export default (props) => {
135 104
       <div id={Styles['particles-js']} />
136 105
       <div className={Styles['grail-layout']}>
137 106
         <div className={Styles['grail-header']}>
138
-          <ScreenHeader weather={weather} />
107
+          <ScreenHeader title="作业监管" weather={weather} />
139 108
         </div>
140 109
         <div className={classNames(Styles['grail-container'], Styles['mg-tp-30'])}>
141 110
           <div className={classNames(Styles['grail-content'], Styles['pd-lr-40'])}>

+ 6
- 0
src/services/monitoringScreen.js View File

@@ -65,3 +65,9 @@ export const getMessageList = (params) => request('/screen-data/message', { para
65 65
  */
66 66
 export const getDeviceMachineryList = (params) =>
67 67
   request('/screen-data/machinery-device', { params });
68
+
69
+/**
70
+ *  获取设备统计数据
71
+ * @returns
72
+ */
73
+export const getDeviceStatis = () => request('/screen-data/device-basic');