mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-20 16:26:45 +08:00
讲师体系管理页面调整
This commit is contained in:
@@ -613,26 +613,26 @@
|
|||||||
<a-menu-item key="sub24-1">
|
<a-menu-item key="sub24-1">
|
||||||
<span
|
<span
|
||||||
:class="{
|
:class="{
|
||||||
circleActive: selectedKeys[0] === 'sub27-1' ? true : false,
|
circleActive: selectedKeys[0] === 'sub24-1' ? true : false,
|
||||||
circle: selectedKeys[0] === 'sub27-1' ? false : true,
|
circle: selectedKeys[0] === 'sub24-1' ? false : true,
|
||||||
}"
|
}"
|
||||||
></span>
|
></span>
|
||||||
<router-link to="/lecturerList">讲师列表</router-link>
|
<router-link to="/lecturerlist">讲师列表</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="sub24-2">
|
<a-menu-item key="sub24-2">
|
||||||
<span
|
<span
|
||||||
:class="{
|
:class="{
|
||||||
circleActive: selectedKeys[0] === 'sub27-2' ? true : false,
|
circleActive: selectedKeys[0] === 'sub24-2' ? true : false,
|
||||||
circle: selectedKeys[0] === 'sub27-2' ? false : true,
|
circle: selectedKeys[0] === 'sub24-2' ? false : true,
|
||||||
}"
|
}"
|
||||||
></span>
|
></span>
|
||||||
<router-link to="/teachingRecord">授课记录</router-link>
|
<router-link to="/teachingrecord">授课记录</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="sub24-3">
|
<a-menu-item key="sub24-3">
|
||||||
<span
|
<span
|
||||||
:class="{
|
:class="{
|
||||||
circleActive: selectedKeys[0] === 'sub27-3' ? true : false,
|
circleActive: selectedKeys[0] === 'sub24-3' ? true : false,
|
||||||
circle: selectedKeys[0] === 'sub27-3' ? false : true,
|
circle: selectedKeys[0] === 'sub24-3' ? false : true,
|
||||||
}"
|
}"
|
||||||
></span>
|
></span>
|
||||||
<router-link to="/lecturerfeemanagement">讲师费管理</router-link>
|
<router-link to="/lecturerfeemanagement">讲师费管理</router-link>
|
||||||
@@ -640,12 +640,30 @@
|
|||||||
<a-menu-item key="sub24-4">
|
<a-menu-item key="sub24-4">
|
||||||
<span
|
<span
|
||||||
:class="{
|
:class="{
|
||||||
circleActive: selectedKeys[0] === 'sub27-4' ? true : false,
|
circleActive: selectedKeys[0] === 'sub24-4' ? true : false,
|
||||||
circle: selectedKeys[0] === 'sub27-4' ? false : true,
|
circle: selectedKeys[0] === 'sub24-4' ? false : true,
|
||||||
}"
|
}"
|
||||||
></span>
|
></span>
|
||||||
<router-link to="/lecturerfeestatistics">讲师费统计</router-link>
|
<router-link to="/lecturerfeestatistics">讲师费统计</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
|
<a-menu-item key="sub24-5">
|
||||||
|
<span
|
||||||
|
:class="{
|
||||||
|
circleActive: selectedKeys[0] === 'sub24-5' ? true : false,
|
||||||
|
circle: selectedKeys[0] === 'sub24-5' ? false : true,
|
||||||
|
}"
|
||||||
|
></span>
|
||||||
|
<router-link to="/organization">归属组织管理</router-link>
|
||||||
|
</a-menu-item>
|
||||||
|
<a-menu-item key="sub24-6">
|
||||||
|
<span
|
||||||
|
:class="{
|
||||||
|
circleActive: selectedKeys[0] === 'sub24-6' ? true : false,
|
||||||
|
circle: selectedKeys[0] === 'sub24-6' ? false : true,
|
||||||
|
}"
|
||||||
|
></span>
|
||||||
|
<router-link to="/lecturerSystem">讲师体系管理</router-link>
|
||||||
|
</a-menu-item>
|
||||||
</a-sub-menu>
|
</a-sub-menu>
|
||||||
</a-menu>
|
</a-menu>
|
||||||
</div>
|
</div>
|
||||||
@@ -663,10 +681,10 @@
|
|||||||
@click="handleClick"
|
@click="handleClick"
|
||||||
>
|
>
|
||||||
<a-menu-item key="sub24" @titleClick="titleClick">
|
<a-menu-item key="sub24" @titleClick="titleClick">
|
||||||
<router-link to="/lecturerList">讲师列表</router-link>
|
<router-link to="/lecturerlist">讲师列表</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="sub25" @titleClick="titleClick">
|
<a-menu-item key="sub25" @titleClick="titleClick">
|
||||||
<router-link to="/teachingRecord">授课记录</router-link>
|
<router-link to="/teachingrecord">授课记录</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="sub26" @titleClick="titleClick">
|
<a-menu-item key="sub26" @titleClick="titleClick">
|
||||||
<router-link to="/lecturerfeemanagement">讲师费管理</router-link>
|
<router-link to="/lecturerfeemanagement">讲师费管理</router-link>
|
||||||
@@ -674,6 +692,12 @@
|
|||||||
<a-menu-item key="sub27" @titleClick="titleClick">
|
<a-menu-item key="sub27" @titleClick="titleClick">
|
||||||
<router-link to="/lecturerfeestatistics">讲师费统计</router-link>
|
<router-link to="/lecturerfeestatistics">讲师费统计</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
|
<a-menu-item key="sub28" @titleClick="titleClick">
|
||||||
|
<router-link to="/organization">归属组织管理</router-link>
|
||||||
|
</a-menu-item>
|
||||||
|
<a-menu-item key="sub29" @titleClick="titleClick">
|
||||||
|
<router-link to="/lecturerSystem">讲师体系管理</router-link>
|
||||||
|
</a-menu-item>
|
||||||
<a-menu-item key="sub10" @titleClick="titleClick">
|
<a-menu-item key="sub10" @titleClick="titleClick">
|
||||||
<router-link to="/coursereviewedn">审核</router-link>
|
<router-link to="/coursereviewedn">审核</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
@@ -1026,7 +1050,7 @@ export default {
|
|||||||
{
|
{
|
||||||
href: "/externalteaching",
|
href: "/externalteaching",
|
||||||
openKeys: "sub27",
|
openKeys: "sub27",
|
||||||
selectedKeys: "ssub27",
|
selectedKeys: "sub27",
|
||||||
pagename: "外部授课",
|
pagename: "外部授课",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -154,11 +154,10 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="初始授课时长" name="defaultTeachingTime">
|
<a-form-item label="初始授课时长" name="defaultTeachingTime">
|
||||||
<a-input v-model:value="formParam.defaultTeachingTime" style="width:80%; height: 40px; " placeholder="0"
|
<a-input v-model:value="formParam.defaultTeachingTime" style="width:80%; height: 40px; border-radius: 8px; " placeholder="0"
|
||||||
allowClear showSearch suffix="分钟">
|
allowClear showSearch suffix="分钟">
|
||||||
</a-input>
|
</a-input>
|
||||||
<span v-if="formParam.defaultTeachingTime" style="margin-left: 5px ;">{{ (formParam.defaultTeachingTime / 60
|
<span style="margin-left: 5px ;">{{ (formParam.defaultTeachingTime /60 ).toFixed(2)}}小时</span>
|
||||||
).toFixed(2) }}小时</span>
|
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
@@ -310,6 +309,7 @@ export default {
|
|||||||
formParam: {
|
formParam: {
|
||||||
status: 1,
|
status: 1,
|
||||||
entryType:1,
|
entryType:1,
|
||||||
|
defaultTeachingTime:0
|
||||||
},
|
},
|
||||||
searchParam: {
|
searchParam: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
@@ -662,6 +662,7 @@ export default {
|
|||||||
duration: null,
|
duration: null,
|
||||||
score: null,
|
score: null,
|
||||||
remark: null,
|
remark: null,
|
||||||
|
defaultTeachingTime:0
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -200,10 +200,10 @@
|
|||||||
<a-row :gutter="16">
|
<a-row :gutter="16">
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="初始授课时长" name="defaultTeachingTime">
|
<a-form-item label="初始授课时长" name="defaultTeachingTime">
|
||||||
<a-input v-model:value="formParam.defaultTeachingTime" style="width:80%; height: 40px; " placeholder="0"
|
<a-input v-model:value="formParam.defaultTeachingTime" style="width:80%; height: 40px; border-radius: 8px ; " placeholder="0"
|
||||||
allowClear showSearch suffix="分钟">
|
allowClear showSearch suffix="分钟">
|
||||||
</a-input>
|
</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-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
@@ -345,7 +345,7 @@ import dayjs from "dayjs";
|
|||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import { getTeacherSystemList, infoteacher, getTeacherExpertise, deleteInTeacherCourse } from "../../api/Lecturer";
|
import { getTeacherSystemList, infoteacher, getTeacherExpertise, deleteInTeacherCourse } from "../../api/Lecturer";
|
||||||
import { getNewInTeacherCourseList, getOrganization, getTeacherCourseList, insertInTeacherCourse, updateInTeacherCourse } from "../../api/Teaching";
|
import { getNewInTeacherCourseList, getOrganization, getTeacherCourseList, insertInTeacherCourse, updateInTeacherCourse ,getCharges} from "../../api/Teaching";
|
||||||
// import AddTeacher from "../../components/drawers/project/AddTeacher"
|
// import AddTeacher from "../../components/drawers/project/AddTeacher"
|
||||||
export default {
|
export default {
|
||||||
name: "InsideTeaching",
|
name: "InsideTeaching",
|
||||||
@@ -363,6 +363,7 @@ export default {
|
|||||||
setup() {
|
setup() {
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
|
tableLoadings:false,
|
||||||
moreid: 1,
|
moreid: 1,
|
||||||
currentPage1: 1,
|
currentPage1: 1,
|
||||||
pageSize1: 10,
|
pageSize1: 10,
|
||||||
@@ -384,6 +385,7 @@ export default {
|
|||||||
formParam: {
|
formParam: {
|
||||||
status: 1,
|
status: 1,
|
||||||
entryType:1,
|
entryType:1,
|
||||||
|
defaultTeachingTime:0
|
||||||
},
|
},
|
||||||
searchParam: {
|
searchParam: {
|
||||||
userNo: null,//工号姓名
|
userNo: null,//工号姓名
|
||||||
@@ -786,7 +788,7 @@ export default {
|
|||||||
systemId:null,
|
systemId:null,
|
||||||
levelId: null,
|
levelId: null,
|
||||||
teacherNo:null,
|
teacherNo:null,
|
||||||
defaultTeachingTime: null,
|
defaultTeachingTime: 0,
|
||||||
beginTime: null,
|
beginTime: null,
|
||||||
studys: null,
|
studys: null,
|
||||||
score: null,
|
score: null,
|
||||||
@@ -817,6 +819,7 @@ export default {
|
|||||||
state.lookTeacherId = record.teacherId
|
state.lookTeacherId = record.teacherId
|
||||||
// // alert(record.grade)
|
// // alert(record.grade)
|
||||||
TeacherSystem(record)
|
TeacherSystem(record)
|
||||||
|
gettableDatas(record)
|
||||||
// let id = record.userNo
|
// let id = record.userNo
|
||||||
// router.push({ path: '/insideteachingdetail', query: { id } })
|
// router.push({ path: '/insideteachingdetail', query: { id } })
|
||||||
// router.push({ path: '/InsideTeachingDetail' })
|
// router.push({ path: '/InsideTeachingDetail' })
|
||||||
@@ -857,8 +860,8 @@ export default {
|
|||||||
}
|
}
|
||||||
const column = ref([ {
|
const column = ref([ {
|
||||||
title: '基准课酬 ',
|
title: '基准课酬 ',
|
||||||
dataIndex: 'teacherlevelPay',
|
dataIndex: 'levelPay',
|
||||||
key: 'teacherlevelPay',
|
key: 'levelPay',
|
||||||
elipsis: true, align: "center",
|
elipsis: true, align: "center",
|
||||||
width: 120,
|
width: 120,
|
||||||
}, {
|
}, {
|
||||||
@@ -869,9 +872,9 @@ export default {
|
|||||||
width: 120,
|
width: 120,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '应发费用(未命名) ',
|
title: '应发费用 ',
|
||||||
dataIndex: 'expense',
|
dataIndex: 'payableExpense',
|
||||||
key: 'expense',
|
key: 'payableExpense',
|
||||||
elipsis: true, align: "center",
|
elipsis: true, align: "center",
|
||||||
width: 120,
|
width: 120,
|
||||||
},
|
},
|
||||||
@@ -906,6 +909,29 @@ export default {
|
|||||||
scopedSlots: { customRender: "action" },
|
scopedSlots: { customRender: "action" },
|
||||||
},
|
},
|
||||||
])
|
])
|
||||||
|
const gettableDatas =(record)=>{
|
||||||
|
state.tableLoadings = true
|
||||||
|
getCharges({kid:record.kid})
|
||||||
|
.then((res) => {
|
||||||
|
console.log(res)
|
||||||
|
tableDatas.value = res.data.data.records
|
||||||
|
state.tableDataTotal = Number(res.data.data.total);
|
||||||
|
state.tableLoadings = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
const tableDatas = ref([])
|
||||||
|
const rules = {
|
||||||
|
teacher: [{ required: true, message: '讲师不能为空' }],
|
||||||
|
departId: [{ required: true, message: '讲师组织不能为空' }],
|
||||||
|
levelId: [{ required: true, message: '讲师级别不能为空' }],
|
||||||
|
systemId: [{ required: true, message: '讲师体系不能为空' }],
|
||||||
|
tlevelName: [{ required: true, message: '内容分类不能为空' }],
|
||||||
|
teacherNo: [{ required: true, message: '课程名称不能为空' }],
|
||||||
|
beginTime: [{ required: true, message: '授课/课程日期不能为空' }],
|
||||||
|
defaultTeachingTime: [{ required: true, message: '授课时长不能为空' }],
|
||||||
|
certStatus: [{ required: true, message: '认证状态不能为空' }],
|
||||||
|
|
||||||
|
}
|
||||||
//导出功能
|
//导出功能
|
||||||
const handleExport = () => {
|
const handleExport = () => {
|
||||||
window.open(
|
window.open(
|
||||||
@@ -923,7 +949,10 @@ export default {
|
|||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
|
rules,
|
||||||
column,
|
column,
|
||||||
|
tableDatas,
|
||||||
|
gettableDatas,
|
||||||
handlemoreid,
|
handlemoreid,
|
||||||
infoteacherList,
|
infoteacherList,
|
||||||
getinfoteacher,
|
getinfoteacher,
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
<template #bodyCell="{ record, column }">
|
<template #bodyCell="{ record, column }">
|
||||||
<template v-if="column.key === 'operation'">
|
<template v-if="column.key === 'operation'">
|
||||||
<a-space>
|
<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="() => handleModify(record, String(record.courseform))">编辑</a-button>
|
||||||
<a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
|
<a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
|
||||||
</a-space>
|
</a-space>
|
||||||
@@ -85,14 +86,14 @@
|
|||||||
</a-row>
|
</a-row>
|
||||||
<a-row :gutter="16">
|
<a-row :gutter="16">
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="归属组织编号" name="trainorgId">
|
<a-form-item label="讲师体系编号" name="systemCode">
|
||||||
<a-input disabled v-model:value="formParam.trainorgId" class="draitem" placeholder="" allowClear showSearch>
|
<a-input disabled v-model:value="formParam.systemCode" class="draitem" placeholder="" allowClear showSearch>
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="归属组织名称" name="trainorgName">
|
<a-form-item label="讲师体系名称" name="systemName">
|
||||||
<a-input v-model:value="formParam.trainorgName" class="draitem" placeholder="" allowClear showSearch>
|
<a-input v-model:value="formParam.systemName" class="draitem" placeholder="" allowClear showSearch>
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -112,39 +113,49 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row :gutter="16">
|
<a-row :gutter="16">
|
||||||
|
<a-col :span="20">
|
||||||
|
<div style="display: flex;justify-content:space-around; margin-bottom: 10px;">
|
||||||
|
<div >等级名称 </div>
|
||||||
|
<div> 等级课时 </div>
|
||||||
|
<div >排序 </div>
|
||||||
|
<div> 等级课酬 </div>
|
||||||
|
<div> 上线课时 </div>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<div v-for="(item,index) in formParam.levelList " :key="index">
|
||||||
|
<a-row :gutter="16">
|
||||||
<a-col :span="4">
|
<a-col :span="4">
|
||||||
<a-form-item label="等级名称" name="sysName">
|
<a-input v-model:value="item.levelName" class="draitem" placeholder="" allowClear showSearch>
|
||||||
<a-input v-model:value="formParam.sysName" class="draitem" placeholder="" allowClear showSearch>
|
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="4">
|
<a-col :span="4" style="height: 5px;">
|
||||||
<a-form-item label="等级课时" name="sysTime">
|
<a-input v-model:value="item.levelTime " class="draitem"
|
||||||
<a-input v-model:value="formParam.sysTime " class="draitem"
|
|
||||||
placeholder="" allowClear showSearch>
|
placeholder="" allowClear showSearch>
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="4">
|
<a-col :span="4">
|
||||||
<a-form-item label="排序" name="sysNum">
|
<a-input-number id="inputNumber" v-model:value="item.sort" :min="1" :max="999" class="draitem" />
|
||||||
<a-input-number id="inputNumber" v-model:value="formParam.sysNum" :min="1" :max="999" class="draitem" />
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="4">
|
<a-col :span="4">
|
||||||
<a-form-item label="等级课酬" name="sysRmb">
|
<a-input v-model:value="item.levelPay" class="draitem"
|
||||||
<a-input v-model:value="formParam.sysRmb" class="draitem"
|
|
||||||
placeholder="" allowClear showSearch>
|
placeholder="" allowClear showSearch>
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="4">
|
<a-col :span="4">
|
||||||
<a-form-item label="上线课时" name ="sysTimeB" >
|
<a-input v-model:value="item.upperLimit" class="draitem"
|
||||||
<a-input v-model:value="formParam.sysTimeB" class="draitem"
|
|
||||||
placeholder="" allowClear showSearch>
|
placeholder="" allowClear showSearch>
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
</a-col>
|
||||||
|
<a-col :span="4">
|
||||||
|
<div style="display: flex;">
|
||||||
|
<!-- <a-button v-if="index===0" shape="circle" class="btn-circle btn-add" @click="inputAdd">+</a-button> -->
|
||||||
|
<a-button shape="circle" class="btn-circle" @click="inputRemove(index)" :disabled="formParam.levelList.length == 1">-</a-button>
|
||||||
|
</div>
|
||||||
|
<a-button shape="circle" class="btn-circle btn-add" @click="inputAdd">+</a-button>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
</div>
|
||||||
</a-form>
|
</a-form>
|
||||||
<!-- 交互按钮 -->
|
<!-- 交互按钮 -->
|
||||||
<div :style="{
|
<div :style="{
|
||||||
@@ -168,9 +179,12 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="jsx">
|
<script lang="jsx">
|
||||||
import { reactive, toRefs, ref, watch } from "vue";
|
import { reactive, toRefs, ref, watch } from "vue";
|
||||||
|
import { useRouter } from "vue-router";
|
||||||
import {
|
import {
|
||||||
FolderAddOutlined
|
FolderAddOutlined
|
||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
|
import dialog from "@/utils/dialog";
|
||||||
|
import { message } from "ant-design-vue";
|
||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
import { systemList, deleteTrainOrg } from "../../api/organization";
|
import { systemList, deleteTrainOrg } from "../../api/organization";
|
||||||
export default {
|
export default {
|
||||||
@@ -180,7 +194,9 @@ export default {
|
|||||||
FolderAddOutlined,//图标--新增
|
FolderAddOutlined,//图标--新增
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
setup() {
|
setup() {
|
||||||
|
const router = useRouter();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
tableLoading: false,
|
tableLoading: false,
|
||||||
deleteInTeacherdialog: false,
|
deleteInTeacherdialog: false,
|
||||||
@@ -195,10 +211,24 @@ export default {
|
|||||||
pageSize: "10"
|
pageSize: "10"
|
||||||
},
|
},
|
||||||
formParam: {
|
formParam: {
|
||||||
trainorgId: null,
|
systemCode: null,
|
||||||
trainorgName: null,
|
systemName: null,
|
||||||
remark: null,
|
remark: null,
|
||||||
sysNum:1
|
levelList:[{
|
||||||
|
levelName:null,
|
||||||
|
levelTime:null,
|
||||||
|
sort:1,
|
||||||
|
levelPay:null,
|
||||||
|
upperLimit:null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
levelName:null,
|
||||||
|
levelTime:null,
|
||||||
|
sort:1,
|
||||||
|
levelPay:null,
|
||||||
|
upperLimit:null
|
||||||
|
},
|
||||||
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
function managerChange(e, l, d, t, orgName) {
|
function managerChange(e, l, d, t, orgName) {
|
||||||
@@ -210,16 +240,16 @@ export default {
|
|||||||
const columns = ref([
|
const columns = ref([
|
||||||
{
|
{
|
||||||
title: '讲师体系编号 ',
|
title: '讲师体系编号 ',
|
||||||
dataIndex: 'trainorgId',
|
dataIndex: 'kid',
|
||||||
key: 'trainorgId',
|
key: 'kid',
|
||||||
elipsis: true,
|
elipsis: true,
|
||||||
align: "center",
|
align: "center",
|
||||||
width: 200,
|
width: 200,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '归属组织名称 ',
|
title: '讲师体系名称 ',
|
||||||
dataIndex: 'trainorgName',
|
dataIndex: 'systemName',
|
||||||
key: 'trainorgName',
|
key: 'systemName',
|
||||||
elipsis: true, align: "center",
|
elipsis: true, align: "center",
|
||||||
width: 600,
|
width: 600,
|
||||||
},
|
},
|
||||||
@@ -312,10 +342,18 @@ export default {
|
|||||||
}
|
}
|
||||||
const cancel = () => {
|
const cancel = () => {
|
||||||
state.formParam = {
|
state.formParam = {
|
||||||
trainorgId: null,
|
systemCode: null,
|
||||||
trainorgName: null,
|
systemName: null,
|
||||||
remark: null
|
remark: null,
|
||||||
|
levelList:[{
|
||||||
|
levelName:null,
|
||||||
|
levelTime:null,
|
||||||
|
sort:1,
|
||||||
|
levelPay:null,
|
||||||
|
upperLimit:null
|
||||||
}
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//保存
|
//保存
|
||||||
const createTeacherDialog = () => {
|
const createTeacherDialog = () => {
|
||||||
@@ -339,12 +377,34 @@ export default {
|
|||||||
const rules = {
|
const rules = {
|
||||||
trainorgId: [{ required: true, message: '讲师体系编号不能为空' }],
|
trainorgId: [{ required: true, message: '讲师体系编号不能为空' }],
|
||||||
trainorgName: [{ required: true, message: '讲师体系名称不能为空' }],
|
trainorgName: [{ required: true, message: '讲师体系名称不能为空' }],
|
||||||
|
}
|
||||||
|
const handleLook =(record)=>{
|
||||||
|
let id = record.kid
|
||||||
|
router.push({ path: '/LookLecturerSystem', query: { id } })
|
||||||
|
}
|
||||||
|
const inputAdd = ()=>{
|
||||||
|
state.formParam.levelList.push({
|
||||||
|
levelName:null,
|
||||||
|
levelTime:null,
|
||||||
|
sort:1,
|
||||||
|
levelPay:null,
|
||||||
|
upperLimit:null
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const inputRemove=(index)=>{
|
||||||
|
dialog({
|
||||||
|
content: "确定删除此等级信息吗?",
|
||||||
|
ok: async () => {
|
||||||
|
state.formParam.levelList.splice(index, 1);
|
||||||
|
message.success("删除成功");
|
||||||
|
},
|
||||||
|
});
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
rules,
|
rules,
|
||||||
|
inputRemove,
|
||||||
|
inputAdd,
|
||||||
managerChange,
|
managerChange,
|
||||||
columns,
|
columns,
|
||||||
tableData,
|
tableData,
|
||||||
@@ -356,7 +416,8 @@ export default {
|
|||||||
addTeacher,
|
addTeacher,
|
||||||
handleModify,
|
handleModify,
|
||||||
closeDeleteTeacher,
|
closeDeleteTeacher,
|
||||||
changePagination
|
changePagination,
|
||||||
|
handleLook
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -729,4 +790,20 @@ export default {
|
|||||||
.ant-upload.ant-upload-select-picture-card {
|
.ant-upload.ant-upload-select-picture-card {
|
||||||
border: 0px !important;
|
border: 0px !important;
|
||||||
border-radius: 50% !important;
|
border-radius: 50% !important;
|
||||||
}</style>
|
}
|
||||||
|
.btn-circle{
|
||||||
|
text-align: center;
|
||||||
|
line-height: 100%;
|
||||||
|
margin-top: 5px;
|
||||||
|
.custom-icon{
|
||||||
|
font-size: 20px;
|
||||||
|
svg{
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
span{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
font-size: 33px;
|
||||||
|
}
|
||||||
|
}</style>
|
||||||
237
src/views/lecturer/LookLecturerSystem.vue
Normal file
237
src/views/lecturer/LookLecturerSystem.vue
Normal file
@@ -0,0 +1,237 @@
|
|||||||
|
|
||||||
|
ExternalLecturer
|
||||||
|
<template>
|
||||||
|
<!-- 讲师体系查看详情 -->
|
||||||
|
<div class="LookLecturerSystem">
|
||||||
|
<a-layout-header style="background: white;color: black; font-size: 20px ;">
|
||||||
|
<span>讲师体系管理</span>
|
||||||
|
<router-link to="/lecturerSystem" class="goback">
|
||||||
|
<span class="return"></span>
|
||||||
|
<router-link class="returntext" to="/lecturerSystem" style="line-height:47px ">
|
||||||
|
返回
|
||||||
|
</router-link>
|
||||||
|
</router-link>
|
||||||
|
</a-layout-header>
|
||||||
|
<a-divider style="height: 1px; background-color: #b7b8b7 ;margin: 0;" />
|
||||||
|
<a-layout-content>
|
||||||
|
<!-- 讲师信息 -->
|
||||||
|
<div style="width: 100%;margin-top: 10px;">
|
||||||
|
<span class="line"></span>
|
||||||
|
<span>讲师信息</span>
|
||||||
|
<a-descriptions title="" bordered :column="2" :contentStyle="rowCenter" :labelStyle="rowCenter">
|
||||||
|
<a-descriptions-item label="讲师体系编号">{{formParam.kid}}</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="讲师体系名称">{{formParam.systemName}}</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="备注" :span="2">{{formParam.remark}}</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
<!-- 记录 -->
|
||||||
|
<div style="margin-top: 10px;"></div>
|
||||||
|
<span class="line"></span>
|
||||||
|
<span>讲师等级</span>
|
||||||
|
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="teacherrecordsColumns"
|
||||||
|
|
||||||
|
:data-source="teacherrecordstableData" :loading="teacherrecordsLoading" @expand="expandTable" :pagination="false">
|
||||||
|
<template #bodyCell="{ record, column }" >
|
||||||
|
<!-- 鼠标悬停提示 -->
|
||||||
|
<template v-if="column.key === 'remark'">
|
||||||
|
<a-space style="display:flex ;justify-content: space-around; ">
|
||||||
|
<a-popover>
|
||||||
|
<template #content>
|
||||||
|
<p>{{ record.remark }}</p>
|
||||||
|
</template>
|
||||||
|
<span>{{ record.remark }}</span>
|
||||||
|
</a-popover>
|
||||||
|
</a-space>
|
||||||
|
</template>
|
||||||
|
</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"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a-layout-content>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script lang ="jsx">
|
||||||
|
import { useRouter,useRoute } from "vue-router";
|
||||||
|
import { reactive, toRefs, ref } from "vue"
|
||||||
|
import { querySystemLevelByKid ,systemList} from "../../api/organization";
|
||||||
|
export default{
|
||||||
|
name :"LookLecturerSystem",
|
||||||
|
components:{
|
||||||
|
|
||||||
|
},
|
||||||
|
setup(){
|
||||||
|
const router=useRouter();
|
||||||
|
const { query: { id }} = useRoute();
|
||||||
|
const state = reactive({
|
||||||
|
activeKey:'1',
|
||||||
|
id,
|
||||||
|
formParam: {
|
||||||
|
},
|
||||||
|
teacherrecordsLoading: false,// 遮罩层
|
||||||
|
teacherrecordstableDataTotal: -1,//授课记录列表总条数\
|
||||||
|
});
|
||||||
|
|
||||||
|
//详情
|
||||||
|
const TeacherSystem = () => {
|
||||||
|
let obj = {
|
||||||
|
kid :state.id,
|
||||||
|
pageNo:1,
|
||||||
|
pageSize:1
|
||||||
|
}
|
||||||
|
systemList(obj).then((res) => {
|
||||||
|
state.formParam = res.data.data.records[0]
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
});
|
||||||
|
}
|
||||||
|
TeacherSystem()
|
||||||
|
//返回上一层
|
||||||
|
const handleBack=()=>{
|
||||||
|
router.back()
|
||||||
|
};
|
||||||
|
//列表
|
||||||
|
const teacherrecordsColumns = ref([
|
||||||
|
{
|
||||||
|
title: '等级名称',
|
||||||
|
dataIndex: 'levelName',
|
||||||
|
key: 'levelName',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '等级课时',
|
||||||
|
dataIndex: 'levelTime',
|
||||||
|
key: 'levelTime',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '排序',
|
||||||
|
dataIndex: 'sort',
|
||||||
|
key: 'sort',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '等级课酬',
|
||||||
|
dataIndex: 'levelPay',
|
||||||
|
key: 'levelPay',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '上线课时',
|
||||||
|
dataIndex: 'upperLimit',
|
||||||
|
key: 'upperLimit',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '讲师数量',
|
||||||
|
dataIndex: 'teacherCount',
|
||||||
|
key: 'teacherCount',
|
||||||
|
elipsis: true, align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
//列表数据
|
||||||
|
const teacherrecordstableData = ref([
|
||||||
|
])
|
||||||
|
const getteacherrecordstableData = () => {
|
||||||
|
// api接口
|
||||||
|
querySystemLevelByKid({systemId: state.id}).then((res) => {
|
||||||
|
teacherrecordstableData.value = res.data.data
|
||||||
|
state.teacherrecordstableDataTotal = Number(res.data.data.total);
|
||||||
|
state.teacherrecordsLoading = false
|
||||||
|
})
|
||||||
|
};
|
||||||
|
getteacherrecordstableData()
|
||||||
|
//翻页
|
||||||
|
const teacherchangePagination = (page) => {
|
||||||
|
state.teacherrecords.pageNo = page;
|
||||||
|
getteacherrecordstableData();
|
||||||
|
};
|
||||||
|
return{
|
||||||
|
...toRefs(state),
|
||||||
|
router,
|
||||||
|
TeacherSystem,
|
||||||
|
handleBack,
|
||||||
|
rowCenter:{"text-align":"center"},
|
||||||
|
teacherrecordstableData,
|
||||||
|
teacherrecordsColumns,
|
||||||
|
getteacherrecordstableData,
|
||||||
|
teacherchangePagination,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
|
||||||
|
.LookLecturerSystem {
|
||||||
|
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;
|
||||||
|
.select {
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.backbtn{
|
||||||
|
float: right;
|
||||||
|
margin-right: 20px;
|
||||||
|
border: none;
|
||||||
|
color: #4ea6ff;
|
||||||
|
width: 80px;
|
||||||
|
height:64px
|
||||||
|
}
|
||||||
|
//小竖线
|
||||||
|
.line{
|
||||||
|
float:left; width: 3px; height: 25px; background: #4ea6ff;border-radius: 30%; margin-right: 5px;
|
||||||
|
}
|
||||||
|
::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>
|
||||||
Reference in New Issue
Block a user