于添 3 месяцев назад
Родитель
Сommit
69ec1c2c74

+ 20 - 0
.env.production49

@@ -0,0 +1,20 @@
+# 生产环境
+NODE_ENV = production
+
+# 标题
+VITE_TITLE = 飞行学院
+
+# 接口地址
+VITE_API_BASEURL = http://10.64.9.49:5007/onlineEduApi
+VITE_FILEURL = http://10.64.9.49:5007/minioapi/education/
+
+# 22地址
+# VITE_API_BASEURL = http://22.120.128.109:19003
+# VITE_FILEURL = http://22.120.128.108:10005/education/
+
+
+# 本地端口
+VITE_PORT = 9000
+
+# 开启设置抽屉
+VITE_SET_DRAWER = false

+ 1 - 0
package.json

@@ -13,6 +13,7 @@
 		"preview": "vite preview",
 		"build": "shx rm -rf dist && vite build --mode production && node scripts/build-zip.cjs",
 		"build245": "shx rm -rf dist && vite build --mode production245 && node scripts/build-zip.cjs",
+		"build49": "shx rm -rf dist && vite build --mode production49 && node scripts/build-zip.cjs",
 		"prod": "vite  --mode production && node scripts/build-zip.cjs"
 	},
 	"dependencies": {

+ 2 - 1
src/utils/newRequest.js

@@ -60,7 +60,8 @@ const error = () => {
 			tool.data.remove('USER_INFO')
 			tool.data.remove('MENU')
 			tool.data.remove('PERMISSIONS')
-			window.location.reload()
+			// window.location.reload()
+			window.location.replace('/login');
 		}
 	})
 }

+ 3 - 2
src/utils/reSourceRequest.js

@@ -1,4 +1,4 @@
- 
+
 // 统一的请求发送
 import axios from 'axios'
 import qs from 'qs'
@@ -61,7 +61,8 @@ const error = () => {
 			tool.data.remove('USER_INFO')
 			tool.data.remove('MENU')
 			tool.data.remove('PERMISSIONS')
-			window.location.reload()
+			// window.location.reload()
+			window.location.replace('/login');
 		}
 	})
 }

+ 3 - 2
src/utils/request.js

@@ -1,4 +1,4 @@
- 
+
 // 统一的请求发送
 import axios from 'axios'
 import qs from 'qs'
@@ -61,7 +61,8 @@ const error = () => {
 			tool.data.remove('USER_INFO')
 			tool.data.remove('MENU')
 			tool.data.remove('PERMISSIONS')
-			window.location.reload()
+			// window.location.reload()
+			window.location.replace('/login');
 		}
 	})
 }

+ 2 - 2
src/views/exm/question/edit/gap-filling.vue

@@ -73,7 +73,7 @@
 					/>
 					<p>
 						<span class="question-item-span">分数:</span>
-						<a-input-number v-model:value="item.score" :precision="1" :step="1" :max="100" />
+						<a-input-number v-model:value="item.score" :precision="1" :step="1" :max="100" :min="0"/>
 					</p>
 				</div>
 			</a-form-item>
@@ -93,7 +93,7 @@
 				/>
 			</a-form-item>
 			<a-form-item v-if="form.bankType !== '2'" label="分数:" name="score" required>
-				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" />
+				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" :min="0"/>
 			</a-form-item>
 			<a-form-item label="难度:" required>
 				<a-rate v-model:value="form.difficult" class="question-item-rate" />

+ 1 - 1
src/views/exm/question/edit/multiple-choice.vue

@@ -91,7 +91,7 @@
 				/>
 			</a-form-item>
 			<a-form-item v-if="form.bankType !== '2'" label="分数:" name="score" required>
-				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" />
+				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" :min="0"/>
 			</a-form-item>
 			<a-form-item label="难度:" required>
 				<a-rate v-model:value="form.difficult" class="question-item-rate" />

+ 1 - 1
src/views/exm/question/edit/short-answer.vue

@@ -84,7 +84,7 @@
 				/>
 			</a-form-item>
 			<a-form-item v-if="form.bankType !== '2'" label="分数:" name="score" required>
-				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" />
+				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" :min="0"/>
 			</a-form-item>
 			<a-form-item label="难度:" required>
 				<a-rate v-model:value="form.difficult" class="question-item-rate" />

+ 1 - 1
src/views/exm/question/edit/single-choice.vue

@@ -91,7 +91,7 @@
 				/>
 			</a-form-item>
 			<a-form-item v-if="form.bankType !== '2'" label="分数:" name="score" required>
-				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" />
+				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" :min="0"/>
 			</a-form-item>
 			<a-form-item label="难度:" required>
 				<a-rate v-model:value="form.difficult" class="question-item-rate" />

+ 1 - 1
src/views/exm/question/edit/true-false.vue

@@ -90,7 +90,7 @@
 				/>
 			</a-form-item>
 			<a-form-item v-if="form.bankType !== '2'" label="分数:" name="score" required>
-				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" />
+				<a-input-number v-model:value="form.score" :precision="1" :step="1" :max="100" :min="0"/>
 			</a-form-item>
 			<a-form-item label="难度:" required>
 				<a-rate v-model:value="form.difficult" class="question-item-rate" />

+ 1 - 1
src/views/notice/index.vue

@@ -90,7 +90,7 @@
 				</a-form-item>
 
 				<a-form-item label="内容" name="content">
-					<a-textarea v-model:value="formData.content" placeholder="请输入公告内容" :rows="6" />
+					<a-textarea v-model:value="formData.content" placeholder="请输入公告内容" :rows="6"  show-count maxLength="500"/>
 				</a-form-item>
 			</a-form>
 		</a-modal>

+ 9 - 5
src/views/statisticalAnalysis/analysisLearningBehaviors/index.vue

@@ -2,8 +2,8 @@
 	<div class="learning-behavior-analysis">
 		<!-- 页面头部 -->
 		<div class="header">
-			<h1>📊 学习行为分析</h1>
-			<p>全面分析学院教学情况和学员学习行为</p>
+			<h1>📊 在线学习统计分析报告</h1>
+			<p>系统不定期生成在线学习统计分析报告</p>
 		</div>
 
 		<!-- 导航标签 -->
@@ -137,7 +137,7 @@
 						</div>
 						<div class="student-stats">
 							<div class="stat-item">
-								<div class="stat-value">{{ (student.finishRate)* 100 }}%</div>
+								<div class="stat-value">{{tool.formatValue(student.finishRate)}}</div>
 								<div class="stat-label">总体进度</div>
 							</div>
 						</div>
@@ -148,9 +148,13 @@
 							<div class="course-name">{{ course.courseName }}</div>
 							<div class="course-stats">
 								<div class="stat-item">
-									<div class="stat-value">{{ (course.finishRate)* 100 }}%</div>
+									<div class="stat-value">{{tool.formatValue(course.finishRate)}}</div>
 									<div class="stat-label">学习进度</div>
 								</div>
+								<div class="stat-item">
+									<div class="stat-value">{{tool.formatValue(course.errorRate)}}</div>
+									<div class="stat-label">错误率</div>
+								</div>
 								<div class="stat-item">
 									<div class="stat-value">{{ course.workRate }}</div>
 									<div class="stat-label">作业完成</div>
@@ -184,7 +188,7 @@
 		searchStudents
 	} from '@/api/statisticalAnalysis/analysisLearningBehaviors'
 	import dayjs from "dayjs";
-
+	import tool from '@/utils/tool'
 	// 当前活动标签
 	const activeTab = ref('college')
 	const times = ref([])