la 1 jaar geleden
bovenliggende
commit
a8970b1e6c

BIN
src/assets/ksfx/downIcon.png


BIN
src/assets/ksfx/upIcon.png


+ 9 - 1
src/pages/ksfx/apiItem.js

@@ -22,6 +22,14 @@ export const normalSubject_list = (data = {}) => {
   })
 }
 
+//通用接口-题目(考试计划列表-筛选出题目)
+export const normalToppic_list = (data = {}) => {
+  return request({
+    url: '/index.php',
+    data,
+  })
+}
+
 //考试计划列表
 export const ksjh_list = (data = {}) => {
   return request({
@@ -119,7 +127,7 @@ export const student_stfx_list = (data = {}) => {
 //学生端-我的试卷-列表
 export const student_wdsj_list = (data = {}) => {
   return request({
-    url: '',
+    url: '/openapi/echart/user_shijuan.php',
     data,
   })
 }

+ 70 - 66
src/pages/ksfx/cjfx_cjd/[ykj_id].vue

@@ -4,10 +4,10 @@
     <bread-crumb />
 
     <div class="w-1200px m-auto flex flex-row justify-between">
-      <div class="w-188">
+      <div class="w-188px">
         <leftSider :activeIndex="activeIndex" :ykjId="ykjId"  @parentClick="parentClick"/>
       </div>
-      <div class="w-942 p-4 blueBg">
+      <div class="w-942px p-4 blueBg">
         <div class="flex items-center">
           <optionSelect  @optionClick="optionClick" />
         </div>
@@ -34,15 +34,15 @@
           </div>
         </div>
 
-        <div class="h-auto mt-9px listMain" >
-          <div class="h-74px flex flex-wrap flex-grow justify-between rounded px-4 listMain_title" >
-            <div class="singleT" :class="{ 'h-full singleD': !!([1, 2, 3].indexOf(index) + 1) }">{{ listTitleShow.kh }}</div>
-            <div class="singleT" :class="{ 'h-full singleD': !!([1, 2, 3].indexOf(index) + 1) }">{{ listTitleShow.xm }}</div>
-            <div class="singleT" :class="{ 'h-full singleD': !!([1, 2, 3].indexOf(index) + 1) }">{{ listTitleShow.bj }}</div>
+        <div class="w-full h-auto mt-9px listMain" >
+          <div class="h-74px  rounded px-4 listMain_title" >
+            <div class="float-left singleTitle" :class="{ 'h-full singleDupli': !!([1, 2, 3].indexOf(index) + 1) }">{{ listTitleShow.kh }}</div>
+            <div class="float-left singleTitle" :class="{ 'h-full singleDupli': !!([1, 2, 3].indexOf(index) + 1) }">{{ listTitleShow.xm }}</div>
+            <div class="float-left singleTitle" :class="{ 'h-full singleDupli': !!([1, 2, 3].indexOf(index) + 1) }">{{ listTitleShow.bj }}</div>
 
-            <div class="h-full singleD" v-for="(secItem, secIndex) in listTitleShow.subInfo" :key="secIndex">
+            <div class="h-full float-left singleDupli" v-for="(secItem, secIndex) in listTitleShow.subInfo" :key="secIndex">
               <div class="h-1/2 text-center">{{ secItem.subTitle }}</div>
-              <div class="h-1/2 flex flex-wrap flex-grow justify-between">
+              <div class="h-1/2 flex flex-wrap flex-grow justify-between flex-nowrap">
                 <div class="secFullWidth">{{ secItem.fs }}</div>
                 <div class="secFullWidth">{{ secItem.bp }}</div>
                 <div class="secFullWidth">{{ secItem.np }}</div>
@@ -51,14 +51,13 @@
 
           </div>
 
-          <div class="h-60px flex flex-wrap flex-grow justify-between px-4" :class="{ 'whiteBG': (index + 1) % 2 != 1 }"
+          <div class="h-60px px-4 listMain_cont" :class="{ 'whiteBG': (index + 1) % 2 != 1 }"
             v-for="(item, index) in listShow" :key="index">
-
-            <div class="singleTSec" :class="{ 'h-full singleDSec': !!([1, 2, 3].indexOf(index) + 1) }">{{ item.kh }}</div>
-            <div class="singleTSec" :class="{ 'h-full singleDSec': !!([1, 2, 3].indexOf(index) + 1) }">{{ item.xm }}</div>
-            <div class="singleTSec" :class="{ 'h-full singleDSec': !!([1, 2, 3].indexOf(index) + 1) }">{{ item.bj }}</div>
-            <div class="h-full singleDSec" v-for="(secItem, secIndex) in item.subInfo" :key="secIndex">
-              <div class="h-full flex flex-wrap flex-grow justify-between">
+            <div class="float-left singleContentSec" :class="{ 'h-full singleDSec': !!([1, 2, 3].indexOf(index) + 1) }">{{ item.kh }}</div>
+            <div class="float-left singleContentSec" :class="{ 'h-full singleDSec': !!([1, 2, 3].indexOf(index) + 1) }">{{ item.xm }}</div>
+            <div class="float-left singleContentSec" :class="{ 'h-full singleDSec': !!([1, 2, 3].indexOf(index) + 1) }">{{ item.bj }}</div>
+            <div class="h-full float-left singleDSec" v-for="(secItem, secIndex) in item.subInfo" :key="secIndex">
+              <div class="h-full flex flex-wrap flex-grow justify-between flex-nowrap">
                 <div class="secFullWidth">{{ secItem.fs }}</div>
                 <div class="secFullWidth">{{ secItem.bp }}</div>
                 <div class="secFullWidth">{{ secItem.np }}</div>
@@ -71,20 +70,23 @@
 
 
         <!-- 优化的图标结构 -->
-        <el-table :data="tableMicData" border style="width: 100%">
-        <el-table-column  prop="name"  align="center"  label="年级"> </el-table-column>
+
+        <el-table :data="tableMicData" style="width: 100%" v-if="false">
+        <el-table-column  prop="kh"  align="center"  label="考号" width="150px;"> </el-table-column>
+        <el-table-column  prop="xm"  align="center"  label="姓名" width="150px;"> </el-table-column>
+        <el-table-column  prop="bj"  align="center"  label="班级" width="150px;"> </el-table-column>
         <!-- 循环1级表头 -->
         <template v-for="(item, index) in tableMicTitle" :key="index">
           <el-table-column align="center"  :label="item" >
             <!-- 循环2级表头 -->
-            <template   v-for="items in tableMicLabel"  :key="items.key">
-              <el-table-column :label="items.label" width="100" align="center">
-                <template v-for="(i,index) in items.type"  :key="index" slot-scope="scope">
-
-                  <div>
-                    {{ scope.row.type[index][items.key] }}
-                  </div>
-                </template>
+            <template v-for="items in tableMicLabel"  :key="items.key">
+              <el-table-column :label="items.label"  align="center">
+                <template slot-scope="scope">
+                <span>
+                  {{ scope }}888
+                  <!-- {{ scope.row.type[index][items.key] }} -->
+                </span>
+              </template>
               </el-table-column>
             </template>
           </el-table-column>
@@ -92,6 +94,7 @@
       </el-table>
 
 
+
       </div>
     </div>
 
@@ -112,7 +115,6 @@ import {user} from "~/store";
 const route = useRoute();
 
 
-
 // 侧边栏点击
 const activeIndex = ref('1-1');
 let ykjId = ref();
@@ -156,39 +158,46 @@ let listShow = ref([
 ykjId.value = route.params.ykj_id;
 
 const tableMicTitle = ref();
-const tableMicLabel=ref([
-  {
-    label: "R%",
-    key: "mgan",
-  },
-  {
-    label: "S%",
-    key: "naiyao",
-  },
-  {
-    label: "I%",
-    key: "zjie",
-  },
-]);
+
 const tableMicData = ref(
   [{
-    name: "asd",
+    kh: "1000001",
+    xm:"力王",
+    bj:"初一(1)班",
     type: [
-      { tab: "肺炎克雷伯", mgan: "1", naiyao: "2", zjie: "3" },
-      { tab: "铜绿假", mgan: "4", naiyao: "5", zjie: "6" },
-      { tab: "鲍式不动杆菌", mgan: "9", naiyao: "8", zjie: "7" },
+    { tab: "语文", aa: "11", bb: "12", cc: "13" },
+      { tab: "数学", aa: "21", bb: "22", cc: "23" },
+      { tab: "外语", aa: "1", bb: "2", cc: "33" },
     ],
   },
   {
-    name: "asd2",
+    kh: "1000002",
+    xm:"力王就",
+    bj:"初一(2)班",
     type: [
-      { tab: "肺炎克雷伯", mgan: "11", naiyao: "12", zjie: "13" },
-      { tab: "铜绿假", mgan: "21", naiyao: "22", zjie: "23" },
-      { tab: "鲍式不动杆菌", mgan: "1", naiyao: "2", zjie: "33" },
+      { tab: "语文", aa: "11", bb: "12", cc: "13" },
+      { tab: "数学", aa: "21", bb: "22", cc: "23" },
+      { tab: "外语", aa: "1", bb: "2", cc: "33" },
     ],
-    }]
+    }
+  ]
 );
 
+const tableMicLabel=ref([
+  {
+    label: "分数",
+    key: "aa",
+  },
+  {
+    label: "班排",
+    key: "bb",
+  },
+  {
+    label: "年排",
+    key: "cc",
+  },
+]);
+
 onMounted(() => {
   initData();
 
@@ -198,15 +207,15 @@ onMounted(() => {
 })
 const aa = () => {
   let tableMicTitle_temp: Iterable<any>|null|undefined = [];
-  tableMicData.value.forEach(o=>{
-    o.type.forEach(item => {
+  tableMicData.value.forEach(items=>{
+    items.type.forEach(item => {
       tableMicTitle_temp.push(item.tab)
      })
   })
-  tableMicTitle.value = [...new Set(tableMicTitle_temp)]
+  tableMicTitle.value = [...new Set(tableMicTitle_temp)];
+  console.log(tableMicTitle.value,"5645")
 }
 
-
 const school_id = ref("");
 const grade_id = ref("");
 const xueke_id = ref("");
@@ -232,7 +241,6 @@ const initData =() => {
 
 //option筛选
 const optionClick = (val: any, marke: any) => {
-
   if (marke == "scholl") {
     school_id.value = val;
   } else if (marke == "grade") {
@@ -252,12 +260,10 @@ const exportBtn = () => {
 </script>
 
 <style lang="scss" scoped>
-
-::v-deep .el-sub-menu__title {
+:deep(.el-sub-menu__title){
   background: #003eee;
   color: #fff;
 }
-
 .blueBg {
   background: #F1F7FF;
 }
@@ -273,7 +279,7 @@ const exportBtn = () => {
 
 .listMain {
   max-height: 600px;
-  overflow: auto;
+  overflow-x: auto;
 }
 
 .listMain_title {
@@ -282,8 +288,7 @@ const exportBtn = () => {
   background: #003eee;
   overflow-y: auto;
 }
-
-.singleT {
+.singleTitle {
   // flex: 1;
   // width: fit-content;
   line-height: 74px;
@@ -291,12 +296,11 @@ const exportBtn = () => {
   text-align: center;
 }
 
-.singleD {
+.singleDupli {
   // flex: 1;
-  width:100px;
+  width:150px;
 }
-
-.singleTSec {
+.singleContentSec {
   // width: fit-content;
   // flex: 1;
   width:100px;
@@ -307,7 +311,7 @@ const exportBtn = () => {
 .singleDSec {
   // flex: 1;
   line-height: 60px;
-  width:200px;
+  width:150px;
 }
 
 .secFullWidth {

+ 5 - 5
src/pages/ksfx/cjfx_fsdtj/[ykj_id].vue

@@ -213,12 +213,12 @@ const exportBtn = () => {
 
 
 <style lang="scss" scoped>
-::v-deep .el-sub-menu__title {
+:deep(.el-sub-menu__title)  {
   background: #003eee;
   color: #fff;
 }
 
-::v-deep .el-table__header thead tr th {
+:deep(.el-table__header thead tr th)  {
   background: #003eee !important;
   color: #fff;
   height: 50px;
@@ -226,15 +226,15 @@ const exportBtn = () => {
   font-weight: normal;
 }
 
-::v-deep .el-table__header thead tr th:first-child {
+:deep(.el-table__header thead tr th:first-child)  {
   border-top-left-radius: 9px;
 }
 
-::v-deep .el-table__body tbody .el-table__row td {
+:deep(.el-table__body tbody .el-table__row td)  {
   background-color: transparent;
 }
 
-::v-deep .el-dialog__footer {
+:deep(.el-dialog__footer)  {
   text-align: center;
 }
 

+ 7 - 10
src/pages/ksfx/cjfx_jstj/[ykj_id].vue

@@ -140,34 +140,31 @@ const exportBtn = () => {
 
 <style lang="scss" scoped>
 @import '@/styles/ksfx.css';
-::v-deep .el-input__wrapper{
+
+:deep(.el-input__wrapper){
   height:40px;
 }
-::v-deep .el-sub-menu__title {
+:deep(.el-sub-menu__title){
   background: #003eee;
   color: #fff;
 }
-
-::v-deep .el-table__header thead tr th {
+:deep(.el-table__header thead tr th){
   background: #003eee !important;
   color: #fff;
   height: 50px;
   line-height: 50px;
   font-weight: normal;
 }
-
-::v-deep .el-table__header thead tr th:first-child {
+:deep(.el-table__header thead tr th:first-child){
   border-top-left-radius: 9px;
 }
-
-::v-deep .el-table__body tbody .el-table__row td {
+:deep(.el-table__body tbody .el-table__row td){
   background-color: transparent;
 }
 
-::v-deep .el-dialog__footer {
+:deep(.el-dialog__footer){
   text-align: center;
 }
-
 .blueBg {
   background: #F1F7FF;
 }

+ 5 - 5
src/pages/ksfx/cjfx_pjflcfx/[ykj_id].vue

@@ -185,12 +185,12 @@ const exportBtn = () => {
 
 
 <style lang="scss" scoped>
-::v-deep .el-sub-menu__title {
+:deep(.el-sub-menu__title)  {
   background: #003eee;
   color: #fff;
 }
 
-::v-deep .el-table__header thead tr th {
+:deep(.el-table__header thead tr th)  {
   background: #003eee !important;
   color: #fff;
   height: 50px;
@@ -198,15 +198,15 @@ const exportBtn = () => {
   font-weight: normal;
 }
 
-::v-deep .el-table__header thead tr th:first-child {
+:deep(.el-table__header thead tr th:first-child)  {
   border-top-left-radius: 9px;
 }
 
-::v-deep .el-table__body tbody .el-table__row td {
+:deep(.el-table__body tbody .el-table__row td)  {
   background-color: transparent;
 }
 
-::v-deep .el-dialog__footer {
+:deep(.el-dialog__footer)  {
   text-align: center;
 }
 

+ 7 - 6
src/pages/ksfx/cjfx_slyf/[ykj_id].vue

@@ -192,27 +192,28 @@ const openDialog = () => {
 
 
 <style lang="scss" scoped>
-::v-deep .el-input__wrapper{
+
+:deep(.el-input__wrapper) {
   height:40px;
 }
-::v-deep .el-sub-menu__title {
+:deep(.el-sub-menu__title)  {
   background: #003eee;
   color: #fff;
 }
-::v-deep .el-table__header thead tr th{
+:deep(.el-table__header thead tr th) {
   background: #003eee!important;
   color: #fff;
   height: 50px;
   line-height: 50px;
   font-weight: normal;
 }
-::v-deep .el-table__header thead tr th:first-child{
+:deep(.el-table__header thead tr th:first-child) {
   border-top-left-radius: 9px;
 }
-::v-deep .el-table__body tbody .el-table__row td{
+:deep(.el-table__body tbody .el-table__row td) {
   background-color: transparent;
 }
-::v-deep .el-dialog__footer{
+:deep(.el-dialog__footer) {
   text-align: center;
 }
 .blueBg {

+ 1 - 9
src/pages/ksfx/ksfx.vue

@@ -2,7 +2,7 @@
   <div class="">
     <NavHeader />
     <bread-crumb />
-    <div class="w-1200px m-auto h-auto mastMain">
+    <div class="w-1200px m-auto min-h-400px mastMain">
       <div class="my-4 searchInput">
         <el-input
         class="w-200px "
@@ -82,7 +82,6 @@ import { useRouter } from "vue-router";
 import { skeletonProps } from 'element-plus';
 const router = useRouter();
 
-
 const searchValue = ref('');
 const activeNames = ref([1]);
 const scoreMarkSwitch = ref(true);
@@ -108,12 +107,10 @@ const initData = () => {
     })
     .catch(error => { console.log(error) })
 }
-
 //搜索
 const handleSearch = () => {
   initData();
 }
-
 //跳转
 const linkTo = (item) => {
   router.push({ name: 'ksfx-stu_stfx-ykj_id', params: { ykj_id: item.ykj_id } });
@@ -128,11 +125,6 @@ const linkTo = (item) => {
   border: 1px dashed grey;
   background-color: #F1F7FF;
 }
-// ::v-deep .el-collapse-item__header {
-//   height: 60px;
-//   border: 1px dashed grey;
-//   background-color: #F1F7FF;
-// }
 .searchInput{
   padding-left:80%;
 }

+ 88 - 18
src/pages/ksfx/sjfx_kgtfx/[ykj_id].vue

@@ -12,17 +12,17 @@
 
         <div class="flex mt-20px items-center">
 
-          <el-select class="mr-10px" v-model="normal_school" placeholder="请选择学校" size="large">
+          <el-select class="mr-10px" v-model="normal_school" placeholder="请选择学校" size="large" @change="(name)=>{ handelOption(name,'scholl')}">
             <el-option label="全部" value="0" />
             <el-option v-for="item in school_list" :key="item.value" :label="item.label" :value="item.value" />
           </el-select>
 
-          <el-select class="mr-10px" v-model="normal_school" placeholder="请选择学科" size="large">
+          <el-select class="mr-10px" v-model="normal_subject" placeholder="请选择学科" size="large" @change="(name)=>{ handelOption(name,'subject')}">
             <el-option label="全部" value="0" />
-            <el-option v-for="item in school_list" :key="item.value" :label="item.label" :value="item.value" />
+            <el-option v-for="item in subject_list" :key="item.value" :label="item.label" :value="item.value" />
           </el-select>
 
-          <el-select class="mr-10px" v-model="normal_topic" placeholder="请选择题目" size="large">
+          <el-select class="mr-10px" v-model="normal_topic" placeholder="请选择题目" size="large" @change="(name)=>{ handelOption(name,'examOption')}">
             <el-option label="全部" value="0" />
             <el-option v-for="item in topic_list" :key="item.value" :label="item.label" :value="item.value" />
           </el-select>
@@ -83,20 +83,17 @@
 }
 </route>
 <script lang="ts" setup>
+
 import * as echarts from 'echarts';
-import { cjfx_kgtfx_list } from '../apiItem';
+import { ksjh_detail,normalToppic_list,cjfx_kgtfx_list } from '../apiItem';
 const route = useRoute();
 
-let normal_topic = ref("");
 let normal_school = ref("");
+let normal_subject = ref();
+let normal_topic = ref("");
 
-let school_list = ref([{
-  value: '1',
-  label: '学校1'
-}, {
-  value: '2',
-  label: '学校2'
-}])
+const school_list = ref([])
+const subject_list = ref([]);
 
 let topic_list = ref([{
   value: '1',
@@ -106,6 +103,11 @@ let topic_list = ref([{
   label: '客观题'
 }]);
 
+
+const school_id = ref("");
+const xueke_id = ref("");
+const hq_id = ref("");
+
 const activeIndex = ref('2-2');
 const ykjId = ref();
 const parentClick = (val: string) => {
@@ -114,14 +116,55 @@ const parentClick = (val: string) => {
 }
 ykjId.value = route.params.ykj_id;
 onMounted(() => {
-  initData()
+  initOption();
+  initData();
 })
+//初始化option
+const initOption = () => {
+  let transObj = {
+    school_id:school_id.value,
+    xueke_id: xueke_id.value,
+    ykj_id: route.params.ykj_id,
+    
+  }
+
+  ksjh_detail(transObj)
+    .then(res => {
+      if (res.code == "1") {
+        //初始化联考学校
+        let linkao_scholl = res.data.one_info.ykj_lkxx_ex;
+        let temp_school: { value: any; label: any; }[] = [];
+        linkao_scholl.forEach((item: { sm_id: any; sm_name: any; }) => {
+          temp_school.push({
+            value: item.sm_id,
+            label: item.sm_name
+          })
+        });
+        school_list.value = temp_school;
+
+        //联考下的学科-从lc_filter下取值
+
+        let allLc = res.data.one_info.lc_filter;
+        let temp_xueke: { value: any; label: any; }[] = [];
+        allLc.forEach((item: { ze_id: any; ykl_lc: string; }) => {
+          temp_xueke.push({
+            value: item.ze_id,
+            label: item.ze_xueke_name
+          })
+        })
+        subject_list.value = temp_xueke;
 
+      }
+    })
+    .catch(error => { console.log(error) })
+}
+
+//初始化数据
 const initData = () => {
   let transObj = {
-    xueke_id: '',
-    grade_id: '',
-    school_id: '',
+    school_id: school_id.value,
+    xueke_id: xueke_id.value,
+    hq_id:hq_id.value,//试题
     jh_id:route.params.ykj_id
   }
   cjfx_kgtfx_list(transObj)
@@ -133,7 +176,7 @@ const initData = () => {
     })
     .catch(error => { console.log(error) })
 }
-
+//初始化echarts
 const initbarChart = (barChartData: { xAxis_data: any; series_data: any; }) => {
   var myChart = echarts.init(document.getElementById('barChart'));
   myChart.setOption({
@@ -283,6 +326,33 @@ let dialogArr = [
   }
 ]
 
+//option 学校
+const handelOption = (val, marklabel) => {
+  if (marklabel == "scholl") {
+    school_id.value = val;
+  } else if (marklabel == "subject") {
+    xueke_id.value = val;
+    initTopic();
+  } else {
+    hq_id.value = val;
+  }
+  initData();
+ 
+}
+
+// option 题目
+const initTopic = () => {
+  let transObj = {
+    zs_id:xueke_id.value
+  }
+  normalToppic_list(transObj)
+    .then(res => {
+      if(res.code=="1"){
+        console.log(res, "876445");
+      }
+    })
+  .catch(error=>{console.log(error)})
+}
 
 </script>
 

+ 4 - 1
src/pages/ksfx/stu_grcjd/[ykj_id].vue

@@ -1,6 +1,8 @@
 <template>
   <div class="stu_grcjd">
-    <div class="w-1200px m-auto flex flex-row justify-between">
+    <NavHeader />
+    <bread-crumb />
+    <div class="w-1200px m-auto min-h-650px flex flex-row justify-between">
       <div class="w-188px h-full" style="background-color: #fff;">
         <leftSiderStu :StuLeftMenuNum="StuLeftMenuNum" :ykjId="ykjId" />
       </div>
@@ -43,6 +45,7 @@
       </div>
 
     </div>
+    <commonFooter />
   </div>
 </template>
 

+ 1 - 1
src/pages/ksfx/stu_stfx/[ykj_id].vue

@@ -3,7 +3,7 @@
     <NavHeader />
     <bread-crumb />
 
-    <div class="w-1200px h-600px m-auto flex flex-row justify-between">
+    <div class="w-1200px  min-h-650pxm-auto flex flex-row justify-between">
       <div class="w-188px h-full" style="background-color: #fff;">
         <leftSiderStu  :StuLeftMenuNum="StuLeftMenuNum" :ykjId="ykjId" />
       </div>

+ 32 - 49
src/pages/ksfx/stu_wdsj/[ykj_id].vue

@@ -3,27 +3,27 @@
     <NavHeader />
     <bread-crumb />
 
-    <div class="w-1200px m-auto flex flex-row justify-between">
+    <div class="w-1200px m-auto min-h-650px flex flex-row justify-between">
       <div class="w-188px h-full" style="background-color: #fff;">
         <leftSiderStu :StuLeftMenuNum="StuLeftMenuNum" :ykjId="ykjId" />
       </div>
 
       <div class="w-1012px p-12 blueBg">
 
-        <div class="w-full flex flex-row flex-wrap">
+        <div class="w-full min-h-500px flex flex-row flex-wrap">
           <div class="w-1/4 text-center mb-8 cursor-pointer singlePart" v-for="(item, index) in imgArr" :key="index"
-            @click="clickCurrent(item.allFullExamSJ)">
+            @click="clickCurrent(item.allFullExamsJ)">
             <div class="p-4 picIn">
-              <img :src="item.thumbImg" alt="" />
+              <img :src=prefixedUrl+item.thumbImg alt="" />
             </div>
             <p>{{ item.examTitle }}</p>
           </div>
         </div>
 
         <div class="demo-pagination-block">
-          <el-pagination v-model:current-page="currentPage4" v-model:page-size="pageSize4"
-            :page-sizes="[12, 12*2, 12*3, 12*4]" :small="small" :disabled="disabled" background
-            layout="total, sizes, prev, pager, next, jumper" :total="48" @size-change="handleSizeChange"
+          <el-pagination v-model:current-page="currentPage" v-model:page-size="pageSize4"
+            :page-sizes="[12, 12*2, 12*3, 12*4,12*5]" :small="small" :disabled="disabled" background
+            layout="total, sizes, prev, pager, next, jumper" :total="totalNum" @size-change="handleSizeChange"
             @current-change="handleCurrentChange" style="justify-content: right;" />
         </div>
 
@@ -41,7 +41,7 @@
             disableOnInteraction: false
           }" :navigation="true" :modules="modules" class="mySwiper">
           <swiper-slide class="mainSwiper" v-for="(secItem, ind) in dialogShow" :key="ind">
-            <img :src="secItem">
+            <img :src=prefixedUrl+secItem >
           </swiper-slide>
         </swiper>
       </span>
@@ -84,57 +84,39 @@ const modules = [Autoplay, Pagination, Navigation, A11y];
 
 
 let StuLeftMenuNum = 1;
-const imgArr = ref(
-  [
-    {
-      thumbImg: "/images/examPreview.png",
-      examTitle: "苏州工艺教具设计",
-      allFullExamSJ: ["/images/examPreview.png", "/images/examPreview.png"]
-    },
-    {
-      thumbImg: "/images/examPreview.png",
-      examTitle: "语文",
-      allFullExamSJ: ["/images/examPreview.png", "/images/examPreview.png"]
-    },
-    {
-      thumbImg: "/images/examPreview.png",
-      examTitle: "苏州工艺教具设计",
-      allFullExamSJ: ["/images/examPreview.png", "/images/examPreview.png"]
-    },
-    {
-      thumbImg: "/images/examPreview.png",
-      examTitle: "苏州工艺教具设计",
-      allFullExamSJ: ["/images/examPreview.png", "/images/examPreview.png"]
-    },
-    {
-      thumbImg: "/images/examPreview.png",
-      examTitle: "苏州工艺教具设计",
-      allFullExamSJ: ["/images/examPreview.png", "/images/examPreview.png"]
-    },
-  ]
-);
+const imgArr = ref([]);
 const dialogVisible = ref(false)
 const dialogShow = ref([]);
 
-const ykjId = ref();
+const prefixedUrl =ref(window.GLOBAL_CONFIG.yzy);
 
+const ykjId = ref();
 ykjId.value = route.params.ykj_id;
 
+const small = ref(false)
+const disabled = ref(false)
+const currentPage = ref(1)
+const pageSize4 = ref(12)
+const totalNum = ref();
+
 onMounted(() => {
-  // initData()
+  initData()
 })
 
 const initData = () => {
   let transObj = {
-    xueke_id: '',
-    grade_id: '',
-    school_id:''
+    page:currentPage.value,
+    limit:pageSize4.value,
+    jh_id:route.params.ykj_id,
   }
   student_wdsj_list(transObj)
     .then(res => {
       if (res.code == "1") {
-
-      }
+        imgArr.value = res.data.data.page_data;
+        currentPage.value = res.data.data.page_now;
+        pageSize4.value = 12;
+        totalNum.value = Number(res.data.data.total_rows);
+      } 
     })
     .catch(error => { console.log(error) });
 }
@@ -145,16 +127,17 @@ const clickCurrent = (item) => {
   dialogShow.value = item;
 }
 
-const small = ref(false)
-const disabled = ref(false)
-const currentPage4 = ref(1)
-const pageSize4 = ref(12)
+
 
 const handleSizeChange = (val: number) => {
-  console.log(`${val} items per page`)
+  console.log(`${val} items per page`);
+  pageSize4.value = val;
+  initData();
 }
 const handleCurrentChange = (val: number) => {
   console.log(`current page: ${val}`)
+  currentPage.value = val;
+  initData();
 }
 
 </script>