Merge branch 'develop' of ssh://gitlab.dongwu-inc.com:10022/BOE/fe-manage into develop

This commit is contained in:
zhangyc
2022-12-25 12:23:26 +08:00
4 changed files with 9778 additions and 10306 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,30 +1,15 @@
<!-- 确定新建面授课弹窗 --> <!-- 确定新建面授课弹窗 -->
<template> <template>
<a-modal <a-modal v-model:visible="ft_hs" title="Title" :footer="null" :closable="false"
v-model:visible="ft_hs" wrapClassName="modalStyle facteachModal" width="80%" @cancel="visibleClose" @ok="handlePush">
title="Title"
:footer="null"
:closable="false"
wrapClassName="modalStyle facteachModal"
width="80%"
@cancel="visibleClose"
@ok="handlePush"
>
<div class="modalHeader"> <div class="modalHeader">
<div class="headerLeft"> <div class="headerLeft">
<img <img style="width: 17px; height: 18px; margin-right: 8px" src="@/assets/images/basicinfo/add.png" />
style="width: 17px; height: 18px; margin-right: 8px"
src="@/assets/images/basicinfo/add.png"
/>
<span v-if="ft_eidt" class="headerLeftText">编辑面授课</span> <span v-if="ft_eidt" class="headerLeftText">编辑面授课</span>
<span v-else class="headerLeftText">新建面授课</span> <span v-else class="headerLeftText">新建面授课</span>
</div> </div>
<div style="margin-right: 57px; cursor: pointer"> <div style="margin-right: 57px; cursor: pointer">
<img <img @click="noEditClose" style="width: 22px; height: 22px" src="@/assets/images/basicinfo/close22.png" />
@click="noEditClose"
style="width: 22px; height: 22px"
src="@/assets/images/basicinfo/close22.png"
/>
</div> </div>
</div> </div>
<div class="modalMain"> <div class="modalMain">
@@ -41,28 +26,25 @@
<div class="mbl_items"> <div class="mbl_items">
<div class="item_nam"> <div class="item_nam">
<div class="asterisk_icon"> <div class="asterisk_icon">
<img <img src="@/assets/images/coursewareManage/asterisk.png" alt="asterisk" />
src="@/assets/images/coursewareManage/asterisk.png"
alt="asterisk"
/>
</div> </div>
<span style="margin-right: 14px">课程名称</span> <span style="margin-right: 14px">课程名称</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="i1_input"> <div class="i1_input">
<NameInput ref="inputRef" placeholder="请输入课程名称" v-model:value="qdms_inputV1" v-model:validate="validate" <NameInput ref="inputRef" placeholder="请输入课程名称" v-model:value="qdms_inputV1"
:maxlength="20" show-count :type="2" :id="offcourseId"></NameInput> v-model:validate="validate" :maxlength="20" show-count :type="2" :id="offcourseId"></NameInput>
<!-- <a-input--> <!-- <a-input-->
<!-- v-model:value="qdms_inputV1"--> <!-- v-model:value="qdms_inputV1"-->
<!-- maxlength="90"--> <!-- maxlength="90"-->
<!-- style="width: 440px; height: 40px; border-radius: 8px"--> <!-- style="width: 440px; height: 40px; border-radius: 8px"-->
<!-- placeholder="请输入课程名称"--> <!-- placeholder="请输入课程名称"-->
<!-- />--> <!-- />-->
<!-- <div class="inp_num">--> <!-- <div class="inp_num">-->
<!-- <span style="color: #c7cbd2">--> <!-- <span style="color: #c7cbd2">-->
<!-- {{ qdms_inputV1.length }}/90--> <!-- {{ qdms_inputV1.length }}/90-->
<!-- </span>--> <!-- </span>-->
<!-- </div>--> <!-- </div>-->
</div> </div>
</div> </div>
</div> </div>
@@ -71,35 +53,22 @@
<div class="i2_left"> <div class="i2_left">
<span style="color: #999ba3">课程命名规则</span> <span style="color: #999ba3">课程命名规则</span>
</div> </div>
<div <div class="i2_right" @click="hideShow" style="cursor: pointer">
class="i2_right" <div class="b_zk" :style="{ display: hideshow ? 'block' : 'none' }">
@click="hideShow"
style="cursor: pointer"
>
<div
class="b_zk"
:style="{ display: hideshow ? 'block' : 'none' }"
>
<span style="color: #4ea6ff">收起</span> <span style="color: #4ea6ff">收起</span>
</div> </div>
<div <div class="b_sq" :style="{ display: hideshow ? 'none' : 'block' }">
class="b_sq"
:style="{ display: hideshow ? 'none' : 'block' }"
>
<span style="color: #4ea6ff">展开</span> <span style="color: #4ea6ff">展开</span>
</div> </div>
<div class="b_icon"></div> <div class="b_icon"></div>
</div> </div>
</div> </div>
<div <div class="i2_detail" :style="{ display: hideshow ? 'block' : 'none' }">
class="i2_detail"
:style="{ display: hideshow ? 'block' : 'none' }"
>
<span style="color: #999ba3"> <span style="color: #999ba3">
1课程名称统一不加书名号<br/> 1课程名称统一不加书名号<br />
2项目名称属地等信息如需体现在课程名称中请放在课程名称信息 2项目名称属地等信息如需体现在课程名称中请放在课程名称信息
之后时间管理GROW180项目时间管理B*确保首先 之后时间管理GROW180项目时间管理B*确保首先
看到的是课程内容主题<br/> 看到的是课程内容主题<br />
3同一课程如先后有多个版本原则上仅开放最新版本旧版本应停用 3同一课程如先后有多个版本原则上仅开放最新版本旧版本应停用
版本如必须以年份标明请以沟通技巧2022的方式呈现 版本如必须以年份标明请以沟通技巧2022的方式呈现
</span> </span>
@@ -108,24 +77,15 @@
<div class="mbl_items2"> <div class="mbl_items2">
<div class="item_nam"> <div class="item_nam">
<div class="asterisk_icon"> <div class="asterisk_icon">
<img <img src="@/assets/images/coursewareManage/asterisk.png" alt="" />
src="@/assets/images/coursewareManage/asterisk.png"
alt=""
/>
</div> </div>
<span style="margin-right: 14px">封面图</span> <span style="margin-right: 14px">封面图</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div style="width:440px;height:70px;display: flex;justify-content: flex-start;align-items: center;"> <div style="width:440px;height:70px;display: flex;justify-content: flex-start;align-items: center;">
<img <img v-for="(item, index) in optionsUrl" :key="index" class="choiceoptionurl"
v-for="(item, index) in optionsUrl" :style="item.value == feng_mian_1 ? 'border:3px solid rgb(78, 166, 255);' : ''" :src="item.value"
:key="index" :alt="item.label" @click="choicePic(item.value)" />
class="choiceoptionurl"
:style="item.value==feng_mian_1?'border:3px solid rgb(78, 166, 255);':''"
:src="item.value"
:alt="item.label"
@click="choicePic(item.value)"
/>
</div> </div>
<!-- <a-select <!-- <a-select
:getPopupContainer=" :getPopupContainer="
@@ -141,13 +101,8 @@
allowClear allowClear
showSearch showSearch
/> --> /> -->
<img <img class="i_upload_img" v-if="feng_mian_1" :src="feng_mian_1"
class="i_upload_img" style="width:220px;height:120px;border-radius: 8px;" alt="avatar" />
v-if="feng_mian_1"
:src="feng_mian_1"
style="width:220px;height:120px;border-radius: 8px;"
alt="avatar"
/>
<div class="i_bottom"> <div class="i_bottom">
<span style="color: #999ba3"> <span style="color: #999ba3">
高宽比为16:9 (:800*450) png或jpg图片 高宽比为16:9 (:800*450) png或jpg图片
@@ -158,22 +113,14 @@
<div class="mbl_items"> <div class="mbl_items">
<div class="item_nam"> <div class="item_nam">
<div class="asterisk_icon"> <div class="asterisk_icon">
<img <img style="width: 10px; height: 10px" src="@/assets/images/coursewareManage/asterisk.png" alt="" />
style="width: 10px; height: 10px"
src="@/assets/images/coursewareManage/asterisk.png"
alt=""
/>
</div> </div>
<span style="margin-right: 14px">目标人群</span> <span style="margin-right: 14px">目标人群</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="i1_input"> <div class="i1_input">
<a-input <a-input v-model:value="qdms_inputV2" maxlength="50"
v-model:value="qdms_inputV2" style="width: 440px; height: 40px; border-radius: 8px" placeholder="请输入目标人群" />
maxlength="50"
style="width: 440px; height: 40px; border-radius: 8px"
placeholder="请输入目标人群"
/>
<div class="inp_num"> <div class="inp_num">
<span style="color: #c7cbd2"> <span style="color: #c7cbd2">
{{ qdms_inputV2.length }}/50 {{ qdms_inputV2.length }}/50
@@ -185,10 +132,7 @@
<div class="mbl_items"> <div class="mbl_items">
<div class="item_nam"> <div class="item_nam">
<div class="asterisk_icon"> <div class="asterisk_icon">
<img <img src="@/assets/images/coursewareManage/asterisk.png" alt="asterisk" />
src="@/assets/images/coursewareManage/asterisk.png"
alt="asterisk"
/>
</div> </div>
<span style="margin-right: 14px">内容分类</span> <span style="margin-right: 14px">内容分类</span>
</div> </div>
@@ -208,34 +152,38 @@
<!-- allowClear--> <!-- allowClear-->
<!-- showSearch--> <!-- showSearch-->
<!-- />--> <!-- />-->
<a-tree-select <a-tree-select style="width: 440px" placeholder="请选择内容分类" :treeDefaultExpandAll="true"
style="width: 440px"
placeholder="请选择内容分类"
:treeDefaultExpandAll="true"
:getPopupContainer=" :getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" " @change="changeTreeSelectValue" v-model:value="fen_lei" :tree-data="options2222">
v-model:value="fen_lei"
:tree-data="options2222"
>
</a-tree-select> </a-tree-select>
</div> </div>
</div> </div>
</div> </div>
<div v-if="fen_lei" class="mbl_items">
<div class="item_nam">
<div class="asterisk_icon">
</div>
<span style="margin-right: 14px"> </span>
</div>
<div class="item_inp">
<div class="select i6_input">
<div style="width:440px;height:26px;font-size: 14px;color: rgb(153, 155, 163);">
所属层级{{ fen_lei1 }}
</div>
</div>
</div>
</div>
<div class="mbl_items"> <div class="mbl_items">
<div class="item_nam" style="margin-bottom:110px;"> <div class="item_nam" style="margin-bottom:110px;">
<span style="margin-right: 14px">课程价值</span> <span style="margin-right: 14px">课程价值</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="i1_input"> <div class="i1_input">
<a-textarea <a-textarea v-model:value="qdms_inputV3" maxlength="200"
v-model:value="qdms_inputV3" style="width: 440px; height: 140px; border-radius: 8px" placeholder="请输入课程价值" />
maxlength="200"
style="width: 440px; height: 140px; border-radius: 8px"
placeholder="请输入课程价值"
/>
<div class="inp_num" style="top:110px;"> <div class="inp_num" style="top:110px;">
<span style="color: #c7cbd2;"> <span style="color: #c7cbd2;">
{{ qdms_inputV3.length }}/200 {{ qdms_inputV3.length }}/200
@@ -250,20 +198,12 @@
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="select i7_input"> <div class="select i7_input">
<a-select <a-select :getPopupContainer="
:getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" " v-model:value="chang_jin" dropdownClassName="dropdown-style" style="width: 440px" placeholder="请选择"
v-model:value="chang_jin" :options="options3" allowClear showSearch />
dropdownClassName="dropdown-style"
style="width: 440px"
placeholder="请选择"
:options="options3"
allowClear
showSearch
/>
</div> </div>
</div> </div>
</div> </div>
@@ -272,19 +212,10 @@
<span style="margin-right: 14px">内容标签</span> <span style="margin-right: 14px">内容标签</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<a-input <a-input v-model:value="tags_val_single" style="width: 440px; height: 40px; border-radius: 8px"
v-model:value="tags_val_single" placeholder="请输入内容标签按回车键添加内容标签,可添加多个内容标签。" @pressEnter="handleTagChange" />
style="width: 440px; height: 40px; border-radius: 8px"
placeholder="请输入内容标签按回车键添加内容标签,可添加多个内容标签。"
@pressEnter="handleTagChange"
/>
<div class="tag-content"> <div class="tag-content">
<a-tag <a-tag v-for="(item, index) in tags_val" :key="index" closable @close="handleTagClose(item)">
v-for="(item, index) in tags_val"
:key="index"
closable
@close="handleTagClose(item)"
>
{{ item }} {{ item }}
</a-tag> </a-tag>
</div> </div>
@@ -295,41 +226,28 @@
<div class="mbl_items"> <div class="mbl_items">
<div class="item_nam" style="margin-top:5px;"> <div class="item_nam" style="margin-top:5px;">
<div class="asterisk_icon"> <div class="asterisk_icon">
<img <img src="@/assets/images/coursewareManage/asterisk.png" alt="asterisk" />
src="@/assets/images/coursewareManage/asterisk.png"
alt="asterisk"
/>
</div> </div>
<!-- 授课教师1 --> <!-- 授课教师1 -->
<span style="margin-right: 14px">授课教师</span> <span style="margin-right: 14px">授课教师</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="select" style="width:88%;"> <div class="select" style="width:88%;">
<ProjectManager <ProjectManager v-model:value="member.value" v-model:name="member.name" />
v-model:value="member.value"
v-model:name="member.name"
/>
</div> </div>
</div> </div>
</div> </div>
<div class="mbl_items2"> <div class="mbl_items2">
<div class="item_nam"> <div class="item_nam">
<div class="asterisk_icon"> <div class="asterisk_icon">
<img <img src="@/assets/images/coursewareManage/asterisk.png" alt="asterisk" />
src="@/assets/images/coursewareManage/asterisk.png"
alt="asterisk"
/>
</div> </div>
<span style="margin-right: 14px">课程简介</span> <span style="margin-right: 14px">课程简介</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="i10_textarea"> <div class="i10_textarea">
<a-textarea <a-textarea v-model:value="qdms_inputV6" maxlength="150"
v-model:value="qdms_inputV6" style="width: 440px; height: 100px; border-radius: 8px" placeholder="请输入" />
maxlength="150"
style="width: 440px; height: 100px; border-radius: 8px"
placeholder="请输入"
/>
<div class="inp_num"> <div class="inp_num">
<span style="color: #c7cbd2"> <span style="color: #c7cbd2">
{{ qdms_inputV6.length }}/150 {{ qdms_inputV6.length }}/150
@@ -343,7 +261,7 @@
<span style="margin-right: 10px">附件</span> <span style="margin-right: 10px">附件</span>
</div> </div>
<div class="item_inp"> <div class="item_inp">
<FJUpload v-model:value="attach" @changevalue="changevalue"/> <FJUpload v-model:value="attach" @changevalue="changevalue" />
</div> </div>
</div> </div>
</div> </div>
@@ -354,19 +272,10 @@
</div> </div>
<div class="fotarea"> <div class="fotarea">
<div style="border: 1px solid #ccc"> <div style="border: 1px solid #ccc">
<Toolbar <Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" :defaultConfig="toolbarConfig"
style="border-bottom: 1px solid #ccc" :mode="mode" />
:editor="editorRef" <Editor style="height: 250px; overflow-y: hidden" v-model="valueHtml" :defaultConfig="editorConfig"
:defaultConfig="toolbarConfig" :mode="mode" @onCreated="handleCreated" />
:mode="mode"
/>
<Editor
style="height: 250px; overflow-y: hidden"
v-model="valueHtml"
:defaultConfig="editorConfig"
:mode="mode"
@onCreated="handleCreated"
/>
</div> </div>
</div> </div>
</div> </div>
@@ -399,20 +308,19 @@ import {
// onMounted, // onMounted,
onUnmounted, onUnmounted,
} from "vue"; } from "vue";
import {validateName} from "@/api/index1"; import { validateName } from "@/api/index1";
import {message} from "ant-design-vue"; import { message } from "ant-design-vue";
import {edit, detail, handle} from "@/api/indexCourse"; import { edit, detail, handle } from "@/api/indexCourse";
import {fileUp} from "../../api/indexEval"; import { fileUp } from "../../api/indexEval";
import * as api1 from "../../api/index1"; import * as api1 from "../../api/index1";
import "@wangeditor/editor/dist/css/style.css"; import "@wangeditor/editor/dist/css/style.css";
import {Editor, Toolbar} from "@wangeditor/editor-for-vue"; import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
import ProjectManager from "@/components/project/ProjectManagerNew"; import ProjectManager from "@/components/project/ProjectManagerNew";
import NameInput from "@/components/project/NameInput"; import NameInput from "@/components/project/NameInput";
import FJUpload from "@/components/common/FJUpload"; import FJUpload from "@/components/common/FJUpload";
import * as moment from "moment"; import * as moment from "moment";
import * as api2 from "../../api/indexAudit"; import * as api2 from "../../api/indexAudit";
export default defineComponent({ export default defineComponent({
components: { components: {
Editor, Editor,
@@ -427,23 +335,24 @@ export default defineComponent({
default: null, default: null,
}, },
}, },
setup(props, {expose, emit}) { setup(props, { expose, emit }) {
const state = reactive({ const state = reactive({
hideshow: true, hideshow: true,
ft_eidt: false, ft_eidt: false,
attach: "", attach: "",
validate:true, validate: true,
ft_hs: false, ft_hs: false,
addLoading: false, addLoading: false,
statusJuJue: 0, statusJuJue: 0,
statusTingQi: 1, statusTingQi: 1,
member: {name: "", value: ""}, member: { name: "", value: "" },
offcourseId: null, offcourseId: null,
qdms_inputV1: "", qdms_inputV1: "",
qdms_inputV2: "", qdms_inputV2: "",
qdms_inputV3: "", qdms_inputV3: "",
fen_lei: null, fen_lei: null,
fen_lei1: null,
feng_mian_1: null, feng_mian_1: null,
chang_jin: null, chang_jin: null,
tags_val_single: "", tags_val_single: "",
@@ -457,11 +366,16 @@ export default defineComponent({
{ {
title: '领导力', title: '领导力',
value: '100', value: '100',
selectable: false,
children: [ children: [
{ {
title: '领导业务', title: '领导业务',
value: '1001', value: '1001',
children: [
{
title: '业务能力领导',
value: '100101',
}
]
}, },
{ {
title: '领导团队', title: '领导团队',
@@ -476,7 +390,6 @@ export default defineComponent({
{ {
title: '专业力', title: '专业力',
value: '200', value: '200',
selectable: false,
children: [ children: [
{ {
title: '研发', title: '研发',
@@ -559,7 +472,6 @@ export default defineComponent({
{ {
title: '通用力', title: '通用力',
value: '300', value: '300',
selectable: false,
children: [ children: [
{ {
title: '职业操守与道德', title: '职业操守与道德',
@@ -582,14 +494,14 @@ export default defineComponent({
const changevalue = (e) => { const changevalue = (e) => {
let arr = state.attach.split(',') let arr = state.attach.split(',')
let newarr = [] let newarr = []
for(let i=0;i<arr.length;i++){ for (let i = 0; i < arr.length; i++) {
if(i!==e){ if (i !== e) {
newarr.push(arr[i]) newarr.push(arr[i])
} }
} }
if(newarr.length==0){ if (newarr.length == 0) {
state.attach = ""; state.attach = "";
}else{ } else {
state.attach = newarr.toString() state.attach = newarr.toString()
} }
console.log('changevalue', e, newarr, state.attach) console.log('changevalue', e, newarr, state.attach)
@@ -606,7 +518,7 @@ export default defineComponent({
state.ft_hs = true; state.ft_hs = true;
state.ft_eidt = false; state.ft_eidt = false;
state.qdms_inputV1 = name; state.qdms_inputV1 = name;
console.log(" state.qdms_inputV1 ",state.qdms_inputV1 ); console.log(" state.qdms_inputV1 ", state.qdms_inputV1);
} }
}; };
const visibleClose = () => { const visibleClose = () => {
@@ -634,13 +546,14 @@ export default defineComponent({
state.addLoading = false; state.addLoading = false;
state.statusJuJue = 0; state.statusJuJue = 0;
state.statusTingQi = 1; state.statusTingQi = 1;
state.member = {name: "", value: ""}; state.member = { name: "", value: "" };
state.offcourseId = null; state.offcourseId = null;
state.qdms_inputV1 = ""; state.qdms_inputV1 = "";
state.qdms_inputV2 = ""; state.qdms_inputV2 = "";
state.qdms_inputV3 = ""; state.qdms_inputV3 = "";
state.fen_lei = null; state.fen_lei = null;
state.fen_lei1 = null;
state.feng_mian_1 = null; state.feng_mian_1 = null;
state.chang_jin = null; state.chang_jin = null;
state.tags_val_single = ""; state.tags_val_single = "";
@@ -675,7 +588,7 @@ export default defineComponent({
const toolbarConfig = { const toolbarConfig = {
excludeKeys: ["insertVideo", "insertImage"], excludeKeys: ["insertVideo", "insertImage"],
}; };
const editorConfig = {placeholder: "请输入内容...", MENU_CONF: {}}; const editorConfig = { placeholder: "请输入内容...", MENU_CONF: {} };
editorConfig.MENU_CONF["uploadImage"] = { editorConfig.MENU_CONF["uploadImage"] = {
// 自定义上传 // 自定义上传
async customUpload(file, insertFn) { async customUpload(file, insertFn) {
@@ -769,7 +682,7 @@ export default defineComponent({
}; };
function dealDickTree(data, level = 1) { function dealDickTree(data, level = 1) {
return data?.filter(e => e.levelId == level).map(({dictName, dictCode}) => ({ return data?.filter(e => e.levelId == level).map(({ dictName, dictCode }) => ({
title: dictName, title: dictName,
value: dictCode, value: dictCode,
key: dictCode, key: dictCode,
@@ -795,7 +708,7 @@ export default defineComponent({
for (const keyName of checkList) { for (const keyName of checkList) {
if (!keyName) { if (!keyName) {
count++; count++;
console.log("keyname",keyName); console.log("keyname", keyName);
} }
} }
@@ -814,10 +727,10 @@ export default defineComponent({
files = files.slice(0, files.length - 1); files = files.slice(0, files.length - 1);
console.log("filesfiles", files); console.log("filesfiles", files);
const offName = await validateName({name: state.qdms_inputV1, type:2, id:state.offcourseId}).then(res => { const offName = await validateName({ name: state.qdms_inputV1, type: 2, id: state.offcourseId }).then(res => {
return res.data.data == 1; return res.data.data == 1;
}); });
if(offName){ if (offName) {
message.destroy(); message.destroy();
return message.warning("课程名称重复,请重新填写"); return message.warning("课程名称重复,请重新填写");
} }
@@ -847,7 +760,7 @@ export default defineComponent({
postData.picUrl, postData.picUrl,
postData.intro, postData.intro,
]; ];
console.log("checkList",checkList); console.log("checkList", checkList);
if (!checkVal(checkList)) { if (!checkVal(checkList)) {
message.destroy(); message.destroy();
return message.error("请输入必填项"); return message.error("请输入必填项");
@@ -867,7 +780,7 @@ export default defineComponent({
message.success("保存成功"); message.success("保存成功");
visibleClose(); visibleClose();
} }
}else if(res.data.code === -1){ } else if (res.data.code === -1) {
message.destroy(); message.destroy();
message.success("无此操作权限"); message.success("无此操作权限");
@@ -881,7 +794,7 @@ export default defineComponent({
//编辑面授课渲染绑定 //编辑面授课渲染绑定
const handleEditInfo = async (offcourseId) => { const handleEditInfo = async (offcourseId) => {
console.log("jjjaj"); console.log("jjjaj");
state.validate =true; state.validate = true;
state.qdms_inputV1 = ""; state.qdms_inputV1 = "";
const item = await detail({ const item = await detail({
offcourseId: Number(offcourseId), offcourseId: Number(offcourseId),
@@ -918,10 +831,11 @@ export default defineComponent({
state.qdms_inputV2 = item.targetUser; state.qdms_inputV2 = item.targetUser;
state.qdms_inputV3 = item.meaning; state.qdms_inputV3 = item.meaning;
state.fen_lei = String(item.categoryId); state.fen_lei = String(item.categoryId);
state.fen_lei1 = changeTreeSelectValue(String(item.categoryId));
state.chang_jin = String(item.sceneId); state.chang_jin = String(item.sceneId);
state.tags_val = item.tips ? item.tips.split(",") : []; state.tags_val = item.tips ? item.tips.split(",") : [];
state.qdms_inputV6 = item.intro; state.qdms_inputV6 = item.intro;
state.member = {value: item.teacherId, name: item.teacher}; state.member = { value: item.teacherId, name: item.teacher };
valueHtml.value = item.outline; valueHtml.value = item.outline;
let arrss = item.attach.split(',') let arrss = item.attach.split(',')
let str = '' let str = ''
@@ -965,13 +879,44 @@ export default defineComponent({
message.success("已提交审核"); message.success("已提交审核");
state.addLoading = false; state.addLoading = false;
visibleClose(); visibleClose();
}else if(res.data.code === -1){ } else if (res.data.code === -1) {
message.destroy(); message.destroy();
message.success("无此操作权限"); message.success("无此操作权限");
} }
}); });
}; };
// 格式化树型结构选择数据
const changeTreeSelectValue = (values) => {
let data = state.options2222;
console.log(values, data)
let str = ''
for (let i = 0; i < data.length; i++) {
if (data[i].value == values) {
str = data[i].title
} else {
for (let j = 0; j < data[i].children.length; j++) {
if (data[i].children[j].value == values) {
str = data[i].title + '/' + data[i].children[j].title
} else {
if (data[i].children[j].children) {
for (let k = 0; k < data[i].children[j].children.length; k++) {
if (data[i].children[j].children[k].value == values) {
str = data[i].title + '/' + data[i].children[j].title + '/' + data[i].children[j].children[k].title
} else {
str = '-'
}
}
}
}
}
}
}
console.log('str-str-str-str', str)
state.fen_lei1 = str;
return str;
}
return { return {
...toRefs(state), ...toRefs(state),
moment, moment,
@@ -994,7 +939,8 @@ export default defineComponent({
editorConfig, editorConfig,
handleCreated, handleCreated,
choicePic, choicePic,
changevalue changevalue,
changeTreeSelectValue
}; };
}, },
}); });
@@ -1404,8 +1350,9 @@ export default defineComponent({
margin-right: 10px; margin-right: 10px;
border-radius: 8px; border-radius: 8px;
} }
.aeLoading { .aeLoading {
z-index: 10000; z-index: 10000;
} }
} }
</style> </style>

View File

@@ -23,21 +23,12 @@
...calssifyList, ...calssifyList,
]" ]"
/>--> />-->
<a-tree-select <a-tree-select :getPopupContainer="
:getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" " v-model:value="valueproj" show-search :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
v-model:value="valueproj" placeholder="请选择内容分类" allow-clear tree-default-expand-all :tree-data="options2222">
show-search
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
placeholder="请选择内容分类"
allow-clear
tree-default-expand-all
:tree-data="options2222"
>
<template #title="{ value: val, title }"> <template #title="{ value: val, title }">
<b v-if="val === '11111'" style="color: #08c">sss</b> <b v-if="val === '11111'" style="color: #08c">sss</b>
<template v-else>{{ title }}</template> <template v-else>{{ title }}</template>
@@ -45,28 +36,20 @@
</a-tree-select> </a-tree-select>
</div> </div>
<div class="inpbox1"> <div class="inpbox1">
<a-input <a-input v-model:value="valuecreater" style="
v-model:value="valuecreater"
style="
width: 270px; width: 270px;
height: 40px; height: 40px;
border-radius: 8px; border-radius: 8px;
margin-right: 14px; margin-right: 14px;
" " placeholder="请输入创建人" />
placeholder="请输入创建人"
/>
</div> </div>
<div class="inpbox1"> <div class="inpbox1">
<a-input <a-input v-model:value="valuename" style="
v-model:value="valuename"
style="
width: 270px; width: 270px;
height: 40px; height: 40px;
border-radius: 8px; border-radius: 8px;
margin-right: 14px; margin-right: 14px;
" " placeholder="请输入名称" />
placeholder="请输入名称"
/>
</div> </div>
</div> </div>
</div> </div>
@@ -83,40 +66,20 @@
</div> </div>
<div class="tmpl_body"> <div class="tmpl_body">
<div class="tmpl_tabbox"> <div class="tmpl_tabbox">
<a-table <a-table :columns="columns1" :data-source="tableData1" :loading="loading" expandRowByClick="true"
:columns="columns1" @expand="expandTable" :scroll="{ x: 1300 }" :pagination="false" />
:data-source="tableData1"
:loading="loading"
expandRowByClick="true"
@expand="expandTable"
:scroll="{ x: 1300 }"
:pagination="false"
/>
</div> </div>
<div class="tableBox"> <div class="tableBox">
<div class="pa"> <div class="pa">
<a-pagination <a-pagination v-if="total > 10" :showSizeChanger="false" show-quick-jumper :pageSize="pageSize"
v-if="total > 10" v-model:current="currentPage" :total="total" class="pagination" @change="changePagination" />
:showSizeChanger="false"
show-quick-jumper
:pageSize="pageSize"
v-model:current="currentPage"
:total="total"
class="pagination"
@change="changePagination"
/>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<!-- 审核日志弹窗 --> <!-- 审核日志弹窗 -->
<a-modal <a-modal v-model:visible="projAuditModal" :footer="null" :closable="closeBack" wrapClassName="projAuditModal"
v-model:visible="projAuditModal" centered="true">
:footer="null"
:closable="closeBack"
wrapClassName="projAuditModal"
centered="true"
>
<div class="delete"> <div class="delete">
<div class="del_header"></div> <div class="del_header"></div>
<div class="del_main"> <div class="del_main">
@@ -126,16 +89,9 @@
<!-- <div class="close_exit" @click="closeProjAuditModal"></div> --> <!-- <div class="close_exit" @click="closeProjAuditModal"></div> -->
</div> </div>
<div class="body"> <div class="body">
<a-table <a-table style="width:100%" :columns="columnsAudit" :data-source="tableDataAudit"
style="width:100%" :loading="tableDataTotalAudit === -1 ? true : false" expandRowByClick="true" :scroll="{ y: 250 }"
:columns="columnsAudit" @expand="expandTable" :pagination="false" />
:data-source="tableDataAudit"
:loading="tableDataTotalAudit === -1 ? true : false"
expandRowByClick="true"
:scroll="{ y: 250 }"
@expand="expandTable"
:pagination="false"
/>
</div> </div>
<div class="del_btnbox"> <div class="del_btnbox">
<div class="del_btn btn1" @click="closeProjAuditModal"> <div class="del_btn btn1" @click="closeProjAuditModal">
@@ -161,7 +117,7 @@ export default {
setup() { setup() {
const state = reactive({ const state = reactive({
calssifyList: [], //分类字典 calssifyList: [], //分类字典
valueproj:null, valueproj: null,
valuecreater: "", valuecreater: "",
valuename: "", valuename: "",
currentPage: 1, currentPage: 1,
@@ -174,7 +130,7 @@ export default {
dataIndex: "createName", dataIndex: "createName",
key: "createName", key: "createName",
align: "center", align: "center",
width:"20%", width: "20%",
ellipsis: true, ellipsis: true,
}, },
@@ -183,7 +139,7 @@ export default {
dataIndex: "status", dataIndex: "status",
key: "status", key: "status",
align: "center", align: "center",
width:"20%", width: "20%",
customRender: ({ record: { status } }) => ( customRender: ({ record: { status } }) => (
<div>{{ 2: "审核通过", "-2": "审核拒绝" }[status + ""]}</div> <div>{{ 2: "审核通过", "-2": "审核拒绝" }[status + ""]}</div>
), ),
@@ -194,7 +150,7 @@ export default {
dataIndex: "createTime", dataIndex: "createTime",
key: "createTime", key: "createTime",
align: "center", align: "center",
width:"20%", width: "20%",
ellipsis: true, ellipsis: true,
}, },
@@ -203,7 +159,7 @@ export default {
dataIndex: "description", dataIndex: "description",
key: "description", key: "description",
align: "center", align: "center",
width:"30%", width: "30%",
ellipsis: true, ellipsis: true,
}, },
], ],
@@ -219,7 +175,7 @@ export default {
dataIndex: "name", dataIndex: "name",
key: "name", key: "name",
align: "center", align: "center",
width:"20%", width: "20%",
ellipsis: true, ellipsis: true,
}, },
{ {
@@ -227,7 +183,7 @@ export default {
dataIndex: "type", dataIndex: "type",
key: "type", key: "type",
align: "center", align: "center",
width:"10%", width: "10%",
ellipsis: true, ellipsis: true,
}, },
{ {
@@ -235,7 +191,7 @@ export default {
dataIndex: "content", dataIndex: "content",
key: "content", key: "content",
align: "center", align: "center",
width:"10%", width: "10%",
ellipsis: true, ellipsis: true,
}, },
{ {
@@ -243,14 +199,14 @@ export default {
dataIndex: "status", dataIndex: "status",
key: "status", key: "status",
align: "center", align: "center",
width:"10%", width: "10%",
}, },
{ {
title: "创建人", title: "创建人",
dataIndex: "creater", dataIndex: "creater",
key: "creater", key: "creater",
align: "center", align: "center",
width:"10%", width: "10%",
ellipsis: true, ellipsis: true,
}, },
{ {
@@ -258,7 +214,7 @@ export default {
dataIndex: "time", dataIndex: "time",
key: "time", key: "time",
align: "center", align: "center",
width:"10%", width: "10%",
ellipsis: true, ellipsis: true,
customRender: (time) => { customRender: (time) => {
return <div style="color:#387DF7">{time.record.time}</div>; return <div style="color:#387DF7">{time.record.time}</div>;
@@ -270,13 +226,13 @@ export default {
key: "msg", key: "msg",
align: "center", align: "center",
ellipsis: true, ellipsis: true,
width:"20%", width: "20%",
}, },
{ {
title: "操作", title: "操作",
dataIndex: "opt", dataIndex: "opt",
key: "opt", key: "opt",
width:"10%", width: "10%",
align: "center", align: "center",
customRender: (value) => { customRender: (value) => {
return ( return (
@@ -284,7 +240,7 @@ export default {
style="color:#387DF7;cursor:pointer;" style="color:#387DF7;cursor:pointer;"
onClick={() => { onClick={() => {
console.log(value); console.log(value);
showProjAuditModal(value.record.auditLogDtoList.length!==0?value.record.auditLogDtoList:[]); showProjAuditModal(value.record.auditLogDtoList.length !== 0 ? value.record.auditLogDtoList : []);
}} }}
> >
审核日志 审核日志
@@ -308,17 +264,22 @@ export default {
//审核记录的数据 //审核记录的数据
tableDataAudit: [], tableDataAudit: [],
projAuditModal: false, projAuditModal: false,
loading:false, loading: false,
// 课程三级分类 // 课程三级分类
options2222:[ options2222: [
{ {
title: '领导力', title: '领导力',
value: '100', value: '100',
selectable:false,
children: [ children: [
{ {
title: '领导业务', title: '领导业务',
value: '1001', value: '1001',
children: [
{
title: '业务能力领导',
value: '100101',
}
]
}, },
{ {
title: '领导团队', title: '领导团队',
@@ -333,7 +294,6 @@ export default {
{ {
title: '专业力', title: '专业力',
value: '200', value: '200',
selectable:false,
children: [ children: [
{ {
title: '研发', title: '研发',
@@ -416,7 +376,6 @@ export default {
{ {
title: '通用力', title: '通用力',
value: '300', value: '300',
selectable:false,
children: [ children: [
{ {
title: '职业操守与道德', title: '职业操守与道德',
@@ -439,18 +398,50 @@ export default {
const sHX = (data) => { const sHX = (data) => {
let str = '-' let str = '-'
let sdata = state.options2222 let sdata = state.options2222
for(let i =0; i<sdata.length;i++){ for (let i = 0; i < sdata.length; i++) {
for(let j=0;j<sdata[i].children.length;j++){ for (let j = 0; j < sdata[i].children.length; j++) {
if (String(sdata[i].children[j].value) === String(data)) { str = changeTreeSelectValue(String(data))
{/* if (String(sdata[i].children[j].value) === String(data)) {
str = sdata[i].children[j].title; str = sdata[i].children[j].title;
} } */}
} }
} }
return str return str
} }
// 格式化树型结构选择数据
const changeTreeSelectValue = (values) => {
let data = state.options2222;
console.log(values, data)
let str = ''
for (let i = 0; i < data.length; i++) {
if (data[i].value == values) {
str = data[i].title
} else {
for (let j = 0; j < data[i].children.length; j++) {
if (data[i].children[j].value == values) {
str = data[i].title + '/' + data[i].children[j].title
} else {
if (data[i].children[j].children) {
for (let k = 0; k < data[i].children[j].children.length; k++) {
if (data[i].children[j].children[k].value == values) {
str = data[i].title + '/' + data[i].children[j].title + '/' + data[i].children[j].children[k].title
} else {
str = '-'
}
}
}
}
}
}
}
console.log('str-str-str-str', str)
state.fen_lei1 = str;
return str;
}
const getList = () => { const getList = () => {
state.loading=true state.loading = true
let objn = { let objn = {
auditStatus: 0, auditStatus: 0,
categoryId: Number(state.valueproj), categoryId: Number(state.valueproj),
@@ -465,7 +456,7 @@ export default {
console.log("获取已审核课程成功", res.data.data); console.log("获取已审核课程成功", res.data.data);
state.total = res.data.data.total; state.total = res.data.data.total;
setTableData(res.data.data.rows); setTableData(res.data.data.rows);
state.loading=false state.loading = false
}) })
.catch((err) => { .catch((err) => {
console.log("获取已审核课程失败", err); console.log("获取已审核课程失败", err);
@@ -736,6 +727,7 @@ export default {
background: #ffffff; background: #ffffff;
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21); box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
border-radius: 4px; border-radius: 4px;
// position: absolute; // position: absolute;
// left: 50%; // left: 50%;
// top: 10%; // top: 10%;
@@ -744,10 +736,8 @@ export default {
position: absolute; position: absolute;
width: calc(100%); width: calc(100%);
height: 68px; height: 68px;
background: linear-gradient( background: linear-gradient(rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0.2) 0%, rgba(78, 166, 255, 0) 100%);
rgba(78, 166, 255, 0) 100%
);
} }
.del_main { .del_main {

View File

@@ -22,21 +22,12 @@
...calssifyList, ...calssifyList,
]" ]"
/>--> />-->
<a-tree-select <a-tree-select :getPopupContainer="
:getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" " v-model:value="valueproj" show-search :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
v-model:value="valueproj" placeholder="请选择内容分类" tree-default-expand-all :tree-data="options2222">
show-search
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
placeholder="请选择内容分类"
tree-default-expand-all
:tree-data="options2222"
>
<template #title="{ value: val, title }"> <template #title="{ value: val, title }">
<b v-if="val === '11111'" style="color: #08c">sss</b> <b v-if="val === '11111'" style="color: #08c">sss</b>
<template v-else>{{ title }}</template> <template v-else>{{ title }}</template>
@@ -44,28 +35,20 @@
</a-tree-select> </a-tree-select>
</div> </div>
<div class="inpbox1"> <div class="inpbox1">
<a-input <a-input v-model:value="valuecreater" style="
v-model:value="valuecreater"
style="
width: 270px; width: 270px;
height: 40px; height: 40px;
border-radius: 8px; border-radius: 8px;
margin-right: 14px; margin-right: 14px;
" " placeholder="请输入创建人" />
placeholder="请输入创建人"
/>
</div> </div>
<div class="inpbox1"> <div class="inpbox1">
<a-input <a-input v-model:value="valuename" style="
v-model:value="valuename"
style="
width: 270px; width: 270px;
height: 40px; height: 40px;
border-radius: 8px; border-radius: 8px;
margin-right: 14px; margin-right: 14px;
" " placeholder="请输入名称" />
placeholder="请输入名称"
/>
</div> </div>
</div> </div>
</div> </div>
@@ -82,40 +65,20 @@
</div> </div>
<div class="tmpl_body"> <div class="tmpl_body">
<div class="tmpl_tabbox"> <div class="tmpl_tabbox">
<a-table <a-table :columns="columns1" :data-source="tableData1" :loading="loading" expandRowByClick="true"
:columns="columns1" @expand="expandTable" :scroll="{ x: 1300 }" :pagination="false" />
:data-source="tableData1"
:loading="loading"
expandRowByClick="true"
@expand="expandTable"
:scroll="{ x: 1300 }"
:pagination="false"
/>
</div> </div>
<div class="tableBox"> <div class="tableBox">
<div class="pa"> <div class="pa">
<a-pagination <a-pagination v-if="total > 10" :showSizeChanger="false" show-quick-jumper :pageSize="pageSize"
v-if="total > 10" v-model:current="currentPage" :total="total" class="pagination" @change="changePagination" />
:showSizeChanger="false"
show-quick-jumper
:pageSize="pageSize"
v-model:current="currentPage"
:total="total"
class="pagination"
@change="changePagination"
/>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<!-- 审核弹窗 --> <!-- 审核弹窗 -->
<a-modal <a-modal v-model:visible="courAuditModal" :footer="null" :closable="closeBack" wrapClassName="courAuditModal"
v-model:visible="courAuditModal" centered="true">
:footer="null"
:closable="closeBack"
wrapClassName="courAuditModal"
centered="true"
>
<div class="delete"> <div class="delete">
<div class="del_header"></div> <div class="del_header"></div>
<div class="del_main"> <div class="del_main">
@@ -135,19 +98,12 @@
</div> </div>
</div> </div>
<div class="item" style="margin-top: 20px"> <div class="item" style="margin-top: 20px">
<div <div class="sign" style="position: relative; left: 30px; top: -2px">
class="sign" <img src="@/assets/images/coursewareManage/asterisk.png" alt="" />
style="position: relative; left: 30px; top: -2px"
>
<img
src="@/assets/images/coursewareManage/asterisk.png"
alt=""
/>
</div> </div>
<div class="left">审核意见</div> <div class="left">审核意见</div>
<div class="rig"> <div class="rig">
<a-textarea v-model:value="valueSugg" :rows="4" show-count <a-textarea v-model:value="valueSugg" :rows="4" show-count :maxlength="20" />
:maxlength="20"/>
</div> </div>
</div> </div>
</div> </div>
@@ -163,27 +119,13 @@
</div> </div>
</a-modal> </a-modal>
<!-- 预览弹窗 --> <!-- 预览弹窗 -->
<SeeModal <SeeModal :visible="lookCourseModal" :detail="faceDetailObj" @cancel="ft_exit" />
:visible="lookCourseModal"
:detail="faceDetailObj"
@cancel="ft_exit"
/>
<!-- 审核在线课 --> <!-- 审核在线课 -->
<a-modal <a-modal v-model:visible="onlineClassesVisible" :footer="null" :closable="false"
v-model:visible="onlineClassesVisible" wrapClassName="modalStyle onlineClassesStyle" :zIndex="9999">
:footer="null" <iframe id="iframe" style="width: 100%; height: 100%" :src="iframeUrl + 'course/noapproved'" name="myframe"
:closable="false" sandbox="allow-forms allow-scripts allow-same-origin allow-popups"></iframe>
wrapClassName="modalStyle onlineClassesStyle"
:zIndex="9999"
>
<iframe
id="iframe"
style="width: 100%; height: 100%"
:src="iframeUrl + 'course/noapproved'"
name="myframe"
sandbox="allow-forms allow-scripts allow-same-origin allow-popups"
></iframe>
</a-modal> </a-modal>
</div> </div>
</template> </template>
@@ -202,7 +144,7 @@ export default {
}, },
setup() { setup() {
const state = reactive({ const state = reactive({
loading:false, loading: false,
optionsproj: [ optionsproj: [
{ {
value: "jack", value: "jack",
@@ -214,7 +156,7 @@ export default {
}, },
], ],
calssifyList: [], //分类字典 calssifyList: [], //分类字典
valueproj:null, valueproj: null,
valuecreater: "", valuecreater: "",
valuename: "", valuename: "",
// currentFacePage: 1, // currentFacePage: 1,
@@ -243,14 +185,14 @@ export default {
key: "name", key: "name",
align: "center", align: "center",
ellipsis: true, ellipsis: true,
width:"20%", width: "20%",
}, },
{ {
title: "类型", title: "类型",
dataIndex: "type", dataIndex: "type",
key: "type", key: "type",
align: "center", align: "center",
width:"10%", width: "10%",
}, },
{ {
title: "内容分类", title: "内容分类",
@@ -258,14 +200,14 @@ export default {
key: "content", key: "content",
align: "center", align: "center",
ellipsis: true, ellipsis: true,
width:"10%", width: "10%",
}, },
{ {
title: "状态", title: "状态",
dataIndex: "status", dataIndex: "status",
key: "status", key: "status",
align: "center", align: "center",
width:"10%", width: "10%",
}, },
// { // {
// title: "转审", // title: "转审",
@@ -279,7 +221,7 @@ export default {
key: "creater", key: "creater",
align: "center", align: "center",
ellipsis: true, ellipsis: true,
width:"15%", width: "15%",
}, },
{ {
title: "创建时间", title: "创建时间",
@@ -287,7 +229,7 @@ export default {
key: "time", key: "time",
align: "center", align: "center",
ellipsis: true, ellipsis: true,
width:"15%", width: "15%",
}, },
{ {
@@ -295,7 +237,7 @@ export default {
dataIndex: "opt", dataIndex: "opt",
key: "opt", key: "opt",
align: "center", align: "center",
width:"20%", width: "20%",
customRender: (value) => { customRender: (value) => {
return ( return (
<div> <div>
@@ -333,15 +275,20 @@ export default {
onlineClassesVisible: false, onlineClassesVisible: false,
iframeUrl: iframeUrl, iframeUrl: iframeUrl,
// 课程三级分类 // 课程三级分类
options2222:[ options2222: [
{ {
title: '领导力', title: '领导力',
value: '100', value: '100',
selectable:false,
children: [ children: [
{ {
title: '领导业务', title: '领导业务',
value: '1001', value: '1001',
children: [
{
title: '业务能力领导',
value: '100101',
}
]
}, },
{ {
title: '领导团队', title: '领导团队',
@@ -356,7 +303,6 @@ export default {
{ {
title: '专业力', title: '专业力',
value: '200', value: '200',
selectable:false,
children: [ children: [
{ {
title: '研发', title: '研发',
@@ -439,7 +385,6 @@ export default {
{ {
title: '通用力', title: '通用力',
value: '300', value: '300',
selectable:false,
children: [ children: [
{ {
title: '职业操守与道德', title: '职业操守与道德',
@@ -462,11 +407,12 @@ export default {
const sHX = (data) => { const sHX = (data) => {
let str = '-' let str = '-'
let sdata = state.options2222 let sdata = state.options2222
for(let i =0; i<sdata.length;i++){ for (let i = 0; i < sdata.length; i++) {
for(let j=0;j<sdata[i].children.length;j++){ for (let j = 0; j < sdata[i].children.length; j++) {
if (String(sdata[i].children[j].value) === String(data)) { str = changeTreeSelectValue(String(data))
str = sdata[i].children[j].title; // if (String(sdata[i].children[j].value) === String(data)) {
} // str = sdata[i].children[j].title;
// }
} }
} }
return str return str
@@ -486,7 +432,7 @@ export default {
.then((res) => res.data.data.rows); .then((res) => res.data.data.rows);
const getFaceList = () => { const getFaceList = () => {
state.loading=true state.loading = true
let objn = { let objn = {
auditStatus: 1, auditStatus: 1,
categoryId: state.valueproj, categoryId: state.valueproj,
@@ -511,7 +457,7 @@ export default {
} else { } else {
setFaceData([]); setFaceData([]);
} }
state.loading=false state.loading = false
}) })
.catch((err) => { .catch((err) => {
console.log("获取面授列表失败", err); console.log("获取面授列表失败", err);
@@ -692,6 +638,37 @@ export default {
})); }));
}); });
// 格式化树型结构选择数据
const changeTreeSelectValue = (values) => {
let data = state.options2222;
console.log(values, data)
let str = ''
for (let i = 0; i < data.length; i++) {
if (data[i].value == values) {
str = data[i].title
} else {
for (let j = 0; j < data[i].children.length; j++) {
if (data[i].children[j].value == values) {
str = data[i].title + '/' + data[i].children[j].title
} else {
if (data[i].children[j].children) {
for (let k = 0; k < data[i].children[j].children.length; k++) {
if (data[i].children[j].children[k].value == values) {
str = data[i].title + '/' + data[i].children[j].title + '/' + data[i].children[j].children[k].title
} else {
str = '-'
}
}
}
}
}
}
}
console.log('str-str-str-str', str)
state.fen_lei1 = str;
return str;
}
// 禁止用户编辑文本框内容 // 禁止用户编辑文本框内容
const onEditorFocus = (event) => { const onEditorFocus = (event) => {
event.enable(false); event.enable(false);
@@ -750,10 +727,8 @@ export default {
position: absolute; position: absolute;
width: calc(100%); width: calc(100%);
height: 68px; height: 68px;
background: linear-gradient( background: linear-gradient(rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0.2) 0%, rgba(78, 166, 255, 0) 100%);
rgba(78, 166, 255, 0) 100%
);
} }
.del_main { .del_main {
@@ -861,6 +836,7 @@ export default {
.lookCourseModal { .lookCourseModal {
.ant-modal { .ant-modal {
.ant-modal-content { .ant-modal-content {
// width:1358px !important; // width:1358px !important;
.ant-modal-body { .ant-modal-body {
.modalHeader { .modalHeader {