fix:面授课分类回显

This commit is contained in:
wyx
2022-12-10 18:37:48 +08:00
parent d88364b2f6
commit a39684a29f
2 changed files with 330 additions and 22 deletions

View File

@@ -39,7 +39,7 @@
</a-select>
</div>
<div class="select fitems">
<a-select
<!-- <a-select
v-model:value="categoryId"
dropdownClassName="dropdown-style"
style="width: 200px"
@@ -47,7 +47,27 @@
:options="options2"
allowClear
showSearch
></a-select>
></a-select> -->
<a-tree-select
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
"
v-model:value="categoryId"
show-search
style="width: 200px"
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
placeholder="请选择内容分类"
allow-clear
tree-default-expand-all
:tree-data="options2222"
>
<template #title="{ value: val, title }">
<b v-if="val === '11111'" style="color: #08c">sss</b>
<template v-else>{{ title }}</template>
</template>
</a-tree-select>
</div>
<div class="select fitems">
<a-range-picker
@@ -489,7 +509,7 @@
</div>
<div class="item_inp">
<div class="select i6_input">
<a-select
<!-- <a-select
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
@@ -502,7 +522,27 @@
:options="options2"
allowClear
showSearch
></a-select>
></a-select> -->
<a-tree-select
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
"
v-model:value="fen_lei"
show-search
style="width: 440px"
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
placeholder="请选择内容分类"
allow-clear
tree-default-expand-all
:tree-data="options2222"
>
<template #title="{ value: val, title }">
<b v-if="val === '11111'" style="color: #08c">sss</b>
<template v-else>{{ title }}</template>
</template>
</a-tree-select>
</div>
</div>
</div>
@@ -3541,6 +3581,130 @@ export default defineComponent({
codevisible: false, //二维码弹窗
codeInfo: null, //二维码内容
codeUrl: codeUrl,
// 课程三级分类
options2222:[
{
title: '领导力',
value: '100',
selectable:false,
children: [
{
title: '领导业务',
value: '1001',
},
{
title: '领导团队',
value: '1002',
},
{
title: '领导自我',
value: '1003',
},
],
},
{
title: '专业力',
value: '200',
selectable:false,
children: [
{
title: '研发',
value: '2001',
},
{
title: '产品和解决方案',
value: '2002',
},
{
title: '生产技术与制造',
value: '2003',
},
{
title: '供应链',
value: '2004',
},
{
title: '营销',
value: '2005',
},
{
title: '品质',
value: '2006',
},
{
title: '战略与企划',
value: '2007',
},
{
title: '流程管理',
value: '2008',
},
{
title: '业绩管理',
value: '2009',
},
{
title: '项目管理',
value: '20010',
},
{
title: '信息技术',
value: '20011',
},
{
title: '环境与安全',
value: '20012',
},
{
title: '人力资源',
value: '20013',
},
{
title: '企业文化',
value: '20014',
},
{
title: '品牌',
value: '20015',
},
{
title: '财务',
value: '20016',
},
{
title: '法务',
value: '20017',
},
{
title: '行政',
value: '20018',
},
{
title: '医工',
value: '20019',
}
],
},
{
title: '通用力',
value: '300',
selectable:false,
children: [
{
title: '职业操守与道德',
value: '3001',
},
{
title: '职业素养与技能',
value: '3002',
},
{
title: '规章制度',
value: '3003',
},
],
}
],
});
const showStuAdd = (record) => {
@@ -3762,15 +3926,32 @@ export default defineComponent({
},
true
);
// datas.forEach((itm) => {
// itm.pageNo = pageNo;
// for (let item of options2.value) {
// if (String(item.value) === String(itm.content)) {
// itm.contentTxt = item.label;
// return false;
// }
// }
// });
datas.forEach((itm) => {
itm.pageNo = pageNo;
for (let item of options2.value) {
if (String(item.value) === String(itm.content)) {
itm.contentTxt = item.label;
return false;
console.log(itm)
for(let i =0; i<options2.value.length;i++){
for(let j=0;j<options2.value[i].children.length;j++){
if (String(options2.value[i].children[j].value) === String(itm.categoryId)) {
console.log()
itm.contentTxt = options2.value[i].children[j].title;
return false;
}
}
}
});
console.log(datas, options2.value)
state.tableData1 = datas;
};
getTableDate();
@@ -4004,15 +4185,17 @@ export default defineComponent({
// }
}
if (param === "faceclassClass") {
let arr = res.data.data.rows;
let newArr = [];
arr.forEach((item) => {
newArr.push({
value: item.dictCode,
label: item.dictName,
});
});
options2.value = newArr;
// let arr = res.data.data.rows;
// let newArr = [];
// arr.forEach((item) => {
// newArr.push({
// value: item.dictCode,
// label: item.dictName,
// });
// });
// console.log(newArr)
options2.value = state.options2222;
}
if (param === "faceclassScene") {
let arr = res.data.data.rows;

View File

@@ -265,6 +265,129 @@ export default defineComponent({
console.log(props);
const state = reactive({
imgList: [],
options2222: [
{
title: '领导力',
value: '100',
selectable:false,
children: [
{
title: '领导业务',
value: '1001',
},
{
title: '领导团队',
value: '1002',
},
{
title: '领导自我',
value: '1003',
},
],
},
{
title: '专业力',
value: '200',
selectable:false,
children: [
{
title: '研发',
value: '2001',
},
{
title: '产品和解决方案',
value: '2002',
},
{
title: '生产技术与制造',
value: '2003',
},
{
title: '供应链',
value: '2004',
},
{
title: '营销',
value: '2005',
},
{
title: '品质',
value: '2006',
},
{
title: '战略与企划',
value: '2007',
},
{
title: '流程管理',
value: '2008',
},
{
title: '业绩管理',
value: '2009',
},
{
title: '项目管理',
value: '20010',
},
{
title: '信息技术',
value: '20011',
},
{
title: '环境与安全',
value: '20012',
},
{
title: '人力资源',
value: '20013',
},
{
title: '企业文化',
value: '20014',
},
{
title: '品牌',
value: '20015',
},
{
title: '财务',
value: '20016',
},
{
title: '法务',
value: '20017',
},
{
title: '行政',
value: '20018',
},
{
title: '医工',
value: '20019',
}
],
},
{
title: '通用力',
value: '300',
selectable:false,
children: [
{
title: '职业操守与道德',
value: '3001',
},
{
title: '职业素养与技能',
value: '3002',
},
{
title: '规章制度',
value: '3003',
},
],
}
]
});
const filterTxt = (txt) => {
@@ -277,11 +400,13 @@ export default defineComponent({
const filterClassTxt = (txt) => {
let str = "-";
if (txt) {
options2.value.forEach((item) => {
if (item.value === String(txt)) {
str = item.label;
for(let i =0; i<options2.value.length;i++){
for(let j=0;j<options2.value[i].children.length;j++){
if (String(options2.value[i].children[j].value) === String(txt)) {
str = options2.value[i].children[j].title;
}
}
});
}
}
return str;
};
@@ -323,7 +448,7 @@ export default defineComponent({
label: item.dictName,
});
});
options2.value = newArr;
options2.value = state.options2222;
}
if (param === "faceclassScene") {
let arr = res.data.data.rows;