Merge branch 'zcwy-0511-out' of https://codeup.aliyun.com/648097ddb583fece2f059e59/vue/fe-manage into zcwy-0511-out
# Conflicts: # src/views/gratefulteacher/LecturerManagement.vue
@@ -121,4 +121,9 @@ export const deleteCourse = (data) => http.post('/activityApi/examine/deleteCour
|
||||
export const addCourse = (data) => http.post('/activityApi/examine/addCourse',data)
|
||||
//保存导入的教师信息
|
||||
export const saveTeacher = (data) => http.post('/activityApi/teacher/saveTeacher',data)
|
||||
|
||||
//退回初稿或终稿
|
||||
export const backDraft = (data) => http.post('/activityApi/examine/rejected',data)
|
||||
//获取教师详情
|
||||
export const getDataById = (data) => http.post('/activityApi/teacher/getDataById',data)
|
||||
//获取认证状态
|
||||
export const getCertificationProcess = (data) => http.post('/activityApi/teacher/getCertificationProcess',data)
|
||||
|
||||
BIN
src/assets/images/gratefulteacher/e1.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
src/assets/images/gratefulteacher/ppt.png
Normal file
|
After Width: | Height: | Size: 834 B |
BIN
src/assets/images/gratefulteacher/s1.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
src/assets/images/gratefulteacher/s2.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/gratefulteacher/s3.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/images/gratefulteacher/s4.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/gratefulteacher/su1.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
src/assets/images/gratefulteacher/su2.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
src/assets/images/gratefulteacher/su3.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/gratefulteacher/su4.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/gratefulteacher/su5.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
src/assets/images/gratefulteacher/su6.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
src/assets/images/gratefulteacher/su7.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
@@ -96,7 +96,7 @@
|
||||
</div>
|
||||
<div class="cancel" style="margin-left: 15px"></div>
|
||||
</div>
|
||||
<div class="defeat">
|
||||
<div class="defeat" v-if="errorIds.length > 0">
|
||||
<div class="detext" @click="downloadEeeorData">
|
||||
下载失败数据
|
||||
</div>
|
||||
@@ -232,6 +232,9 @@ export default {
|
||||
teacherIds:state.successIds
|
||||
}).then(res=>{
|
||||
console.log(res,'res')
|
||||
if(res.code == 200){
|
||||
ctx.emit("AddImpStuvisibleClose", state.isAddStudent);
|
||||
}
|
||||
})
|
||||
state.successIds = []
|
||||
state.errorIds = []
|
||||
@@ -246,7 +249,7 @@ export default {
|
||||
state.downloadErrUrl = "";
|
||||
ctx.emit("update:AddImpStuvisible", false);
|
||||
// 通知父组件重新获取学员列表
|
||||
ctx.emit("AddImpStuvisibleClose", state.isAddStudent);
|
||||
// ctx.emit("AddImpStuvisibleClose", state.isAddStudent);
|
||||
state.isAddStudent = false;
|
||||
};
|
||||
|
||||
@@ -327,8 +330,8 @@ export default {
|
||||
|
||||
// 下载失败数据
|
||||
const downloadEeeorData = () => {
|
||||
if (state.downloadErrUrl !== "") {
|
||||
window.open(`/activityApi/teacher/errorExport?ids=${state.errorIds}`);
|
||||
if (state.errorIds.length !== 0) {
|
||||
window.open(`/activityApi/teacher/errorExport?ids=${state.errorIds.join(',')}`);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -128,6 +128,15 @@ const OnlineLearning = async () => {
|
||||
}
|
||||
})
|
||||
}
|
||||
//创建认证
|
||||
const createData = () => {
|
||||
createParam.value = {
|
||||
name: '',
|
||||
description: '',
|
||||
cover: '',
|
||||
}
|
||||
visible.value = true
|
||||
}
|
||||
//删除数据
|
||||
const deleteReview = (record) =>{
|
||||
dialog({
|
||||
@@ -202,6 +211,7 @@ console.log(999);
|
||||
}
|
||||
//重置
|
||||
const handleRest = ()=>{
|
||||
searchValue.value = null
|
||||
getlist()
|
||||
|
||||
}
|
||||
@@ -367,7 +377,7 @@ function handleOper(record, type, status = "") {
|
||||
<div class="btns" @click="centerDialogVisible=true">
|
||||
<div class="btn btn3">
|
||||
<div class="search"></div>
|
||||
<div class="btnText" @click="visible=true">创建认证</div>
|
||||
<div class="btnText" @click="createData">创建认证</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<script setup>
|
||||
import { ref, reactive, onMounted, computed } from 'vue'
|
||||
<script setup >
|
||||
import { ref,reactive,onMounted,computed } from 'vue'
|
||||
import { message } from 'ant-design-vue';
|
||||
import AddInstructor from './AddInstructor.vue'
|
||||
import LeadInstructor from './LeadInstructor.vue'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import { getTeacherList, deleTeTeacher, getReview, delreview, reviewdetail, reviewSave, endreview, addTeacher, editreview } from '@/api/examineApi.js'
|
||||
import {getTeacherList,deleTeTeacher,getReview,delreview,reviewdetail,reviewSave,endreview,addTeacher,editreview,backDraft,getDataById,getCertificationProcess} from '@/api/examineApi.js'
|
||||
import dialog from "@/utils/dialog";
|
||||
// import QrCode from './QrCode.vue'
|
||||
import ViewReview from './ViewReview.vue'
|
||||
@@ -221,6 +221,17 @@ const columnsTeacher = [
|
||||
dataIndex: 'reviewTime',
|
||||
},
|
||||
]
|
||||
//认证流程
|
||||
const attestation = [
|
||||
{name:'初稿已上传',success:'su3.png',error:'',initial:''},
|
||||
{name:'线上学习已完成',success:'su4.png',error:'',initial:'s1.png'},
|
||||
{name:'线下辅导已完成',success:'su5.png',error:'',initial:'s2.png'},
|
||||
{name:'终稿已上传',success:'su1.png',error:'',initial:'s3.png'},
|
||||
{name:'认证未通过',success:'su2.png',error:'e1.png',initial:'s4.png'},
|
||||
{name:'线下辅导已完成',success:'su5.png',error:'',initial:'s2.png'},
|
||||
{name:'终稿已上传',success:'su1.png',error:'',initial:'s3.png'},
|
||||
{name:'认证',success:'su2.png',error:'e1.png',initial:'s4.png'},
|
||||
]
|
||||
//老师重置
|
||||
const resetTeacher = () => {
|
||||
addTeacherList()
|
||||
@@ -405,34 +416,51 @@ function handleOper(record, type, status = "") {
|
||||
});
|
||||
}
|
||||
//搜索教师
|
||||
const SearchTeachers = async () => {
|
||||
const SearchTeachers =async()=>{
|
||||
const res = await getTeacherList({
|
||||
PageNo: 1,
|
||||
PageSize: 8,
|
||||
examineId: route.query.id.toString(),
|
||||
secondResult: value2.value.toString(),
|
||||
reviewResult: value.value.toString(),
|
||||
keyWord: value3.value.toString()
|
||||
pageNo: 1,
|
||||
pageSize: 8,
|
||||
examineId: route.query.id,
|
||||
secondResult: value2.value,
|
||||
reviewResult:value.value,
|
||||
keyWord:value3.value
|
||||
})
|
||||
total.value = res.data.total
|
||||
data.value = res.data.records
|
||||
|
||||
if(value2.value=='1'){
|
||||
getTeacher2()
|
||||
}
|
||||
}
|
||||
//重置教师
|
||||
const handleRest = () => {
|
||||
const handleRest=()=>{
|
||||
value2.value = null
|
||||
value.value = null
|
||||
value3.value = null
|
||||
getTeacher()
|
||||
|
||||
getTeacher2()
|
||||
}
|
||||
//刷新列表
|
||||
const translateTeacher = (flag) => {
|
||||
handleRest()
|
||||
}
|
||||
const translate = (flag) => {
|
||||
handleRest()
|
||||
}
|
||||
//2次认证
|
||||
const total2 = ref(null)
|
||||
const data2 = ref([])
|
||||
//教师列表2
|
||||
const getTeacher2 = async () => {
|
||||
const getTeacher2 =async()=>{
|
||||
const res = await getTeacherList({
|
||||
PageNo: 1,
|
||||
PageSize: 8,
|
||||
pageNo: 1,
|
||||
pageSize: 8,
|
||||
examineId: route.query.id.toString(),
|
||||
secondResult: '0',
|
||||
|
||||
secondResult: '1',
|
||||
reviewResult:value.value,
|
||||
keyWord:value3.value
|
||||
})
|
||||
console.log(res, 'resaaaa')
|
||||
console.log(res,'resaaaa')
|
||||
total2.value = res.data.total
|
||||
data2.value = res.data.records
|
||||
}
|
||||
@@ -446,14 +474,14 @@ const onChangeTeacher = (pageNo, pageSize) => {
|
||||
getTeacher()
|
||||
};
|
||||
//教师列表
|
||||
const getTeacher = async () => {
|
||||
const getTeacher =async()=>{
|
||||
const res = await getTeacherList({
|
||||
PageNo: current1.value,
|
||||
PageSize: 8,
|
||||
pageNo: current1.value,
|
||||
pageSize: 8,
|
||||
examineId: route.query.id.toString(),
|
||||
secondResult: "0"
|
||||
})
|
||||
console.log(res, 'resaaaa')
|
||||
console.log(res,'resaaaa')
|
||||
total.value = res.data.total
|
||||
data.value = res.data.records
|
||||
}
|
||||
@@ -473,7 +501,7 @@ onMounted(() => {
|
||||
}
|
||||
getTeacher()
|
||||
getReviewList()
|
||||
// getTeacher2()
|
||||
getTeacher2()
|
||||
})
|
||||
const activeName = ref('first')
|
||||
const ViewReviewShow = ref(null)
|
||||
@@ -571,6 +599,52 @@ const twiceolumns = [
|
||||
key: 'action',
|
||||
},
|
||||
];
|
||||
const twiceolumnsOne = [
|
||||
{
|
||||
title: '序号',
|
||||
dataIndex: 'index',
|
||||
key: 'index',
|
||||
customRender: ({ text,record,index }) => index + 1
|
||||
},
|
||||
{
|
||||
title: '评委姓名',
|
||||
dataIndex: 'judgesName',
|
||||
key: 'judgesName',
|
||||
},
|
||||
{
|
||||
title: '评委工号',
|
||||
dataIndex: 'judgesWorkNum',
|
||||
key: 'judgesWorkNum',
|
||||
},
|
||||
{
|
||||
title: '评分',
|
||||
dataIndex: 'score',
|
||||
key: 'score',
|
||||
},
|
||||
];
|
||||
const twiceolumnsTwo = [
|
||||
{
|
||||
title: '序号',
|
||||
dataIndex: 'index',
|
||||
key: 'index',
|
||||
customRender: ({ text,record,index }) => index + 1
|
||||
},
|
||||
{
|
||||
title: '评委姓名',
|
||||
dataIndex: 'judgesName',
|
||||
key: 'judgesName',
|
||||
},
|
||||
{
|
||||
title: '评委工号',
|
||||
dataIndex: 'judgesWorkNum',
|
||||
key: 'judgesWorkNum',
|
||||
},
|
||||
{
|
||||
title: '评分',
|
||||
dataIndex: 'score',
|
||||
key: 'score',
|
||||
},
|
||||
]
|
||||
const selectedRowKeysList = ref(null)
|
||||
const rowSelection = {
|
||||
onChange: async (selectedRowKeys, selectedRows) => {
|
||||
@@ -617,10 +691,49 @@ const delVisible = ref(false)
|
||||
|
||||
|
||||
const activeKey = ref('1');
|
||||
const showViewInstructor = ref(false)
|
||||
const show = () => {
|
||||
showViewInstructor.value = true
|
||||
|
||||
const showViewInstructor =ref(false)
|
||||
const techerDetail = ref(null)
|
||||
const processData = ref()
|
||||
const show= async (record)=>{
|
||||
showViewInstructor.value=true
|
||||
await getDataById({teacherId:record.teacherId}).then(res=>{
|
||||
console.log(res,'res')
|
||||
if(res.code == 200){
|
||||
console.log(res.data,'data')
|
||||
techerDetail.value = res.data
|
||||
}
|
||||
})
|
||||
await getCertificationProcess({teacherId:record.teacherId}).then(res=>{
|
||||
console.log(res,'getCertificationProcess')
|
||||
processData = res.data
|
||||
})
|
||||
}
|
||||
const returnPage = (record) => {
|
||||
console.log(record,'record')
|
||||
dialog({
|
||||
content: "确定退回初稿吗?",
|
||||
ok:()=>{
|
||||
backDraft({
|
||||
teacherId:record.id,
|
||||
version:0
|
||||
}).then(res=>{
|
||||
console.log(res,'res')
|
||||
})
|
||||
}
|
||||
});
|
||||
}
|
||||
const returnPageTwo = (record) => {
|
||||
dialog({
|
||||
content: "确定退回初稿吗?",
|
||||
ok:()=>{
|
||||
backDraft({
|
||||
teacherId:record.id,
|
||||
version:1
|
||||
}).then(res=>{
|
||||
console.log(res,'res')
|
||||
})
|
||||
}
|
||||
});
|
||||
}
|
||||
const InitiateReviewShow = ref(false)
|
||||
//二维码显示
|
||||
@@ -691,7 +804,7 @@ const vwtext = ref(null)
|
||||
|
||||
</div>
|
||||
<div class="select" style="margin-left: 15px;">
|
||||
<a-select v-model:value="value2" style="width: 270px; border-radius: 8px" placeholder="请选择二次认证">
|
||||
<a-select v-model:value="value2" style="width: 270px; border-radius: 8px" placeholder="请选择二次认证" >
|
||||
<a-select-option value="1">是</a-select-option>
|
||||
<a-select-option value="0">否</a-select-option>
|
||||
</a-select>
|
||||
@@ -708,12 +821,12 @@ const vwtext = ref(null)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: flex; align-items: center; margin-top: 15px;margin-bottom: 15px;">
|
||||
<div style="display: flex; align-items: center; margin-top: 15px;margin-bottom: 15px;">
|
||||
<div class="btns" style="margin-left: 15px;">
|
||||
<proj-check-ship>
|
||||
<proj-check-ship @finash="translate">
|
||||
<div class="btn btn3">
|
||||
<div class="search"></div>
|
||||
<div class="btnText" @click="Tecvisible = true">添加讲师</div>
|
||||
<div class="btnText" @click="Tecvisible=true">添加讲师</div>
|
||||
</div>
|
||||
</proj-check-ship>
|
||||
|
||||
@@ -721,20 +834,16 @@ const vwtext = ref(null)
|
||||
<div class="btns" style="margin-left: 15px;">
|
||||
<div class="btn btn3">
|
||||
<div class="search"></div>
|
||||
<div class="btnText" @click="AddImpStuvisible = true">导入讲师</div>
|
||||
<div class="btnText" @click="AddImpStuvisible=true">导入讲师</div>
|
||||
</div>
|
||||
</div>
|
||||
<a-button type="primary"
|
||||
style="color: #fff ;background-color: #4ea6ff; width: 100px; height: 40px; border-radius: 8px;margin-left: 15px; padding-left: 10px;">导出讲师</a-button>
|
||||
<a-button type="primary" @click="batchhandleOper()"
|
||||
style="width: 100px; height: 40px; border-radius: 8px;margin-left: 12px; padding-left: 10px;"
|
||||
ghost>批量删除</a-button>
|
||||
</div>
|
||||
<!-- 表格 -->
|
||||
<a-button type="primary" @click="exportExcel" style="color: #fff ;background-color: #4ea6ff; width: 100px; height: 40px; border-radius: 8px;margin-left: 15px; padding-left: 10px;">导出讲师</a-button>
|
||||
<a-button type="primary" @click="batchhandleOper()" style="width: 100px; height: 40px; border-radius: 8px;margin-left: 12px; padding-left: 10px;" ghost>批量删除</a-button>
|
||||
</div>
|
||||
<!-- 表格 -->
|
||||
<div style="display: flex; flex-direction: column;margin-left: 15px">
|
||||
<div class="table">
|
||||
<a-table :row-selection="rowSelection" row-key="id" :columns="columns" :data-source="data"
|
||||
:scroll="{ x: 1000 }" :pagination="false">
|
||||
<a-table :row-selection="rowSelection" row-key="id" :columns="columns" :data-source="data" :scroll="{ x: 1000 }" :pagination="false">
|
||||
<template #headerCell="{ column }">
|
||||
<template v-if="column.key === 'name'">
|
||||
<span>
|
||||
@@ -752,35 +861,35 @@ const vwtext = ref(null)
|
||||
|
||||
<template v-else-if="column.key === 'draftStatus'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'onlineLearning'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template> <template v-else-if="column.key === 'offlineTutoring'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template> <template v-else-if="column.key === 'endStatus'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'reviewResult'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'action'">
|
||||
<span style="text-align: center;">
|
||||
|
||||
<a style="margin-right: 7px;" @click="show()">
|
||||
<a style="margin-right: 7px;" @click="show(record)">
|
||||
查看
|
||||
</a>
|
||||
<a style="margin-right: 7px;" @click="show()">
|
||||
退回初搞
|
||||
<a v-if="record.draftStatus == 0" style="margin-right: 7px;" @click="returnPage(record)">
|
||||
退回初稿
|
||||
</a>
|
||||
<a style="color: #de2139" @click="handleOper(record, 'del')">删除</a>
|
||||
</span>
|
||||
@@ -790,15 +899,13 @@ const vwtext = ref(null)
|
||||
</div>
|
||||
</div>
|
||||
<div style="text-align: center; margin-top: 18px;">
|
||||
<a-pagination :showSizeChanger="false" v-model:current="current1" show-quick-jumper :total="total"
|
||||
@change="onChangeTeacher" />
|
||||
<a-pagination :showSizeChanger="false" v-model:current="current1" show-quick-jumper :total="total" @change="onChangeTeacher" />
|
||||
</div>
|
||||
<div style="height: 1px; width: 100%; background-color: #eceff4; margin-top: 15px;margin-left: 14px;"></div>
|
||||
<div style="margin-left: 14px; margin-top: 15px;margin-bottom: 12px;">二次认证</div>
|
||||
<div style="height: 1px; width: 100%; background-color: #eceff4; margin-top: 15px;margin-left: 14px;"></div>
|
||||
<div style="margin-left: 14px; margin-top: 15px;margin-bottom: 12px;" >二次认证</div>
|
||||
<div style="display: flex; flex-direction: column;margin-left: 15px">
|
||||
<div class="table">
|
||||
<a-table :row-selection="rowSelection" row-key="id" :columns="twiceolumns" :data-source="data2"
|
||||
:scroll="{ x: 1000 }" :pagination="false">
|
||||
<a-table :row-selection="rowSelection" row-key="id" :columns="twiceolumns" :data-source="data2" :scroll="{ x: 1000 }" :pagination="false">
|
||||
<template #headerCell="{ column }">
|
||||
<template v-if="column.key === '姓名'">
|
||||
<span>
|
||||
@@ -807,7 +914,7 @@ const vwtext = ref(null)
|
||||
</template>
|
||||
</template>
|
||||
|
||||
<template #bodyCell="{ column, record, text }">
|
||||
<template #bodyCell="{ column, record,text }">
|
||||
<template v-if="column.key === 'name'">
|
||||
<a>
|
||||
{{ record.name }}
|
||||
@@ -816,25 +923,25 @@ const vwtext = ref(null)
|
||||
|
||||
<template v-else-if="column.key === 'draftStatus'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'onlineLearning'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template> <template v-else-if="column.key === 'offlineTutoring'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template> <template v-else-if="column.key === 'endStatus'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'reviewResult'">
|
||||
<span>
|
||||
{{ text === 1 ? '未开始' : (text === 2 ? '进行中' : '已完成') }}
|
||||
{{ text===1?'未开始':(text===2?'进行中':'已完成') }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'action'">
|
||||
@@ -843,6 +950,9 @@ const vwtext = ref(null)
|
||||
<a style="margin-right: 7px;">
|
||||
查看
|
||||
</a>
|
||||
<a v-if="record.draftStatus == 0" style="margin-right: 7px;" @click="returnPageTwo(record)">
|
||||
退回终稿
|
||||
</a>
|
||||
<a style="color: #de2139">删除</a>
|
||||
</span>
|
||||
</template>
|
||||
@@ -854,17 +964,20 @@ const vwtext = ref(null)
|
||||
</div>
|
||||
|
||||
|
||||
<LeadInstructor :imprtlecturer='imprtlecturer' @CloseImprt="showImprtlecturer"></LeadInstructor>
|
||||
<!-- <LeadInstructor :imprtlecturer='imprtlecturer' @CloseImprt="showImprtlecturer"></LeadInstructor>
|
||||
<AddInstructor :AddSwitch="AddSwitch" @myClick="handleChildEmit"></AddInstructor>
|
||||
<proj-check-ship>
|
||||
<a-button class="cus-btn" style="background: #4ea6ff; color: #fff">
|
||||
<template #icon><img style="margin-right: 10px"
|
||||
src="../../assets/images/courseManage/add0.png" /></template>
|
||||
<template #icon
|
||||
><img
|
||||
style="margin-right: 10px"
|
||||
src="../../assets/images/courseManage/add0.png"
|
||||
/></template>
|
||||
添加学员
|
||||
</a-button>
|
||||
</proj-check-ship>
|
||||
<!-- 导入学员抽屉 -->
|
||||
<imp-stu v-model:AddImpStuvisible="AddImpStuvisible" />
|
||||
</proj-check-ship> -->
|
||||
<!-- 导入讲师抽屉 -->
|
||||
<imp-stu @AddImpStuvisibleClose="translateTeacher" v-model:AddImpStuvisible="AddImpStuvisible" :courseId="route.query.id"/>
|
||||
</a-tab-pane>
|
||||
|
||||
<a-tab-pane key="2" tab="发起评审" force-render>
|
||||
@@ -1071,61 +1184,49 @@ const vwtext = ref(null)
|
||||
<div class="drawerMain">
|
||||
<div class="header">
|
||||
<div class="headerTitle">查看讲师</div>
|
||||
<img style="width: 29px; height: 29px; cursor: pointer" src="../../assets/images/basicinfo/close.png"
|
||||
@click="closeDrawer" />
|
||||
<img v-if="techerDetail?.avatar" style="width: 29px; height: 29px; cursor: pointer" :src="techerDetail?.avatar"/>
|
||||
<img
|
||||
v-else
|
||||
style="width: 29px; height: 29px; cursor: pointer"
|
||||
src="../../assets/images/basicinfo/close.png"
|
||||
/>
|
||||
</div>
|
||||
<div>
|
||||
<div >
|
||||
<div style="display: flex;width: 100%; height: 88px;">
|
||||
<div>
|
||||
<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;">张三
|
||||
<span style="margin-left: 8px;"> 01011098</span></div>
|
||||
<div style="font-size: 14px;color: #979797;margin-top: 12px;">后台(业务支援体系)/BOEU/企划中心/数据资产部数据资产部</div>
|
||||
<div style="font-size: 14px;color: #979797;">产品企划岗 Band 1</div>
|
||||
<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: 14px;color: #979797;margin-top: 12px;">{{techerDetail?.orgName}}</div>
|
||||
<div style="font-size: 14px;color: #979797;">{{techerDetail?.orgPath}} {{techerDetail?.bandCode}}</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div style="margin-top: 24px">
|
||||
<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;">
|
||||
关于提升学习能力
|
||||
</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;">影响力
|
||||
</div>
|
||||
<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;">{{techerDetail?.courseName}}</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?.courseContent}}</div>
|
||||
|
||||
</div>
|
||||
<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;">
|
||||
这是我的认证课程,关于提升学习能力的课程</div>
|
||||
<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;">{{techerDetail?.courseIntroduction}}</div>
|
||||
|
||||
|
||||
</div>
|
||||
<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="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="" alt="">
|
||||
学习能力提升课件.pptx
|
||||
<a href="">下载</a>
|
||||
</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;">
|
||||
2024.04.10 20:58</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>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1133,14 +1234,15 @@ const vwtext = ref(null)
|
||||
<div style='font-size: 18px;font-weight: 500;margin-top: 39px;'>
|
||||
认证流程
|
||||
</div>
|
||||
<div
|
||||
style="margin-top: 13px; height: 125px;width: 100%;display: flex;align-items: center;justify-content: center;">
|
||||
<div style="margin-top: 13px; height: 125px;width: 100%;display: flex;align-items: center;justify-content: center;" >
|
||||
<div class="step_box" v-for="item in 5">
|
||||
<div v-if="item != 1" style="height: 1px;width: 81px;background-color: #DEDEDE;"></div>
|
||||
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||
<img src="../../assets/8.png" alt="">
|
||||
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
||||
</div>
|
||||
<div style="height: 1px;width: 81px;background-color: #DEDEDE;"></div>
|
||||
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||
</div>
|
||||
<!-- <div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||
<img src="../../assets/8.png" alt="">
|
||||
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
||||
</div>
|
||||
@@ -1174,75 +1276,23 @@ const vwtext = ref(null)
|
||||
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||
<img src="../../assets/8.png" alt="">
|
||||
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
</div>
|
||||
<div style="font-size: 14px;margin-bottom: 15px;">评委打分信息表:</div>
|
||||
<div>
|
||||
<a-table :columns="twiceolumns" :data-source="data" :scroll="{ x: 1000 }" :pagination="false">
|
||||
<template #headerCell="{ column }">
|
||||
<template v-if="column.key === 'name'">
|
||||
<span>
|
||||
姓名
|
||||
</span>
|
||||
</template>
|
||||
</template>
|
||||
<a-table :columns="twiceolumnsOne" :data-source="techerDetail?.firstList" :scroll="{ x: 1000 }" :pagination="false">
|
||||
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.key === 'name'">
|
||||
<a>
|
||||
{{ record.name }}
|
||||
</a>
|
||||
</template>
|
||||
|
||||
<template v-else-if="column.key === 'tags'">
|
||||
<span>
|
||||
<a-tag v-for="tag in record.tags" :key="tag"
|
||||
:color="tag === 'loser' ? 'volcano' : tag.length > 5 ? 'geekblue' : 'green'">
|
||||
{{ tag.toUpperCase() }}
|
||||
</a-tag>
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'action'">
|
||||
|
||||
</template>
|
||||
</template>
|
||||
</a-table>
|
||||
</div>
|
||||
<div style="font-size: 14px;margin-bottom: 19px;margin-top: 40px;font-size: 18px;font-weight: 500;">二次认证</div>
|
||||
<div style="font-size: 14px;margin-bottom: 15px;">评委打分信息表:</div>
|
||||
<div>
|
||||
<a-table :columns="twiceolumns" :data-source="data" :scroll="{ x: 1000 }" :pagination="false">
|
||||
<template #headerCell="{ column }">
|
||||
<template v-if="column.key === 'name'">
|
||||
<span>
|
||||
姓名
|
||||
</span>
|
||||
</template>
|
||||
</template>
|
||||
<a-table :columns="twiceolumnsTwo" :data-source="techerDetail?.secondList" :scroll="{ x: 1000 }" :pagination="false">
|
||||
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.key === 'name'">
|
||||
<a>
|
||||
{{ record.name }}
|
||||
</a>
|
||||
</template>
|
||||
|
||||
<template v-else-if="column.key === 'tags'">
|
||||
<span>
|
||||
<a-tag v-for="tag in record.tags" :key="tag"
|
||||
:color="tag === 'loser' ? 'volcano' : tag.length > 5 ? 'geekblue' : 'green'">
|
||||
{{ tag.toUpperCase() }}
|
||||
</a-tag>
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="column.key === 'action'">
|
||||
|
||||
</template>
|
||||
</template>
|
||||
</a-table>
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -1336,7 +1386,6 @@ const vwtext = ref(null)
|
||||
:deep(.ant-table-tbody > tr > td) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.btn1 {
|
||||
.search {
|
||||
width: 15px;
|
||||
@@ -1353,9 +1402,9 @@ const vwtext = ref(null)
|
||||
}
|
||||
}
|
||||
|
||||
.btn1:active {
|
||||
.btn1:active {
|
||||
background: #0982ff;
|
||||
}
|
||||
}
|
||||
|
||||
.btn2:active {
|
||||
background: rgba(64, 158, 255, 0.2);
|
||||
@@ -1445,4 +1494,10 @@ const vwtext = ref(null)
|
||||
|
||||
// :deep(.ant-form-item-label){
|
||||
// text-align: left;
|
||||
// }</style>
|
||||
// }
|
||||
.step_box{
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
</style>
|
||||
|
||||