Browse Source

Merge commit 'c6b03c6ae4eb522a67dd3b3e420938c2fbad9083' into gzb

gzb
guozhongbo 8 months ago
parent
commit
26266d53d3

BIN
public/font/DIN/DIN-Black.otf View File


BIN
public/font/DIN/DIN-Bold.otf View File


BIN
public/font/DIN/DIN-Light.otf View File


BIN
public/font/DIN/DIN-Medium.otf View File


+ 35
- 0
public/font/DIN/index.css View File

1
+/* DIN Black 字体 */
2
+@font-face {
3
+  font-family: "DIN";
4
+  src: url('DIN-Black.otf?t=1713509940151') format('opentype');
5
+  font-weight: 900;
6
+  /* 通常为 Black 字体设置较高的权重值 */
7
+  font-style: normal;
8
+}
9
+
10
+/* DIN Bold 字体 */
11
+@font-face {
12
+  font-family: "DIN";
13
+  src: url('DIN-Bold.otf?t=1713509940151') format('opentype');
14
+  font-weight: bold;
15
+  /* 通常为 Bold 字体设置 bold 权重值 */
16
+  font-style: normal;
17
+}
18
+
19
+/* DIN Light 字体 */
20
+@font-face {
21
+  font-family: "DIN";
22
+  src: url('DIN-Light.otf?t=1713509940151') format('opentype');
23
+  font-weight: normal;
24
+  /* Light 字体通常使用较轻的权重值 */
25
+  font-style: normal;
26
+}
27
+
28
+/* DIN Medium 字体 */
29
+@font-face {
30
+  font-family: "DIN";
31
+  src: url('DIN-Medium.otf?t=1713509940151') format('opentype');
32
+  font-weight: 500;
33
+  /* Medium 字体使用介于正常和粗体之间的权重值 */
34
+  font-style: normal;
35
+}

public/iconfont/demo.css → public/font/iconfont/demo.css View File


public/iconfont/demo_index.html → public/font/iconfont/demo_index.html View File

240
 <pre><code class="language-css"
240
 <pre><code class="language-css"
241
 >@font-face {
241
 >@font-face {
242
   font-family: 'iconfont';
242
   font-family: 'iconfont';
243
-  src: url('iconfont.woff2?t=1713162473058') format('woff2'),
244
-       url('iconfont.woff?t=1713162473058') format('woff'),
245
-       url('iconfont.ttf?t=1713162473058') format('truetype');
243
+  src: url('iconfont.woff2?t=1713509940151') format('woff2'),
244
+       url('iconfont.woff?t=1713509940151') format('woff'),
245
+       url('iconfont.ttf?t=1713509940151') format('truetype');
246
 }
246
 }
247
 </code></pre>
247
 </code></pre>
248
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
248
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>

public/iconfont/iconfont.css → public/font/iconfont/iconfont.css View File

1
 @font-face {
1
 @font-face {
2
   font-family: "iconfont"; /* Project id 4468064 */
2
   font-family: "iconfont"; /* Project id 4468064 */
3
-  src: url('iconfont.woff2?t=1713162473058') format('woff2'),
4
-       url('iconfont.woff?t=1713162473058') format('woff'),
5
-       url('iconfont.ttf?t=1713162473058') format('truetype');
3
+  src: url('iconfont.woff2?t=1713509940151') format('woff2'),
4
+       url('iconfont.woff?t=1713509940151') format('woff'),
5
+       url('iconfont.ttf?t=1713509940151') format('truetype');
6
 }
6
 }
7
 
7
 
