mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-20 16:26:45 +08:00
feat:合并
This commit is contained in:
@@ -44,7 +44,7 @@ export default defineComponent({
|
||||
const store = useStore();
|
||||
const isLogin = ref(false);
|
||||
// console.log("router", router.getRoutes(), route);
|
||||
console.log("版本0.9.5------------");
|
||||
console.log("版本0.9.6------------");
|
||||
const routes = computed(() => {
|
||||
return router.getRoutes().filter((e) => e.meta?.isLink);
|
||||
});
|
||||
|
||||
@@ -56,7 +56,7 @@ http.interceptors.response.use(
|
||||
return response;
|
||||
} else {
|
||||
if (code === 1000) {
|
||||
// window.open("https://u-pre.boe.com/web/", '_self');
|
||||
window.open("https://u-pre.boe.com/web/", '_self');
|
||||
// window.open("http://111.231.196.214:12013/manage/login", '_self');
|
||||
}
|
||||
console.log("api %o", msg);
|
||||
|
||||
@@ -103,7 +103,7 @@ export default {
|
||||
return message.warning("请输入公告内容");
|
||||
} else {
|
||||
let obj = {
|
||||
notice: state.noticeContent1,
|
||||
notice: state.noticeContent,
|
||||
projectId: props.projectId,
|
||||
title: "",
|
||||
};
|
||||
@@ -147,7 +147,7 @@ export default {
|
||||
.noticeTitle {
|
||||
margin-left: 32px;
|
||||
margin-right: 32px;
|
||||
// padding-top: 20px;
|
||||
margin-bottom: 100px;
|
||||
.notitle {
|
||||
height: 55px;
|
||||
border-bottom: 1px solid #ededed;
|
||||
|
||||
@@ -323,7 +323,7 @@ export default {
|
||||
name: value.memberName ? value.memberName : "-",
|
||||
|
||||
com: value.orgName ? value.orgName : "-",
|
||||
gang: "-",
|
||||
gang: value.positionMgrLevel ? value.positionMgrLevel : "-",
|
||||
number: value.memberNo ? value.memberNo : "-",
|
||||
state: value.tagName ? value.tagName : "-",
|
||||
};
|
||||
|
||||
@@ -116,7 +116,8 @@
|
||||
</div>
|
||||
<div class="setc_name"><span>审核意见:</span></div>
|
||||
<div class="setc_main">
|
||||
<a-textarea v-model:value="valueSuggest" :rows="4"/>
|
||||
<a-textarea v-model:value="valueSuggest" :rows="4" show-count
|
||||
:maxlength="20"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
@search="searchMember"
|
||||
:open="isOpen"
|
||||
@change="change"
|
||||
@blur="blur"
|
||||
>
|
||||
<template v-if="loading" #notFoundContent>
|
||||
<a-spin size="small"/>
|
||||
@@ -60,8 +61,7 @@ const memberParam = ref({keyWord: '', pageNo: 1, pageSize: 10})
|
||||
const loading = ref(false)
|
||||
|
||||
|
||||
watch(() => memberParam.value.keyWord, throttle(getSearchMember, 500))
|
||||
watch(() => memberParam.value.pageNo, throttle(getPageMember, 500))
|
||||
watch(() => memberParam.value, throttle(getMemberData, 1000))
|
||||
watch(props, init)
|
||||
|
||||
function init() {
|
||||
@@ -76,19 +76,15 @@ onMounted(() => {
|
||||
init()
|
||||
})
|
||||
|
||||
function getSearchMember() {
|
||||
console.log('getSearchMember')
|
||||
options.value && options.value.length && (options.value = [])
|
||||
getMemberData()
|
||||
}
|
||||
|
||||
function getPageMember() {
|
||||
console.log('getPageMember')
|
||||
getMemberData()
|
||||
}
|
||||
|
||||
|
||||
function getMemberData() {
|
||||
console.log(memberParam)
|
||||
if (!memberParam.value.keyWord) {
|
||||
return
|
||||
}
|
||||
if (memberParam.value.pageNo !== 1) {
|
||||
options.value && options.value.length && (options.value = [])
|
||||
}
|
||||
isOpen.value = true
|
||||
loading.value = true
|
||||
api1.getMemberInfo(memberParam.value).then((res) => {
|
||||
@@ -116,11 +112,16 @@ const memberScroll = (e) => {
|
||||
//搜索学员
|
||||
const searchMember = (keyWord) => {
|
||||
console.log('searchMember', keyWord)
|
||||
loading.value = true
|
||||
options.value = []
|
||||
isOpen.value = true
|
||||
keyWord && (memberParam.value = {keyWord, pageNo: 1, pageSize: 10});
|
||||
};
|
||||
|
||||
function blur() {
|
||||
isOpen.value = false
|
||||
}
|
||||
|
||||
function change(e, l) {
|
||||
isOpen.value = false
|
||||
Array.isArray(l) && (selectOptions.value = l)
|
||||
@@ -129,8 +130,8 @@ function change(e, l) {
|
||||
emit('update:name', l.map(t => t.label).join(','))
|
||||
emit('update:value', l.map(t => t.value).join(','))
|
||||
} else {
|
||||
emit('update:name', l.label)
|
||||
emit('update:value', l.value)
|
||||
emit('update:name', l?.label)
|
||||
emit('update:value', l?.value)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1403,7 +1403,7 @@
|
||||
placeholder="请选择状态"
|
||||
v-model:value="gl_selectV2"
|
||||
style="width: 200px"
|
||||
:options="options1"
|
||||
:options="options11"
|
||||
allowClear
|
||||
showSearch
|
||||
@focus="focus"
|
||||
@@ -2568,11 +2568,11 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="del_btnbox">
|
||||
<div class="del_btn btn1">
|
||||
<div class="btnText" @click="delete_exit1">取消</div>
|
||||
<div class="del_btn btn1" @click="delete_exit1">
|
||||
<div class="btnText">取消</div>
|
||||
</div>
|
||||
<div class="del_btn btn2">
|
||||
<div class="btnText" @click="handleDeleteExit">确定</div>
|
||||
<div class="del_btn btn2" @click="handleDeleteExit">
|
||||
<div class="btnText">确定</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -2861,7 +2861,7 @@ const columns1 = [
|
||||
},
|
||||
},
|
||||
{
|
||||
title: "上线时间",
|
||||
title: "发布时间",
|
||||
width: 160,
|
||||
dataIndex: "pubtime",
|
||||
key: "10",
|
||||
@@ -4052,6 +4052,7 @@ export default defineComponent({
|
||||
};
|
||||
const handleSearchTable3 = () => {
|
||||
console.log(7878);
|
||||
message.error("该课程暂学员学习记录");
|
||||
getTableDate333();
|
||||
};
|
||||
const getTableDate33 = async () => {
|
||||
@@ -4161,6 +4162,16 @@ export default defineComponent({
|
||||
label: "审核未通过",
|
||||
},
|
||||
]);
|
||||
const options11 = ref([
|
||||
{
|
||||
value: 0,
|
||||
label: "未开始",
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: "已完成",
|
||||
},
|
||||
]);
|
||||
const options2 = ref([
|
||||
// {
|
||||
// value: "value2",
|
||||
@@ -4723,7 +4734,6 @@ export default defineComponent({
|
||||
const obj = {
|
||||
offcourseId: item.offcourseId,
|
||||
offcoursePlanId: null, //开课ID,不传代表新增
|
||||
|
||||
address: item.address,
|
||||
applyFlag: item.applyFlag,
|
||||
attach: item.attach,
|
||||
@@ -4731,7 +4741,7 @@ export default defineComponent({
|
||||
completeType: item.completeType,
|
||||
endTime: new Date(item.endTime) / 1000,
|
||||
evalFlag: item.evalFlag,
|
||||
name: item.name,
|
||||
name: '复制'+item.name,
|
||||
signFlag: item.signFlag, //是否允许未报名的签到:1是0否
|
||||
//signWordFlag: item.signWordFlag, //签到是否需要口令:1是0否
|
||||
teacherId: item.teacherId,
|
||||
@@ -4755,7 +4765,7 @@ export default defineComponent({
|
||||
});
|
||||
const postData = {
|
||||
offcourseId: null, //不传代表新增
|
||||
name: item.name,
|
||||
name: '复制'+item.name,
|
||||
picUrl: item.picUrl,
|
||||
targetUser: item.targetUser,
|
||||
meaning: item.meaning,
|
||||
@@ -4879,8 +4889,6 @@ export default defineComponent({
|
||||
};
|
||||
//编辑面授课
|
||||
const handleEdit = async (itm, type) => {
|
||||
console.log(45555);
|
||||
console.log(itm);
|
||||
if (type === "1") {
|
||||
return;
|
||||
}
|
||||
@@ -5329,6 +5337,7 @@ export default defineComponent({
|
||||
columns6,
|
||||
columns7,
|
||||
options1,
|
||||
options11,
|
||||
options2,
|
||||
options3,
|
||||
options4,
|
||||
|
||||
@@ -160,16 +160,44 @@
|
||||
:key="index"
|
||||
>
|
||||
<div class="file_img">
|
||||
<img v-if="(item.indexOf('jpg')!==-1 ||item.indexOf('jpeg')!==-1 ||item.indexOf('png')!==-1 )" src="@/assets/images/coursewareManage/pngpic.png" />
|
||||
<img
|
||||
v-if="
|
||||
item.indexOf('jpg') !== -1 ||
|
||||
item.indexOf('jpeg') !== -1 ||
|
||||
item.indexOf('png') !== -1
|
||||
"
|
||||
src="@/assets/images/coursewareManage/pngpic.png"
|
||||
/>
|
||||
<div v-else>
|
||||
<img v-if="(item.indexOf('doc')!==-1)" src="@/assets/images/coursewareManage/docpic.png" />
|
||||
<img
|
||||
v-if="item.indexOf('doc') !== -1"
|
||||
src="@/assets/images/coursewareManage/docpic.png"
|
||||
/>
|
||||
<div v-else>
|
||||
<img v-if="(item.indexOf('xls')!==-1)" src="@/assets/images/coursewareManage/xlspic.png" />
|
||||
<img
|
||||
v-if="item.indexOf('xls') !== -1"
|
||||
src="@/assets/images/coursewareManage/xlspic.png"
|
||||
/>
|
||||
<div v-else>
|
||||
<img v-if="(item.indexOf('ppt')!==-1)" src="@/assets/images/coursewareManage/pptpic.png" />
|
||||
<img
|
||||
v-if="item.indexOf('ppt') !== -1"
|
||||
src="@/assets/images/coursewareManage/pptpic.png"
|
||||
/>
|
||||
<div v-else>
|
||||
<img v-if="(item.indexOf('pdf')!==-1)" src="@/assets/images/coursewareManage/pdfpic.png" />
|
||||
<img v-else src="@/assets/images/coursewareManage/docpic.png" />
|
||||
<img
|
||||
v-if="item.indexOf('pdf') !== -1"
|
||||
src="@/assets/images/coursewareManage/pdfpic.png"
|
||||
/>
|
||||
<div v-else>
|
||||
<img
|
||||
v-if="item.indexOf('zip') !== -1"
|
||||
src="@/assets/images/coursewareManage/zippic.png"
|
||||
/>
|
||||
<img
|
||||
v-else
|
||||
src="@/assets/images/coursewareManage/docpic.png"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -663,7 +691,9 @@ export default defineComponent({
|
||||
.fotarea {
|
||||
width: calc(100% - 150px);
|
||||
position: relative;
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
.fuwenben {
|
||||
width: 90%;
|
||||
height: 20px;
|
||||
|
||||
@@ -310,7 +310,7 @@
|
||||
<span style="margin-right: 10px">附件</span>
|
||||
</div>
|
||||
<div class="item_inp">
|
||||
<FJUpload v-model:value="attach"></FJUpload>
|
||||
<FJUpload v-model:value="attach" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -360,8 +360,8 @@ import {
|
||||
defineComponent,
|
||||
ref,
|
||||
shallowRef,
|
||||
onMounted,
|
||||
onBeforeUnmount,
|
||||
// onMounted,
|
||||
onUnmounted,
|
||||
} from "vue";
|
||||
import { message } from "ant-design-vue";
|
||||
import { edit, detail, handle } from "@/api/indexCourse";
|
||||
@@ -372,7 +372,7 @@ import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
|
||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||
import FJUpload from "@/components/common/FJUpload";
|
||||
import * as moment from "moment";
|
||||
import * as api2 from "../../api/indexAudit"
|
||||
import * as api2 from "../../api/indexAudit";
|
||||
export default defineComponent({
|
||||
components: {
|
||||
Editor,
|
||||
@@ -383,6 +383,7 @@ export default defineComponent({
|
||||
setup(props, { expose, emit }) {
|
||||
const state = reactive({
|
||||
hideshow: true,
|
||||
ft_eidt: false,
|
||||
attach: "",
|
||||
ft_hs: false,
|
||||
addLoading: false,
|
||||
@@ -408,10 +409,13 @@ export default defineComponent({
|
||||
state.offcourseId = offcourseId;
|
||||
|
||||
if (state.offcourseId) {
|
||||
state.ft_hs = true;
|
||||
state.ft_eidt = true;
|
||||
handleEditInfo(state.offcourseId);
|
||||
} else {
|
||||
state.qdms_inputV1 = name;
|
||||
state.ft_hs = true;
|
||||
state.ft_eidt = false;
|
||||
state.qdms_inputV1 = name;
|
||||
}
|
||||
};
|
||||
const visibleClose = () => {
|
||||
@@ -446,7 +450,7 @@ export default defineComponent({
|
||||
state.imgList = [];
|
||||
state.attach = "";
|
||||
|
||||
valueHtml.value = "";
|
||||
// valueHtml.value = "";
|
||||
};
|
||||
|
||||
// 富文本 sssssssssssssss
|
||||
@@ -455,18 +459,17 @@ export default defineComponent({
|
||||
// 内容 HTML
|
||||
const valueHtml = ref("");
|
||||
// // 模拟 ajax 异步获取内容
|
||||
onMounted(() => {
|
||||
setTimeout(() => {
|
||||
// valueHtml.value = "<p>模拟 Ajax 异步设置内容</p>";
|
||||
console.log("toolbar222222222222222");
|
||||
console.log(editorRef.value);
|
||||
// const toolbar = DomEditor.getToolbar(editorRef.value);
|
||||
// const menu = editorRef.value.getAllMenuKeys();
|
||||
// const bar = toolbar.getConfig().toolbarKeys;
|
||||
// console.log(menu);
|
||||
// console.log(bar);
|
||||
}, 3500);
|
||||
});
|
||||
// onMounted(() => {
|
||||
// setTimeout(() => {
|
||||
// // valueHtml.value = "<p>模拟 Ajax 异步设置内容</p>";
|
||||
// console.log(editorRef.value);
|
||||
// // const toolbar = DomEditor.getToolbar(editorRef.value);
|
||||
// // const menu = editorRef.value.getAllMenuKeys();
|
||||
// // const bar = toolbar.getConfig().toolbarKeys;
|
||||
// // console.log(menu);
|
||||
// // console.log(bar);
|
||||
// }, 3500);
|
||||
// });
|
||||
const toolbarConfig = {
|
||||
excludeKeys: ["insertVideo", "insertImage"],
|
||||
};
|
||||
@@ -478,7 +481,7 @@ export default defineComponent({
|
||||
formData.append("file", file);
|
||||
fileUp(formData).then((res) => {
|
||||
if (res.data.code === 200) {
|
||||
// 最后插入图片
|
||||
// 最后插入图片 url alt href
|
||||
insertFn(res.data.data, file.name, res.data.data);
|
||||
}
|
||||
});
|
||||
@@ -487,11 +490,15 @@ export default defineComponent({
|
||||
const handleCreated = (editor) => {
|
||||
editorRef.value = editor; // 记录 editor 实例,重要!
|
||||
};
|
||||
// const handleDestory = () => {
|
||||
// const editor = editorRef.value;
|
||||
// if (editor == null) return;
|
||||
// editor.destroy();
|
||||
// };
|
||||
// 组件销毁时,也及时销毁编辑器
|
||||
onBeforeUnmount(() => {
|
||||
const editor = editorRef.value;
|
||||
if (editor == null) return;
|
||||
editor.destroy();
|
||||
onUnmounted(() => {
|
||||
console.log("组件销毁时,也及时销毁编辑器");
|
||||
// handleDestory();
|
||||
});
|
||||
// 富文本 eeeeeeeeeeeeee
|
||||
|
||||
@@ -620,7 +627,9 @@ export default defineComponent({
|
||||
if (param === "review") {
|
||||
//新建时点击审核按钮
|
||||
submitReview(res.data.data.offcourseId);
|
||||
} else visibleClose();
|
||||
} else {
|
||||
visibleClose();
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -647,16 +656,16 @@ export default defineComponent({
|
||||
type: 2,
|
||||
pageNo: 1,
|
||||
pageSize: 1,
|
||||
}
|
||||
api2.auditList(obj).then((res)=>{
|
||||
|
||||
if(res.data.data.rows &&res.data.data.rows.length > 0){
|
||||
state.auditDescription = res.data.data.rows[0].description?res.data.data.rows[0].description :"-";
|
||||
};
|
||||
const res = await api2.auditList(obj).then((res) => {
|
||||
if (res.data.code === 200) return res.data.data;
|
||||
});
|
||||
if (res.rows && res.rows.length > 0) {
|
||||
state.auditDescription = res.rows[0].description
|
||||
? res.rows[0].description
|
||||
: "-";
|
||||
console.log("state.auditDescription", state.auditDescription);
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
state.qdms_inputV1 = item.name;
|
||||
@@ -670,7 +679,6 @@ export default defineComponent({
|
||||
state.member = { value: item.teacherId, name: item.teacher };
|
||||
valueHtml.value = item.outline;
|
||||
state.attach = item.attach;
|
||||
state.ft_hs = true;
|
||||
};
|
||||
|
||||
const handleTagChange = () => {
|
||||
@@ -720,15 +728,15 @@ export default defineComponent({
|
||||
visibleClose,
|
||||
handleTagChange,
|
||||
handleTagClose,
|
||||
handleCreated,
|
||||
handlePush,
|
||||
submitReview,
|
||||
reviewClick,
|
||||
|
||||
editorRef,
|
||||
valueHtml,
|
||||
mode: "simple", // 或 'simple'
|
||||
toolbarConfig,
|
||||
editorConfig,
|
||||
handleCreated,
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -125,7 +125,8 @@
|
||||
</div>
|
||||
<div class="left">审核意见:</div>
|
||||
<div class="rig">
|
||||
<a-textarea v-model:value="valueSugg" :rows="4" />
|
||||
<a-textarea v-model:value="valueSugg" :rows="4" show-count
|
||||
:maxlength="20"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user