新增讲师参数替换,多余参数,后期处理

This commit is contained in:
zhangsir
2024-10-24 19:52:43 +08:00
parent 7d8e969733
commit d540002690
2 changed files with 54 additions and 5 deletions

View File

@@ -90,8 +90,16 @@ const props = defineProps({
type: String,
default: '',
},
orgId:{
type: String,
default: '',
},
id:{
type: String,
default: '',
}
})
const emit = defineEmits(['update:value','update:lable','update:system','update:level','update:newlable'])
const emit = defineEmits(['update:value','update:lable','update:system','update:level','update:newlable','update:orgId','update:id'])
const visible = ref(false);
const selectData = ref(null);
watch(()=>props.value,(val)=>{
@@ -111,6 +119,7 @@ function blur() {
isOpen.value = false
}
const orgName = ref('')
const orgId = ref('')
const systemName = ref(null)
const levelName = ref('')
const neworgName = ref('')
@@ -123,6 +132,7 @@ const handleChange = (e,l) => {
// systemName.value = l.systemName
levelName.value = l.levelName
teacherId.value = l.key
orgId.value = l.orgId
if( l.orgName !==null ){
neworgName.value= orgName.value.split('/')
neworgName.value= neworgName.value[ neworgName.value.length-1]
@@ -159,6 +169,7 @@ const searchMember = (keyword) => {
level: item.realName+'('+item.userNo+')'+item.sLevelName,
key: item.id,
orgName: item.orgName,
orgId: item.kid,
tSystemName:item.tSystemName,
sLevelName:item.sLevelName
}
@@ -219,12 +230,14 @@ function stuStuOrgSelect(e, {selected: bool, selectedNodes, node, event}) {
console.log(selectedNodes)
teacherName.value = ''
orgName.value = ''
orgId.value = ''
systemName.value = null
levelName.value = ''
teacherId.value = ''
if(selectedNodes[0].isLeaf){
teacherName.value = selectedNodes[0].name
orgName.value = selectedNodes[0].orgName
orgId.value = selectedNodes[0].kid
// systemName.value = selectedNodes[0].systemName
levelName.value = selectedNodes[0].levelName
teacherId.value = selectedNodes[0].id
@@ -237,6 +250,7 @@ watch(()=>visible.value,(val)=>{
stuTreeExpandedKeys.value = []
teacherName.value = ''
orgName.value = ''
orgId.value = ''
systemName.value = null
levelName.value = ''
neworgName.value=''
@@ -252,6 +266,7 @@ const notChange = () => {
visible.value = false
teacherName.value = ''
orgName.value = ''
orgId.value = ''
systemName.value = null
levelName.value = ''
neworgName.value=''
@@ -300,9 +315,11 @@ const changeOut = () => {
selectData.value = teacherName.value
emit('update:value',teacherName.value)
emit('update:lable',orgName.value)
emit('update:orgId',orgId.value)
emit('update:system',systemName.value)
emit('update:level',levelName.value)
emit('update:newlable',neworgName.value)
emit('update:id',teacherId.value)
notChange()
}
</script>

View File

@@ -144,7 +144,7 @@
<a-row :gutter="16">
<a-col :span="24">
<a-form-item label="讲师名称" name="name">
<SearchTeacher v-model:value="formParam.name" v-model:lable="formParam.orgName"
<SearchTeacher v-model:value="formParam.name" v-model:lable="formParam.orgName" v-model:orgId="formParam.orgId" v-model:id="formParam.userid"
v-model:system="tSystemNames" v-model:level="formParam.tLevelId"></SearchTeacher>
</a-form-item>
</a-col>
@@ -237,6 +237,11 @@
</a-col>
<a-col :span="18">
<div class="add_content" @click="addContentData">+</div>
<div class="add_list">
<div v-for="(item,index) in formParam.orgLists">
{{item.name}}
</div>
</div>
</a-col>
</a-row>
</a-form>
@@ -414,6 +419,7 @@ export default {
vf: false,
tSystemNames:{
systemName:null,
systemId: null,
levelVoList: []
},
formParam: {
@@ -421,7 +427,8 @@ export default {
certStatus: 0,//认证状态
defaultteachingTime: null,
teacherType:1,
photo: boe
photo: boe,
orgLists: [],
},
searchParam: {
teacherType:1,
@@ -563,6 +570,7 @@ export default {
}
const AddContentList = (data) => {
console.log(data, 'treedatalist')
state.formParam.orgLists = data
}
LecturerSystemLista()
//获取内部讲师级别
@@ -866,7 +874,6 @@ export default {
}
//保存
const createTeacherDialog = async () => {
state.formParam.tSystemName = state.tSystemNames.systemName
const formItemNames = Object.keys(rules);
for(let i=0;i<formItemNames.length;i++){
const result = await validateField(formItemNames[i]);
@@ -874,6 +881,15 @@ export default {
return message.error(rules[formItemNames[i]][0].log)
}
}
state.formParam.tSystemName = state.tSystemNames?.systemName
state.formParam.tSystemId = state.tSystemNames?.systemId
if(state.formParam.name){
const nameNo = state.formParam?.name?.split('/')
state.formParam.name = nameNo[0]
state.formParam.userNo = nameNo[1]
}
state.formParam.expertise = state.formParam?.orgLists?.map(item => item.id).join(',')
state.formParam.expertiseNames = state.formParam?.orgLists?.map(item => item.name).join(',')
state.formParam = {...state.formParam,...state.tSystemNames}
if (state.vf == false) {
updateInTeacher(state.formParam).then(response => {
@@ -1015,9 +1031,11 @@ export default {
description: '',
workExperience: '',
courses: '',
orgLists: []
}
state.tSystemNames = {
systemName:null,
systemId: null,
levelVoList: []
}
}
@@ -1088,9 +1106,14 @@ export default {
state.formParam.courses = state.formParam.courses === null ? '' : state.formParam.courses
state.formParam.photo = state.formParam.photo === null ? boe : state.formParam.photo
state.tSystemNames.systemName = res.data.data.tSystemName
state.tSystemNames.systemId = res.data.data.tSystemId
state.tSystemNames.systemCode = res.data.data.systemCode
state.tSystemNames.systemId = res.data.data.systemId
state.tSystemNames.levelVoList = res.data.data.levelVoList
state.formParam.tlevelName = res.data.data.tlevelName
state.formParam.tlevelId = res.data.data.tlevelId
state.formParam.name = res.data.data.name+'/'+res.data.data.userNo
state.formParam.orgLists = res.data.data.expertiseNames?.split(',').map(item=>({ name: item }))
}
@@ -1117,6 +1140,7 @@ export default {
// }
const handleformlevel = (val) => {
state.formParam.tlevelName = state.tSystemNames.levelVoList.find(item=>item.id===val)?.levelName
state.formParam.tLevelId = state.tSystemNames.levelVoList.find(item=>item.id===val)?.id
}
//导出功能
const handleExport = () => {
@@ -1205,7 +1229,15 @@ export default {
color: #ffffff;
font-size: 26px;
}
.add_list{
display: flex;
margin-top: 10px;
& div{
padding: 10px;
background: aliceblue;
margin-left: 10px;
}
}
//导出按钮icon
.daochu {
width: 16px;