8
 .iconfont {
8
 .iconfont {

public/iconfont/iconfont.js → public/font/iconfont/iconfont.js View File


public/iconfont/iconfont.json → public/font/iconfont/iconfont.json View File


BIN
public/iconfont/iconfont.ttf → public/font/iconfont/iconfont.ttf View File


BIN
public/iconfont/iconfont.woff → public/font/iconfont/iconfont.woff View File


BIN
public/font/iconfont/iconfont.woff2 View File


BIN
public/iconfont/iconfont.woff2 View File


+ 2
- 1
public/index.html View File

8
     <meta http-equiv="cache-control" content="no-cache">
8
     <meta http-equiv="cache-control" content="no-cache">
9
     <meta name="viewport" content="width=device-width, user-scalable=no" />
9
     <meta name="viewport" content="width=device-width, user-scalable=no" />
10
     <link rel="stylesheet" href="/librarys/view-design@4.7.0/iview.css">
10
     <link rel="stylesheet" href="/librarys/view-design@4.7.0/iview.css">
11
-    <link rel="stylesheet" href="/iconfont/iconfont.css">
11
+    <link rel="stylesheet" href="/font/iconfont/iconfont.css">
12
+    <link rel="stylesheet" href="/font/DIN/index.css">
12
     <link rel="icon" href="favicon.ico" />
13
     <link rel="icon" href="favicon.ico" />
13
     <title>星火云鸽管控平台</title>
14
     <title>星火云鸽管控平台</title>
14
     <script src="/config.js"></script>
15
     <script src="/config.js"></script>

+ 1
- 1
src/assets/less/common.less View File

8
   position: relative;
8
   position: relative;
9
   width: 100vw;
9
   width: 100vw;
10
   height: 100vh;
10
   height: 100vh;
11
-  font-family: "Microsoft YaHei", "微软雅黑" !important;
11
+  font-family: "DIN" !important;
12
   color: #253a70;
12
   color: #253a70;
13
   font-size: 14px;
13
   font-size: 14px;
14
   -webkit-touch-callout: none;
14
   -webkit-touch-callout: none;

+ 3
- 1
src/utils/index.js View File

733
   3: "锁定",
733
   3: "锁定",
734
   4: "更新策略",
734
   4: "更新策略",
735
   5: "重启设备",
735
   5: "重启设备",
736
-  6: "恢复出厂"
736
+  6: "恢复出厂",
737
+  7: "解除管控",
738
+  8: "解除绑定"
737
 };
739
 };

+ 1
- 1
src/views/platformSection/home/index.vue View File

202
           name: item.areaName.replace(/省|市/g, ""),
202
           name: item.areaName.replace(/省|市/g, ""),
203
           value: item.devicenum,
203
           value: item.devicenum,
204
           numInfo: {
204
           numInfo: {
205
-            schoolnum: item.devicenum,
205
+            schoolnum: item.schoolnum,
206
             usernum: item.usernum,
206
             usernum: item.usernum,
207
             devicenum: item.devicenum
207
             devicenum: item.devicenum
208
           }
208
           }

+ 1
- 1
src/views/regionSection/home/index.vue View File

195
           name: item.areaName.replace(/省|市/g, ""),
195
           name: item.areaName.replace(/省|市/g, ""),
196
           value: item.devicenum,
196
           value: item.devicenum,
197
           numInfo: {
197
           numInfo: {
198
-            schoolnum: item.devicenum,
198
+            schoolnum: item.schoolnum,
199
             usernum: item.usernum,
199
             usernum: item.usernum,
200
             devicenum: item.devicenum
200
             devicenum: item.devicenum
201
           }
201
           }

+ 1
- 0
src/views/schoolSection/applicationStrategy/appStrategyManage.vue View File

525
     justify-content: flex-start;
525
     justify-content: flex-start;
526
     align-items: center;
526
     align-items: center;
527
     flex-wrap: wrap;
527
     flex-wrap: wrap;
