ソースを参照

richtext-bug组件去除

sir lin 3 週間 前
コミット
705225aab0
32 ファイル変更110 行追加69 行削除
  1. 21 16
      examJs/examRequest.js
  2. 3 2
      examJs/examRoute.js
  3. 2 2
      index.html
  4. 1 1
      manifest.json
  5. 66 31
      pages/examPage/examInfo.vue
  6. 4 3
      pages/login/Login.vue
  7. 0 0
      unpackage/dist/build/.automator/h5/.automator.json
  8. BIN
      unpackage/dist/build/web 212.zip
  9. BIN
      unpackage/dist/build/web 66.42.zip
  10. BIN
      unpackage/dist/build/web 添加时间.zip
  11. BIN
      unpackage/dist/build/web 添加时间1.2.zip
  12. BIN
      unpackage/dist/build/web-test1.79.zip
  13. 0 0
      unpackage/dist/build/web/assets/Login-BeCzz2k7.css
  14. 0 1
      unpackage/dist/build/web/assets/Login-Ch2gYF6t.css
  15. 0 0
      unpackage/dist/build/web/assets/Login.vue_vue_type_style_index_0_scoped_9f3de52b_lang.BX9TobLa.js
  16. 0 0
      unpackage/dist/build/web/assets/examInfo-C8F9GqIJ.css
  17. 0 0
      unpackage/dist/build/web/assets/examRoute-BM-KnUci.css
  18. 1 1
      unpackage/dist/build/web/assets/index-C3Q1cdHf.js
  19. 0 0
      unpackage/dist/build/web/assets/index-Dmo_aJ9j.css
  20. 0 0
      unpackage/dist/build/web/assets/index.AsuR1xI5.js
  21. 0 0
      unpackage/dist/build/web/assets/index.Crn1nDI9.js
  22. 0 0
      unpackage/dist/build/web/assets/pages-examPage-examInfo.CZYV951n.js
  23. 0 0
      unpackage/dist/build/web/assets/pages-examPage-examInfo.DYFRrd1Q.js
  24. 0 0
      unpackage/dist/build/web/assets/pages-examPage-examStart.DcSYvgWC.js
  25. 0 0
      unpackage/dist/build/web/assets/pages-examPage-examStart.TmWr67iT.js
  26. 0 0
      unpackage/dist/build/web/assets/pages-login-Login.D9147N0V.js
  27. 0 0
      unpackage/dist/build/web/assets/pages-login-Login.DUrpTFou.js
  28. 4 4
      unpackage/dist/build/web/index.html
  29. BIN
      unpackage/dist/build/web119.188.66.42.zip
  30. 5 5
      unpackage/dist/cache/.vite/deps/_metadata.json
  31. 2 2
      unpackage/dist/cache/.vite/deps/js-md5.js
  32. 1 1
      unpackage/dist/cache/.vite/deps/screenfull.js

+ 21 - 16
examJs/examRequest.js

@@ -1,10 +1,15 @@
+import LoginVue from "../pages/login/Login.vue";
 import signMd5Utils from "./signMd5Utils";
 
-export const sysIp ='202.194.98.212'
-export const sysPort ='8080'
+// export const sysIp = '127.0.0.1'
+export const sysIp ='119.188.66.42'
+// export const sysIp ='202.194.98.212'
+export const sysPort ='8081'
+// export const sysPort = '8080'
 
-export const minioIP ='202.194.98.212'
-export const minioPort ='9000'
+//minio弃用
+export const minioIP = '202.194.98.212'
+export const minioPort = '9000'
 
 
 // 获取用户考试详情
