讲师管理新建讲师修改

This commit is contained in:
zhangsir
2024-10-16 13:44:53 +08:00
parent 3f1d4758f9
commit a13b6c27db
3 changed files with 64 additions and 17 deletions

View File

@@ -25,7 +25,7 @@
</a-select>
</div>
<div class="tree">
<a-tree allow-clear tree-default-expand-all :tree-data="treeData" :loading="orgLoading"
<a-tree show-icon allow-clear tree-default-expand-all :tree-data="treeData" :loading="orgLoading"
:load-data="onLoadData" v-model:selectedKeys="stuTreeSelectKeys"
v-model:expandedKeys="stuTreeExpandedKeys" :fieldNames="{
children: 'treeChildList',
@@ -33,11 +33,15 @@
title: 'name',
value: 'name',
}" @select="stuStuOrgSelect" style="max-height: 260px;overflow-y: auto;width: 250px;">
<template #smile>
<UserOutlined />
</template>
</a-tree>
</div>
<div class="btn">
<div class="btn0 btn1" @click="notChange">取消</div>
<div class="btn0 btn2" @click="changeOut">确定</div>
<!-- <div class="btn0 btn2" @click="changeOut">确定</div> -->
<a-button :loading="loadingChange" @click="changeOut" class="btn0 btn2" type="primary">确定</a-button>
</div>
</div>
</template>
@@ -63,8 +67,8 @@ import { ref,defineProps,defineEmits,watch,onMounted } from 'vue';
import { request, useRequest} from "@/api/request";
import { message } from "ant-design-vue"
import { ORG_CHILD_LIST, ORG_LIST,USER_LIST_PAGE} from "@/api/apis";
import { getTeacherByDepartId,getTeacherByNameOrUserNo } from "@/api/Lecturer";
import { ZoomInOutlined } from '@ant-design/icons-vue';
import { getTeacherByDepartId,getTeacherByNameOrUserNo,getSystemInfoByUserId } from "@/api/Lecturer";
import { ZoomInOutlined,UserOutlined } from '@ant-design/icons-vue';
const props = defineProps({
value:{
type: String,
@@ -79,8 +83,8 @@ const props = defineProps({
default: '',
},
system:{
type: String,
default: '',
type: Object,
default: ()=>{},
},
level:{
type: String,
@@ -105,16 +109,18 @@ function blur() {
isOpen.value = false
}
const orgName = ref('')
const systemName = ref('')
const systemName = ref(null)
const levelName = ref('')
const neworgName = ref('')
const teacherId = ref('')
const handleChange = (e,l) => {
isOpen.value = false
// emit('update:value',e)
teacherName.value = e
orgName.value = l.orgName
systemName.value = l.systemName
// systemName.value = l.systemName
levelName.value = l.levelName
teacherId.value = l.key
if( l.orgName !==null ){
neworgName.value= orgName.value.split('/')
neworgName.value= neworgName.value[ neworgName.value.length-1]
@@ -145,7 +151,7 @@ const searchMember = (keyword) => {
loading.value = false
options.value = res.data.data.list.map((item) => {
return {
value: item.realName,
value: item.realName+'/'+item.userNo,
label: item.realName+'('+item.userNo+')'+item.orgName,
system: item.realName+'('+item.userNo+')'+item.tSystemName,
level: item.realName+'('+item.userNo+')'+item.sLevelName,
@@ -184,7 +190,8 @@ function onLoadData(treeNode) {
res.data.data.list.map(item=>{
return (
item.isLeaf = true,
item.name = item.realName
item.name = item.realName + '/' + item.userNo,
item.slots = {icon:'smile'}
)
})
childDatas.unshift(...res.data.data.list)
@@ -210,13 +217,15 @@ function stuStuOrgSelect(e, {selected: bool, selectedNodes, node, event}) {
console.log(selectedNodes)
teacherName.value = ''
orgName.value = ''
systemName.value = ''
systemName.value = null
levelName.value = ''
teacherId.value = ''
if(selectedNodes[0].isLeaf){
teacherName.value = selectedNodes[0].name
orgName.value = selectedNodes[0].orgName
systemName.value = selectedNodes[0].systemName
// systemName.value = selectedNodes[0].systemName
levelName.value = selectedNodes[0].levelName
teacherId.value = selectedNodes[0].id
// emit('update:value',selectedNodes[0].realName)
}
}
@@ -226,10 +235,13 @@ watch(()=>visible.value,(val)=>{
stuTreeExpandedKeys.value = []
teacherName.value = ''
orgName.value = ''
systemName.value = ''
systemName.value = null
levelName.value = ''
neworgName.value=''
selectName.value = null
selectData.value = ''
teacherId.value = ''
loadingChange.value = false
// changeneworg()
}
})
@@ -237,10 +249,32 @@ const notChange = () => {
visible.value = false
teacherName.value = ''
orgName.value = ''
systemName.value = ''
systemName.value = null
levelName.value = ''
neworgName.value=''
teacherId.value = ''
loadingChange.value = false
}
const loadingChange = ref(false)
watch(()=>teacherId.value,(val)=>{
if(val){
loadingChange.value = true
getSystemInfoByUserId(teacherId.value).then(res=>{
if(res.data.code == 200){
systemName.value = {
systemId:res.data.data.id,
systemName:res.data.data.systemName,
systemCode:res.data.data.systemCode
}
}
loadingChange.value = false
emit('update:system',systemName.value)
}).catch(err=>{
message.error('讲师体系获取失败,请重新选择')
loadingChange.value = false
})
}
})
const changeOut = () => {
if(!teacherName.value){
message.error('请选择讲师')
@@ -290,6 +324,7 @@ const changeOut = () => {
}
.btn2{
background-color: rgba(50, 107, 250, 1);
padding: 0;
}
}
}