528
+    min-height: 30px;
528
     .table_app_item {
529
     .table_app_item {
529
       margin: 10px;
530
       margin: 10px;
530
       .app_top {
531
       .app_top {

+ 1
- 0
src/views/schoolSection/applicationStrategy/appStrategyManageEdit.vue View File

524
     justify-content: flex-start;
524
     justify-content: flex-start;
525
     align-items: center;
525
     align-items: center;
526
     flex-wrap: wrap;
526
     flex-wrap: wrap;
527
+    min-height: 30px;
527
     .table_app_item {
528
     .table_app_item {
528
       margin: 10px;
529
       margin: 10px;
529
       .app_top {
530
       .app_top {

+ 1
- 0
src/views/schoolSection/applicationStrategy/appStrategyTemplateAdd.vue View File

502
     justify-content: flex-start;
502
     justify-content: flex-start;
503
     align-items: center;
503
     align-items: center;
504
     flex-wrap: wrap;
504
     flex-wrap: wrap;
505
+    min-height: 30px;
505
     .table_app_item {
506
     .table_app_item {
506
       margin: 10px;
507
       margin: 10px;
507
       .app_top {
508
       .app_top {

+ 1
- 0
src/views/schoolSection/applicationStrategy/appStrategyTemplateEdit.vue View File

525
     justify-content: flex-start;
525
     justify-content: flex-start;
526
     align-items: center;
526
     align-items: center;
527
     flex-wrap: wrap;
527
     flex-wrap: wrap;
528
+    min-height: 30px;
528
     .table_app_item {
529
     .table_app_item {
529
       margin: 10px;
530
       margin: 10px;
530
       .app_top {
531
       .app_top {

+ 1
- 0
src/views/schoolSection/applicationStrategy/appStrategyTemplateView.vue View File

212
     justify-content: flex-start;
212
     justify-content: flex-start;
213
     align-items: center;
213
     align-items: center;
214
     flex-wrap: wrap;
214
     flex-wrap: wrap;
215
+    min-height: 30px;
215
     .table_app_item {
216
     .table_app_item {
216
       margin: 10px;
217
       margin: 10px;
217
       .app_top {
218
       .app_top {

+ 28
- 13
src/views/schoolSection/home/index.vue View File

42
               class="online_info online_1"
42
               class="online_info online_1"
43
               v-if="onlineDeviceList.length > 0"
43
               v-if="onlineDeviceList.length > 0"
44
             >
44
             >
45
-              <div>
45
+              <div class="online_percent">
46
                 {{
46
                 {{
47
                   onlineDeviceList[0].totalnum > 0
47
                   onlineDeviceList[0].totalnum > 0
48
                     ? Math.floor(
48
                     ? Math.floor(
53
                     : 0
53
                     : 0
54
                 }}%
54
                 }}%
55
               </div>
55
               </div>
56
-              <div>最近1小时</div>
56
+              <div class="online_percent_title">最近1小时</div>
57
               <div class="online_title">
57
               <div class="online_title">
58
                 在线 <span>{{ onlineDeviceList[0].num }}</span>
58
                 在线 <span>{{ onlineDeviceList[0].num }}</span>
59
               </div>
59
               </div>
65
               class="online_info online_2"
65
               class="online_info online_2"
66
               v-if="onlineDeviceList.length > 0"
66
               v-if="onlineDeviceList.length > 0"
67
             >
67
             >
68
-              <div>
68
+              <div class="online_percent">
69
                 {{
69
                 {{
70
                   onlineDeviceList[1].totalnum > 0
70
                   onlineDeviceList[1].totalnum > 0
71
                     ? Math.floor(
71
                     ? Math.floor(
76
                     : 0
76
                     : 0
77
                 }}%
77
                 }}%
78
               </div>
78
               </div>
79
-              <div>最近48小时</div>
79
+              <div class="online_percent_title">最近48小时</div>
80
               <div class="online_title">
80
               <div class="online_title">
81
                 在线 <span>{{ onlineDeviceList[1].num }}</span>
81
                 在线 <span>{{ onlineDeviceList[1].num }}</span>
82
               </div>
82
               </div>
88
               class="online_info online_3"
88
               class="online_info online_3"
89
               v-if="onlineDeviceList.length > 0"
89
               v-if="onlineDeviceList.length > 0"
90
             >
90
             >
91
-              <div>
91
+              <div class="online_percent">
92
                 {{
92
                 {{
93
                   onlineDeviceList[2].totalnum > 0
93
                   onlineDeviceList[2].totalnum > 0
94
                     ? Math.floor(
94
                     ? Math.floor(
99
                     : 0
99
                     : 0
100
                 }}%
100
                 }}%
101
               </div>
101
               </div>
102
-              <div>最近7天</div>
102
+              <div class="online_percent_title">最近7天</div>
103
               <div class="online_title">
103
               <div class="online_title">
104
                 在线 <span>{{ onlineDeviceList[2].num }}</span>
104
                 在线 <span>{{ onlineDeviceList[2].num }}</span>
105
               </div>
105
               </div>
1022
               font-size: 14px;
1022
               font-size: 14px;
1023
               text-align: center;
1023
               text-align: center;
1024
               &.online_1 {
1024
               &.online_1 {
1025
+                padding-top: 130px;
1025
                 color: #339cff;
1026
                 color: #339cff;
1026
-                &:first-child {
1027
-                  padding-top: 140px;
1027
+                .online_percent {
1028
+                  margin-bottom: 10px;
1029
+                  font-weight: bold;
1028
                   font-size: 20px;
1030
                   font-size: 20px;
1029
                 }
1031
                 }
1032
+                .online_percent_title {
1033
+                  font-size: 14px;
1034
+                }
1030
                 span {
1035
                 span {
1031
                   color: #339cff;
1036
                   color: #339cff;
1032
                 }
1037
                 }
1033
               }
1038
               }
1034
               &.online_2 {
1039
               &.online_2 {
1040
+                padding-top: 130px;
1035
                 color: #52c41a;
1041
                 color: #52c41a;
1036
-                &:first-child {
1037
-                  padding-top: 140px;
1042
+                .online_percent {
1043
+                  margin-bottom: 10px;
1044
+                  font-weight: bold;
1038
                   font-size: 20px;
1045
                   font-size: 20px;
1039
                 }
1046
                 }
1047
+                .online_percent_title {
1048
+                  font-size: 14px;
1049
+                }
1040
                 span {
1050
                 span {
1041
                   color: #52c41a;
1051
                   color: #52c41a;
1042
                 }
1052
                 }
1043
               }
1053
               }
1044
               &.online_3 {
1054
               &.online_3 {
1055
+                padding-top: 130px;
1045
                 color: #ed4a99;
1056
                 color: #ed4a99;
1046
-                &:first-child {
1047
-                  padding-top: 140px;
1057
+                .online_percent {
1058
+                  margin-bottom: 10px;
1059
+                  font-weight: bold;
1048
                   font-size: 20px;
1060
                   font-size: 20px;
1049
                 }
1061
                 }
1062
+                .online_percent_title {
1063
+                  font-size: 14px;
1064
+                }
1050
                 span {
1065
                 span {
1051
                   color: #ed4a99;
1066
                   color: #ed4a99;
1052
                 }
1067
                 }
1056
                 bottom: 0;
1071
                 bottom: 0;
1057
                 left: 0;
1072
                 left: 0;
1058
                 right: 0;
1073
                 right: 0;
1059
-                padding-bottom: 20px;
1074
+                padding-bottom: 25px;
1060
                 font-size: 14px;
1075
                 font-size: 14px;
1061
                 text-align: center;
1076
                 text-align: center;
1062
                 color: #798cb5;
1077
                 color: #798cb5;

+ 12
- 1
src/views/schoolSection/log/devicePush.vue View File

25
     <div class="table_wrap">
25
     <div class="table_wrap">
26
       <Table :columns="columns" :data="searchForm.list">
26
       <Table :columns="columns" :data="searchForm.list">
27
         <template slot-scope="{ row }" slot="pushTypeSlot">
27
         <template slot-scope="{ row }" slot="pushTypeSlot">
28
-          <!-- 1发送消息 2解除锁定 3锁定 4更新策略 5重启设备 6恢复出厂 -->
29
           <div>{{ pushTypeInfo[row.pushType] }}</div>
28
           <div>{{ pushTypeInfo[row.pushType] }}</div>
30
         </template>
29
         </template>
30
+        <template slot-scope="{ row }" slot="receivedSlot">
31
+          <div class="action_list">
32
+            <div class="action_success" v-if="row.received === 1">是</div>
33
+            <div class="action_error" v-else-if="row.received === 0">否</div>
34
+          </div>
35
+        </template>
31
       </Table>
36
       </Table>
32
     </div>
37
     </div>
33
     <div class="page_wrap">
38
     <div class="page_wrap">
90
           slot: "pushTypeSlot",
95
           slot: "pushTypeSlot",
91
           align: "center"
96
           align: "center"
92
         },
97
         },
98
+        {
99
+          title: "接收",
100
+          slot: "receivedSlot",
101
+          width: 90,
102
+          align: "center"
103
+        },
93
         {
104
         {
94
           title: "设备号",
105
           title: "设备号",
95
           key: "sn",
106
           key: "sn",

Loading…
Cancel
Save