mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-06 17:36:44 +08:00
讲师管理
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<script setup >
|
||||
import { ref,onMounted } from 'vue';
|
||||
import { ref,onMounted,computed } from 'vue';
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import {getexamineList,CreateAuthentication,delExamine,getOnlineLearningList,deleteCourse,addCourse,updateExamine} from '@/api/examineApi.js'
|
||||
import dialog from "@/utils/dialog";
|
||||
@@ -8,11 +8,19 @@ import OwnerTableModelStudent from "./tablemodel";
|
||||
import CommonStudent from "./CommonTeacher";
|
||||
import CreateOnline from "@/components/drawers/CreateOnline.vue";
|
||||
import { message } from "ant-design-vue";
|
||||
import { useStore } from "vuex";
|
||||
const route = useRoute()
|
||||
const router = useRouter()
|
||||
const visible = ref(false);
|
||||
const loading = ref(false);
|
||||
|
||||
const store = useStore();
|
||||
const userInfo = computed(() => store.state.userInfo);
|
||||
const uploadAdmin = (admin)=>{
|
||||
const roleCode = userInfo.value.roleList.map((item)=>item.roleCode)
|
||||
if (admin){
|
||||
return roleCode.some(t => t == admin)
|
||||
}
|
||||
}
|
||||
const columns = [
|
||||
{
|
||||
name: 'serial',
|
||||
@@ -169,35 +177,15 @@ const deleteReview = (record) =>{
|
||||
}
|
||||
})
|
||||
}
|
||||
const falseData = () => {
|
||||
ViewReviewShow.value = false
|
||||
}
|
||||
const AddList = () => {
|
||||
|
||||
falseData()
|
||||
}
|
||||
//认证审批项目列表数据
|
||||
const data = ref([{
|
||||
"id": 1,
|
||||
"deleted": false,
|
||||
"createTime": "2024-05-10 13:38:37",
|
||||
"createId": null,
|
||||
"createName": null,
|
||||
"updateTime": "2024-05-10 13:49:16",
|
||||
"updateId": 965342027497607168,
|
||||
"updateName": "李玉冰",
|
||||
"number": 1,
|
||||
"name": "测试1",
|
||||
"description": "认证项目详情",
|
||||
"cover": "/www/elearning/upload/activityfile/blue.png"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"deleted": false,
|
||||
"createTime": "2024-05-10 13:24:50",
|
||||
"createId": null,
|
||||
"createName": null,
|
||||
"updateTime": null,
|
||||
"updateId": null,
|
||||
"updateName": null,
|
||||
"number": 2,
|
||||
"name": "认证项目003修改",
|
||||
"description": "认证项目详情",
|
||||
"cover": "/www/elearning/upload/activityfile/blue.png"
|
||||
},])
|
||||
const data = ref([])
|
||||
const delVisible = ref(false)
|
||||
//页数
|
||||
const current1 = ref(1);
|
||||
@@ -338,7 +326,7 @@ function handleOper(record, type, status = "") {
|
||||
</div>
|
||||
<div style="display: flex;flex-direction: column;">
|
||||
<!-- <div @click="ViewReviewShow=true" style="margin-bottom: 15px; height: 38px; width: 150px;background: #4ea6ff;line-height: 40px;text-align: center;border-radius: 8px;color: #ffffff;">选择/新建课程</div> -->
|
||||
<CreateOnline ref="onlineRef" :id="1" :type="1">
|
||||
<CreateOnline ref="onlineRef" :id="''" :type="''">
|
||||
<a-button type="primary" style="border-radius: 4px">{{
|
||||
"选择/新建课程"
|
||||
}}
|
||||
@@ -367,8 +355,8 @@ function handleOper(record, type, status = "") {
|
||||
</a-table>
|
||||
</div>
|
||||
<div style=" display: flex;justify-content: center;">
|
||||
<div style="margin-right: 30px; border-radius: 8px; color: #fff;font-size: 16px; display: flex; justify-content: center;align-items: center; width: 100px; height: 38px; margin-top: 36px;background: #3da8f0;">取消</div>
|
||||
<div style="border-radius: 8px; color: #fff;font-size: 16px; display: flex; justify-content: center;align-items: center; width: 100px; height: 38px; margin-top: 36px;background: #3da8f0;">确定</div>
|
||||
<div @click="falseData" style="margin-right: 30px; border-radius: 8px; color: #fff;font-size: 16px; display: flex; justify-content: center;align-items: center; width: 100px; height: 38px; margin-top: 36px;background: #3da8f0;">取消</div>
|
||||
<div @click="AddList" style="border-radius: 8px; color: #fff;font-size: 16px; display: flex; justify-content: center;align-items: center; width: 100px; height: 38px; margin-top: 36px;background: #3da8f0;">确定</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -481,8 +469,8 @@ function handleOper(record, type, status = "") {
|
||||
<img style="width: 127px; height: 70px;margin-bottom: 13px;" src="../../assets/33.png" alt="">
|
||||
<img style="width: 127px; height: 70px;margin-bottom: 13px;margin-left: 15px" src="../../assets/47.png" alt="">
|
||||
<img style="width: 127px; height: 70px;margin-bottom: 13px;margin-left: 15px" src="../../assets/49.png" alt=""> -->
|
||||
<div class="img_box_item" :style="createParam?.index==item.id?{border:'1px solid #4ea6ff'}:{}" @click="imgClick(item)" v-for="(item,index) in imgData" :key="index">
|
||||
<img style="width: 127px; height: 70px;" :src="require(`../../assets/${item.img}`)" alt="">
|
||||
<div class="img_box_item" @click="imgClick(item)" v-for="(item,index) in imgData" :key="index">
|
||||
<img :style="createParam?.index==item.id?{border:'3px solid rgba(78, 166, 255, 1)'}:{border:'1px solid #ccc'}" style="width: 127px; height: 70px;" :src="require(`../../assets/${item.img}`)" alt="">
|
||||
</div>
|
||||
</a-form-item>
|
||||
<a-form-item style="margin-left: 32px;margin-top: 24px" label="具体说明">
|
||||
|
||||
@@ -18,6 +18,12 @@ const route = useRoute()
|
||||
const router = useRouter()
|
||||
const store = useStore();
|
||||
const userInfo = computed(() => store.state.userInfo)
|
||||
const uploadAdmin = (admin)=>{
|
||||
const roleCode = userInfo.value.roleList.map((item)=>item.roleCode)
|
||||
if (admin){
|
||||
return roleCode.some(t => t == admin)
|
||||
}
|
||||
}
|
||||
console.log(route.query.id, 'idssss');
|
||||
const formState = reactive({
|
||||
reviewname: '',
|
||||
@@ -147,7 +153,7 @@ const editReviewSave = async (name, time, id) => {
|
||||
editTime.value = time
|
||||
addTeacherList()
|
||||
}
|
||||
const ViewReviewcolumns = [
|
||||
const ViewReviewcolumns = reactive([
|
||||
{
|
||||
title: '序号',
|
||||
key: 'name',
|
||||
@@ -168,17 +174,13 @@ const ViewReviewcolumns = [
|
||||
key: '认证结果',
|
||||
dataIndex: '认证结果',
|
||||
},
|
||||
{
|
||||
title: '评委-黄盛发10867418',
|
||||
key: '评委-黄盛发10867418',
|
||||
dataIndex: '评委-黄盛发10867418',
|
||||
},
|
||||
|
||||
{
|
||||
title: '平均分',
|
||||
key: '平均分',
|
||||
dataIndex: '平均分',
|
||||
},
|
||||
];
|
||||
]);
|
||||
const ViewReviewdata = ref([])
|
||||
const reviewcolumn = [
|
||||
{
|
||||
@@ -233,7 +235,7 @@ const columnsTeacher = [
|
||||
const downLoadCoures = (id) => {
|
||||
console.log(id,'id')
|
||||
if(id){
|
||||
window.open(`/activityApi/teacher/download?id=${id}`)
|
||||
window.open(`/activityApi/teacher/download?coursewareId=${id}`)
|
||||
}
|
||||
}
|
||||
//老师重置
|
||||
@@ -312,24 +314,27 @@ const getReviewList = async () => {
|
||||
const ViewReList = ref()
|
||||
const arrayLists = ref([])
|
||||
const remould = () => {
|
||||
|
||||
console.log(2222);
|
||||
console.log(ViewReList.value)
|
||||
let keys = Object.keys(ViewReList.value);
|
||||
arrayLists.value = keys.filter(key => Array.isArray(ViewReList.value[key]));
|
||||
arrayLists.value.forEach(arrayKey => {
|
||||
if (!ViewReviewcolumns.some(column => column.key === arrayKey)) {
|
||||
ViewReviewcolumns.push({
|
||||
title: arrayKey,
|
||||
key: arrayKey,
|
||||
dataIndex: arrayKey,
|
||||
});
|
||||
if(arrayLists.value.length!=0){
|
||||
arrayLists.value.forEach(arrayKey => {
|
||||
if (!ViewReviewcolumns.some(column => column.key === arrayKey)) {
|
||||
ViewReviewcolumns.push({
|
||||
title: arrayKey,
|
||||
key: arrayKey,
|
||||
dataIndex: arrayKey,
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
for (let i = 0; i < ViewReList.value[arrayLists.value[0]].length; i++) {
|
||||
const obj = {};
|
||||
for (const key of arrayLists.value) {
|
||||
obj[key] = ViewReList.value[key][i];
|
||||
}
|
||||
ViewReviewdata.value.push(obj);
|
||||
}
|
||||
});
|
||||
ViewReviewdata.value = arrayLists.value.map((key, index) => {
|
||||
return Object.fromEntries([key, ViewReList.value[key][index]]);
|
||||
});
|
||||
console.log(ViewReviewdata.value, '基础上九四');
|
||||
}
|
||||
}
|
||||
const getreviewdetail = async (object) => {
|
||||
ViewReviewShow.value = true
|
||||
@@ -515,6 +520,13 @@ onMounted(() => {
|
||||
})
|
||||
const activeName = ref('first')
|
||||
const ViewReviewShow = ref(null)
|
||||
watch(ViewReviewShow,(val)=>{
|
||||
console.log(val,'val')
|
||||
if(!val){
|
||||
ViewReviewdata.value = []
|
||||
|
||||
}
|
||||
})
|
||||
const columns = [
|
||||
{
|
||||
title: '姓名',
|
||||
@@ -1237,7 +1249,7 @@ const vwtext = ref(null)
|
||||
<img src="../../assets/2.png" alt="">
|
||||
</div>
|
||||
<div style="margin-left: 18px;">
|
||||
<div style="font-size: 18px;font-weight: 500;color: #333333;line-height: 25px;font-style: normal;">{{techerDetail?.teacherName}} {{techerDetail?.workNo}}<span style="margin-left: 8px;"> 01011098</span></div>
|
||||
<div style="font-size: 18px;font-weight: 500;color: #333333;line-height: 25px;font-style: normal;">{{techerDetail?.teacherName}}<span style="margin-left: 8px;"> {{techerDetail?.teacherNo}}</span></div>
|
||||
<div style="font-size: 14px;color: #979797;margin-top: 12px;">{{techerDetail?.orgName}}</div>
|
||||
<div style="font-size: 14px;color: #979797;">{{techerDetail?.orgPath}} {{techerDetail?.bandCode}}</div>
|
||||
</div>
|
||||
@@ -1261,9 +1273,9 @@ const vwtext = ref(null)
|
||||
<div style="display:flex;">
|
||||
<div style="padding-left:16px; width: 136px;height: 56px;background: #FFFFFF;border: 1px solid #F0F6FC;line-height: 56px;">课程终稿</div>
|
||||
<div style="width: 559px;height: 56px;line-height: 56px;border: 1px solid #F0F6FC;padding-left:16px;">
|
||||
<img src="../../assets/images/gratefulteacher/ppt.png" alt="">
|
||||
学习能力提升课件.pptx
|
||||
<span style="color:#3da8f0" @click="downLoadCoures(techerDetail?.coursewareId)">下载</span>
|
||||
<img v-if="techerDetail?.coursewareName" src="../../assets/images/gratefulteacher/ppt.png" alt="">
|
||||
{{ techerDetail?.coursewareName?techerDetail?.coursewareName:''}}
|
||||
<span v-if="techerDetail?.coursewareName" style="color:#3da8f0" @click="downLoadCoures(techerDetail?.coursewareId)">下载</span>
|
||||
</div>
|
||||
<div style="width: 136px;height: 56px;line-height: 56px;background: #FFFFFF;border: 1px solid #F0F6FC;padding-left:16px;">上传时间</div>
|
||||
<div style="width: 342px;height: 56px;line-height: 56px;border: 1px solid #F0F6FC;padding-left:16px;">{{techerDetail?.uploadTime}}</div>
|
||||
|
||||
Reference in New Issue
Block a user