讲师费页面调整

This commit is contained in:
wangxuemei
2024-07-29 22:11:54 +08:00
parent 7ad55026d4
commit bc9ab4fa7d
11 changed files with 3668 additions and 2133 deletions

View File

@@ -1,6 +1,6 @@
<!-- 外部讲师页面 -->
<template>
<div class="ExternalLecturer">
<div>
<!-- 搜索框及按钮 -->
<div class="filter" style="min-width: 1380px;">
<a-form layout="inline">
@@ -37,7 +37,7 @@
:data-source="tableData" :loading="tableLoading" @expand="expandTable" :pagination="false">
<template #bodyCell="{ record, column }">
<template v-if="column.key === 'operation'">
<a-space style="display:flex ;justify-content: space-around; ">
<a-space >
<a-button type="link" @click="() => handleLook(record, String(record.courseform))">查看</a-button>
<a-button type="link" @click="() => handleModify(record, String(record.courseform))">编辑</a-button>
<a-button v-if="record.status == '1'" type="link"
@@ -54,8 +54,17 @@
</div>
<div class="tableBox ">
<div style="float: right;">
<a-pagination v-if="tableDataTotal > 10" :showSizeChanger="true" :hideOnSinglePage="true" :pageSize="pageSize"
v-model:current="searchParam.pageNo" :total="tableDataTotal" class="pagination" @change="changePagination" />
<a-pagination
v-if="tableDataTotal > 10"
:showSizeChanger="false"
:showQuickJumper="true"
:hideOnSinglePage="true"
:pageSize="searchParam.pageSize"
:current="searchParam.pageNo"
:total="tableDataTotal"
class="pagination"
@change="changePagination"
/>
</div>
</div>
<!-- 弹窗组件 -->
@@ -330,7 +339,7 @@ export default {
title: '操作 ',
dataIndex: 'operation',
key: 'operation',
elipsis: true, align: "center",
elipsis: true, align: "right",
width: 300,
scopedSlots: { customRender: "action" },
},
@@ -649,7 +658,7 @@ export default {
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
border-radius: 4px;
position: absolute;
left: 50%;
left: 30%;
top: 10%;
// transform: translate(-50%, -50%);

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
<!-- 内部讲师 -->
<template>
<div class="InsideLecturer">
<div >
<!-- 搜索框及按钮 -->
<div class="filter" style="min-width: 1380px;">
<a-form layout="inline">
@@ -10,13 +10,25 @@
placeholder="请输入工号/讲师姓名进行检索" allowClear showSearch>
</a-input>
<!-- <a-select style="width: 276px" placeholder="请选择所属组织" v-model:value="searchParam.userNo"
:options="infoteacherList">
</a-select> -->
<!-- <a-tree-select
:fieldNames="{
children: 'children',
label: 'name',
value: 'code',
}"
allow-clear
:getPopupContainer="triggerNode => triggerNode.parentNode || document.body"
v-model:value="valueproj"
show-search
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
placeholder="请选择内容分类"
tree-default-expand-all
:tree-data="sysTypeOptions">
</a-tree-select> -->
</a-form-item>
<a-form-item class="select">
<a-select style="width: 276px" placeholder="请选择讲师体系" v-model:value="searchParam.tsystemName"
:options="LecturerSystemList">
:options="LecturerSystemList" @change="changetlevel">
</a-select>
</a-form-item>
<a-form-item class="select">
@@ -44,17 +56,17 @@
</div>
<div style="width:100%"></div>
<a-form-item v-if="moreid == 2" class="select">
<a-select style="width: 276px" v-model:value="searchParam.waitStatus" placeholder="在职状态"
<a-select style="width: 276px ;margin-bottom:20px" v-model:value="searchParam.waitStatus" placeholder="在职状态"
:options="OnTheJobStatusList">
</a-select>
</a-form-item>
<a-form-item v-if="moreid == 2" class="select">
<a-select style="width: 276px" v-model:value="searchParam.certStatus" placeholder="认证状态"
<a-select style="width: 276px ;margin-bottom:20px" v-model:value="searchParam.certStatus" placeholder="认证状态"
:options="AuthenticationStatusList">
</a-select>
</a-form-item>
<a-form-item v-if="moreid == 2" class="select">
<a-select style="width: 276px" v-model:value="searchParam.payrollPlaceId" placeholder="发薪地"
<a-select style="width: 276px ;margin-bottom:20px" v-model:value="searchParam.payrollPlaceId" placeholder="发薪地"
:options="PlaceOfPayList">
</a-select>
</a-form-item>
@@ -81,7 +93,7 @@
@expand="expandTable" :pagination="false">
<template #bodyCell="{ record, column }">
<template v-if="column.key === 'operation'">
<a-space style="display:flex ;justify-content: space-around; ">
<a-space >
<a-button type="link" @click="() => handleLook(record, String(record.courseform))">查看</a-button>
<a-button type="link" @click="() => handleModify(record, String(record.courseform))">编辑</a-button>
<a-button v-if="record.status == '1'" type="link"
@@ -98,8 +110,18 @@
</div>
<div class="tableBox ">
<div style="float: right;">
<a-pagination v-if="tableDataTotal > 10" :showSizeChanger="true" :hideOnSinglePage="true" :pageSize="pageSize"
v-model:current="searchParam.pageNo" :total="tableDataTotal" class="pagination" @change="changePagination" />
<a-pagination
v-if="tableDataTotal > 10"
:showSizeChanger="false"
:showQuickJumper="true"
:hideOnSinglePage="true"
:pageSize="searchParam.pageSize"
:current="searchParam.pageNo"
:total="tableDataTotal"
class="pagination"
@change="changePagination"
/>
</div>
</div>
<!-- 弹窗组件 -->
@@ -116,15 +138,15 @@
<a-row :gutter="16">
<a-col :span="24">
<a-upload
v-model:file-list="fileList"
name="avatar"
avatar-uploader
list-type="picture-card"
class=""
:show-upload-list="false"
action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
:before-upload="beforeUpload"
@change="handleChange"
v-model:file-list="fileList"
name="avatar"
avatar-uploader
list-type="picture-card"
class=""
:show-upload-list="false"
action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
:before-upload="beforeUpload"
@change="handleChange"
/>
</a-col>
</a-row>
@@ -132,7 +154,8 @@
<a-row :gutter="16">
<a-col :span="12">
<a-form-item label="讲师名称" name="name">
<a-tree-select v-model:value="formParam.name" tree-data-simple-mode class="draitem"
<a-tree-select v-model:value="formParam.name"
show-search allow-clear tree-data-simple-mode class="draitem"
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" :tree-data="treeData" placeholder="请输入讲师名称" />
</a-form-item>
</a-col>
@@ -151,18 +174,18 @@
</a-col>
</a-row>
<!-- 讲师级别 体系-->
<a-row :gutter="16">
<a-col :span="12">
<a-form-item label="讲师级别" name="levelId">
<a-select class="draitem" v-model:value="formParam.levelId" placeholder="请选择讲师级别"
:options="getLevelList">
<a-row :gutter="16">
<a-col :span="12">
<a-form-item label="讲师体系" name="systemId">
<a-select class="draitem" v-model:value="formParam.systemId" placeholder="请选择讲师体系"
:options="LecturerSystemList">
</a-select>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="讲师体系" name="systemId">
<a-select class="draitem" v-model:value="formParam.systemId" placeholder="请选择讲师体系"
:options="LecturerSystemList">
<a-form-item label="讲师级别" name="levelId">
<a-select class="draitem" v-model:value="formParam.levelId" placeholder="请选择讲师级别"
:options="getLevelList">
</a-select>
</a-form-item>
</a-col>
@@ -174,7 +197,7 @@
<a-input v-model:value="formParam.defaultTeachingTime" style="width:80%; height: 40px; " placeholder="0"
allowClear showSearch suffix="分钟">
</a-input>
<span v-if="formParam.defaultTeachingTime" style="margin-left: 5px ;">{{ (formParam.defaultTeachingTime /60 ).toFixed(2)}}小时</span>
<span style="margin-left: 5px ;">{{ (formParam.defaultTeachingTime /60 ).toFixed(2)}}小时</span>
</a-form-item>
</a-col>
<a-col :span="12">
@@ -244,8 +267,8 @@
<!-- 删除功能弹窗 -->
<div>
<a-modal v-model:visible="deleteInTeacherdialog" :footer="null" :closable="close" wrapClassName="canclestu1"
style="width:1080px" centered="true">
<a-modal v-model:visible="deleteInTeacherdialog" :footer="null" :closable="close"
centered="true">
<div class="delete">
<div class="del_header"></div>
<div class="del_main">
@@ -270,7 +293,7 @@
</div>
<!-- 修改状态功能弹窗 -->
<div>
<a-modal v-model:visible="editTeacher" :footer="null" :closable="close" wrapClassName="canclestu1" centered="true">
<a-modal v-model:visible="editTeacher" :footer="null" :closable="close" centered="true">
<div class="delete">
<div class="del_header"></div>
<div class="del_main">
@@ -432,8 +455,9 @@ export default {
const getLevelList = ref([
// { value: 0, label: "未定级" },
])
const getLevelLista = () => {
getLevel().then((res) => {
const changetlevel = (val) => {
console.log( "讲师体系id" +val);
getLevel( {id:val}).then((res) => {
if (res.data.code === 200) {
let arr = res.data.data;
let array = [];
@@ -448,7 +472,7 @@ export default {
}
})
}
getLevelLista()
changetlevel()
const OnTheJobStatusList = ref([
{ value: 0, label: "在职" },
{ value: 1, label: "离职" },
@@ -554,7 +578,7 @@ export default {
else if (state.moreid == 2) {
state.moreid = 1
state.searchParam.waitStatus = null
state.searchParam.certStatus = null
state.searchParam.certStatus = null
state.searchParam.payrollPlaceId = null
}
}
@@ -563,24 +587,23 @@ export default {
title: '姓名 ',
dataIndex: 'name',
key: 'name',
elipsis: true, align: "center",
elipsis: true,
align: "center",
width: 120,
width: 100,
},
{
title: '工号 ',
dataIndex: 'userNo',
key: 'userNo',
elipsis: true, align: "center",
elipsis: true,
align: "center",
width: 120,
width: 100,
},
{
title: '所属组织 ',
dataIndex: 'departId',
key: 'departId',
elipsis: true, align: "center",
align: "center",
width: 400,
// customRender: (value, record) => {
// return (
@@ -595,16 +618,14 @@ export default {
dataIndex: 'tsystemName',
key: 'tsystemName',
elipsis: true, align: "center",
align: "center",
width: 120,
width: 100,
},
{
title: '级别 ',
dataIndex: 'tlevelName',
key: 'tlevelName',
elipsis: true, align: "center",
align: "center",
width: 120,
width: 100,
},
{
title: '发薪地 ',
@@ -618,14 +639,14 @@ export default {
dataIndex: 'teaching',
key: 'teaching',
elipsis: true, align: "center",
width: 120,
width: 100,
},
{
title: '在职状态 ',
dataIndex: 'waitStatus',
key: 'waitStatus',
elipsis: true, align: "center",
width: 120,
width: 100,
customRender: (value) => {
return (
<div>
@@ -644,7 +665,7 @@ export default {
dataIndex: 'certStatus',
key: 'certStatus',
elipsis: true, align: "center",
width: 120,
width: 100,
customRender: (value) => {
return (
<div>
@@ -663,7 +684,7 @@ export default {
dataIndex: 'status',
key: 'status',
elipsis: true, align: "center",
width: 120,
width: 100,
customRender: (value) => {
return (
<div>
@@ -682,8 +703,9 @@ export default {
title: '操作 ',
dataIndex: 'operation',
key: 'operation',
elipsis: true, align: "center",
elipsis: true,
width: 300,
align: "right",
scopedSlots: { customRender: "action" },
},
])
@@ -918,7 +940,7 @@ export default {
LecturerSystemList,
getLevelList,
OnTheJobStatusList,
getLevelLista,
changetlevel,
PlaceOfPayLista,
AuthenticationStatusList,
PlaceOfPayList,
@@ -1032,7 +1054,7 @@ export default {
height: 100%;
display: flex;
flex-direction: column;
position: relative;
.filter {
margin-left: 38px;
margin-right: 38px;
@@ -1053,7 +1075,7 @@ export default {
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
border-radius: 4px;
position: absolute;
left: 50%;
left: 30%;
top: 10%;
// transform: translate(-50%, -50%);

View File

@@ -1,31 +1,6 @@
<!-- 内部授课页面 -->
<template>
<div >
<div class="tableBox ">
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="columns"
:scroll="{ x: 100 }"
:data-source="tableData"
:loading="tableLoading"
@expand="expandTable"
:pagination="false">
<template #bodyCell="{ record, column }">
<template v-if="column.key === 'operation'">
<a-space style="display:flex ;justify-content: space-around; ">
<a-button type="link" @click="() => handleLook(record, String(record.courseform))">查看</a-button>
<a-button type="link" @click="() => handleModify(record, String(record.courseform))">修改</a-button>
<a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
</a-space>
</template>
</template>
</a-table>
</div>
<div class="tableBox ">
<div style="float: right;">
<a-pagination v-if="tableDataTotal > 10" :showSizeChanger="true" :hideOnSinglePage="true" :pageSize="pageSize"
v-model:current="searchParam.pageNo" :total="tableDataTotal" class="pagination" @change="changePagination" />
</div>
</div>
<div>
<!-- 搜索框及按钮 -->
<div class="filter">
<a-form layout="inline" style="min-width: 1380px;">
@@ -110,31 +85,36 @@
<UploadOutlined /> 导出
</a-button>
</div>
</div>
<!-- 表格 -->
<div class="tableBox ">
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="columns"
:scroll="{ x: 1300 }"
:data-source="tableData"
:loading="tableLoading"
@expand="expandTable"
:pagination="false">
<template #bodyCell="{ record, column }">
<template v-if="column.key === 'operation'">
<a-space style="display:flex ;justify-content: space-around; ">
<a-button type="link" @click="() => handleLook(record, String(record.courseform))">查看</a-button>
<div style="padding: 10px 0">
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="columns"
:scroll="{ x: 1500 }" :data-source="tableData" :loading="tableLoading" @expand="expandTable" :pagination="false">
<template #bodyCell="{ record, column }">
<template v-if="column.key === 'operation'">
<a-space >
<a-button type="link" @click="() => handleLook(record, String(record.courseform))">查看</a-button>
<a-button type="link" @click="() => handleModify(record, String(record.courseform))">修改</a-button>
<a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
</a-space>
<!-- <a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button> -->
</a-space>
</template>
</template>
</template>
</a-table>
</div>
</a-table>
</div>
</div>
<div class="tableBox ">
<div style="float: right;">
<a-pagination v-if="tableDataTotal > 10" :showSizeChanger="true" :hideOnSinglePage="true" :pageSize="pageSize"
v-model:current="searchParam.pageNo" :total="tableDataTotal" class="pagination" @change="changePagination" />
<a-pagination
v-if="tableDataTotal > 10"
:showSizeChanger="false"
:showQuickJumper="true"
:hideOnSinglePage="true"
:pageSize="searchParam.pageSize"
:current="searchParam.pageNo"
:total="tableDataTotal"
class="pagination"
@change="changePagination"
/>
</div>
</div>
<!-- 弹窗组件 -->
@@ -292,6 +272,15 @@
</a-descriptions>
<span class="line"></span>
<span>讲师费发放情况</span>
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="column" :data-source="tableDatas" :loading="tableLoadings" :pagination="false">
<template #bodyCell="{ record, column }">
<template v-if="column.key === 'operation'">
<a-space >
<a-button type="link" @click="() => handleLooka(record, String(record.courseform))">查看</a-button>
</a-space>
</template>
</template>
</a-table>
<div :style="{
position: 'absolute',
right: 0,
@@ -323,7 +312,7 @@
<span>您确定要删除此条记录吗</span>
</div>
<div class="del_btnbox">
<div class="del_btn btn2" @click="cancelTeachDialog" style="margin-right: 32px">
<div class="del_btn btn2" @click="cancelTeacherDialog" style="margin-right: 32px">
<div class="btnText">取消</div>
</div>
<div class="del_btn btn2" @click="closeDeleteTeacher">
@@ -481,16 +470,8 @@ export default {
])
const columns = ref([
// {
// title: '课程编号 ',
// dataIndex: 'userNo',
// key: 'userNo',
// elipsis: true, align: "center",
// width: 120,
// },
{
title: '讲师姓名 ',
fixed: 'left',
dataIndex: 'teacher',
key: 'teacher',
elipsis: true, align: "center",
@@ -515,6 +496,7 @@ export default {
dataIndex: 'orgName',
key: 'orgName',
elipsis: true, align: "center",
width: 120,
// customRender: (value, record) => {
// return (
// <div>
@@ -634,8 +616,8 @@ export default {
title: '操作 ',
dataIndex: 'operation',
key: 'operation',
elipsis: true, align: "center",
elipsis: true, align: "right",
width: 300,
fixed: "right",
scopedSlots: { customRender: "action" },
},
@@ -725,7 +707,7 @@ export default {
state.teacherdialog = true;
state.teacherdialogtitle = '修改授课记录'
state.lookTeacherId = record.teacherId
TeacherSystem()
TeacherSystem(records)
}
//保存
const createTeacherDialog = () => {
@@ -776,14 +758,13 @@ export default {
//清空数据
const cancel = () => {
state.formParam = {
teacher: null,
userNo: null,
departId: null,
defaultTeachingTime: null,
tlevelName: null,
name: null,
departId: null,
systemId:null,
levelId: null,
teacherNo:null,
defaultTeachingTime: null,
beginTime: null,
duration: null,
studys: null,
score: null,
type: null,
@@ -804,14 +785,14 @@ export default {
};
//表格内查看数据操作
const handleLook = (record) => {
const handleLook = (records) => {
// state.teacherdialog1 = 1
state.teachingdialog = true;
state.teacherdialogtitle = '查看详情'
// state.userNoid = record.userNo
state.lookTeacherId = record.teacherId
// // alert(record.grade)
TeacherSystem()
TeacherSystem(records)
// let id = record.userNo
// router.push({ path: '/insideteachingdetail', query: { id } })
// router.push({ path: '/InsideTeachingDetail' })
@@ -820,31 +801,82 @@ export default {
state.teachingdialog = false;
}
//内部授课详情
const TeacherSystem = () => {
getTeacherCourseList( state.lookTeacherId).then((res) => {
console.log("内部授课详情", res.data);
state.formParam= res.data.data
})
.catch((err) => {
console.log("内部授课详情", err);
});
// state.formParam = {
// name: record.name,
// userNo: record.userNo,
// orgName:record.orgName,
// departId: record.departId,
// levelId: record.levelId,
// tlevelName: record.tlevelName,
// teacherNo: record.teacherNo,
// beginTime: moment(record.beginTime, 'YYYY-MM-DD'),
// // ref< moment.Moment >(moment(record.beginTime,'YYYY-MM-DD')),
// // record.beginTime,
// status: record.status,
// defaultTeachingTime: record.defaultTeachingTime,
// studys: record.studys,
// remark: record.remark,
// }
const TeacherSystem = (records) => {
// getTeacherCourseList( state.lookTeacherId).then((res) => {
// console.log("内部授课详情", res.data);
// state.formParam= res.data.data
// })
// .catch((err) => {
// console.log("内部授课详情", err);
// });
state.formParam = {
name: record.name,
departId: record.departId,
systemId:record.systemId,
levelId: record.levelId,
tlevelName: record.tlevelName,
teacherNo: record.teacherNo,
beginTime: moment(record.beginTime, 'YYYY-MM-DD'),
// ref< moment.Moment >(moment(record.beginTime,'YYYY-MM-DD')),
// record.beginTime,
status: record.status,
defaultTeachingTime: record.defaultTeachingTime,
score: record.score,
studys: record.studys,
remark: record.remark,
}
}
const column = ref([ {
title: '基准课酬 ',
dataIndex: 'teacherlevelPay',
key: 'teacherlevelPay',
elipsis: true, align: "center",
width: 120,
}, {
title: '计划费用 ',
dataIndex: 'expense',
key: 'expense',
elipsis: true, align: "center",
width: 120,
},
{
title: '应发费用(未命名) ',
dataIndex: 'expense',
key: 'expense',
elipsis: true, align: "center",
width: 120,
},
{
title: '状态 ',
dataIndex: 'status',
key: 'status',
elipsis: true, align: "center",
width: 120,
customRender: (value) => {
return (
<div>
{value.record.status == "A10" || value.record.status == "A20" ||value.record.status == "A30" ||value.record.status == "E10"||value.record.status == "S20"
? {
"A10": "待审核",
"A20": "已提交",
"A30": "审核中",
"E10": "审核打回",
"S20": "审核通过",
}[value.record.status + ""] || ""
: "-"}
</div>
)
}
},
{
title: '操作 ',
dataIndex: 'operation',
key: 'operation',
elipsis: true, align: "right",
width: 300,
scopedSlots: { customRender: "action" },
},
])
//导出功能
const handleExport = () => {
window.open(
@@ -862,6 +894,7 @@ export default {
}
return {
...toRefs(state),
column,
handlemoreid,
infoteacherList,
getinfoteacher,

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -55,8 +55,17 @@
<!-- 翻页 -->
<div class="tableBox ">
<div style="float: right;">
<a-pagination v-if="tableDataTotal > 10" :showSizeChanger="true" :hideOnSinglePage="true" :pageSize="pageSize"
v-model:current="searchParam.pageNo" :total="tableDataTotal" class="pagination" @change="changePagination" />
<a-pagination
v-if="tableDataTotal > 10"
:showSizeChanger="false"
:showQuickJumper="true"
:hideOnSinglePage="true"
:pageSize="searchParam.pageSize"
:current="searchParam.pageNo"
:total="tableDataTotal"
class="pagination"
@change="changePagination"
/>
</div>
</div>
<!-- 二级页面弹窗组件 -->

View File

@@ -5,7 +5,12 @@ ExternalLecturer
<div class="LookExternalLecturer">
<a-layout-header style="background: white;color: black; font-size: 20px ;">
<span>查看讲师</span>
<a-button @click="handleBack" class="backbtn" type="text">返回</a-button>
<router-link to="/lecturerList" class="goback">
<span class="return"></span>
<router-link class="returntext" to="/lecturerList" style="line-height:47px ">
返回
</router-link>
</router-link>
</a-layout-header>
<a-divider style="height: 1px; background-color: #b7b8b7 ;margin: 0;" />
<a-layout-content>
@@ -285,5 +290,27 @@ export default{
::v-deep .ant-descriptions-header{
margin-bottom: 10px ;
}
.goback {
float: right;
padding-right: 70px;
//padding-top: 37px;
position: relative;
.return {
display: inline-block;
width: 42px;
height: 42px;
margin-top: 17px;
margin-right: 10px;
background-image: url("../../assets/images/projectadd/return.png");
}
.returntext {
display: inline-block;
position: absolute;
top: 12px;
color: #4ea6ff;
font-size: 14px;
}
}
</style>

View File

@@ -3,7 +3,12 @@
<div class="LookInsideLecturer">
<a-layout-header style="background: white;color: black; font-size: 20px ;">
<span>查看讲师</span>
<a-button @click="handleBack" class="backbtn" type="text">返回</a-button>
<router-link to="/lecturerList" class="goback">
<span class="return"></span>
<router-link class="returntext" to="/lecturerList" style="line-height:47px ">
返回
</router-link>
</router-link>
</a-layout-header>
<a-divider style="height: 1px; background-color: #b7b8b7 ;margin: 0;" />
<a-layout-content>
@@ -12,15 +17,17 @@
<span class="line"></span>
<a-descriptions title="讲师信息" bordered :column="4" :contentStyle="rowCenter" :labelStyle="rowCenter">
<!-- 一层 -->
<a-descriptions-item label="讲师头像">{{formParam.url}}</a-descriptions-item>
<a-descriptions-item label="讲师头像">
<a-avatar :src="formParam.photo" /></a-descriptions-item>
<a-descriptions-item label="讲师工号">{{formParam.userNo}}</a-descriptions-item>
<a-descriptions-item label="讲师姓名">{{formParam.name}}</a-descriptions-item>
<a-descriptions-item label="讲师体系">{{formParam.systemId}}</a-descriptions-item>
<a-descriptions-item label="讲师体系">{{formParam.tsystemName}}</a-descriptions-item>
<!-- 二层 -->
<a-descriptions-item label="讲师级别">{{formParam.levelId }}</a-descriptions-item>
<a-descriptions-item label="讲师级别">{{formParam.tlevelName
}}</a-descriptions-item>
<a-descriptions-item label="认证状态">{{ formParam.certStatus==0?'未认证' :formParam.certStatus==1 ?'已认证':''}}</a-descriptions-item>
<a-descriptions-item label="授课时长">{{formParam.teaching}}</a-descriptions-item>
<a-descriptions-item label="发薪地 ">{{formParam.payrollPlaceId}}</a-descriptions-item>
<a-descriptions-item label="发薪地 ">{{formParam.payrollPlaceName}}</a-descriptions-item>
<!-- 三层 -->
<a-descriptions-item label="在职">{{formParam.waitStatus==0?'在职' :formParam.waitStatus==1 ?'离职':''}}</a-descriptions-item>
<a-descriptions-item label="账号状态">{{formParam.status==0?'临时' :formParam.status==1 ?'启用':formParam.status==1 ?'停用':''}}</a-descriptions-item>
@@ -57,20 +64,20 @@
</template>
</a-table>
<div style="float: right;">
<a-pagination
v-if="teacherrecordstableDataTotal > 10"
:showSizeChanger="true"
:hideOnSinglePage="true"
:pageSize="pageSize"
v-model:current="teacherrecords.pageNo"
:total="teacherrecordstableDataTotal"
class="pagination"
@change="teacherchangePagination"
/>
<a-pagination
v-if="tableDataTotal > 10"
:showSizeChanger="false"
:showQuickJumper="true"
:hideOnSinglePage="true"
:pageSize="searchParam.pageSize"
:current="searchParam.pageNo"
:total="tableDataTotal"
class="pagination"
@change="changePagination"
/>
</div>
</a-tab-pane>
<a-tab-pane key="2" tab="晋级记录">
{{ teacherrepromo.id }}
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="promotionrecordsColumns"
:data-source="promotionrecordstableData" :loading="promotionrecordsLoading" @expand="expandTable" :pagination="false">
@@ -78,16 +85,17 @@
</template>
</a-table>
<div style="float: right;">
<a-pagination
v-if="teacherrepromotableDataTotal > 10"
:showSizeChanger="true"
:hideOnSinglePage="true"
:pageSize="pageSize"
v-model:current="teacherrepromo.pageNo"
:total="teacherrepromotableDataTotal"
class="pagination"
@change="teacherrepromoPagination"
/>
<a-pagination
v-if="teacherrepromotableDataTotal > 10"
:showSizeChanger="false"
:showQuickJumper="true"
:hideOnSinglePage="true"
:pageSize="teacherrepromo.pageSize"
:current="teacherrepromo.pageNo"
:total="teacherrepromotableDataTotal"
class="pagination"
@change="teacherrepromoPagination"
/>
</div>
</a-tab-pane>
</a-tabs>
@@ -122,7 +130,7 @@ export default{
id: null
},
teacherrepromo:{
id:null,
userId:null,
pageNo: "1",
pageSize: "10",
}
@@ -133,8 +141,9 @@ export default{
getTeacherById(state.id).then((res) => {
console.log("内部讲师详情", res.data);
state.formParam = res.data.data[0];
state.teacherrepromo.id=res.data.data[0].kid
state.teacherrepromo.userId=res.data.data[0].kid
console.log(state.teacherrepromo.kid);
getpromotionrecordstableData()
})
.catch((err) => {
console.log("内部讲师详情", err);
@@ -288,8 +297,8 @@ export default{
},
{
title: '变更结果',
dataIndex: 'afterInfo',
key: 'afterInfo',
dataIndex: 'levelName',
key: 'levelName',
elipsis: true, align: "center",
width: 120,
},
@@ -313,7 +322,7 @@ export default{
})
state.promotionrecordsLoading = false
};
getpromotionrecordstableData()
// getpromotionrecordstableData()
return{
...toRefs(state),
router,
@@ -368,5 +377,27 @@ export default{
::v-deep .ant-descriptions-header{
margin-bottom: 10px ;
}
.goback {
float: right;
padding-right: 70px;
//padding-top: 37px;
position: relative;
.return {
display: inline-block;
width: 42px;
height: 42px;
margin-top: 17px;
margin-right: 10px;
background-image: url("../../assets/images/projectadd/return.png");
}
.returntext {
display: inline-block;
position: absolute;
top: 12px;
color: #4ea6ff;
font-size: 14px;
}
}
</style>

View File

@@ -1,6 +1,6 @@
<!-- 授课记录 -->
<template>
<div >
<div class="TeachingRecord" >
<div style="margin: 20px;" >
<a-tabs v-model:activeKey="activeKey">
<a-tab-pane key="1" tab="内部授课">
@@ -37,4 +37,276 @@
};
</script>
<style lang="scss" scoped>
.TeachingRecord {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
.filter {
margin-left: 38px;
margin-right: 38px;
margin-top: 30px;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
.filterItems {
display: flex;
flex-wrap: wrap;
.select {
margin-right: 20px;
margin-bottom: 20px;
}
.addTimeBox {
position: relative;
display: flex;
align-items: center;
.addTime {
position: absolute;
z-index: 10;
margin-left: 10px;
color: rgba(0, 0, 0, 0.4);
}
.ant-picker {
padding-left: 85px;
}
.ant-picker-range .ant-picker-active-bar {
margin-left: 85px;
}
}
.btn {
padding: 0px 26px 0px 26px;
height: 38px;
background: #4ea6ff;
border-radius: 8px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
align-items: center;
justify-content: center;
margin-right: 14px;
flex-shrink: 0;
cursor: pointer;
.search {
background-size: 100%;
}
.btnText {
font-size: 14px;
font-weight: 400;
color: #fff;
line-height: 36px;
margin-left: 5px;
}
}
.btnn {
padding: 0px 26px 0px 26px;
height: 38px;
background: #4ea6ff;
border-radius: 8px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
align-items: center;
justify-content: center;
margin-right: 14px;
flex-shrink: 0;
cursor: pointer;
.search {
background-size: 100%;
}
.btnText {
font-size: 14px;
font-weight: 400;
color: #ffffff;
line-height: 36px;
margin-left: 5px;
}
}
.btn1 {
.search {
width: 15px;
height: 17px;
background-image: url("../../assets/images/courseManage/search0.png");
}
}
.btn2 {
.search {
width: 16px;
height: 18px;
background-image: url("../../assets/images/courseManage/reset0.png");
}
}
.btn1:active {
background: #0982ff;
}
// .btn2:hover {
// background: rgba(64, 158, 255, 0.1);
// }
.btn2:active {
background: #0982ff;
}
}
.btns {
display: flex;
// flex-wrap: wrap;
.btn {
padding: 0px 26px 0px 26px;
height: 38px;
background: #4ea6ff;
border-radius: 8px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
align-items: center;
cursor: pointer;
justify-content: center;
margin-right: 14px;
flex-shrink: 0;
.search {
background-size: 100%;
}
.btnText {
font-size: 14px;
font-weight: 400;
color: #ffffff;
line-height: 36px;
margin-left: 5px;
}
}
.btn3 {
margin-right: 0px;
.search {
width: 17px;
height: 18px;
background-image: url("../../assets/images/courseManage/add0.png");
}
}
// .btn3:hover {
// background: rgba(64, 158, 255, 0.76);
// }
.btn3:active {
background: #0982ff;
}
}
}
.tableBox {
margin: 20px 38px 30px;
.ant-table-thead>tr>th {
background-color: #eff4fc;
}
th {
background-color: #eff4fc !important;
text-align: center !important;
}
}
.tableBox {
padding-bottom: 20px;
.pa {
// position: absolute;
// bottom: 20px;
// left: 0;
width: 100%;
// height: 20px;
// background-color: red;
display: flex;
justify-content: center;
// margin-bottom: 10px;
// position: absolute;
// bottom: -40px;
}
}
.operation {
font-size: 14px;
font-weight: 400;
color: #4ea6ff;
margin-right: -45px;
display: flex;
justify-content: right;
margin-right: 18px;
// line-height: 36px;
.operation1 {
margin-left: 21px;
width: 28px;
display: inline-block;
}
.operation3 {
margin-left: 21px;
width: 70px;
display: inline-block;
text-align: center;
}
.more {
width: 50px;
display: inline-block;
margin-left: 21px;
position: relative;
text-align: left;
// z-index: 99999;
.moreArrow {
width: 13px;
height: 7px;
display: inline-block;
background-image: url("../../assets/images/navtop/down.png");
background-size: 100%;
margin: 2px;
margin-left: 7px;
}
.moreItems {
width: 80px;
padding: 5px;
display: none;
background: #ffffff;
box-shadow: 2px 3px 9px 3px rgba(0, 0, 0, 0.05);
border-radius: 3px;
border: 0px solid #dcdcdc;
position: absolute;
left: 0px;
top: 28px;
z-index: 100;
text-align: center;
}
}
.more:hover .moreArrow {
background-image: url("../../assets/images/navtop/up.png");
}
.more:hover .moreItems {
display: block;
}
}
}
</style>