2023年5月4日 修复改问题

This commit is contained in:
bai 2023-05-04 23:50:32 +08:00
parent d35efeea15
commit 678e32dccf
11 changed files with 310 additions and 146 deletions

View File

@ -1,20 +1,38 @@
<template>
<div style="width:100%;height: 100%;" v-if="!isError">
<a-row>
<a-col :span="24">
<div class="maxSite" style="width:100%;height: 100%;margin-top: 1rem;" v-if="!isError">
<a-row :gutter="[16,16]">
<a-col :span="22">
<div>
<a-card :title="mainVideoCardBoxTitle" class="videoCardMain" style="width:100%">
<bVideo ref="mainVideo" videoId="mainVideo" :videoOption="{ autoplay: true }"/>
</a-card>
</div>
<div style="display: flex;flex-direction: row;flex-wrap: nowrap;overflow-x: scroll;">
<div v-for="(item,index) of tableData" class="videoMax">
<a-card :title="item?.xm" class="videoCardMain">
<bVideo :ref="el=> bVideoRefs[index]=el" :videoId="'other-'+item.id" :src="item.pullUrl" :videoOption="{ autoplay: true, userActions: { click: bVideoClick } }" @load-end="loadEnd"/>
<!-- <div style="display: flex;flex-direction: row;flex-wrap: nowrap;overflow-x: scroll;"> -->
<!-- <div v-for="(item,index) of tableData" class="videoMax"> -->
<!-- <a-card :title="item?.xm" class="videoCardMain"> -->
<!-- <bVideo :ref="el=> bVideoRefs[index]=el" :videoId="'other-'+item.id" :src="item.pullUrl" :videoOption="{ autoplay: true, userActions: { click: bVideoClick } }" @load-end="loadEnd"/> -->
<!-- <bVideo :ref="el=> bVideoRefs[index]=el" :videoId="'other-'+index" :src="'http://127.0.0.1/live_hls/soures.m3u8'" :videoOption="{ autoplay: true, userActions: { click: bVideoClick } }" @load-end="loadEnd"/> -->
</a-card>
<!-- </a-card>
</div>
</div>
</div> -->
</a-col>
<a-col :span="2">
<a-row>
<a-col :span="24">
<a-button type="primary" style="width: 100%;margin-bottom: 0.5rem;" @click="() => tingKeZuJiAddModal.view({ ketangbiaoid: route.query.ktId })">评价</a-button>
</a-col>
<a-col :span="24" v-for="(item,index) of tableData" style="text-align: center;">
<a-button type="primary" style="width: 100%;margin-bottom: 0.5rem;" @click="changeLive(item)">{{ item?.xm }}</a-button>
</a-col>
</a-row>
</a-col>
</a-row>
<a-row :gutter="[16,16]">
<a-col :span="22">
<a-textarea v-model:value="model.notes"></a-textarea>
</a-col>
<a-col :span="2">
<a-button type="primary" @click="saveSuibi">保存</a-button>
</a-col>
</a-row>
</div>
@ -28,103 +46,89 @@
<!-- <a-button type="primary" @="">关闭</a-button> -->
</a-empty>
</div>
<addModalPage ref="tingKeZuJiAddModal"/>
</template>
<script lang="ts" setup name="zhihuijiaoshiIndexPage">
import { defHttp } from '/@/utils/http/axios';
import { ref, onMounted } from 'vue';
import { ref, reactive, onMounted } from 'vue';
import bVideo from '/@/views/site/common/video/videojs/video.vue';
import addModalPage from '/@/views/site/tingKeZuJi/components/addModal.vue';
import { nextTick } from 'vue';
import { useRoute } from 'vue-router'
import { getUserId } from '/@/views/site/utils/index';
const bVideoRefs = <any>ref([]);
const mainVideo = <any>ref();
const currentItem = <any>ref({});
const isfirst = <any>ref(false);
const tingKeZuJiAddModal = <any>ref({});
const mainVideoCardBoxTitle = <any>ref('');
const tableData = ref<Recordable>([])
const isError = ref(false);
//{
const model = reactive<Record<string, any>>({ notes:'' });
const route = useRoute();
onMounted(() => {
if(route.query.id){
//ID
list({ pageSize: -1, sfyx: '0', jsbh: route.query.id }).then(res => {
let list = (res?.records) ?? [];
tableData.value = list;
nextTick(() => {
})
});
}else{
isError.value = true;
}
// list({ pageSize: -1, sfyx: '0' }).then(res => {
// let list = (res?.records) ?? [];
// //
// let map = {};
// list.forEach(x => {
// let item = map[x.jsmc];
// if(item){
// item.child[x.xm] = x;
// }else{
// let child = {};
// child[x.xm] = x;
// map[x.jsmc] = {
// ...x,
// child
// };
// }
// });
// leftList.value = Object.values(map);
// //
// let mainDiv = <any>_document?.querySelector('.ant-layout .jeecg-default-layout-main > div');
// topWidth.value =mainDiv?.style?.height?? '0';
// });
});
enum Api {
list = '/jiaoshi/kcZhihuijiaoshi/list',
querySuibi = '/kc/kcKetangSuibi/list',
addSuibi = '/kc/kcKetangSuibi/add'
// editSuibi = '/kc/kcKetangSuibi/edit'
}
/**
* 列表接口
* @param params
*/
const list = (params) => defHttp.get({ url: Api.list, params });
const querySuibi = (params) => defHttp.get({ url: Api.querySuibi, params });
const addSuibi = (params) => defHttp.post({ url: Api.addSuibi, params });
// const editSuibi = (params) => defHttp.post({ url: Api.editSuibi, params });
/**
* 子页加载完成后回调
* @param player
*/
function loadEnd(player){
nextTick(() => {
if(!isfirst.value){
isfirst.value = true;
//
bVideoClick({ target: { playerId: player.id() } })
}
onMounted(() => {
if(route.query.id){
model.notes = '';
//ID
list({ pageSize: -1, sfyx: '0', jsbh: route.query.id }).then(res => {
let list = (res?.records) ?? [];
tableData.value = list;
nextTick(() => {
changeLive(tableData.value[0]);
})
});
getSuibi();
}else{
isError.value = true;
}
});
function changeLive(item:any){
let mainVideo = <any> document.querySelector('#mainVideo');
mainVideo?.player?.src([{ type:'application/x-mpegURL',src: item.pullUrl }])
}
function getSuibi(){
let param = {
userId: getUserId(),
ketangbiaoId: route.query.ktId,
column: 'createTime',
order: 'desc',
};
querySuibi(param).then(res => {
Object.assign(model, (res.records??[{}])[0]);
// model = (res.records??[{}])[0];
});
}
/**
* 点击时切换至大屏
* @param e
*/
function bVideoClick(e){
console.log(`bVideoClick: 点击切换至主界面`);
let mainVideo = <any> document.querySelector('#mainVideo');
let currentVideo = <any> document.querySelector('#'+e.target.playerId);
let src = currentVideo.player?.src();
mainVideo?.player?.src([{type:'application/x-mpegURL',src }])
function saveSuibi(){
//addSuibi editSuibi
// if(model.value.id){
// editSuibi({...model.value, })
// }else{
addSuibi({ notes: model.notes, userId: getUserId(), ketangbiaoId: route.query.ktId })
// }
}
</script>
@ -141,4 +145,10 @@ function bVideoClick(e){
video::-webkit-media-controls-timeline {
display: none;
}
.maxSite {
//
max-width: 1170px;
//
margin: 0 auto;
}
</style>

View File

@ -0,0 +1,144 @@
<template>
<div style="width:100%;height: 100%;" v-if="!isError">
<a-row>
<a-col :span="24">
<div>
<a-card :title="mainVideoCardBoxTitle" class="videoCardMain" style="width:100%">
<bVideo ref="mainVideo" videoId="mainVideo" :videoOption="{ autoplay: true }"/>
</a-card>
</div>
<div style="display: flex;flex-direction: row;flex-wrap: nowrap;overflow-x: scroll;">
<div v-for="(item,index) of tableData" class="videoMax">
<a-card :title="item?.xm" class="videoCardMain">
<bVideo :ref="el=> bVideoRefs[index]=el" :videoId="'other-'+item.id" :src="item.pullUrl" :videoOption="{ autoplay: true, userActions: { click: bVideoClick } }" @load-end="loadEnd"/>
<!-- <bVideo :ref="el=> bVideoRefs[index]=el" :videoId="'other-'+index" :src="'http://127.0.0.1/live_hls/soures.m3u8'" :videoOption="{ autoplay: true, userActions: { click: bVideoClick } }" @load-end="loadEnd"/> -->
</a-card>
</div>
</div>
</a-col>
</a-row>
</div>
<div v-else style="height: 100%;display: flex;justify-content: center;align-items: center;">
<a-empty>
<template #description>
<span>
没有找到直播间
</span>
</template>
<!-- <a-button type="primary" @="">关闭</a-button> -->
</a-empty>
</div>
</template>
<script lang="ts" setup name="zhihuijiaoshiIndexPage">
import { defHttp } from '/@/utils/http/axios';
import { ref, onMounted } from 'vue';
import bVideo from '/@/views/site/common/video/videojs/video.vue';
import { nextTick } from 'vue';
import { useRoute } from 'vue-router'
const bVideoRefs = <any>ref([]);
const mainVideo = <any>ref();
const currentItem = <any>ref({});
const isfirst = <any>ref(false);
const mainVideoCardBoxTitle = <any>ref('');
const tableData = ref<Recordable>([])
const isError = ref(false);
const route = useRoute();
onMounted(() => {
if(route.query.id){
//ID
list({ pageSize: -1, sfyx: '0', jsbh: route.query.id }).then(res => {
let list = (res?.records) ?? [];
tableData.value = list;
nextTick(() => {
})
});
}else{
isError.value = true;
}
// list({ pageSize: -1, sfyx: '0' }).then(res => {
// let list = (res?.records) ?? [];
// //
// let map = {};
// list.forEach(x => {
// let item = map[x.jsmc];
// if(item){
// item.child[x.xm] = x;
// }else{
// let child = {};
// child[x.xm] = x;
// map[x.jsmc] = {
// ...x,
// child
// };
// }
// });
// leftList.value = Object.values(map);
// //
// let mainDiv = <any>_document?.querySelector('.ant-layout .jeecg-default-layout-main > div');
// topWidth.value =mainDiv?.style?.height?? '0';
// });
});
enum Api {
list = '/jiaoshi/kcZhihuijiaoshi/list',
}
/**
* 列表接口
* @param params
*/
const list = (params) => defHttp.get({ url: Api.list, params });
/**
* 子页加载完成后回调
* @param player
*/
function loadEnd(player){
nextTick(() => {
if(!isfirst.value){
isfirst.value = true;
//
bVideoClick({ target: { playerId: player.id() } })
}
});
}
/**
* 点击时切换至大屏
* @param e
*/
function bVideoClick(e){
console.log(`bVideoClick: 点击切换至主界面`);
let mainVideo = <any> document.querySelector('#mainVideo');
let currentVideo = <any> document.querySelector('#'+e.target.playerId);
let src = currentVideo.player?.src();
mainVideo?.player?.src([{type:'application/x-mpegURL',src }])
}
</script>
<style lang="less" scoped>
.videoMax{
width: 25%;
}
.videoCardMain {
:deep(.ant-card-body) {
padding: 0;
}
}
/* 隐藏video 进度条 */
video::-webkit-media-controls-timeline {
display: none;
}
</style>

View File

@ -17,7 +17,7 @@
<!-- 听课足迹 -->
<tingKeZuJiPage v-if="getUserSf()=='T'"/>
<!-- 预约课程 -->
<yuYueKeChengPage ref="yykcModeal" @ortherLoad="yykcLoad" v-if="getUserSf()=='T'"/>
<yuYueKeChengPage ref="yykcModeal" @orther-load="yykcLoad" v-if="getUserSf()=='T'"/>
<!-- 精彩公开课 -->
<jingCaiGongKaiKePage v-if="getUserSf()=='T'"/>
<!-- 今日课程列表 -->
@ -30,19 +30,19 @@
<template #tab>
<div style="font-weight: 600;font-size: 16px;">正在上课</div>
</template>
<kclbZzsk ref="zzskModeal" @jrkclbLoad="jrkclbLoad"></kclbZzsk>
<kclbZzsk ref="zzskModeal" @jrkclb-load="jrkclbLoad"></kclbZzsk>
</a-tab-pane>
<a-tab-pane key="2">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">下一节课</div>
</template>
<kclbXyjk ref="xyjkModeal" @jrkclbLoad="jrkclbLoad"></kclbXyjk>
<kclbXyjk ref="xyjkModeal" @jrkclb-load="jrkclbLoad"></kclbXyjk>
</a-tab-pane>
<a-tab-pane key="3">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">日课表</div>
</template>
<kclbRkb ref="rkbModeal" @jrkclbLoad="jrkclbLoad"></kclbRkb>
<kclbRkb ref="rkbModeal" @jrkclb-load="jrkclbLoad"></kclbRkb>
</a-tab-pane>
</a-tabs>
</a-card>
@ -79,10 +79,10 @@
import kclbXyjk from '/@/views/site/jrkclb/kclbXyjk.vue';
import kclbRkb from '/@/views/site/jrkclb/kclbRkb.vue';
import StudentJrkbPage from '/@/views/site/studentJrkb/index.vue';
import StudentJlrkbPage from '/@/views/site/studentJlrkb/index.vue';
import { getUserSf } from '/@/views/site/utils/index';
const activeKey = ref('1');

View File

@ -39,7 +39,7 @@
<a-col :span="24" v-if="listType == 1">
<a-row style="text-align: center;">
<a-col :span="8">
<a-button type="primary" class="yyyClass" @click="toLivePage(item)">听课</a-button>
<a-button type="primary" class="yyyClass" @click="toLivePage(item)" :disabled="!item.jsbh || !item.zhjsId">听课</a-button>
</a-col>
<a-col :span="8">
<a-button type="primary" class="yyClass" @click="funpingjia(item)" >评价</a-button>
@ -146,7 +146,7 @@ function handleBaocuo(item) {
function toLivePage(item){
// route.push({ path:'/site/liveRoom',query:{ id: item.jsbh } })
let routeData = route.resolve({ path:'/site/liveRoom',query:{ id: item.jsbh } });
let routeData = route.resolve({ path:'/site/liveRoom',query:{ id: item.jsbh, ktId: item.id } });
window.open(routeData.href, '_blank');
};

View File

@ -1,30 +1,30 @@
<template>
<div class="indexBackClass">
<a-card class="rowGutter">
<template #title>
<span style="font-size: 24px;font-weight: bold;">今日课程列表</span>
</template>
<a-tabs v-model:activeKey="activeKey" type="card" @change="kclbCard">
<a-tab-pane key="1">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">正在上课</div>
</template>
<kclbZzsk ref="zzskModeal" @jrkclbLoad="jrkclbLoad"></kclbZzsk>
</a-tab-pane>
<a-tab-pane key="2">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">下一节课</div>
</template>
<kclbXyjk ref="xyjkModeal" @jrkclbLoad="jrkclbLoad"></kclbXyjk>
</a-tab-pane>
<a-tab-pane key="3">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">日课表</div>
</template>
<kclbRkb ref="rkbModeal" @jrkclbLoad="jrkclbLoad"></kclbRkb>
</a-tab-pane>
</a-tabs>
</a-card>
<template #title>
<span style="font-size: 24px;font-weight: bold;">今日课程列表</span>
</template>
<a-tabs v-model:activeKey="activeKey" type="card" @change="kclbCard">
<a-tab-pane key="1">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">正在上课</div>
</template>
<kclbZzsk ref="zzskModeal" @jrkclb-load="jrkclbLoad"></kclbZzsk>
</a-tab-pane>
<a-tab-pane key="2">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">下一节课</div>
</template>
<kclbXyjk ref="xyjkModeal" @jrkclb-load="jrkclbLoad"></kclbXyjk>
</a-tab-pane>
<a-tab-pane key="3">
<template #tab>
<div style="font-weight: 600;font-size: 16px;">日课表</div>
</template>
<kclbRkb ref="rkbModeal" @jrkclb-load="jrkclbLoad"></kclbRkb>
</a-tab-pane>
</a-tabs>
</a-card>
</div>
</template>
<script setup lang="ts">
@ -44,7 +44,7 @@ import kclbRkb from '/@/views/site/studentJrkb/kclbRkb.vue';
const tingKeZuJiAddModal = ref();
const kcErrorreportIndexModal = ref();
let listData = ref<any>([]);
let listData = ref<any>([]);
let sjtime = ref<any>('');
let sjtitle = ref<any>('');
@ -102,7 +102,7 @@ onMounted(() => {
/**
* 评价
* @param record
* @param record
*/
function funpingjia(record){
var item = {ketangbiaoid:record.id}

View File

@ -3,17 +3,16 @@
<div style="color:#1c84c6;font-weight: 600;font-size: 16px;" v-show="queryParam.jieci">
以下是 <span>{{queryParam.ywTime}}</span><span>{{queryParam.jieci}}节课</span> 的课表
</div>
<div style="color:#1c84c6;font-weight: 600;font-size: 16px;" v-show="!queryParam.jieci">
现在是 <span>{{queryParam.ywTime}}</span> 非上课时段
现在是 <span>{{queryParam.ywTime}}</span> 非上课时段
</div>
<a-row style="margin-top:20px;">
<a-col :xs="{ span: 24 }" :sm="{ span: 8 }" :lg="{ span: 4 }">
<a-form-item label="" style="padding: 10px;">
<JDictSelectTag placeholder="请选择院系" v-model:value="queryParam.kkdw"
:dictCode="`kc_kkdw_view,kkdw,kkdw`" />
<JDictSelectTag placeholder="请选择院系" v-model:value="queryParam.kkdw" :dictCode="`kc_kkdw_view,kkdw,kkdw`" />
</a-form-item>
</a-col>
<a-col :xs="{ span: 24 }" :sm="{ span: 8 }" :lg="{ span: 4 }">
@ -35,7 +34,7 @@
{{xxkcTotal}}</div>
</div>
</template>
<kclbList ref="wqxxkcModeal" :queryParam="xxkcqueryParam" @setTotal="xxkcTotal = $event;jzzyload()"></kclbList>
<kclbList ref="wqxxkcModeal" :queryParam="xxkcqueryParam" @set-total="xxkcTotal = $event;jzzyload()"></kclbList>
</a-tab-pane>
<a-tab-pane key="2">
@ -47,7 +46,7 @@
{{txhyTotal}}</div>
</div>
</template>
<kclbList ref="txhyModeal" :queryParam="txhyqueryParam" @setTotal="txhyTotal = $event;jzzyload()"></kclbList>
<kclbList ref="txhyModeal" :queryParam="txhyqueryParam" @set-total="txhyTotal = $event;jzzyload()"></kclbList>
</a-tab-pane>
</a-tabs>
</div>

View File

@ -1,15 +1,15 @@
<template>
<a-card class="wenZiJiaCu" style="font-size: 1.1rem;">
您可根据实际情况选择下面个评价表中的一个或者两个给予评价
您可根据实际情况选择下面个评价表中的一个或者两个给予评价
<div class="p15">
<a-row>
<a-col :span="9">
<!-- <a-col :span="9">
<a-button type="primary" class="wenZiJiaCu" style="font-size: 18px;height: 45px;"><RouterLink target='_blank' :to="{path:'/site/qaAddPageXsktpjb',query:{ type: 2, ktId }}">线上课堂评价表</RouterLink></a-button>
</a-col>
<a-col :span="7">
</a-col> -->
<a-col :span="12" style="text-align: center;">
<a-button type="primary" class="wenZiJiaCu" style="font-size: 18px;height: 45px;"><RouterLink target='_blank' :to="{path:'/site/qaAddPageTkjlb',query:{ type: 3, ktId }}">听课记录表</RouterLink></a-button>
</a-col>
<a-col :span="7">
<a-col :span="12" style="text-align: center;">
<a-button type="primary" class="wenZiJiaCu" style="font-size: 18px;height: 45px;"><RouterLink target='_blank' :to="{path:'/site/qaAddPageThpjb',query:{ type: 4, ktId }}">同行评价表</RouterLink></a-button>
</a-col>
</a-row>
@ -17,14 +17,14 @@
<p>
说明
</p>
<p>
<!-- <p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.线上课堂评价表是根据线上课堂的特点研制的如果您听的是线上课堂请您填写该评价表如果您同时是该课程所属学科的专家/教师也欢迎您同时填写同行评价表
</p> -->
<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.听课记录表是方便行政人员和非该课程所属学科的教师听课使用的评价表主要用来反映课堂教学的整体情况
</p>
<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.听课记录表是方便行政人员和非该课程所属学科的教师听课使用的评价表主要用来反映课堂教学的整体情况
</p>
<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.同行评价表是专门为该课程方面的专家/教师听课研制的评价表更能反映该课堂的教学质量
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.同行评价表是专门为该课程方面的专家/教师听课研制的评价表更能反映该课堂的教学质量
</p>
</a-card>
</template>
@ -39,11 +39,6 @@
*/
function view( ...data ) {
let record = data[0]??{};
console.log(`🚀 --------------------------------------------------🚀`);
console.log(`🚀 ~ file: addForm.vue:43 ~ view ~ record:`, record);
console.log(`🚀 --------------------------------------------------🚀`);
ktId.value = record.ketangbiaoid
}

View File

@ -18,6 +18,10 @@
const disableSubmit = ref<boolean>(false);
const registerForm = ref();
// const props = defineProps({
// show: { type: Object, default: () => ({}) },
// });
function getPDom() {
return document.querySelector('.renKeJiaoChengBase')
}
@ -80,6 +84,10 @@
// background: red;
}
}
}
</style>
<style>
.jee-hidden{
display: none;
}
</style>

View File

@ -14,6 +14,14 @@
<div class="wenZiJiaCu">
<span v-if="item.score" style="color: #337ab7;" @click="viewModal.view(item)">已评分{{ item.score }}</span>
<span v-else style="color: #337ab7;" @click="tingKeZuJiAddModal.view(item)"><FormOutlined/>填写评价</span>
<span v-if="item.suibiNotes" style="padding-left: .5rem;color: #337ab7;">
<a-popover title="随笔">
<template #content>
{{ item.suibiNotes }}
</template>
查看随笔
</a-popover>
</span>
</div>
</template>
<template #avatar>
@ -47,8 +55,8 @@ const tingKeZuJiAddModal = ref();
const viewModal = ref();
const props = defineProps({
queryParam: { type: Object, default: () => ({}) },
});
queryParam: { type: Object, default: () => ({}) },
});
/**

View File

@ -6,9 +6,9 @@
<headerPage/>
<!-- 主体部分 -->
<a-layout-content>
<a-card>
<div style="font-size: 24px;font-weight: bold;height: 70px;">听课足迹</div>
<div style="font-size: 24px;font-weight: bold;height: 70px;">听课足迹</div>
<a-row :gutter="[16,16]">
<a-col :xs="{ span: 24 }" :sm="{ span: 8 }" :lg="{ span: 4 }">
<a-date-picker placeholder="请选择开始日期" format="YYYY-MM-DD" valueFormat="YYYY-MM-DD" v-model:value="queryParam.startDate" style="width: 100%" />
@ -62,9 +62,9 @@ const queryParam = ref<any>({ startDate: getSysConfig().bxqkssj, endDate: '', pj
//
onMounted(() => {
const format = 'yyyy-MM-dd';
queryParam.value.endDate = dateFormat(new Date(), format)
onSearch()
const format = 'yyyy-MM-dd';
queryParam.value.endDate = dateFormat(new Date(), format)
onSearch()
});
const listRef = ref();

View File

@ -22,8 +22,8 @@ export const getUserId = () => {
}else{
console.log(`🚀 ~ file: index.ts:17 ~ getUserId ~ isOpenSSO2:`, isOpenSSO)
//固定某值
// return '2016900057';//教师
return '2022010920';//学生
return '2016900057';//教师
// return '2022010920';//学生
}
}
@ -41,11 +41,11 @@ export const getUserSf = () => {
*/
export const getUserInfo = () => {
const { userInfo } = useUserStore();
return userInfo;
return userInfo??{};
}
// export const getSysConfig = () => defHttp.get({ url: '/kcSysConfig/kcSysConfig/queryById', params:{id:'1'} })
export const getSysConfig = () => {
export const getSysConfig = ():any => {
const { sysConfigInfo } = useUserStore();
return sysConfigInfo;
return sysConfigInfo??{};
}