@@ -52,28 +57,28 @@ export function submitExamPaper(data) {
 
 // 访问后端接口
 export function request(url, requestType, requestData) {
-	if(url!=="/exam-boot/exam/cacheExamPaperAnswer"){
+	if (url !== "/exam-boot/exam/cacheExamPaperAnswer") {
 		uni.showLoading({
 			title: '加载中...',
 			mask: true,
 		});
 	}
-	
+
 	let request;
 	if (url === "/exam-boot/sys/login") {
 
 		sessionStorage.setItem('sign', signMd5Utils.getSign(url, requestData));
 		request = uni.request({
-			url: "http://"+sysIp+":"+sysPort+"" + url,
+			url: "http://" + sysIp + ":" + sysPort + url,
 			method: requestType,
 			data: requestData
-		}).finally(()=>{
-		uni.hideLoading();
-		uni.stopPullDownRefresh()
-	})
+		}).finally(() => {
+			uni.hideLoading();
+			uni.stopPullDownRefresh()
+		})
 	} else {
 		request = uni.request({
-			url: "http://"+sysIp+":"+sysPort+"" + url,
+			url: "http://" + sysIp + ":" + sysPort + url,
 			method: requestType,
 			header: {
 				"x-access-token": sessionStorage.getItem("token"),
@@ -98,10 +103,10 @@ export function request(url, requestType, requestData) {
 				return date
 			}
 
-		}).finally(()=>{
-		uni.hideLoading();
-		uni.stopPullDownRefresh()
-	})
+		}).finally(() => {
+			uni.hideLoading();
+			uni.stopPullDownRefresh()
+		})
 	}
 
 	return request

+ 3 - 2
examJs/examRoute.js

@@ -1,16 +1,17 @@
 import { exit } from "./examRequest";
 // 前端页面跳转
 export function redirectTo(toUrl) {
+	console.log(toUrl);
 	let user = sessionStorage.getItem("user")
 	let token = sessionStorage.getItem("token")
 	if (user === null || token === null) {
 		exit()
-	} else if (toUrl != undefined) {
+	} else if (toUrl!= undefined) {
 		uni.redirectTo({
 			url: toUrl // 关闭当前页面,跳转到对应路径的页面
 		});
 	} else {
-		console.log("跳转失败");
+		console.log("跳转失败或无需跳转");
 	}
 }
 

+ 2 - 2
index.html

@@ -2,7 +2,7 @@
 <html lang="ZH_cn">
 	<head>
 		<meta charset="UTF-8" />
-		<script type="text/javascript" src="js/jquery.js"></script>
+		
 		<script>
 			var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
 				CSS.supports('top: constant(a)'))
@@ -29,7 +29,7 @@
 
 
 		// 禁用整个页面的鼠标右键
