讲师认证管理认证
@@ -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 addCourse = (data) => http.post('/activityApi/examine/addCourse',data)
|
||||||
//保存导入的教师信息
|
//保存导入的教师信息
|
||||||
export const saveTeacher = (data) => http.post('/activityApi/teacher/saveTeacher',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>
|
||||||
<div class="cancel" style="margin-left: 15px"></div>
|
<div class="cancel" style="margin-left: 15px"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="defeat">
|
<div class="defeat" v-if="errorIds.length > 0">
|
||||||
<div class="detext" @click="downloadEeeorData">
|
<div class="detext" @click="downloadEeeorData">
|
||||||
下载失败数据
|
下载失败数据
|
||||||
</div>
|
</div>
|
||||||
@@ -232,6 +232,9 @@ export default {
|
|||||||
teacherIds:state.successIds
|
teacherIds:state.successIds
|
||||||
}).then(res=>{
|
}).then(res=>{
|
||||||
console.log(res,'res')
|
console.log(res,'res')
|
||||||
|
if(res.code == 200){
|
||||||
|
ctx.emit("AddImpStuvisibleClose", state.isAddStudent);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
state.successIds = []
|
state.successIds = []
|
||||||
state.errorIds = []
|
state.errorIds = []
|
||||||
@@ -246,7 +249,7 @@ export default {
|
|||||||
state.downloadErrUrl = "";
|
state.downloadErrUrl = "";
|
||||||
ctx.emit("update:AddImpStuvisible", false);
|
ctx.emit("update:AddImpStuvisible", false);
|
||||||
// 通知父组件重新获取学员列表
|
// 通知父组件重新获取学员列表
|
||||||
ctx.emit("AddImpStuvisibleClose", state.isAddStudent);
|
// ctx.emit("AddImpStuvisibleClose", state.isAddStudent);
|
||||||
state.isAddStudent = false;
|
state.isAddStudent = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -327,8 +330,8 @@ export default {
|
|||||||
|
|
||||||
// 下载失败数据
|
// 下载失败数据
|
||||||
const downloadEeeorData = () => {
|
const downloadEeeorData = () => {
|
||||||
if (state.downloadErrUrl !== "") {
|
if (state.errorIds.length !== 0) {
|
||||||
window.open(`/activityApi/teacher/errorExport?ids=${state.errorIds}`);
|
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) =>{
|
const deleteReview = (record) =>{
|
||||||
dialog({
|
dialog({
|
||||||
@@ -202,6 +211,7 @@ console.log(999);
|
|||||||
}
|
}
|
||||||
//重置
|
//重置
|
||||||
const handleRest = ()=>{
|
const handleRest = ()=>{
|
||||||
|
searchValue.value = null
|
||||||
getlist()
|
getlist()
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -362,7 +372,7 @@ function handleOper(record, type, status = "") {
|
|||||||
<div class="btns" @click="centerDialogVisible=true">
|
<div class="btns" @click="centerDialogVisible=true">
|
||||||
<div class="btn btn3">
|
<div class="btn btn3">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText" @click="visible=true">创建认证</div>
|
<div class="btnText" @click="createData">创建认证</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { message } from 'ant-design-vue';
|
|||||||
import AddInstructor from './AddInstructor.vue'
|
import AddInstructor from './AddInstructor.vue'
|
||||||
import LeadInstructor from './LeadInstructor.vue'
|
import LeadInstructor from './LeadInstructor.vue'
|
||||||
import { useRoute, useRouter } from 'vue-router'
|
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 dialog from "@/utils/dialog";
|
||||||
// import QrCode from './QrCode.vue'
|
// import QrCode from './QrCode.vue'
|
||||||
import ViewReview from './ViewReview.vue'
|
import ViewReview from './ViewReview.vue'
|
||||||
@@ -139,6 +139,17 @@ const columnsTeacher = [
|
|||||||
dataIndex: 'reviewTime',
|
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 = ()=>{
|
const resetTeacher = ()=>{
|
||||||
addTeacherList()
|
addTeacherList()
|
||||||
@@ -317,18 +328,34 @@ function handleOper(record, type, status = "") {
|
|||||||
//搜索教师
|
//搜索教师
|
||||||
const SearchTeachers =async()=>{
|
const SearchTeachers =async()=>{
|
||||||
const res = await getTeacherList({
|
const res = await getTeacherList({
|
||||||
PageNo: 1,
|
pageNo: 1,
|
||||||
PageSize: 8,
|
pageSize: 8,
|
||||||
examineId: route.query.id.toString(),
|
examineId: route.query.id,
|
||||||
secondResult: value2.value.toString(),
|
secondResult: value2.value,
|
||||||
reviewResult:value.value.toString(),
|
reviewResult:value.value,
|
||||||
keyWord:value3.value.toString()
|
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()
|
getTeacher()
|
||||||
|
getTeacher2()
|
||||||
|
}
|
||||||
|
//刷新列表
|
||||||
|
const translateTeacher = (flag) => {
|
||||||
|
handleRest()
|
||||||
|
}
|
||||||
|
const translate = (flag) => {
|
||||||
|
handleRest()
|
||||||
}
|
}
|
||||||
//2次认证
|
//2次认证
|
||||||
const total2 = ref(null)
|
const total2 = ref(null)
|
||||||
@@ -336,11 +363,12 @@ const data2 = ref([])
|
|||||||
//教师列表2
|
//教师列表2
|
||||||
const getTeacher2 =async()=>{
|
const getTeacher2 =async()=>{
|
||||||
const res = await getTeacherList({
|
const res = await getTeacherList({
|
||||||
PageNo: 1,
|
pageNo: 1,
|
||||||
PageSize: 8,
|
pageSize: 8,
|
||||||
examineId: route.query.id.toString(),
|
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
|
total2.value = res.data.total
|
||||||
@@ -358,8 +386,8 @@ const onChangeTeacher = (pageNo,pageSize) => {
|
|||||||
//教师列表
|
//教师列表
|
||||||
const getTeacher =async()=>{
|
const getTeacher =async()=>{
|
||||||
const res = await getTeacherList({
|
const res = await getTeacherList({
|
||||||
PageNo: current1.value,
|
pageNo: current1.value,
|
||||||
PageSize: 8,
|
pageSize: 8,
|
||||||
examineId: route.query.id.toString(),
|
examineId: route.query.id.toString(),
|
||||||
secondResult: "0"
|
secondResult: "0"
|
||||||
})
|
})
|
||||||
@@ -383,7 +411,7 @@ onMounted(()=>{
|
|||||||
}
|
}
|
||||||
getTeacher()
|
getTeacher()
|
||||||
getReviewList()
|
getReviewList()
|
||||||
// getTeacher2()
|
getTeacher2()
|
||||||
})
|
})
|
||||||
const activeName = ref('first')
|
const activeName = ref('first')
|
||||||
const ViewReviewShow =ref(null)
|
const ViewReviewShow =ref(null)
|
||||||
@@ -481,6 +509,52 @@ const twiceolumns = [
|
|||||||
key: 'action',
|
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 selectedRowKeysList = ref(null)
|
||||||
const rowSelection = {
|
const rowSelection = {
|
||||||
onChange: async(selectedRowKeys, selectedRows) => {
|
onChange: async(selectedRowKeys, selectedRows) => {
|
||||||
@@ -514,9 +588,48 @@ const delVisible = ref(false)
|
|||||||
|
|
||||||
const activeKey = ref('1');
|
const activeKey = ref('1');
|
||||||
const showViewInstructor =ref(false)
|
const showViewInstructor =ref(false)
|
||||||
const show= ()=>{
|
const techerDetail = ref(null)
|
||||||
|
const processData = ref()
|
||||||
|
const show= async (record)=>{
|
||||||
showViewInstructor.value=true
|
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)
|
const InitiateReviewShow = ref(false)
|
||||||
//二维码显示
|
//二维码显示
|
||||||
@@ -604,7 +717,7 @@ const options1 = ref([{
|
|||||||
|
|
||||||
<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;">
|
<div class="btns" style="margin-left: 15px;">
|
||||||
<proj-check-ship>
|
<proj-check-ship @finash="translate">
|
||||||
<div class="btn btn3">
|
<div class="btn btn3">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText" @click="Tecvisible=true">添加讲师</div>
|
<div class="btnText" @click="Tecvisible=true">添加讲师</div>
|
||||||
@@ -618,7 +731,7 @@ const options1 = ref([{
|
|||||||
<div class="btnText" @click="AddImpStuvisible=true">导入讲师</div>
|
<div class="btnText" @click="AddImpStuvisible=true">导入讲师</div>
|
||||||
</div>
|
</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="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>
|
<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>
|
||||||
<!-- 表格 -->
|
<!-- 表格 -->
|
||||||
@@ -666,11 +779,11 @@ const options1 = ref([{
|
|||||||
<template v-else-if="column.key === 'action'">
|
<template v-else-if="column.key === 'action'">
|
||||||
<span style="text-align: center;">
|
<span style="text-align: center;">
|
||||||
|
|
||||||
<a style="margin-right: 7px;" @click="show()">
|
<a style="margin-right: 7px;" @click="show(record)">
|
||||||
查看
|
查看
|
||||||
</a>
|
</a>
|
||||||
<a style="margin-right: 7px;" @click="show()">
|
<a v-if="record.draftStatus == 0" style="margin-right: 7px;" @click="returnPage(record)">
|
||||||
退回初搞
|
退回初稿
|
||||||
</a>
|
</a>
|
||||||
<a style="color: #de2139" @click="handleOper(record, 'del')">删除</a>
|
<a style="color: #de2139" @click="handleOper(record, 'del')">删除</a>
|
||||||
</span>
|
</span>
|
||||||
@@ -731,6 +844,9 @@ const options1 = ref([{
|
|||||||
<a style="margin-right: 7px;">
|
<a style="margin-right: 7px;">
|
||||||
查看
|
查看
|
||||||
</a>
|
</a>
|
||||||
|
<a v-if="record.draftStatus == 0" style="margin-right: 7px;" @click="returnPageTwo(record)">
|
||||||
|
退回终稿
|
||||||
|
</a>
|
||||||
<a style="color: #de2139">删除</a>
|
<a style="color: #de2139">删除</a>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
@@ -742,7 +858,7 @@ const options1 = ref([{
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<LeadInstructor :imprtlecturer='imprtlecturer' @CloseImprt="showImprtlecturer"></LeadInstructor>
|
<!-- <LeadInstructor :imprtlecturer='imprtlecturer' @CloseImprt="showImprtlecturer"></LeadInstructor>
|
||||||
<AddInstructor :AddSwitch="AddSwitch" @myClick="handleChildEmit"></AddInstructor>
|
<AddInstructor :AddSwitch="AddSwitch" @myClick="handleChildEmit"></AddInstructor>
|
||||||
<proj-check-ship>
|
<proj-check-ship>
|
||||||
<a-button class="cus-btn" style="background: #4ea6ff; color: #fff">
|
<a-button class="cus-btn" style="background: #4ea6ff; color: #fff">
|
||||||
@@ -753,9 +869,9 @@ const options1 = ref([{
|
|||||||
/></template>
|
/></template>
|
||||||
添加学员
|
添加学员
|
||||||
</a-button>
|
</a-button>
|
||||||
</proj-check-ship>
|
</proj-check-ship> -->
|
||||||
<!-- 导入学员抽屉 -->
|
<!-- 导入讲师抽屉 -->
|
||||||
<imp-stu v-model:AddImpStuvisible="AddImpStuvisible" />
|
<imp-stu @AddImpStuvisibleClose="translateTeacher" v-model:AddImpStuvisible="AddImpStuvisible" :courseId="route.query.id"/>
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
|
|
||||||
<a-tab-pane key="2" tab="发起评审" force-render>
|
<a-tab-pane key="2" tab="发起评审" force-render>
|
||||||
@@ -988,10 +1104,11 @@ const options1 = ref([{
|
|||||||
<div class="drawerMain">
|
<div class="drawerMain">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<div class="headerTitle">查看讲师</div>
|
<div class="headerTitle">查看讲师</div>
|
||||||
|
<img v-if="techerDetail?.avatar" style="width: 29px; height: 29px; cursor: pointer" :src="techerDetail?.avatar"/>
|
||||||
<img
|
<img
|
||||||
|
v-else
|
||||||
style="width: 29px; height: 29px; cursor: pointer"
|
style="width: 29px; height: 29px; cursor: pointer"
|
||||||
src="../../assets/images/basicinfo/close.png"
|
src="../../assets/images/basicinfo/close.png"
|
||||||
@click="closeDrawer"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div >
|
<div >
|
||||||
@@ -1000,9 +1117,9 @@ const options1 = ref([{
|
|||||||
<img src="../../assets/2.png" alt="">
|
<img src="../../assets/2.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<div style="margin-left: 18px;">
|
<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: 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;">后台(业务支援体系)/BOEU/企划中心/数据资产部数据资产部</div>
|
<div style="font-size: 14px;color: #979797;margin-top: 12px;">{{techerDetail?.orgName}}</div>
|
||||||
<div style="font-size: 14px;color: #979797;">产品企划岗 Band 1</div>
|
<div style="font-size: 14px;color: #979797;">{{techerDetail?.orgPath}} {{techerDetail?.bandCode}}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@@ -1010,14 +1127,14 @@ const options1 = ref([{
|
|||||||
<div style="margin-top: 24px">
|
<div style="margin-top: 24px">
|
||||||
<div style="display:flex;">
|
<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;">关于提升学习能力</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: 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="width: 342px;height: 56px;line-height: 56px;border: 1px solid #F0F6FC;padding-left:16px;">{{techerDetail?.courseContent}}</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div style="display:flex;">
|
<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;">这是我的认证课程,关于提升学习能力的课程</div>
|
<div style="width: 559px;height: 56px;line-height: 56px;border: 1px solid #F0F6FC;padding-left:16px;">{{techerDetail?.courseIntroduction}}</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -1029,7 +1146,7 @@ const options1 = ref([{
|
|||||||
<a href="">下载</a>
|
<a href="">下载</a>
|
||||||
</div>
|
</div>
|
||||||
<div style="width: 136px;height: 56px;line-height: 56px;background: #FFFFFF;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;">2024.04.10 20:58</div>
|
<div style="width: 342px;height: 56px;line-height: 56px;border: 1px solid #F0F6FC;padding-left:16px;">{{techerDetail?.uploadTime}}</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -1038,12 +1155,14 @@ const options1 = ref([{
|
|||||||
认证流程
|
认证流程
|
||||||
</div>
|
</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 style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
<div class="step_box" v-for="item in 5">
|
||||||
<img src="../../assets/8.png" alt="">
|
<div v-if="item != 1" style="height: 1px;width: 81px;background-color: #DEDEDE;"></div>
|
||||||
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||||
</div>
|
<img src="../../assets/8.png" alt="">
|
||||||
<div style="height: 1px;width: 81px;background-color: #DEDEDE;"></div>
|
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
||||||
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- <div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||||
<img src="../../assets/8.png" alt="">
|
<img src="../../assets/8.png" alt="">
|
||||||
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1077,78 +1196,20 @@ const options1 = ref([{
|
|||||||
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
<div style="display: flex;width: 70px;height: 78px;flex-direction: column;align-items: center">
|
||||||
<img src="../../assets/8.png" alt="">
|
<img src="../../assets/8.png" alt="">
|
||||||
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
<div style="color: #409EFF;font-size: 14px;">初稿已上传</div>
|
||||||
</div>
|
</div> -->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div style="font-size: 14px;margin-bottom: 15px;">评委打分信息表:</div>
|
<div style="font-size: 14px;margin-bottom: 15px;">评委打分信息表:</div>
|
||||||
<div>
|
<div>
|
||||||
<a-table :columns="twiceolumns" :data-source="data" :scroll="{ x: 1000 }" :pagination="false">
|
<a-table :columns="twiceolumnsOne" :data-source="techerDetail?.firstList" :scroll="{ x: 1000 }" :pagination="false">
|
||||||
<template #headerCell="{ column }">
|
|
||||||
<template v-if="column.key === 'name'">
|
|
||||||
<span>
|
|
||||||
姓名
|
|
||||||
</span>
|
|
||||||
</template>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<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>
|
</a-table>
|
||||||
</div>
|
</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: 19px;margin-top: 40px;font-size: 18px;font-weight: 500;">二次认证</div>
|
||||||
<div style="font-size: 14px;margin-bottom: 15px;">评委打分信息表:</div>
|
<div style="font-size: 14px;margin-bottom: 15px;">评委打分信息表:</div>
|
||||||
<div>
|
<div>
|
||||||
<a-table :columns="twiceolumns" :data-source="data" :scroll="{ x: 1000 }" :pagination="false">
|
<a-table :columns="twiceolumnsTwo" :data-source="techerDetail?.secondList" :scroll="{ x: 1000 }" :pagination="false">
|
||||||
<template #headerCell="{ column }">
|
|
||||||
<template v-if="column.key === 'name'">
|
|
||||||
<span>
|
|
||||||
姓名
|
|
||||||
</span>
|
|
||||||
</template>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<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>
|
</a-table>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
@@ -1316,4 +1377,9 @@ const options1 = ref([{
|
|||||||
// :deep(.ant-form-item-label){
|
// :deep(.ant-form-item-label){
|
||||||
// text-align: left;
|
// text-align: left;
|
||||||
// }
|
// }
|
||||||
|
.step_box{
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -651,7 +651,7 @@ const route = useRoute()
|
|||||||
deleteDepSelect();
|
deleteDepSelect();
|
||||||
emit("finash", true);
|
emit("finash", true);
|
||||||
message.info('添加成功');
|
message.info('添加成功');
|
||||||
|
|
||||||
});
|
});
|
||||||
// saveStu({
|
// saveStu({
|
||||||
// targetId: props.id,
|
// targetId: props.id,
|
||||||
|
|||||||