Jelajahi Sumber

新增下级最大成绩和平均成绩

zhangyujun 3 tahun lalu
induk
melakukan
d45e7aa469
2 mengubah file dengan 56 tambahan dan 44 penghapusan
  1. 13 0
      src/api/modules/testScores.ts
  2. 43 44
      src/views/studentScore/index.vue

+ 13 - 0
src/api/modules/testScores.ts

@@ -1,3 +1,4 @@
+import { AxiosPromise, AxiosResponse } from "axios";
 import request from "../request";
 
 /**
@@ -39,6 +40,18 @@ export const getScoreInfoByUserId = async (params: {
   return res.data;
 };
 
+
+export const getScoreInfoAllByUserId = async (params: {
+  userId: number
+}) => {
+  let res = await request({
+    url: "/student/score/info/getScoreInfoAllByUserId",
+    params
+  });
+
+  return res.data;
+
+}
 interface TestScores {
   kskm: string;
   score: number;

+ 43 - 44
src/views/studentScore/index.vue

@@ -5,7 +5,7 @@
 			<div class="left">
 				<img class="user-avatar" :src="headImage" />
 				<div class="name">
-						<span class="user-name">{{ nickName }}</span>
+					<span class="user-name">{{ nickName }}</span>
 					<span
 						>最高成绩<span class="grade">{{ maxScore }}</span
 						>分</span
@@ -21,29 +21,29 @@
       /> -->
 		</div>
 	</div>
-	<!-- <div class="summary content-box">
-    <div class="item">
-      <div>
-        <span class="number">{{ testScoresList.length }}</span
-        >次
-      </div>
-      <div>考试次数</div>
-    </div>
-    <div class="item">
-      <div>
-        <span class="number">{{ testScoresInfo.avgScore }}</span
-        >分
-      </div>
-      <div>平均成绩</div>
-    </div>
-    <div class="item">
-      <div>
-        <span class="number">{{ testScoresInfo.forecastScore }}</span
-        >分
-      </div>
-      <div>成绩预测</div>
-    </div>
-  </div> -->
+	<div class="summary content-box">
+		<div class="item">
+			<div>
+				<span class="number">{{ testScoresList.length }}</span
+				>次
+			</div>
+			<div>考试次数</div>
+		</div>
+		<div class="item">
+			<div>
+				<span class="number">{{ testScoresInfo.avgScore }}</span
+				>分
+			</div>
+			<div>平均成绩</div>
+		</div>
+		<div class="item">
+			<div>
+				<span class="number">{{ testScoresInfo.forecastScore }}</span
+				>分
+			</div>
+			<div>成绩预测</div>
+		</div>
+	</div>
 	<div class="test-scores content-box">
 		<table class="table">
 			<tr>
@@ -63,7 +63,7 @@
 </template>
 
 <script lang="ts">
-import { getTestScoresList, getTestScoresInfo, getScoreInfoByUserId } from "@/api";
+import { getTestScoresList, getTestScoresInfo, getScoreInfoByUserId, getScoreInfoAllByUserId } from "@/api";
 import { ref, onBeforeMount } from "vue";
 import { RouterBus } from "@/hooks";
 import { useRoute } from "vue-router";
@@ -91,25 +91,22 @@ function GetQueryString(name: string) {
 
 const useTestScoresList = () => {
 	const testScoresList = ref<TestScores[]>([]);
-  let maxScore =ref(0)
+	let maxScore = ref(0);
 	onBeforeMount(async () => {
 		let res = await getScoreInfoByUserId({
-			userId: Number(GetQueryString("id")||""),
-   
-      
+			userId: Number(GetQueryString("id") || ""),
 		});
 		testScoresList.value = res.data;
-    
-     res.data.forEach((item: { score: any; })=>{
-       if(Number(item.score)>maxScore.value){
-         maxScore.value=Number(item.score)
-       }
-      
-    })
+
+		res.data.forEach((item: { score: any }) => {
+			if (Number(item.score) > maxScore.value) {
+				maxScore.value = Number(item.score);
+			}
+		});
 	});
 	return {
 		testScoresList,
-    maxScore
+		maxScore,
 	};
 };
 /**
@@ -130,7 +127,9 @@ const useTestScoresInfo = () => {
 		maxScore: 0,
 	});
 	onBeforeMount(async () => {
-		let res = await getTestScoresInfo();
+		let res = await getScoreInfoAllByUserId({
+			userId: Number(GetQueryString("id") || ""),
+		});
 		testScoresInfo.value = res.data;
 	});
 	return {
@@ -140,18 +139,18 @@ const useTestScoresInfo = () => {
 </script>
 
 <script lang="ts" setup>
-const { testScoresList,maxScore } = useTestScoresList();
+const { testScoresList, maxScore } = useTestScoresList();
 const { testScoresInfo } = useTestScoresInfo();
 const { goMockTest } = new RouterBus();
-const nickName = ref(window.decodeURIComponent(GetQueryString("nickName")||""))
-const headImage = ref(GetQueryString("headImage"))
+const nickName = ref(window.decodeURIComponent(GetQueryString("nickName") || ""));
+const headImage = ref(GetQueryString("headImage"));
 </script>
 
 <style scoped lang="scss">
 .user-avatar {
-  width: 54px;
-  height: 54px;
-  border-radius: 50%;
+	width: 54px;
+	height: 54px;
+	border-radius: 50%;
 }
 .header-back {
 	width: 375px;