-		document.addEventListener('contextmenu', function(event) {
+		document.getElementById('body').addEventListener('contextmenu', function(event) {
 			event.preventDefault();
 		});
 	</script>

+ 1 - 1
manifest.json

@@ -1,5 +1,5 @@
 {
-    "name" : "exam_student",
+    "name" : "exam_exam",
     "appid" : "__UNI__E57431D",
     "description" : "",
     "versionName" : "1.0.0",

+ 66 - 31
pages/examPage/examInfo.vue

@@ -29,13 +29,13 @@
 					</uni-col>
 				</uni-row>
 				<uni-row>
-				
+
 				</uni-row>
 			</uni-card>
-	<view style="text-align: center;width: 300px;margin: auto;">
-						<button type="primary" @click="infoExit()" v-if="exams.length===0&&!enter">退出
-						</button>
-					</view>
+			<view style="text-align: center;width: 300px;margin: auto;">
+				<button type="primary" @click="infoExit()" v-if="exams.length===0&&!enter">退出
+				</button>
+			</view>
 			<view v-if="!enter" v-for="o in exams" :key="o">
 				<uni-card style="background-color:#f0fff3; " class="box-card" v-if="o.state==0&&exams.length>1">
 					<uni-row class="allceter">
@@ -49,6 +49,12 @@
 							<button v-if="o.tryCount<o.limitCount" type="primary" @click="enterExam(o.id)">进入考试</button>
 						</uni-col>
 					</uni-row>
+					<l-divider color="#0e7020"></l-divider>
+					<uni-row>
+						<view style="font-size: 10px;color: #0e7020;">
+							<strong>考试时间为: </strong>{{o.startTime}}--{{o.endTime}}
+						</view>
+					</uni-row>
 				</uni-card>
 				<uni-card style="background-color:#6a0001;" class="box-card" v-if="o.state==1&&exams.length>1">
 					<uni-row class="allceter">
@@ -62,6 +68,12 @@
 							<!-- <button type="primary" @click="enterExam(o.id)">进入考试</button> -->
 						</uni-col>
 					</uni-row>
+					<l-divider />
+					<uni-row>
+						<view style="font-size: 10px;color: #6a0001;">
+							<strong>考试时间为: </strong>{{o.startTime}}--{{o.endTime}}
+						</view>
+					</uni-row>
 				</uni-card>
 				<uni-card style="background-color:#e6f7ff;" class="box-card" v-if="o.state==2&&exams.length>1">
 					<uni-row class="allceter">
@@ -75,6 +87,12 @@
 							<!-- <button type="primary" @click="enterExam(o.id)">进入考试</button> -->
 						</uni-col>
 					</uni-row>
+					<l-divider />
+					<uni-row>
+						<view style="font-size: 10px;color: #7a5324;">
+							<strong>考试时间为: </strong>{{o.startTime}}--{{o.endTime}}
+						</view>
+					</uni-row>
 				</uni-card>
 				<uni-card style="background-color:#e3e3e3;" class="box-card" v-if="o.state==3&&exams.length>1">
 					<uni-row class="allceter">
@@ -88,15 +106,22 @@
 							<!-- <button type="primary" @click="enterExam(o.id)">进入考试</button> -->
 						</uni-col>
 					</uni-row>
+					<l-divider />
+					<uni-row>
+						<view style="font-size: 10px;color: #000000;">
+							<strong>考试时间为: </strong>{{o.startTime}}--{{o.endTime}}
+						</view>
+					</uni-row>
 				</uni-card>
 			</view>
 		</uni-section>
-		<uni-section v-if="exams.length===1||enter">
+		<uni-section v-show="exams.length===1||enter">
 			<uni-card :is-shadow="false">
 				<!-- <view style="padding-top: 30px;text-align: center;">
 					<h1>考试须知</h1>
 				</view> -->
-				<view  style="width: 100%;text-align: center;margin-bottom: 20px;padding-top:30px ;padding-bottom: 15px;">
+				<view
+					style="width: 100%;text-align: center;margin-bottom: 20px;padding-top:30px ;padding-bottom: 15px;">
 					<h1>{{ exam.title }}</h1>
 				</view>
 				<l-divider color="#adadad">
@@ -106,9 +131,7 @@
 				</l-divider>
 				<view class="text" style="width: 100%;text-align: center;padding: 15px;">
 					<view>
-						<view class="userInfo">
-							<view>当前考试:<strong>{{ exam.title }}</strong></view>
-						</view>
+
 						<view class="userInfo">
 							<view>考生号:<strong>{{ user.username }}</strong></view>
 						</view>
@@ -128,16 +151,28 @@
 						<h2>考试须知</h2>
 					</strong>
 				</l-divider>
+				<view style="text-align: center;margin-bottom: 10px;color: #1d5b9d;">
+					{{'考试时间:'+exam.startTime+'———'+exam.endTime}}
+				</view>
 				<view class="text">
 
-					<view style="width: 70vh; margin: auto;font-size: 16px;">
-						<rich-text :nodes="exam.message"></rich-text>
+					<view id="examMessage" style="width: 70vh; margin: auto;font-size: 16px;">
+
+
+						<!-- <rich-text :nodes="exam.message"></rich-text> -->
 					</view>
 				</view>
-				<button type="primary" style="margin-top: 50px" @click="examStart(exam.id)">开始考试</button>
+				<button v-if="exam.state===0" type="primary" style="margin-top: 50px"
+					@click="examStart(exam.id)">开始考试</button>
+				<button v-else type="default" style="margin-top: 50px" disabled="true">未在考试时间</button>
+				<view style="text-align: center;margin: auto;margin-top: 30px;">
+					<button type="primary" @click="infoExit()" v-if="exams.length===1">退出
+					</button>
+				</view>
 				<button v-if="exams.length>1&&enter" style="margin-top: 30px;" @click="enter=!enter">返回
 				</button>
-			</uni-card >
+
+			</uni-card>
 		</uni-section>
 	</view>
 	<view style="width: 80vh;margin: auto;padding-bottom: 30px;">
@@ -146,13 +181,13 @@
 			</button>
 		</view>
 	</view>
-<uni-popup ref="inputDialog" type="dialog">
-		<uni-popup-dialog style="width: 50vh;" ref="inputClose" title="考生信息" >
-			<view >
+	<uni-popup ref="inputDialog" type="dialog">
+		<uni-popup-dialog style="width: 50vh;" ref="inputClose" title="考生信息">
+			<view>
 				<view style="text-align: center;"><strong>姓名:</strong><strong>{{ user.realname }}</strong></view>
 				<view></view>
 				<view style="text-align: center;"><strong>考号:</strong><strong>{{ user.username }}</strong></view>
-				<view></view>				
+				<view></view>
 			</view>
 		</uni-popup-dialog>
 	</uni-popup>
@@ -161,8 +196,6 @@
 <script>
 	import {
 		exit,
-		request,
-
 		getExamCreateExam,
 		getExamOnlineExam,
 		getExamQueryById,
@@ -179,7 +212,9 @@
 		data() {
 			return {
 				isLoading: true,
-				exams: [],
+				exams: [{
+					id: 1
+				}],
 				enter: false,
 				exam: {
 					id: 1,
@@ -196,9 +231,7 @@
 			}
 		},
 		mounted() {
-	
-			
-			if(window.screen.width<1024||window.screen.height<768){
+			if (window.screen.width < 1024 || window.screen.height < 768) {
 				window.alert("当前设备屏幕分辨率过低!请更换设备")
 				exit()
 				return;
@@ -216,11 +249,12 @@
 				if (this.exams.length === 1) {
 					this.enterExam(this.exams[0].id)
 				}
-this.$refs.inputDialog.open()
+				this.$refs.inputDialog.open()
 			}).catch(xhr => {
 				console.log(xhr);
 			});
 
+
 		},
 
 		methods: {
@@ -232,7 +266,8 @@ this.$refs.inputDialog.open()
 					console.log(data)
 					this.exam = data.data.result
 					console.log(this.exam);
-				
+
+					document.getElementById('examMessage').innerHTML = this.exam.message
 					this.enter = !this.enter
 
 				}).catch(xhr => {
@@ -268,12 +303,12 @@ this.$refs.inputDialog.open()
 							toExamStart()
 						})
 					} else {
-						this.messageToggle('warn',"你有正在进行中的考试,正在跳转......")
+						this.messageToggle('warn', "你有正在进行中的考试,正在跳转......")
 						sessionStorage.setItem("examId", dataList.data.result.id)
-						setTimeout(()=>{
+						setTimeout(() => {
 							toExamStart()
-						},2000)
-						
+						}, 2000)
+
 					}
 
 				})
@@ -307,7 +342,7 @@ this.$refs.inputDialog.open()
 	.box-card {
 		margin: 20px auto auto;
 		width: 100%;
-		height: 70px;
+		height: 110px;
 	}
 
 	.allceter {

+ 4 - 3
pages/login/Login.vue

@@ -57,8 +57,6 @@
 		getSysLogin,
 		sysIp,
 		sysPort,
-		minioIP,
-		minioPort,
 		request,
 	} from '../../examJs/examRequest';
 	import {
@@ -102,10 +100,13 @@
 						username: this.form.name,
 						t: Date.now()
 					}).then(data => {
-
+console.log(data);
 						if (data.data.code === 200) {
+							console.log(data);
 							this.messageToggle('success', data.data.message)
+							console.log(data);
 							sessionStorage.setItem("token", data.data.result.token)
+							console.log(data);
 							let user = JSON.stringify(data.data.result.userInfo)
 							sessionStorage.removeItem("user")
 							sessionStorage.setItem("user", user)

+ 0 - 0
unpackage/dist/build/.automator/h5/.automator.json


BIN
unpackage/dist/build/web 212.zip


BIN
unpackage/dist/build/web 66.42.zip


BIN
unpackage/dist/build/web 添加时间.zip


BIN
unpackage/dist/build/web 添加时间1.2.zip


BIN
unpackage/dist/build/web-test1.79.zip


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/Login-BeCzz2k7.css


+ 0 - 1
unpackage/dist/build/web/assets/Login-Ch2gYF6t.css

@@ -1 +0,0 @@
-.uni-link[data-v-44511933]{cursor:pointer}.uni-link--withline[data-v-44511933]{text-decoration:underline}.uni-input[data-v-2a4a492e]{padding-left:20px;border:.03125rem solid #EEEEEE;height:50px;box-shadow:2px 2px 5px #aaa;margin:auto;margin-top:25vh;color:#000;width:380px;display:flex;justify-content:center;align-items:center}.content[data-v-2a4a492e]{display:flex;flex-direction:column;align-items:center;justify-content:center}.logo[data-v-2a4a492e]{height:6.25rem;width:6.25rem;margin-top:6.25rem;margin-left:auto;margin-right:auto;margin-bottom:1.5625rem}.text-area[data-v-2a4a492e]{display:flex;justify-content:center}.title[data-v-2a4a492e]{font-family:微软雅黑,serif;font-size:40px;color:#000;width:600px;text-align:center;margin:0 auto}

ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/Login.vue_vue_type_style_index_0_scoped_9f3de52b_lang.BX9TobLa.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/examInfo-C8F9GqIJ.css


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/examRoute-BM-KnUci.css


ファイルの差分が大きいため隠しています
+ 1 - 1
unpackage/dist/build/web/assets/index-C3Q1cdHf.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/index-Dmo_aJ9j.css


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/index.AsuR1xI5.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/index.Crn1nDI9.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/pages-examPage-examInfo.CZYV951n.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/pages-examPage-examInfo.DYFRrd1Q.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/pages-examPage-examStart.DcSYvgWC.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/pages-examPage-examStart.TmWr67iT.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/pages-login-Login.D9147N0V.js


ファイルの差分が大きいため隠しています
+ 0 - 0
unpackage/dist/build/web/assets/pages-login-Login.DUrpTFou.js


+ 4 - 4
unpackage/dist/build/web/index.html

@@ -4,7 +4,7 @@
 		<link rel="stylesheet" href="/assets/uni.3ef97f2b.css">
 
 		<meta charset="UTF-8" />
-		<script type="text/javascript" src="js/jquery.js"></script>
+		
 		<script>
 			var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
 				CSS.supports('top: constant(a)'))
@@ -12,7 +12,7 @@
 				'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
 				(coverSupport ? ', viewport-fit=cover' : '') + '" />')
 		</script>
-		<title>exam_student</title>
+		<title>exam_exam</title>
 		<style>
 			img {
 				-webkit-user-drag: none;
@@ -21,7 +21,7 @@
 				user-drag: none;
 			}
 		</style>
-		<script type="module" crossorigin src="/assets/index-Cf1pphHj.js"></script>
+		<script type="module" crossorigin src="/assets/index-C3Q1cdHf.js"></script>
 		<link rel="stylesheet" crossorigin href="/assets/index-BgCuxJG8.css">
 	</head>
 	<body id="body">
@@ -32,7 +32,7 @@
 
 
 		// 禁用整个页面的鼠标右键
-		document.addEventListener('contextmenu', function(event) {
+		document.getElementById('body').addEventListener('contextmenu', function(event) {
 			event.preventDefault();
 		});
 	</script>

BIN
unpackage/dist/build/web119.188.66.42.zip


+ 5 - 5
unpackage/dist/cache/.vite/deps/_metadata.json

@@ -1,19 +1,19 @@
 {
-  "hash": "6640036c",
-  "configHash": "fcc07eab",
+  "hash": "78e4a103",
+  "configHash": "a51dbbca",
   "lockfileHash": "802ead94",
-  "browserHash": "8eb811ea",
+  "browserHash": "c414d4eb",
   "optimized": {
     "js-md5": {
       "src": "../../../../../node_modules/js-md5/src/md5.js",
       "file": "js-md5.js",
-      "fileHash": "64faeb14",
+      "fileHash": "94753bb7",
       "needsInterop": true
     },
     "screenfull": {
       "src": "../../../../../node_modules/screenfull/index.js",
       "file": "screenfull.js",
-      "fileHash": "ed8b1b38",
+      "fileHash": "8aa14f36",
       "needsInterop": false
     }
   },

+ 2 - 2
unpackage/dist/cache/.vite/deps/js-md5.js

@@ -28,9 +28,9 @@ var require_buffer = __commonJS({
   }
 });
 
-// G:/test/exam_exam/node_modules/js-md5/src/md5.js
+// F:/test/exam_exam/node_modules/js-md5/src/md5.js
 var require_md5 = __commonJS({
-  "G:/test/exam_exam/node_modules/js-md5/src/md5.js"(exports, module) {
+  "F:/test/exam_exam/node_modules/js-md5/src/md5.js"(exports, module) {
     (function() {
       "use strict";
       var INPUT_ERROR = "input is invalid type";

+ 1 - 1
unpackage/dist/cache/.vite/deps/screenfull.js

@@ -1,6 +1,6 @@
 import "./chunk-Y2F7D3TJ.js";
 
-// G:/test/exam_exam/node_modules/screenfull/index.js
+// F:/test/exam_exam/node_modules/screenfull/index.js
 var methodMap = [
   [
     "requestFullscreen",

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません