Commit 8ef228094b590cf2deb67defbce41e0b4313f9ce
1 parent
53424e83
软件下载页面添加.net环境下载
Showing
7 changed files
with
162 additions
and
12 deletions
src/api/apis/apis.js
src/api/urls/apis.js
... | ... | @@ -380,4 +380,6 @@ export default { |
380 | 380 | studentClassLogs: "/api_html/school/manager/studentClassLogs", |
381 | 381 | //修改科目 |
382 | 382 | updateSubject: "/api_html/school/manager/updateSubject", |
383 | + //.net下载地址 | |
384 | + runtimeEnvFileUrl: "/api_html/school/manager/runtimeEnvFileUrl", | |
383 | 385 | } | ... | ... |
src/router/index.js
... | ... | @@ -43,8 +43,7 @@ const SetUpSchool = () => import("@/views/standard/setUp/school") |
43 | 43 | const SetUpTeacher = () => import("@/views/standard/setUp/teacher") |
44 | 44 | const SetUpStudent = () => import("@/views/standard/setUp/student") |
45 | 45 | const ArchivedClazz = () => import("@/views/standard/setUp/archivedClazz") |
46 | -const SetUpClazz = () => import("@/views/standard/setUp/clazz") | |
47 | -const Archived = () => import("@/views/standard/setUp/archived") | |
46 | + | |
48 | 47 | |
49 | 48 | const PersonalAsk = () => import("@/views/personal/ask/index") |
50 | 49 | const PersonalAskAnalysis = () => import("@/views/personal/ask/analysis") |
... | ... | @@ -63,6 +62,13 @@ const AdminAccount = () => import("@/views/admin/account/index") |
63 | 62 | const AdminClientVersion = () => import("@/views/admin/clientVersion/index") |
64 | 63 | |
65 | 64 | /** |
65 | + * v1.4 | |
66 | + */ | |
67 | +const SetUpClazz = () => import("@/views/standard/setUp/clazz") | |
68 | +const Archived = () => import("@/views/standard/setUp/archived") | |
69 | +const DeviceError = () => import("@/views/standard/device/error") | |
70 | + | |
71 | +/** | |
66 | 72 | * 重写路由的push方法 |
67 | 73 | */ |
68 | 74 | const routerPush = Router.prototype.push |
... | ... | @@ -102,6 +108,21 @@ let defaultRouter = [ |
102 | 108 | ] |
103 | 109 | }, |
104 | 110 | { |
111 | + path: "/deviceError", | |
112 | + iconCls: "fa fa-home", // 图标样式class | |
113 | + name: "异常设备信息", | |
114 | + component: Layout, | |
115 | + hidden: true, | |
116 | + children: [ | |
117 | + { | |
118 | + path: "/deviceError", | |
119 | + name: "异常设备信息", | |
120 | + component: DeviceError, | |
121 | + hidden: true | |
122 | + } | |
123 | + ] | |
124 | + }, | |
125 | + { | |
105 | 126 | path: "/userInfo", |
106 | 127 | iconCls: "fa fa-user", // 图标样式class |
107 | 128 | name: "个人信息", |
... | ... | @@ -830,7 +851,7 @@ const addroutersPersonal = [ |
830 | 851 | name: "随堂已归档问报表分析", |
831 | 852 | component: PersonalArchiving, |
832 | 853 | parent: "ask", |
833 | - hidden:true, | |
854 | + hidden: true, | |
834 | 855 | children: [] |
835 | 856 | } |
836 | 857 | ] |
... | ... | @@ -866,7 +887,7 @@ const addroutersPersonal = [ |
866 | 887 | name: "即时已归档测报表分析", |
867 | 888 | component: PersonalTestArchiving, |
868 | 889 | parent: "test", |
869 | - hidden:true, | |
890 | + hidden: true, | |
870 | 891 | children: [] |
871 | 892 | } |
872 | 893 | ... | ... |
src/views/standard/device/error.vue
0 → 100644
1 | +<template> | |
2 | + <div> | |
3 | + <back-box> | |
4 | + <template slot="title"> | |
5 | + <span>异常设备信息</span> | |
6 | + </template> | |
7 | + </back-box> | |
8 | + <div class="page-content"> | |
9 | + <el-table :data="tableData" border style="width: 100%"> | |
10 | + <el-table-column | |
11 | + prop="sn" | |
12 | + label="设备编码" | |
13 | + align="center" | |
14 | + width="160" | |
15 | + ></el-table-column> | |
16 | + <el-table-column | |
17 | + prop="type" | |
18 | + label="设备类型" | |
19 | + align="center" | |
20 | + ></el-table-column> | |
21 | + <el-table-column | |
22 | + prop="operationTime" | |
23 | + label="异常类型" | |
24 | + align="center" | |
25 | + ></el-table-column> | |
26 | + <el-table-column | |
27 | + prop="operationTime" | |
28 | + label="最早发现时间" | |
29 | + align="center" | |
30 | + width="200" | |
31 | + ></el-table-column> | |
32 | + <el-table-column | |
33 | + prop="operationTime" | |
34 | + label="异常后答题次数" | |
35 | + align="center" | |
36 | + ></el-table-column> | |
37 | + <el-table-column | |
38 | + prop="operationTime" | |
39 | + label="状态" | |
40 | + align="center" | |
41 | + ></el-table-column> | |
42 | + <el-table-column label="操作" align="center" width="200" | |
43 | + ><template slot-scope="scoped"> | |
44 | + <el-link>处理</el-link></template | |
45 | + ></el-table-column | |
46 | + > | |
47 | + </el-table> | |
48 | + <div class="pagination-box"> | |
49 | + <el-pagination | |
50 | + small="" | |
51 | + layout="total,prev, pager, next" | |
52 | + :hide-on-single-page="true" | |
53 | + :total="total" | |
54 | + @current-change="changePage" | |
55 | + :current-page="page" | |
56 | + :page-size="size" | |
57 | + > | |
58 | + </el-pagination> | |
59 | + </div> | |
60 | + </div> | |
61 | + </div> | |
62 | +</template> | |
63 | + | |
64 | +<script> | |
65 | +export default { | |
66 | + data() { | |
67 | + return { | |
68 | + tableData: [], | |
69 | + total: 0, | |
70 | + page: 1, | |
71 | + size: 20, | |
72 | + }; | |
73 | + }, | |
74 | + created() { | |
75 | + this._QueryData() | |
76 | + }, | |
77 | + methods: { | |
78 | + changePage(page) { | |
79 | + this.page = page; | |
80 | + this._QueryData(); | |
81 | + }, | |
82 | + async _QueryData() { | |
83 | + this.loading = true; | |
84 | + const { | |
85 | + data = {}, | |
86 | + status, | |
87 | + info, | |
88 | + } = await this.$request.pDeviceLogList({ | |
89 | + page: this.page, | |
90 | + size: this.size, | |
91 | + }); | |
92 | + this.loading = false; | |
93 | + if (status === 0) { | |
94 | + this.tableData = (data?.list && [...data?.list]) || []; | |
95 | + this.total = data.count; | |
96 | + } else { | |
97 | + this.$message.error(info); | |
98 | + } | |
99 | + }, | |
100 | + }, | |
101 | +}; | |
102 | +</script> | |
103 | + | |
104 | +<style lang="scss" scoped> | |
105 | +.page-content { | |
106 | + padding: 20px; | |
107 | +} | |
108 | +</style> | |
0 | 109 | \ No newline at end of file | ... | ... |
src/views/standard/device/index.vue
... | ... | @@ -48,6 +48,11 @@ |
48 | 48 | <el-radio-button :label="3">授课端管理</el-radio-button> |
49 | 49 | </el-radio-group> |
50 | 50 | </div> |
51 | + <p v-show="type == 1" class="error-tips"> | |
52 | + 有{{}}条设备异常信息,<router-link to="/deviceError" | |
53 | + >点击查看>></router-link | |
54 | + > | |
55 | + </p> | |
51 | 56 | <div class="content"> |
52 | 57 | <div v-show="type == 1"> |
53 | 58 | <div class="chart-box" v-if="count"> |
... | ... | @@ -1257,6 +1262,9 @@ export default { |
1257 | 1262 | .down { |
1258 | 1263 | padding: 0 0 16px 20px; |
1259 | 1264 | } |
1265 | +.error-tips{ | |
1266 | + margin-bottom:12px; | |
1267 | +} | |
1260 | 1268 | .content { |
1261 | 1269 | background: #f8f8f8; |
1262 | 1270 | border: 1px solid #e2e2e2; |
... | ... | @@ -1308,7 +1316,7 @@ export default { |
1308 | 1316 | .answer-header { |
1309 | 1317 | padding: 0; |
1310 | 1318 | margin-bottom: 12px; |
1311 | - .upgrade-all{ | |
1319 | + .upgrade-all { | |
1312 | 1320 | display: flex; |
1313 | 1321 | align-items: center; |
1314 | 1322 | } | ... | ... |
src/views/standard/down/index.vue
... | ... | @@ -8,7 +8,7 @@ |
8 | 8 | <div class="page-content"> |
9 | 9 | <div class="down-item"> |
10 | 10 | <p class="txt"> |
11 | - K12公私立学校、高等院校、教育培训机构的课堂互动教学、即时课堂测验 | |
11 | + K12公私立学校、高等院校、教育培训机构的课堂互动教学、即时课堂测验。 | |
12 | 12 | </p> |
13 | 13 | <el-button plan round @click="links">授课端下载</el-button> |
14 | 14 | </div> |
... | ... | @@ -19,7 +19,10 @@ |
19 | 19 | <el-button plan round @click="downCard">发卡软件下载</el-button> |
20 | 20 | </div> |
21 | 21 | <div class="down-item" v-loading="loading"> |
22 | - <p class="txt">。</p> | |
22 | + <p class="txt"> | |
23 | + 电脑缺少.NET Framework环境时,请下载安装.NET Framework | |
24 | + 4.5.2,以便于授课端可正常使用。 | |
25 | + </p> | |
23 | 26 | <el-button plan round @click="downNet">.Net环境下载</el-button> |
24 | 27 | </div> |
25 | 28 | </div> |
... | ... | @@ -65,12 +68,12 @@ export default { |
65 | 68 | async downNet() { |
66 | 69 | if (this.loadingNet == true) return; |
67 | 70 | this.loadingNet = true; |
68 | - const { data, status, info } = await this.$request.latestClickersApp(); | |
71 | + const { data, status, info } = await this.$request.runtimeEnvFileUrl(); | |
69 | 72 | this.loadingNet = false; |
70 | 73 | if (status == 0) { |
71 | 74 | const a = document.createElement("a"); |
72 | - a.href = data.downloadUrl; | |
73 | - a.download = data.appName; | |
75 | + a.href = data; | |
76 | + // a.download = data.appName; | |
74 | 77 | document.body.appendChild(a); |
75 | 78 | a.click(); |
76 | 79 | a.remove(); | ... | ... |
src/views/standard/setUp/school.vue
... | ... | @@ -63,9 +63,9 @@ |
63 | 63 | <div class="grade-box"> |
64 | 64 | <p class="h-title"> |
65 | 65 | 年级管理 |
66 | - <!-- <span v-if="!code" class="popconfirm-box" @click="diaUpgradeGrade = true"> | |
66 | + <span v-if="!code" class="popconfirm-box" @click="diaUpgradeGrade = true"> | |
67 | 67 | 年级升级<i class="fa fa-level-up"></i> |
68 | - </span> --> | |
68 | + </span> | |
69 | 69 | </p> |
70 | 70 | <ul class="grade-info"> |
71 | 71 | <li | ... | ... |