mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-12 20:36:45 +08:00
feat:修改vue文件跳转
This commit is contained in:
@@ -1,3 +1,11 @@
|
|||||||
|
/*
|
||||||
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
|
* @Date: 2022-11-21 14:32:52
|
||||||
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
|
* @LastEditTime: 2022-11-21 15:13:50
|
||||||
|
* @FilePath: /fe-manage/src/api/config.js
|
||||||
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
|
*/
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
// const Qs = require("qs");
|
// const Qs = require("qs");
|
||||||
|
|
||||||
@@ -7,7 +15,7 @@ import axios from "axios";
|
|||||||
axios.defaults.withCredentials = true;
|
axios.defaults.withCredentials = true;
|
||||||
|
|
||||||
const http = axios.create({
|
const http = axios.create({
|
||||||
baseURL: "/api",
|
baseURL: "/manageApi",
|
||||||
timeout: 1000 * 5,
|
timeout: 1000 * 5,
|
||||||
// headers: { "Content-Type": "multipart/form-data" },
|
// headers: { "Content-Type": "multipart/form-data" },
|
||||||
headers: { "Content-Type": "application/json" },
|
headers: { "Content-Type": "application/json" },
|
||||||
|
|||||||
@@ -34,8 +34,8 @@ export default {
|
|||||||
console.log("new:" + n + ",old:" + o);
|
console.log("new:" + n + ",old:" + o);
|
||||||
|
|
||||||
if (
|
if (
|
||||||
n.indexOf("/learningpath") !== -1 ||
|
n.indexOf("/manage/learningpath") !== -1 ||
|
||||||
n.indexOf("/LearningPath") !== -1
|
n.indexOf("/manage/LearningPath") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -45,11 +45,14 @@ export default {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (n.indexOf("/leveladd") !== -1 || n.indexOf("/LevelAdd") !== -1) {
|
if (
|
||||||
|
n.indexOf("/manage/leveladd") !== -1 ||
|
||||||
|
n.indexOf("/manage/LevelAdd") !== -1
|
||||||
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
name: "学习路径",
|
name: "学习路径",
|
||||||
href: "/learningpath",
|
href: "/manage/learningpath",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "管理",
|
name: "管理",
|
||||||
@@ -57,17 +60,17 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/leveladddetail") !== -1 ||
|
n.indexOf("/manage/leveladddetail") !== -1 ||
|
||||||
n.indexOf("/LevelAddDetail") !== -1
|
n.indexOf("/manage/LevelAddDetail") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
name: "学习路径",
|
name: "学习路径",
|
||||||
href: "/learningpath",
|
href: "/manage/learningpath",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "管理",
|
name: "管理",
|
||||||
href: "/leveladd",
|
href: "/manage/leveladd",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "创建关卡",
|
name: "创建关卡",
|
||||||
@@ -75,17 +78,17 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/levelcheck") !== -1 ||
|
n.indexOf("/manage/levelcheck") !== -1 ||
|
||||||
n.indexOf("/LevelCheck") !== -1
|
n.indexOf("/manage/LevelCheck") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
name: "学习路径",
|
name: "学习路径",
|
||||||
href: "/learningpath",
|
href: "/manage/learningpath",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "管理",
|
name: "管理",
|
||||||
href: "/leveladd",
|
href: "/manage/leveladd",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "查看",
|
name: "查看",
|
||||||
@@ -93,8 +96,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/projectmanage") !== -1 ||
|
n.indexOf("/manage/projectmanage") !== -1 ||
|
||||||
n.indexOf("/ProjectManage") !== -1
|
n.indexOf("/manage/ProjectManage") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -109,20 +112,23 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/projectadd") !== -1 ||
|
n.indexOf("/manage/projectadd") !== -1 ||
|
||||||
n.indexOf("/ProjectAdd") !== -1
|
n.indexOf("/manage/ProjectAdd") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
name: "项目",
|
name: "项目",
|
||||||
href: "/projectmanage",
|
href: "/manage/projectmanage",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "创建项目",
|
name: "创建项目",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (n.indexOf("/taskpage") !== -1 || n.indexOf("/TaskPage") !== -1) {
|
if (
|
||||||
|
n.indexOf("/manage/taskpage") !== -1 ||
|
||||||
|
n.indexOf("/manage/TaskPage") !== -1
|
||||||
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
name: "项目",
|
name: "项目",
|
||||||
@@ -133,7 +139,10 @@ export default {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (n.indexOf("/taskadd") !== -1 || n.indexOf("/TaskAdd") !== -1) {
|
if (
|
||||||
|
n.indexOf("/manage/taskadd") !== -1 ||
|
||||||
|
n.indexOf("/manage/TaskAdd") !== -1
|
||||||
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
name: "项目",
|
name: "项目",
|
||||||
@@ -151,8 +160,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/templatelibrary") !== -1 ||
|
n.indexOf("/manage/templatelibrary") !== -1 ||
|
||||||
n.indexOf("/TemplateLibrary") !== -1
|
n.indexOf("/manage/TemplateLibrary") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -164,8 +173,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/libraryadd") !== -1 ||
|
n.indexOf("/manage/libraryadd") !== -1 ||
|
||||||
n.indexOf("/LibraryAdd") !== -1
|
n.indexOf("/manage/LibraryAdd") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -176,13 +185,13 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "查看",
|
name: "查看",
|
||||||
href: "/libraryadd",
|
href: "/manage/libraryadd",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/coursemanage") !== -1 ||
|
n.indexOf("/manage/coursemanage") !== -1 ||
|
||||||
n.indexOf("/CourseManage") !== -1
|
n.indexOf("/manage/CourseManage") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -197,8 +206,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/coursewaremanage") !== -1 ||
|
n.indexOf("/manage/coursewaremanage") !== -1 ||
|
||||||
n.indexOf("/CoursewareManage") !== -1
|
n.indexOf("/manage/CoursewareManage") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -210,8 +219,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/researchmanage") !== -1 ||
|
n.indexOf("/manage/researchmanage") !== -1 ||
|
||||||
n.indexOf("/ResearchManage") !== -1
|
n.indexOf("/manage/ResearchManage") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -222,8 +231,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/managepage") !== -1 ||
|
n.indexOf("/manage/managepage") !== -1 ||
|
||||||
n.indexOf("/ManagePage") !== -1
|
n.indexOf("/manage/ManagePage") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -238,8 +247,8 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
n.indexOf("/researchadd") !== -1 ||
|
n.indexOf("/manage/researchadd") !== -1 ||
|
||||||
n.indexOf("/ResearchAdd") !== -1
|
n.indexOf("/manage/ResearchAdd") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -254,8 +263,8 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
n.indexOf("/certificatecenter") !== -1 ||
|
n.indexOf("/manage/certificatecenter") !== -1 ||
|
||||||
n.indexOf("/CertificateCenter") !== -1
|
n.indexOf("/manage/CertificateCenter") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -264,8 +273,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/systemmanage") !== -1 ||
|
n.indexOf("/manage/systemmanage") !== -1 ||
|
||||||
n.indexOf("/SystemManage") !== -1
|
n.indexOf("/manage/SystemManage") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -274,8 +283,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/coursereviewed") !== -1 ||
|
n.indexOf("/manage/coursereviewed") !== -1 ||
|
||||||
n.indexOf("/CourseReiewed") !== -1
|
n.indexOf("/manage/CourseReiewed") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -287,8 +296,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/coursereviewedn") !== -1 ||
|
n.indexOf("/manage/coursereviewedn") !== -1 ||
|
||||||
n.indexOf("/CourseReiewedN") !== -1
|
n.indexOf("/manage/CourseReiewedN") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -300,8 +309,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/projectreviewed") !== -1 ||
|
n.indexOf("/manage/projectreviewed") !== -1 ||
|
||||||
n.indexOf("/ProjectReviewed") !== -1
|
n.indexOf("/manage/ProjectReviewed") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
@@ -313,8 +322,8 @@ export default {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
n.indexOf("/projectreviewedn") !== -1 ||
|
n.indexOf("/manage/projectreviewedn") !== -1 ||
|
||||||
n.indexOf("/ProjectReviewedN") !== -1
|
n.indexOf("/manage/ProjectReviewedN") !== -1
|
||||||
) {
|
) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,12 +1,20 @@
|
|||||||
<!-- 评估管理-创建评估页面 -->
|
<!-- 评估管理-创建评估页面 -->
|
||||||
<template>
|
<template>
|
||||||
<a-drawer :visible="createVoteVisible" class="drawerStyle createvoteDrawer" width="100%" placement="right"
|
<a-drawer
|
||||||
@after-visible-change="afterVisibleChange">
|
:visible="createVoteVisible"
|
||||||
|
class="drawerStyle createvoteDrawer"
|
||||||
|
width="100%"
|
||||||
|
placement="right"
|
||||||
|
@after-visible-change="afterVisibleChange"
|
||||||
|
>
|
||||||
<div class="researchadd">
|
<div class="researchadd">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<div class="headerTitle">创建投票</div>
|
<div class="headerTitle">创建投票</div>
|
||||||
<img style="width: 29px; height: 29px; cursor: pointer" src="../../assets/images/basicinfo/close.png"
|
<img
|
||||||
@click="closeDrawer" />
|
style="width: 29px; height: 29px; cursor: pointer"
|
||||||
|
src="../../assets/images/basicinfo/close.png"
|
||||||
|
@click="closeDrawer"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_left">
|
<div class="main_left">
|
||||||
<div class="main_item">
|
<div class="main_item">
|
||||||
@@ -17,7 +25,12 @@
|
|||||||
<span style="margin-right: 3px">投票名称:</span>
|
<span style="margin-right: 3px">投票名称:</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-input v-model:value="voteName" style="width: 424px; height: 32px" placeholder="请输入任务名称" maxlength="20" />
|
<a-input
|
||||||
|
v-model:value="voteName"
|
||||||
|
style="width: 424px; height: 32px"
|
||||||
|
placeholder="请输入任务名称"
|
||||||
|
maxlength="20"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_item">
|
<div class="main_item">
|
||||||
@@ -28,25 +41,40 @@
|
|||||||
<span>创建题干:</span>
|
<span>创建题干:</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<button class="xkbtn" @click="handleTypes">
|
<button class="xkbtn" @click="handleTypes">添加题干</button>
|
||||||
添加题干
|
|
||||||
</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div> <!-- 创建投票侧弹窗 -->
|
</div>
|
||||||
|
<!-- 创建投票侧弹窗 -->
|
||||||
</div>
|
</div>
|
||||||
<div v-for="(item, index) in allFormsData" :key="index">
|
<div v-for="(item, index) in allFormsData" :key="index">
|
||||||
<VoteQuestion :item="item" :ballotId="ballotId" @del="handleDel" />
|
<VoteQuestion :item="item" :ballotId="ballotId" @del="handleDel" />
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
<div class="btn">
|
<div class="btn">
|
||||||
<a-button type="primary" style="width: 100px;height: 40px;border-radius: 8px; background-color: #409eff;"
|
<a-button
|
||||||
@click="handleSave">
|
type="primary"
|
||||||
|
style="
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 8px;
|
||||||
|
background-color: #409eff;
|
||||||
|
"
|
||||||
|
@click="handleSave"
|
||||||
|
>
|
||||||
保存
|
保存
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button type="primary" ghost style="width: 100px;height: 40px;margin-left: 14px;border-radius: 8px;"
|
<a-button
|
||||||
@click="handleAllCancel">
|
type="primary"
|
||||||
|
ghost
|
||||||
|
style="
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
margin-left: 14px;
|
||||||
|
border-radius: 8px;
|
||||||
|
"
|
||||||
|
@click="handleAllCancel"
|
||||||
|
>
|
||||||
取消
|
取消
|
||||||
</a-button>
|
</a-button>
|
||||||
</div>
|
</div>
|
||||||
@@ -67,18 +95,15 @@ import {
|
|||||||
// deepCloneFilterString,
|
// deepCloneFilterString,
|
||||||
} from "../../utils/utils";
|
} from "../../utils/utils";
|
||||||
|
|
||||||
|
|
||||||
//import store from "@/store";
|
//import store from "@/store";
|
||||||
import * as api from "@/api/indexVote";
|
import * as api from "@/api/indexVote";
|
||||||
import {} from "@/api/indexResearch";
|
import {} from "@/api/indexResearch";
|
||||||
//import { message } from "ant-design-vue";
|
//import { message } from "ant-design-vue";
|
||||||
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CreateVote",
|
name: "CreateVote",
|
||||||
components: {
|
components: {
|
||||||
VoteQuestion,
|
VoteQuestion,
|
||||||
|
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
createVoteVisible: {
|
createVoteVisible: {
|
||||||
@@ -93,37 +118,35 @@ export default {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
setup(props, ctx) {
|
setup(props, ctx) {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
ballotId: "",
|
ballotId: "",
|
||||||
ballotName: "",
|
ballotName: "",
|
||||||
allFormsData: [],
|
allFormsData: [],
|
||||||
|
|
||||||
});
|
});
|
||||||
const afterVisibleChange = () => {
|
const afterVisibleChange = () => {
|
||||||
handleTypes();
|
handleTypes();
|
||||||
};
|
};
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:createVoteVisible", false);
|
ctx.emit("update:createVoteVisible", false);
|
||||||
}
|
};
|
||||||
// 详情
|
// 详情
|
||||||
const getInfoDate = async () => {
|
const getInfoDate = async () => {
|
||||||
if (props.editChild) {
|
if (props.editChild) {
|
||||||
//stemId 多余字段
|
//stemId 多余字段
|
||||||
let res = await api.queryStemByStemId({
|
let res = await api
|
||||||
|
.queryStemByStemId({
|
||||||
stemId: 0,
|
stemId: 0,
|
||||||
ballotId: state.ballotId,
|
ballotId: state.ballotId,
|
||||||
}).then((res) => {
|
})
|
||||||
|
.then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
return res.data.data;
|
return res.data.data;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
state.ballotName = res[0].ballotId;
|
state.ballotName = res[0].ballotId;
|
||||||
let renderArr = [
|
let renderArr = [...res];
|
||||||
...res,
|
|
||||||
];
|
|
||||||
// sortBy(renderArr, "orderNumber"); //序号
|
// sortBy(renderArr, "orderNumber"); //序号
|
||||||
state.allFormsData = parseData(renderArr); //类型
|
state.allFormsData = parseData(renderArr); //类型
|
||||||
}
|
}
|
||||||
@@ -149,8 +172,6 @@ export default {
|
|||||||
singleList: restList,
|
singleList: restList,
|
||||||
};
|
};
|
||||||
resultArr.push(obj);
|
resultArr.push(obj);
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
resultArr.map((itm, idx) => {
|
resultArr.map((itm, idx) => {
|
||||||
itm.id = idx + 1;
|
itm.id = idx + 1;
|
||||||
@@ -345,7 +366,7 @@ export default {
|
|||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
router.push({
|
router.push({
|
||||||
path: "/researchmanage",
|
path: "/manage/researchmanage",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -370,7 +391,6 @@ export default {
|
|||||||
};
|
};
|
||||||
const handleAllCancel = () => {
|
const handleAllCancel = () => {
|
||||||
state.allFormsData = [];
|
state.allFormsData = [];
|
||||||
|
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
const checkVal = (filterData) => {
|
const checkVal = (filterData) => {
|
||||||
@@ -585,6 +605,5 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -49,7 +49,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btns">
|
<div class="btns">
|
||||||
<!-- <router-link to="/projectadd">
|
<!-- <router-link to="/manage/projectadd">
|
||||||
<div class="btn btn3">
|
<div class="btn btn3">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">创建路径</div>
|
<div class="btnText">创建路径</div>
|
||||||
@@ -1213,7 +1213,7 @@ export default {
|
|||||||
class="g1"
|
class="g1"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/leveladd",
|
path: "/manage/leveladd",
|
||||||
});
|
});
|
||||||
storage.set("routerId", text.record.id);
|
storage.set("routerId", text.record.id);
|
||||||
}}
|
}}
|
||||||
|
|||||||
@@ -73,7 +73,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="line"></div>
|
<div class="line"></div>
|
||||||
<router-link to="/learningpath"
|
<router-link to="/manage/learningpath"
|
||||||
><div style="display: flex">
|
><div style="display: flex">
|
||||||
<img class="img2" src="../../assets/images/leveladd/back.png" />
|
<img class="img2" src="../../assets/images/leveladd/back.png" />
|
||||||
<div class="return">返回</div>
|
<div class="return">返回</div>
|
||||||
@@ -98,12 +98,11 @@
|
|||||||
<div class="taskmain">快速创建项目详情</div>
|
<div class="taskmain">快速创建项目详情</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="second">
|
<div class="second">
|
||||||
<router-link :to="{ path: '/leveladddetail' }">
|
<router-link :to="{ path: '/manage/leveladddetail' }">
|
||||||
<div
|
<div
|
||||||
class="taskbox"
|
class="taskbox"
|
||||||
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
|
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
|
||||||
>
|
>
|
||||||
|
|
||||||
<div class="leftt">
|
<div class="leftt">
|
||||||
<img src="../../assets/images/taskpage/left1.png" />
|
<img src="../../assets/images/taskpage/left1.png" />
|
||||||
</div>
|
</div>
|
||||||
@@ -120,7 +119,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</router-link>
|
</router-link>
|
||||||
<div
|
<div
|
||||||
class="taskbox" @click="showAddStu"
|
class="taskbox"
|
||||||
|
@click="showAddStu"
|
||||||
style="background: linear-gradient(180deg, #ddeaff, #f0f8fe)"
|
style="background: linear-gradient(180deg, #ddeaff, #f0f8fe)"
|
||||||
>
|
>
|
||||||
<div class="leftt">
|
<div class="leftt">
|
||||||
@@ -132,9 +132,7 @@
|
|||||||
<div class="rightt">
|
<div class="rightt">
|
||||||
<img src="../../assets/images/taskpage/right2.png" />
|
<img src="../../assets/images/taskpage/right2.png" />
|
||||||
</div>
|
</div>
|
||||||
<div class="centerbox"
|
<div class="centerbox" style="color: rgba(78, 166, 255, 1)">
|
||||||
|
|
||||||
style="color: rgba(78, 166, 255, 1)">
|
|
||||||
添加学员
|
添加学员
|
||||||
</div>
|
</div>
|
||||||
<div class="centermain">快速添加学员</div>
|
<div class="centermain">快速添加学员</div>
|
||||||
@@ -314,7 +312,7 @@
|
|||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">重置</div>
|
<div class="btnText">重置</div>
|
||||||
</div>
|
</div>
|
||||||
<router-link to="/leveladddetail">
|
<router-link to="/manage/leveladddetail">
|
||||||
<div class="btn btn3" @click="handleOut">
|
<div class="btn btn3" @click="handleOut">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">创建关卡</div>
|
<div class="btnText">创建关卡</div>
|
||||||
@@ -336,7 +334,7 @@
|
|||||||
<div class="onerow">
|
<div class="onerow">
|
||||||
<div class="taskmain">任务大纲</div>
|
<div class="taskmain">任务大纲</div>
|
||||||
|
|
||||||
<router-link to="/leveladddetail" class="editright">
|
<router-link to="/manage/leveladddetail" class="editright">
|
||||||
<img
|
<img
|
||||||
class="editimg"
|
class="editimg"
|
||||||
src="../../assets/images/leveladd/edit.png"
|
src="../../assets/images/leveladd/edit.png"
|
||||||
@@ -346,7 +344,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 无数据显示快速创建 -->
|
<!-- 无数据显示快速创建 -->
|
||||||
<div v-show="!taskSyllabus.length">
|
<div v-show="!taskSyllabus.length">
|
||||||
<router-link :to="{ path: '/leveladddetail' }">
|
<router-link :to="{ path: '/manage/leveladddetail' }">
|
||||||
<div
|
<div
|
||||||
class="taskbox"
|
class="taskbox"
|
||||||
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
|
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
|
||||||
@@ -567,11 +565,28 @@
|
|||||||
<div class="btns" @click="searchLevel">
|
<div class="btns" @click="searchLevel">
|
||||||
<div class="btn btn1">
|
<div class="btn btn1">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<a-button class="btnText" style="border:none;background:none;transform: translateY(-20%);" >搜索</a-button>
|
<a-button
|
||||||
|
class="btnText"
|
||||||
|
style="
|
||||||
|
border: none;
|
||||||
|
background: none;
|
||||||
|
transform: translateY(-20%);
|
||||||
|
"
|
||||||
|
>搜索</a-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn btn2" @click="resetLevel">
|
<div class="btn btn2" @click="resetLevel">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<a-button style="border:none;background:none; transform: translateY(-20%);width:100%;" class="btnText" >重置</a-button>
|
<a-button
|
||||||
|
style="
|
||||||
|
border: none;
|
||||||
|
background: none;
|
||||||
|
transform: translateY(-20%);
|
||||||
|
width: 100%;
|
||||||
|
"
|
||||||
|
class="btnText"
|
||||||
|
>重置</a-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -763,7 +778,7 @@
|
|||||||
<div
|
<div
|
||||||
v-for="item in docList"
|
v-for="item in docList"
|
||||||
:key="item.src"
|
:key="item.src"
|
||||||
style="margin-top: 20px;"
|
style="margin-top: 20px"
|
||||||
class="docListStyle"
|
class="docListStyle"
|
||||||
>
|
>
|
||||||
<img
|
<img
|
||||||
@@ -1181,7 +1196,7 @@ export default {
|
|||||||
TestManage,
|
TestManage,
|
||||||
FaceManage,
|
FaceManage,
|
||||||
WorkManage,
|
WorkManage,
|
||||||
SeeStu
|
SeeStu,
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
// const routers = useRoute();
|
// const routers = useRoute();
|
||||||
@@ -1222,17 +1237,17 @@ export default {
|
|||||||
picUrl: null,
|
picUrl: null,
|
||||||
projectNameList: [
|
projectNameList: [
|
||||||
{
|
{
|
||||||
value: '1',
|
value: "1",
|
||||||
label: '导出信息',
|
label: "导出信息",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: '2',
|
value: "2",
|
||||||
label: '批量调整关卡',
|
label: "批量调整关卡",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: '3',
|
value: "3",
|
||||||
label: '批量删除',
|
label: "批量删除",
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
// 共享文档列表
|
// 共享文档列表
|
||||||
docList: [
|
docList: [
|
||||||
@@ -1566,7 +1581,7 @@ export default {
|
|||||||
const stageChange = (name, id) => {
|
const stageChange = (name, id) => {
|
||||||
state.choosedStageId = id;
|
state.choosedStageId = id;
|
||||||
state.stateName = name;
|
state.stateName = name;
|
||||||
}
|
};
|
||||||
const changeTabs = (e) => {
|
const changeTabs = (e) => {
|
||||||
console.log("切换tabs", e, state.routerId);
|
console.log("切换tabs", e, state.routerId);
|
||||||
if (e == 2) {
|
if (e == 2) {
|
||||||
@@ -1756,7 +1771,6 @@ export default {
|
|||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log("复制失败", err);
|
console.log("复制失败", err);
|
||||||
});
|
});
|
||||||
|
|
||||||
};
|
};
|
||||||
const showStop = () => {
|
const showStop = () => {
|
||||||
state.stopModal = true;
|
state.stopModal = true;
|
||||||
@@ -1848,11 +1862,14 @@ export default {
|
|||||||
// }
|
// }
|
||||||
levelList.stageList = [];
|
levelList.stageList = [];
|
||||||
for (let i in data) {
|
for (let i in data) {
|
||||||
if(i==0) {state.stateName = data[0].name}
|
if (i == 0) {
|
||||||
|
state.stateName = data[0].name;
|
||||||
|
}
|
||||||
levelList.stageList.push({
|
levelList.stageList.push({
|
||||||
stageId: Number(i) + 1,
|
stageId: Number(i) + 1,
|
||||||
name:data[i].name
|
name: data[i].name,
|
||||||
}) }
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
@@ -1884,7 +1901,7 @@ export default {
|
|||||||
.delStudent({ routerId: 100, studentIds: [id] })
|
.delStudent({ routerId: 100, studentIds: [id] })
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
message.success("删除成功");
|
message.success("删除成功");
|
||||||
getStudent()
|
getStudent();
|
||||||
console.log(res);
|
console.log(res);
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
@@ -1895,61 +1912,74 @@ export default {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
const searchLevel = () => {
|
const searchLevel = () => {
|
||||||
const result = state.tableData.filter(item => item.cur == state.gatenamee)
|
const result = state.tableData.filter(
|
||||||
|
(item) => item.cur == state.gatenamee
|
||||||
|
);
|
||||||
state.tableData = result;
|
state.tableData = result;
|
||||||
};
|
};
|
||||||
const resetLevel = () => {
|
const resetLevel = () => {
|
||||||
state.gatenamee = '';
|
state.gatenamee = "";
|
||||||
getStudent();
|
getStudent();
|
||||||
};
|
};
|
||||||
const handleStuChange = (value) => {
|
const handleStuChange = (value) => {
|
||||||
console.log(value);
|
console.log(value);
|
||||||
if(value == 2) {state.visiblene = true}
|
if (value == 2) {
|
||||||
if(value == 3 ) { deleteStu() }
|
state.visiblene = true;
|
||||||
|
}
|
||||||
|
if (value == 3) {
|
||||||
|
deleteStu();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
const deleteStu = () => {
|
const deleteStu = () => {
|
||||||
if (state.selectedRowKeys.length == 0) {
|
if (state.selectedRowKeys.length == 0) {
|
||||||
message.warning("请选择成员");
|
message.warning("请选择成员");
|
||||||
return }
|
return;
|
||||||
|
}
|
||||||
let obj = {
|
let obj = {
|
||||||
routerId: 100,
|
routerId: 100,
|
||||||
studentIds: state.selectedRowKeys,
|
studentIds: state.selectedRowKeys,
|
||||||
}
|
};
|
||||||
api.delStudent(obj).then((res) => {
|
api
|
||||||
|
.delStudent(obj)
|
||||||
|
.then((res) => {
|
||||||
console.log(res);
|
console.log(res);
|
||||||
getStudent();
|
getStudent();
|
||||||
message.success("批量删除成功")
|
message.success("批量删除成功");
|
||||||
}).catch(err => {
|
|
||||||
message.error("批量删除失败"+err);
|
|
||||||
console.log(err)
|
|
||||||
})
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
message.error("批量删除失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
};
|
};
|
||||||
const pageChange = (value) => {
|
const pageChange = (value) => {
|
||||||
state.currentPage = value;
|
state.currentPage = value;
|
||||||
getStudent();
|
getStudent();
|
||||||
}
|
};
|
||||||
const setconfig = () => {
|
const setconfig = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"autoJoinFlag": 0,
|
autoJoinFlag: 0,
|
||||||
"deptBoList": [
|
deptBoList: [
|
||||||
{
|
{
|
||||||
"deptId": 0,
|
deptId: 0,
|
||||||
"deptName": ""
|
deptName: "",
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
"preLearnFlag": 0,
|
preLearnFlag: 0,
|
||||||
"previewFlag": 0,
|
previewFlag: 0,
|
||||||
"routerId": 0,
|
routerId: 0,
|
||||||
"showFlag": 0
|
showFlag: 0,
|
||||||
}
|
};
|
||||||
api.setConfig(obj).then((res) => {
|
api
|
||||||
message.success("编辑成功")
|
.setConfig(obj)
|
||||||
|
.then((res) => {
|
||||||
|
message.success("编辑成功");
|
||||||
console.log(res);
|
console.log(res);
|
||||||
}).catch(err => {
|
|
||||||
console.log(err);
|
|
||||||
message.error("编辑失败")
|
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
message.error("编辑失败");
|
||||||
|
});
|
||||||
|
};
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
...toRefs(levelList),
|
...toRefs(levelList),
|
||||||
|
|||||||
@@ -194,7 +194,7 @@
|
|||||||
<unlock-mode v-model:unlockModeVisible="unlockModeVisible" />
|
<unlock-mode v-model:unlockModeVisible="unlockModeVisible" />
|
||||||
</div>
|
</div>
|
||||||
<div class="line"></div>
|
<div class="line"></div>
|
||||||
<router-link to="/leveladd">
|
<router-link to="/manage/leveladd">
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<img
|
<img
|
||||||
class="img2"
|
class="img2"
|
||||||
@@ -758,7 +758,7 @@
|
|||||||
<unlock-mode v-model:unlockModeVisible="unlockModeVisible" />
|
<unlock-mode v-model:unlockModeVisible="unlockModeVisible" />
|
||||||
</div>
|
</div>
|
||||||
<div class="line"></div>
|
<div class="line"></div>
|
||||||
<router-link to="/leveladd">
|
<router-link to="/manage/leveladd">
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<img
|
<img
|
||||||
class="img2"
|
class="img2"
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="lne"></div>
|
<div class="lne"></div>
|
||||||
<router-link to="/leveladd">
|
<router-link to="/manage/leveladd">
|
||||||
<div class="return">
|
<div class="return">
|
||||||
<div class="im"></div>
|
<div class="im"></div>
|
||||||
<div class="fan">返回</div>
|
<div class="fan">返回</div>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div
|
<div
|
||||||
@click="backPage"
|
@click="backPage"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
to="/projectmanage"
|
to="/manage/projectmanage"
|
||||||
class="goback"
|
class="goback"
|
||||||
>
|
>
|
||||||
<span class="return"></span><span class="returntext">返回</span>
|
<span class="return"></span><span class="returntext">返回</span>
|
||||||
@@ -408,7 +408,7 @@ export default {
|
|||||||
|
|
||||||
if (routers.query.name == undefined) {
|
if (routers.query.name == undefined) {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage",
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -481,7 +481,7 @@ export default {
|
|||||||
const backPage = () => {
|
const backPage = () => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage",
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 400);
|
}, 400);
|
||||||
};
|
};
|
||||||
@@ -800,7 +800,7 @@ export default {
|
|||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage",
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
} else {
|
} else {
|
||||||
@@ -855,7 +855,7 @@ export default {
|
|||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
query: { id: res.data.data.projectId },
|
query: { id: res.data.data.projectId },
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="line"></div>
|
<div class="line"></div>
|
||||||
<router-link to="/templatelibrary"
|
<router-link to="/manage/templatelibrary"
|
||||||
><div style="display: flex">
|
><div style="display: flex">
|
||||||
<img class="img2" src="../../assets/images/leveladd/back.png" />
|
<img class="img2" src="../../assets/images/leveladd/back.png" />
|
||||||
<div class="return">返回</div>
|
<div class="return">返回</div>
|
||||||
@@ -55,7 +55,7 @@
|
|||||||
<div class="onerow">
|
<div class="onerow">
|
||||||
<div class="taskmain">任务大纲</div>
|
<div class="taskmain">任务大纲</div>
|
||||||
<button class="btn" @click="showFaceIn">批量面授报名</button>
|
<button class="btn" @click="showFaceIn">批量面授报名</button>
|
||||||
<router-link to="/taskadd" class="edit">
|
<router-link to="/manage/taskadd" class="edit">
|
||||||
<img
|
<img
|
||||||
class="editimg"
|
class="editimg"
|
||||||
src="../../assets/images/projectadd/edit.png"
|
src="../../assets/images/projectadd/edit.png"
|
||||||
@@ -395,9 +395,11 @@
|
|||||||
<div class="set_content">
|
<div class="set_content">
|
||||||
<div class="setc_name"><span>模板名称:</span></div>
|
<div class="setc_name"><span>模板名称:</span></div>
|
||||||
<div class="setc_main">
|
<div class="setc_main">
|
||||||
<a-input v-model:value="formData.name"
|
<a-input
|
||||||
:bordered="isEdit" :disabled="!isEdit"
|
v-model:value="formData.name"
|
||||||
style="width:300px;"
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
style="width: 300px"
|
||||||
></a-input>
|
></a-input>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -411,27 +413,35 @@
|
|||||||
@change="handleChange"
|
@change="handleChange"
|
||||||
:disabled="!isEdit"
|
:disabled="!isEdit"
|
||||||
>
|
>
|
||||||
<img src="@/assets/images/projectadd/picture.png" alt="" />
|
<img
|
||||||
|
src="@/assets/images/projectadd/picture.png"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
</a-upload>
|
</a-upload>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="set_content">
|
<div class="set_content">
|
||||||
<div class="setc_name"><span>模板时间:</span></div>
|
<div class="setc_name"><span>模板时间:</span></div>
|
||||||
<div class="setc_main">
|
<div class="setc_main">
|
||||||
<a-range-picker v-model:value="formData.time"
|
<a-range-picker
|
||||||
|
v-model:value="formData.time"
|
||||||
:bordered="isEdit" :disabled="!isEdit" />
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="set_content">
|
<div class="set_content">
|
||||||
<div class="setc_name"><span>项目经理:</span></div>
|
<div class="setc_name"><span>项目经理:</span></div>
|
||||||
<div class="setc_main">
|
<div class="setc_main">
|
||||||
<a-select
|
<a-select
|
||||||
v-model:value="formData.manager" mode="multiple"
|
v-model:value="formData.manager"
|
||||||
|
mode="multiple"
|
||||||
placeholder="请选择项目经理"
|
placeholder="请选择项目经理"
|
||||||
:size="large" :bordered="isEdit" :disabled="!isEdit"
|
:size="large"
|
||||||
style="width: 200px;color: #999999;" :options="managerOptions"
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
style="width: 200px; color: #999999"
|
||||||
|
:options="managerOptions"
|
||||||
></a-select>
|
></a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -441,25 +451,32 @@
|
|||||||
<a-select
|
<a-select
|
||||||
v-model:value="formData.sourceBelongId"
|
v-model:value="formData.sourceBelongId"
|
||||||
placeholder="请选择资源归属"
|
placeholder="请选择资源归属"
|
||||||
:size="large" :bordered="isEdit" :disabled="!isEdit"
|
:size="large"
|
||||||
style="width: 200px;color: #999999;" :options="sourceBelongOptions"
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
style="width: 200px; color: #999999"
|
||||||
|
:options="sourceBelongOptions"
|
||||||
></a-select>
|
></a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="set_content">
|
<div class="set_content">
|
||||||
<div class="setc_name"><span>模板说明:</span></div>
|
<div class="setc_name"><span>模板说明:</span></div>
|
||||||
<div class="setc_main">
|
<div class="setc_main">
|
||||||
<a-input v-model:value="formData.remark"
|
<a-input
|
||||||
style="width:300px;"
|
v-model:value="formData.remark"
|
||||||
:bordered="isEdit" :disabled="!isEdit"
|
style="width: 300px"
|
||||||
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
></a-input>
|
></a-input>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="set_content">
|
<div class="set_content">
|
||||||
<div class="setc_name"><span>同步学习记录:</span></div>
|
<div class="setc_name"><span>同步学习记录:</span></div>
|
||||||
<div class="setc_main" @click="changecheck2">
|
<div class="setc_main" @click="changecheck2">
|
||||||
<a-radio v-model:checked="formData.courseSyncFlag"
|
<a-radio
|
||||||
:bordered="isEdit" :disabled="!isEdit"
|
v-model:checked="formData.courseSyncFlag"
|
||||||
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
><span style="color: #333333"
|
><span style="color: #333333"
|
||||||
>同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)</span
|
>同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)</span
|
||||||
></a-radio
|
></a-radio
|
||||||
@@ -472,8 +489,11 @@
|
|||||||
<a-select
|
<a-select
|
||||||
v-model:value="formData.level"
|
v-model:value="formData.level"
|
||||||
placeholder="请选择项目级别"
|
placeholder="请选择项目级别"
|
||||||
:size="large" :bordered="isEdit" :disabled="!isEdit"
|
:size="large"
|
||||||
style="width: 200px;color: #999999;" :options="levelOptions"
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
style="width: 200px; color: #999999"
|
||||||
|
:options="levelOptions"
|
||||||
></a-select>
|
></a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -483,23 +503,36 @@
|
|||||||
<a-select
|
<a-select
|
||||||
v-model:value="formData.systemId"
|
v-model:value="formData.systemId"
|
||||||
placeholder="请选择培训分类"
|
placeholder="请选择培训分类"
|
||||||
:size="large" :bordered="isEdit" :disabled="!isEdit"
|
:size="large"
|
||||||
style="width: 200px;color: #999999;" :options="systemOptions"
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
style="width: 200px; color: #999999"
|
||||||
|
:options="systemOptions"
|
||||||
></a-select>
|
></a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="set_content">
|
<div class="set_content">
|
||||||
<div class="setc_name"><span>是否BOEU实施:</span></div>
|
<div class="setc_name"><span>是否BOEU实施:</span></div>
|
||||||
<div class="setc_main" @click="changecheck3">
|
<div class="setc_main" @click="changecheck3">
|
||||||
<a-radio v-model:checked="formData.boeFlag"
|
<a-radio
|
||||||
:bordered="isEdit" :disabled="!isEdit"
|
v-model:checked="formData.boeFlag"
|
||||||
|
:bordered="isEdit"
|
||||||
|
:disabled="!isEdit"
|
||||||
><span style="color: #333333">BOEU实施</span></a-radio
|
><span style="color: #333333">BOEU实施</span></a-radio
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="isEdit" style="transform: translateX(50%)">
|
<div v-if="isEdit" style="transform: translateX(50%)">
|
||||||
<a-button @click="cancelEdit" style="background-color: #f9f9f9">取消</a-button>
|
<a-button
|
||||||
<a-button @click="confirmEdit" style="background-color: #f5faff">保存</a-button>
|
@click="cancelEdit"
|
||||||
|
style="background-color: #f9f9f9"
|
||||||
|
>取消</a-button
|
||||||
|
>
|
||||||
|
<a-button
|
||||||
|
@click="confirmEdit"
|
||||||
|
style="background-color: #f5faff"
|
||||||
|
>保存</a-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -516,29 +549,48 @@
|
|||||||
<a-switch v-model:checked="docChecked"></a-switch>
|
<a-switch v-model:checked="docChecked"></a-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnbox" style="margin:20px;">
|
<div class="btnbox" style="margin: 20px">
|
||||||
<a-upload
|
<a-upload
|
||||||
v-model:file-list="fileList"
|
v-model:file-list="fileList"
|
||||||
name="file"
|
name="file"
|
||||||
action="/api/file/upload"
|
action="/api/file/upload"
|
||||||
@change="handleChange"
|
@change="handleChange"
|
||||||
>
|
>
|
||||||
<span class="xkbtn" style="cursor: pointer; font-size: 17px" >上传</span>
|
<span
|
||||||
<img src="@/assets/images/basicinfo/cloud.png" style="cursor: pointer;
|
class="xkbtn"
|
||||||
width:34px;height:34px;
|
style="cursor: pointer; font-size: 17px"
|
||||||
" alt="">
|
>上传</span
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
src="@/assets/images/basicinfo/cloud.png"
|
||||||
|
style="cursor: pointer; width: 34px; height: 34px"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
</a-upload>
|
</a-upload>
|
||||||
<div class="btnbox" style="margin:20px;">
|
<div class="btnbox" style="margin: 20px">
|
||||||
<span style="color: #999999">
|
<span style="color: #999999">
|
||||||
支持:pdf.ppt.pptx.doc.docx.xls.xlsx.jpeg.png.gif.zip
|
支持:pdf.ppt.pptx.doc.docx.xls.xlsx.jpeg.png.gif.zip
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div v-for="item in docList" :key="item.src" class="docListStyle">
|
<div
|
||||||
<img src="@/assets/images/basicinfo/download.png" style="cursor: pointer;
|
v-for="item in docList"
|
||||||
width:40px;height:40px;margin-right:40px;
|
:key="item.src"
|
||||||
" alt="">
|
class="docListStyle"
|
||||||
<span style="font: oblique 16px Sans-serif">{{item.name}}</span>
|
>
|
||||||
<span style="color: #4ea6ff;float:right;">删除</span>
|
<img
|
||||||
|
src="@/assets/images/basicinfo/download.png"
|
||||||
|
style="
|
||||||
|
cursor: pointer;
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<span style="font: oblique 16px Sans-serif">{{
|
||||||
|
item.name
|
||||||
|
}}</span>
|
||||||
|
<span style="color: #4ea6ff; float: right">删除</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -592,7 +644,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { ref, reactive, defineComponent, toRefs, onMounted } from "vue";
|
import { ref, reactive, defineComponent, toRefs, onMounted } from "vue";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import * as api from "@/api/indexTemplate"
|
import * as api from "@/api/indexTemplate";
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "LibraryAdd",
|
name: "LibraryAdd",
|
||||||
@@ -762,17 +814,17 @@ export default defineComponent({
|
|||||||
// 共享文档列表
|
// 共享文档列表
|
||||||
docList: [
|
docList: [
|
||||||
{
|
{
|
||||||
name:'测试文档1.doc',
|
name: "测试文档1.doc",
|
||||||
src: "",
|
src: "",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name:'测试文档2.doc',
|
name: "测试文档2.doc",
|
||||||
src: "",
|
src: "",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name:'测试文档3.doc',
|
name: "测试文档3.doc",
|
||||||
src: "",
|
src: "",
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
// 基本信息
|
// 基本信息
|
||||||
formData: {
|
formData: {
|
||||||
@@ -807,153 +859,182 @@ export default defineComponent({
|
|||||||
};
|
};
|
||||||
const confirmEdit = () => {
|
const confirmEdit = () => {
|
||||||
state.isEdit = false;
|
state.isEdit = false;
|
||||||
editTemplate()
|
editTemplate();
|
||||||
getDetail();
|
getDetail();
|
||||||
};
|
};
|
||||||
onMounted(() => {getDetail()});
|
onMounted(() => {
|
||||||
|
getDetail();
|
||||||
|
});
|
||||||
// 获取详情
|
// 获取详情
|
||||||
const getDetail = () => {
|
const getDetail = () => {
|
||||||
api.templateDetail(0).then(res => {
|
api
|
||||||
console.log(res)
|
.templateDetail(0)
|
||||||
state.formData.name = res.data.data.projectInfo.name
|
.then((res) => {
|
||||||
state.formData.time = res.data.data.projectInfo.startTime+res.data.data.projectInfo.endTime;
|
console.log(res);
|
||||||
state.formData.manager = res.data.data.projectInfo.manager
|
state.formData.name = res.data.data.projectInfo.name;
|
||||||
state.formData.sourceBelongId = res.data.data.projectInfo.sourceBelongId
|
state.formData.time =
|
||||||
state.formData.remark = res.data.data.stageList.remark
|
res.data.data.projectInfo.startTime +
|
||||||
state.formData.courseSyncFlag = res.data.data.projectInfo.courseSyncFlag
|
res.data.data.projectInfo.endTime;
|
||||||
state.formData.level = res.data.data.projectInfo.level
|
state.formData.manager = res.data.data.projectInfo.manager;
|
||||||
state.formData.systemId = res.data.data.projectInfo.systemId
|
state.formData.sourceBelongId =
|
||||||
state.formData.boeFlag = res.data.data.projectInfo.boeFlag
|
res.data.data.projectInfo.sourceBelongId;
|
||||||
state.value2 = res.data.data.projectInfo.notice
|
state.formData.remark = res.data.data.stageList.remark;
|
||||||
}).catch(err => {
|
state.formData.courseSyncFlag =
|
||||||
message.error("操作失败"+err)
|
res.data.data.projectInfo.courseSyncFlag;
|
||||||
console.log(err)
|
state.formData.level = res.data.data.projectInfo.level;
|
||||||
|
state.formData.systemId = res.data.data.projectInfo.systemId;
|
||||||
|
state.formData.boeFlag = res.data.data.projectInfo.boeFlag;
|
||||||
|
state.value2 = res.data.data.projectInfo.notice;
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("操作失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
// 编辑项目模板
|
// 编辑项目模板
|
||||||
const editTemplate = () => {
|
const editTemplate = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"beginTime": state.formData.time,
|
beginTime: state.formData.time,
|
||||||
"boeFlag": state.formData.boeFlag,
|
boeFlag: state.formData.boeFlag,
|
||||||
"category": 0,
|
category: 0,
|
||||||
"courseSyncFlag": state.formData.courseSyncFlag,
|
courseSyncFlag: state.formData.courseSyncFlag,
|
||||||
"endTime": state.formData.time,
|
endTime: state.formData.time,
|
||||||
"level": state.formData.level,
|
level: state.formData.level,
|
||||||
"manager": state.formData.manager,
|
manager: state.formData.manager,
|
||||||
"managerId": "",
|
managerId: "",
|
||||||
"name": state.formData.name,
|
name: state.formData.name,
|
||||||
"notice": "",
|
notice: "",
|
||||||
"noticeFlag": 0,
|
noticeFlag: 0,
|
||||||
"picUrl": "",
|
picUrl: "",
|
||||||
"projectTemplateId": 0,
|
projectTemplateId: 0,
|
||||||
"remark": state.formData.remark,
|
remark: state.formData.remark,
|
||||||
"sourceBelongId": state.formData.sourceBelongId,
|
sourceBelongId: state.formData.sourceBelongId,
|
||||||
"status": 0,
|
status: 0,
|
||||||
"systemId": state.formData.systemId
|
systemId: state.formData.systemId,
|
||||||
};
|
};
|
||||||
api.templateEdit(obj).methods(obj).then(res => {
|
api
|
||||||
message.success("编辑成功")
|
.templateEdit(obj)
|
||||||
console.log(res)
|
.methods(obj)
|
||||||
}).catch(err => {
|
.then((res) => {
|
||||||
message.error("编辑失败"+err)
|
message.success("编辑成功");
|
||||||
console.log(err)
|
console.log(res);
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("编辑失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
// 发布公告
|
// 发布公告
|
||||||
const addNotice = () => {
|
const addNotice = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"beginTime": 0,
|
beginTime: 0,
|
||||||
"boeFlag": 0,
|
boeFlag: 0,
|
||||||
"category": 0,
|
category: 0,
|
||||||
"courseSyncFlag": 0,
|
courseSyncFlag: 0,
|
||||||
"endTime": 0,
|
endTime: 0,
|
||||||
"level": 0,
|
level: 0,
|
||||||
"manager": "",
|
manager: "",
|
||||||
"managerId": "",
|
managerId: "",
|
||||||
"name": "",
|
name: "",
|
||||||
"notice": state.value2,
|
notice: state.value2,
|
||||||
"noticeFlag": 0,
|
noticeFlag: 0,
|
||||||
"picUrl": "",
|
picUrl: "",
|
||||||
"projectTemplateId": 0,
|
projectTemplateId: 0,
|
||||||
"remark": "",
|
remark: "",
|
||||||
"sourceBelongId": 0,
|
sourceBelongId: 0,
|
||||||
"status": 0,
|
status: 0,
|
||||||
"systemId": 0
|
systemId: 0,
|
||||||
};
|
};
|
||||||
api.templateEdit(obj).methods(obj).then(res => {
|
api
|
||||||
message.success("公告发布成功")
|
.templateEdit(obj)
|
||||||
console.log(res)
|
.methods(obj)
|
||||||
}).catch(err => {
|
.then((res) => {
|
||||||
message.error("公告发布失败"+err)
|
message.success("公告发布成功");
|
||||||
console.log(err)
|
console.log(res);
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("公告发布失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
// 删除阶段
|
// 删除阶段
|
||||||
const stateDel = (id) => {
|
const stateDel = (id) => {
|
||||||
api.deleteStage(id).then(res => {
|
api
|
||||||
message.success("删除阶段成功")
|
.deleteStage(id)
|
||||||
console.log(res)
|
.then((res) => {
|
||||||
}).catch(err => {
|
message.success("删除阶段成功");
|
||||||
message.error("删除阶段失败"+err)
|
console.log(res);
|
||||||
console.log(err)
|
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("删除阶段失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
// 删除任务
|
// 删除任务
|
||||||
const taskDel = (id) => {
|
const taskDel = (id) => {
|
||||||
api.deleteTask(id).then(res => {
|
api
|
||||||
message.success("删除任务成功")
|
.deleteTask(id)
|
||||||
console.log(res)
|
.then((res) => {
|
||||||
}).catch(err => {
|
message.success("删除任务成功");
|
||||||
message.error("删除任务失败"+err)
|
console.log(res);
|
||||||
console.log(err)
|
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("删除任务失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
const toEdit = () => {
|
const toEdit = () => {
|
||||||
routered.push({
|
routered.push({
|
||||||
path: "/templateAdd",
|
path: "/manage/templateAdd",
|
||||||
query: {
|
query: {
|
||||||
projectId: state.projectId,
|
projectId: state.projectId,
|
||||||
name: state.name,
|
name: state.name,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}
|
};
|
||||||
// 新建或编辑阶段
|
// 新建或编辑阶段
|
||||||
const stateEdit = () => {
|
const stateEdit = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"name": "",
|
name: "",
|
||||||
"projectTemplateId": 0,
|
projectTemplateId: 0,
|
||||||
"remark": "",
|
remark: "",
|
||||||
"stageId": 0
|
stageId: 0,
|
||||||
}
|
};
|
||||||
api.editStagek(obj).then(res => {
|
api
|
||||||
message.success("编辑阶段成功")
|
.editStagek(obj)
|
||||||
console.log(res)
|
.then((res) => {
|
||||||
}).catch(err => {
|
message.success("编辑阶段成功");
|
||||||
message.error("编辑阶段失败"+err)
|
console.log(res);
|
||||||
console.log(err)
|
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("编辑阶段失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
//新建或编辑阶段任务
|
//新建或编辑阶段任务
|
||||||
const taskEdit = () => {
|
const taskEdit = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"courseId": 0,
|
courseId: 0,
|
||||||
"duration": 0,
|
duration: 0,
|
||||||
"flag": true,
|
flag: true,
|
||||||
"name": "",
|
name: "",
|
||||||
"projectTaskId": 0,
|
projectTaskId: 0,
|
||||||
"projectTemplateId": 0,
|
projectTemplateId: 0,
|
||||||
"stageId": 0,
|
stageId: 0,
|
||||||
"type": 0
|
type: 0,
|
||||||
}
|
};
|
||||||
api.editTask(obj).then(res => {
|
api
|
||||||
message.success("编辑任务成功")
|
.editTask(obj)
|
||||||
console.log(res)
|
.then((res) => {
|
||||||
}).catch(err => {
|
message.success("编辑任务成功");
|
||||||
message.error("编辑任务失败"+err)
|
console.log(res);
|
||||||
console.log(err)
|
|
||||||
})
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
|
message.error("编辑任务失败" + err);
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
};
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
value,
|
value,
|
||||||
@@ -1393,14 +1474,12 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
|
|
||||||
.notice {
|
.notice {
|
||||||
|
|
||||||
.ntc_tit {
|
.ntc_tit {
|
||||||
padding-top: 22px;
|
padding-top: 22px;
|
||||||
margin-left: 34px;
|
margin-left: 34px;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: #232425;
|
color: #232425;
|
||||||
|
|
||||||
}
|
}
|
||||||
.ntc_body {
|
.ntc_body {
|
||||||
margin-left: 34px;
|
margin-left: 34px;
|
||||||
@@ -1422,7 +1501,6 @@ export default defineComponent({
|
|||||||
.btnarea {
|
.btnarea {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: flex-end;
|
justify-content: flex-end;
|
||||||
|
|
||||||
}
|
}
|
||||||
.area_btn {
|
.area_btn {
|
||||||
width: 100px;
|
width: 100px;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div
|
<div
|
||||||
@click="backPage"
|
@click="backPage"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
to="/projectmanage"
|
to="/manage/projectmanage"
|
||||||
class="goback"
|
class="goback"
|
||||||
>
|
>
|
||||||
<span class="return"></span><span class="returntext">返回</span>
|
<span class="return"></span><span class="returntext">返回</span>
|
||||||
@@ -530,7 +530,7 @@ export default {
|
|||||||
storage.remove("projectAddId");
|
storage.remove("projectAddId");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage",
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 400);
|
}, 400);
|
||||||
};
|
};
|
||||||
@@ -993,7 +993,7 @@ export default {
|
|||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage",
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
} else {
|
} else {
|
||||||
@@ -1048,7 +1048,7 @@ export default {
|
|||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
query: { id: res.data.data.projectId },
|
query: { id: res.data.data.projectId },
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
|
|||||||
@@ -259,7 +259,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modalMain">
|
<div class="modalMain">
|
||||||
<router-link to="/projectadd">
|
<router-link to="/manage/projectadd">
|
||||||
<div
|
<div
|
||||||
class="taskbox"
|
class="taskbox"
|
||||||
style="
|
style="
|
||||||
@@ -1513,7 +1513,7 @@ export default {
|
|||||||
const createChildProject = () => {
|
const createChildProject = () => {
|
||||||
console.log(state.currentProjectId);
|
console.log(state.currentProjectId);
|
||||||
router.push({
|
router.push({
|
||||||
path: "/sonproject",
|
path: "/manage/sonproject",
|
||||||
query: {
|
query: {
|
||||||
projectId: state.currentProjectId,
|
projectId: state.currentProjectId,
|
||||||
name: state.currentProjectName,
|
name: state.currentProjectName,
|
||||||
@@ -2182,7 +2182,7 @@ export default {
|
|||||||
>
|
>
|
||||||
{/*
|
{/*
|
||||||
<a-select-option value="基础信息" label="基础信息">
|
<a-select-option value="基础信息" label="基础信息">
|
||||||
<router-link to="/taskpage">基础信息</router-link>
|
<router-link to="/manage/taskpage">基础信息</router-link>
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
<a-select-option value="存为模版" label="存为模版">
|
<a-select-option value="存为模版" label="存为模版">
|
||||||
<div
|
<div
|
||||||
@@ -2280,7 +2280,7 @@ export default {
|
|||||||
>
|
>
|
||||||
{/*
|
{/*
|
||||||
<a-select-option value="基础信息" label="基础信息">
|
<a-select-option value="基础信息" label="基础信息">
|
||||||
<router-link to="/taskpage">基础信息</router-link>
|
<router-link to="/manage/taskpage">基础信息</router-link>
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
<a-select-option value="存为模版" label="存为模版">
|
<a-select-option value="存为模版" label="存为模版">
|
||||||
<div
|
<div
|
||||||
@@ -2368,7 +2368,7 @@ export default {
|
|||||||
>
|
>
|
||||||
{/*
|
{/*
|
||||||
<a-select-option value="基础信息" label="基础信息">
|
<a-select-option value="基础信息" label="基础信息">
|
||||||
<router-link to="/taskpage">基础信息</router-link>
|
<router-link to="/manage/taskpage">基础信息</router-link>
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
<a-select-option value="存为模版" label="存为模版">
|
<a-select-option value="存为模版" label="存为模版">
|
||||||
<div
|
<div
|
||||||
@@ -2474,7 +2474,7 @@ export default {
|
|||||||
<div
|
<div
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/classadd",
|
path: "/manage/classadd",
|
||||||
query: {
|
query: {
|
||||||
projectId: value.record.projectId,
|
projectId: value.record.projectId,
|
||||||
name: value.record.name,
|
name: value.record.name,
|
||||||
@@ -2482,7 +2482,7 @@ export default {
|
|||||||
});
|
});
|
||||||
}}
|
}}
|
||||||
style={{ cursor: "pointer" }}
|
style={{ cursor: "pointer" }}
|
||||||
to="/classadd"
|
to="/manage/classadd"
|
||||||
class="operation3"
|
class="operation3"
|
||||||
>
|
>
|
||||||
创建班级
|
创建班级
|
||||||
@@ -2566,7 +2566,7 @@ export default {
|
|||||||
</a-select>
|
</a-select>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<router-link to="/classadd" class="operation3">
|
<router-link to="/manage/classadd" class="operation3">
|
||||||
创建班级
|
创建班级
|
||||||
</router-link>
|
</router-link>
|
||||||
<div class="tableSelect">
|
<div class="tableSelect">
|
||||||
@@ -2683,7 +2683,7 @@ export default {
|
|||||||
}
|
}
|
||||||
if (value.record.parentId == "0") {
|
if (value.record.parentId == "0") {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectadd",
|
path: "/manage/projectadd",
|
||||||
query: {
|
query: {
|
||||||
projectId: value.record.projectId,
|
projectId: value.record.projectId,
|
||||||
name: value.record.name,
|
name: value.record.name,
|
||||||
@@ -2692,7 +2692,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
if (value.record.isbj) {
|
if (value.record.isbj) {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/classadd",
|
path: "/manage/classadd",
|
||||||
query: {
|
query: {
|
||||||
projectId: value.record.projectId,
|
projectId: value.record.projectId,
|
||||||
name: value.record.paraentName,
|
name: value.record.paraentName,
|
||||||
@@ -2701,7 +2701,7 @@ export default {
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/sonproject",
|
path: "/manage/sonproject",
|
||||||
query: {
|
query: {
|
||||||
projectId: value.record.projectId,
|
projectId: value.record.projectId,
|
||||||
name: value.record.paraentName,
|
name: value.record.paraentName,
|
||||||
@@ -2728,7 +2728,7 @@ export default {
|
|||||||
// }
|
// }
|
||||||
// if (value.record.parentId == "0") {
|
// if (value.record.parentId == "0") {
|
||||||
// router.push({
|
// router.push({
|
||||||
// path: "/projectadd",
|
// path: "/manage/projectadd",
|
||||||
// query: {
|
// query: {
|
||||||
// projectId: value.record.projectId,
|
// projectId: value.record.projectId,
|
||||||
// name: value.record.name,
|
// name: value.record.name,
|
||||||
@@ -2738,7 +2738,7 @@ export default {
|
|||||||
// } else {
|
// } else {
|
||||||
// if (value.record.isbj) {
|
// if (value.record.isbj) {
|
||||||
// router.push({
|
// router.push({
|
||||||
// path: "/classadd",
|
// path: "/manage/classadd",
|
||||||
// query: {
|
// query: {
|
||||||
// projectId: value.record.projectId,
|
// projectId: value.record.projectId,
|
||||||
// name: value.record.paraentName,
|
// name: value.record.paraentName,
|
||||||
@@ -2748,7 +2748,7 @@ export default {
|
|||||||
// });
|
// });
|
||||||
// } else {
|
// } else {
|
||||||
// router.push({
|
// router.push({
|
||||||
// path: "/sonproject",
|
// path: "/manage/sonproject",
|
||||||
// query: {
|
// query: {
|
||||||
// projectId: value.record.projectId,
|
// projectId: value.record.projectId,
|
||||||
// name: value.record.paraentName,
|
// name: value.record.paraentName,
|
||||||
@@ -2878,7 +2878,7 @@ export default {
|
|||||||
<div
|
<div
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
});
|
});
|
||||||
storage.set("projectId", value.record.projectId);
|
storage.set("projectId", value.record.projectId);
|
||||||
}}
|
}}
|
||||||
@@ -2937,7 +2937,7 @@ export default {
|
|||||||
<div
|
<div
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
});
|
});
|
||||||
storage.set("projectId", value.record.projectId);
|
storage.set("projectId", value.record.projectId);
|
||||||
}}
|
}}
|
||||||
@@ -2984,7 +2984,7 @@ export default {
|
|||||||
<div
|
<div
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
});
|
});
|
||||||
storage.set("projectId", value.record.projectId);
|
storage.set("projectId", value.record.projectId);
|
||||||
}}
|
}}
|
||||||
@@ -2992,7 +2992,7 @@ export default {
|
|||||||
基础信息
|
基础信息
|
||||||
</div>
|
</div>
|
||||||
{/**
|
{/**
|
||||||
<router-link to="/taskpage">基础信息</router-link>
|
<router-link to="/manage/taskpage">基础信息</router-link>
|
||||||
*/}
|
*/}
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
</a-select>
|
</a-select>
|
||||||
|
|||||||
@@ -3,7 +3,12 @@
|
|||||||
<div class="sonproject">
|
<div class="sonproject">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="title">创建/编辑单层子项目</span>
|
<span class="title">创建/编辑单层子项目</span>
|
||||||
<div @click="backPage" style="cursor: pointer;" to="/projectmanage" class="goback">
|
<div
|
||||||
|
@click="backPage"
|
||||||
|
style="cursor: pointer"
|
||||||
|
to="/manage/projectmanage"
|
||||||
|
class="goback"
|
||||||
|
>
|
||||||
<span class="return"></span><span class="returntext">返回</span>
|
<span class="return"></span><span class="returntext">返回</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -11,7 +16,10 @@
|
|||||||
<div class="main">
|
<div class="main">
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">项目归属</div>
|
<div class="inname">项目归属</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
@@ -22,34 +30,60 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">子项目名称</div>
|
<div class="inname">子项目名称</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<a-input v-model:value="projectName" placeholder="请输入项目名称" show-count :maxlength="30" :disabled="viewDetail ? true : false" />
|
<a-input
|
||||||
|
v-model:value="projectName"
|
||||||
|
placeholder="请输入项目名称"
|
||||||
|
show-count
|
||||||
|
:maxlength="30"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">分类</div>
|
<div class="inname">分类</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in select">
|
<div class="in select">
|
||||||
<a-select :getPopupContainer="
|
<a-select
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" v-model:value="classifySelect" placeholder="四个养成" style="width: 100%" :options="classifyList"
|
"
|
||||||
@change="classificationChange" allowClear showSearch :disabled="viewDetail ? true : false">
|
v-model:value="classifySelect"
|
||||||
|
placeholder="四个养成"
|
||||||
|
style="width: 100%"
|
||||||
|
:options="classifyList"
|
||||||
|
@change="classificationChange"
|
||||||
|
allowClear
|
||||||
|
showSearch
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
>
|
||||||
</a-select>
|
</a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">封面图</div>
|
<div class="inname">封面图</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="box" style="
|
<div
|
||||||
|
class="box"
|
||||||
|
style="
|
||||||
width: 100px;
|
width: 100px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
border: 1px solid rgba(78, 166, 255, 1);
|
border: 1px solid rgba(78, 166, 255, 1);
|
||||||
@@ -57,15 +91,30 @@
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
position: relative;
|
position: relative;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
">
|
"
|
||||||
<a-upload v-model:file-list="fileList" name="file" list-type="picture-card" class="avatar-uploader"
|
>
|
||||||
:show-upload-list="false" action="/api/file/upload" :before-upload="beforeUpload" @change="handleChange" :disabled="viewDetail ? true : false">
|
<a-upload
|
||||||
<img style="
|
v-model:file-list="fileList"
|
||||||
|
name="file"
|
||||||
|
list-type="picture-card"
|
||||||
|
class="avatar-uploader"
|
||||||
|
:show-upload-list="false"
|
||||||
|
action="/api/file/upload"
|
||||||
|
:before-upload="beforeUpload"
|
||||||
|
@change="handleChange"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
style="
|
||||||
width: 100px;
|
width: 100px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
margin-bottom: 4px;
|
margin-bottom: 4px;
|
||||||
margin-right: 4px;
|
margin-right: 4px;
|
||||||
" v-if="imageUrl" :src="imageUrl" alt="avatar" />
|
"
|
||||||
|
v-if="imageUrl"
|
||||||
|
:src="imageUrl"
|
||||||
|
alt="avatar"
|
||||||
|
/>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<!-- <loading-outlined v-if="loading"></loading-outlined> -->
|
<!-- <loading-outlined v-if="loading"></loading-outlined> -->
|
||||||
<!-- <plus-outlined v-else></plus-outlined> -->
|
<!-- <plus-outlined v-else></plus-outlined> -->
|
||||||
@@ -78,43 +127,74 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">子项目时间</div>
|
<div class="inname">子项目时间</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<a-range-picker separator="至" :placeholder="[' 开始时间', ' 结束时间']" v-model:value="rangevalue"
|
<a-range-picker
|
||||||
style="width: 100%; height: 40px; border-radius: 5px" @change="onRangeChange" :disabled="viewDetail ? true : false" />
|
separator="至"
|
||||||
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
|
v-model:value="rangevalue"
|
||||||
|
style="width: 100%; height: 40px; border-radius: 5px"
|
||||||
|
@change="onRangeChange"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">子项目经理</div>
|
<div class="inname">子项目经理</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<a-select :getPopupContainer="
|
<a-select
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" :value="classifySelect1" mode="multiple" placeholder="请选择项目经理" style="width: 100%" :options="classifyList1"
|
"
|
||||||
@change="classificationChange1" allowClear showSearch :disabled="viewDetail ? true : false">
|
:value="classifySelect1"
|
||||||
|
mode="multiple"
|
||||||
|
placeholder="请选择项目经理"
|
||||||
|
style="width: 100%"
|
||||||
|
:options="classifyList1"
|
||||||
|
@change="classificationChange1"
|
||||||
|
allowClear
|
||||||
|
showSearch
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
>
|
||||||
</a-select>
|
</a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">资源归属</div>
|
<div class="inname">资源归属</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="in select">
|
<div class="in select">
|
||||||
<a-select :getPopupContainer="
|
<a-select
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" v-model:value="classifySelect2" placeholder="自动带出 可修改" :options="classifyList2"
|
"
|
||||||
@change="classificationChange2" :disabled="viewDetail ? true : false" />
|
v-model:value="classifySelect2"
|
||||||
|
placeholder="自动带出 可修改"
|
||||||
|
:options="classifyList2"
|
||||||
|
@change="classificationChange2"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name name2">
|
<div class="name name2">
|
||||||
@@ -122,7 +202,14 @@
|
|||||||
<div class="inname" style="margin-top: 13px">项目说明</div>
|
<div class="inname" style="margin-top: 13px">项目说明</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<a-textarea v-model:value="remark" style="height: 80px" placeholder="请输入说明" show-count :maxlength="200" :disabled="viewDetail ? true : false"/>
|
<a-textarea
|
||||||
|
v-model:value="remark"
|
||||||
|
style="height: 80px"
|
||||||
|
placeholder="请输入说明"
|
||||||
|
show-count
|
||||||
|
:maxlength="200"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name name2">
|
<div class="name name2">
|
||||||
@@ -130,52 +217,89 @@
|
|||||||
<div class="inname">同步学习记录</div>
|
<div class="inname">同步学习记录</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<a-radio @click="changeChecked" v-model:checked="checked" :disabled="viewDetail ? true : false"><span style="
|
<a-radio
|
||||||
|
@click="changeChecked"
|
||||||
|
v-model:checked="checked"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
><span
|
||||||
|
style="
|
||||||
width: 100%;
|
width: 100%;
|
||||||
color: rgba(109, 117, 132, 1);
|
color: rgba(109, 117, 132, 1);
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
" >同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)</span></a-radio>
|
"
|
||||||
|
>同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)</span
|
||||||
|
></a-radio
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">项目级别</div>
|
<div class="inname">项目级别</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in select">
|
<div class="in select">
|
||||||
<a-select :getPopupContainer="
|
<a-select
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" v-model:value="classifySelect3" :options="classifyList3" @change="classificationChange3"
|
"
|
||||||
placeholder="集团级/组织级/现地级/部门级" :disabled="viewDetail ? true : false" />
|
v-model:value="classifySelect3"
|
||||||
|
:options="classifyList3"
|
||||||
|
@change="classificationChange3"
|
||||||
|
placeholder="集团级/组织级/现地级/部门级"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">培训分类</div>
|
<div class="inname">培训分类</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in select">
|
<div class="in select">
|
||||||
<a-select :getPopupContainer="
|
<a-select
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" v-model:value="classifySelect4" :options="classifyList4" @change="classificationChange4"
|
"
|
||||||
placeholder="集团级/组织级/现地级/部门级" :disabled="viewDetail ? true : false" />
|
v-model:value="classifySelect4"
|
||||||
|
:options="classifyList4"
|
||||||
|
@change="classificationChange4"
|
||||||
|
placeholder="集团级/组织级/现地级/部门级"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="namebox">
|
<div class="namebox">
|
||||||
<img class="nameimg" src="../../assets/images/basicinfo/asterisk.png" />
|
<img
|
||||||
|
class="nameimg"
|
||||||
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
|
/>
|
||||||
<div class="inname">是否BOEU实施</div>
|
<div class="inname">是否BOEU实施</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<a-radio @click="changeChecked1" v-model:checked="checked1" :disabled="viewDetail ? true : false"><span style="
|
<a-radio
|
||||||
|
@click="changeChecked1"
|
||||||
|
v-model:checked="checked1"
|
||||||
|
:disabled="viewDetail ? true : false"
|
||||||
|
><span
|
||||||
|
style="
|
||||||
width: 100%;
|
width: 100%;
|
||||||
color: rgba(109, 117, 132, 1);
|
color: rgba(109, 117, 132, 1);
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
">BOEU实施</span></a-radio>
|
"
|
||||||
|
>BOEU实施</span
|
||||||
|
></a-radio
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="name name2">
|
<!-- <div class="name name2">
|
||||||
@@ -202,19 +326,36 @@
|
|||||||
<div class="name">
|
<div class="name">
|
||||||
<div class="inname" style="width: 50px">模版</div>
|
<div class="inname" style="width: 50px">模版</div>
|
||||||
<div class="in select" style="margin-left: 2px">
|
<div class="in select" style="margin-left: 2px">
|
||||||
<a-select v-if="isEdit" disabled="true" :getPopupContainer="
|
<a-select
|
||||||
|
v-if="isEdit"
|
||||||
|
disabled="true"
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" v-model:value="classifySelect5" placeholder="请选择模版" :size="size" style="width: 100%" :options="classifyList5"
|
"
|
||||||
@change="classificationChange5" >
|
v-model:value="classifySelect5"
|
||||||
|
placeholder="请选择模版"
|
||||||
|
:size="size"
|
||||||
|
style="width: 100%"
|
||||||
|
:options="classifyList5"
|
||||||
|
@change="classificationChange5"
|
||||||
|
>
|
||||||
</a-select>
|
</a-select>
|
||||||
<a-select v-else :getPopupContainer="
|
<a-select
|
||||||
|
v-else
|
||||||
|
:getPopupContainer="
|
||||||
(triggerNode) => {
|
(triggerNode) => {
|
||||||
return triggerNode.parentNode || document.body;
|
return triggerNode.parentNode || document.body;
|
||||||
}
|
}
|
||||||
" v-model:value="classifySelect5" placeholder="请选择模版" :size="size" style="width: 100%" :options="classifyList5"
|
"
|
||||||
@change="classificationChange5">
|
v-model:value="classifySelect5"
|
||||||
|
placeholder="请选择模版"
|
||||||
|
:size="size"
|
||||||
|
style="width: 100%"
|
||||||
|
:options="classifyList5"
|
||||||
|
@change="classificationChange5"
|
||||||
|
>
|
||||||
</a-select>
|
</a-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -222,7 +363,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
<div class="btn">
|
<div class="btn">
|
||||||
<a-button v-on:click="createProject" type="primary" class="btn1">确定</a-button>
|
<a-button v-on:click="createProject" type="primary" class="btn1"
|
||||||
|
>确定</a-button
|
||||||
|
>
|
||||||
<a-button @click="backPage" class="btn2">取消</a-button>
|
<a-button @click="backPage" class="btn2">取消</a-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -232,9 +375,9 @@
|
|||||||
import { reactive, toRefs, ref } from "vue";
|
import { reactive, toRefs, ref } from "vue";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import { useRouter, useRoute } from "vue-router";
|
import { useRouter, useRoute } from "vue-router";
|
||||||
import dayjs from 'dayjs';
|
import dayjs from "dayjs";
|
||||||
import * as api from "../../api/index";
|
import * as api from "../../api/index";
|
||||||
import { toDate } from '../../api/method'
|
import { toDate } from "../../api/method";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "projectAdd",
|
name: "projectAdd",
|
||||||
@@ -260,12 +403,12 @@ export default {
|
|||||||
classifySelect4: [],
|
classifySelect4: [],
|
||||||
rangevalue: [],
|
rangevalue: [],
|
||||||
projectAscription: "",
|
projectAscription: "",
|
||||||
viewDetail:routers.query.viewDetail?routers.query.viewDetail:null
|
viewDetail: routers.query.viewDetail ? routers.query.viewDetail : null,
|
||||||
});
|
});
|
||||||
|
|
||||||
if (routers.query.name == undefined) {
|
if (routers.query.name == undefined) {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage"
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -275,35 +418,38 @@ export default {
|
|||||||
if (routers.query.edit !== undefined) {
|
if (routers.query.edit !== undefined) {
|
||||||
isEdit.value = true;
|
isEdit.value = true;
|
||||||
// 需要编辑
|
// 需要编辑
|
||||||
api.getProjectDetail({ projectId: routers.query.projectId }).then(res => {
|
api
|
||||||
|
.getProjectDetail({ projectId: routers.query.projectId })
|
||||||
|
.then((res) => {
|
||||||
if (res.status == 200 && res.data.code == 200) {
|
if (res.status == 200 && res.data.code == 200) {
|
||||||
let info = res.data.data.projectInfo;
|
let info = res.data.data.projectInfo;
|
||||||
console.log(info)
|
console.log(info);
|
||||||
// projectName classifySelect imageUrl * classifySelect1 * remark checked classifySelect3 classifySelect4 changeChecked1 *
|
// projectName classifySelect imageUrl * classifySelect1 * remark checked classifySelect3 classifySelect4 changeChecked1 *
|
||||||
projectName.value = info.name;
|
projectName.value = info.name;
|
||||||
state.classifySelect = classifyList.value[1]; // info.category
|
state.classifySelect = classifyList.value[1]; // info.category
|
||||||
imageUrl.value = info.picUrl;
|
imageUrl.value = info.picUrl;
|
||||||
|
|
||||||
let start = toDate(info.beginTime / 1000, 'YYYY/MM/DD');
|
let start = toDate(info.beginTime / 1000, "YYYY/MM/DD");
|
||||||
let end = toDate(info.endTime / 1000, 'YYYY/MM/DD');
|
let end = toDate(info.endTime / 1000, "YYYY/MM/DD");
|
||||||
state.rangevalue = [
|
state.rangevalue = [
|
||||||
dayjs(start, 'YYYY/MM/DD'),
|
dayjs(start, "YYYY/MM/DD"),
|
||||||
dayjs(end, 'YYYY/MM/DD'),
|
dayjs(end, "YYYY/MM/DD"),
|
||||||
];
|
];
|
||||||
|
|
||||||
let manageName = info.manager.split(",");
|
let manageName = info.manager.split(",");
|
||||||
let manageValue = info.managerId.split(",");
|
let manageValue = info.managerId.split(",");
|
||||||
let optionsManage = []
|
let optionsManage = [];
|
||||||
for (let i = 0; i < manageName.length; i++) {
|
for (let i = 0; i < manageName.length; i++) {
|
||||||
let obj = {
|
let obj = {
|
||||||
label: manageName[i],
|
label: manageName[i],
|
||||||
value: manageValue[i]
|
value: manageValue[i],
|
||||||
|
};
|
||||||
|
optionsManage.push(obj);
|
||||||
}
|
}
|
||||||
optionsManage.push(obj)
|
console.log(optionsManage);
|
||||||
}
|
|
||||||
console.log(optionsManage)
|
|
||||||
state.classifySelect1 = optionsManage;
|
state.classifySelect1 = optionsManage;
|
||||||
state.classifySelect2 = classifyList2.value[info.sourceBelongId - 1];
|
state.classifySelect2 =
|
||||||
|
classifyList2.value[info.sourceBelongId - 1];
|
||||||
remark.value = info.remark;
|
remark.value = info.remark;
|
||||||
state.checked = info.boeFlag ? info.boeFlag : false;
|
state.checked = info.boeFlag ? info.boeFlag : false;
|
||||||
state.classifySelect3 = classifyList3.value[info.level];
|
state.classifySelect3 = classifyList3.value[info.level];
|
||||||
@@ -324,21 +470,21 @@ export default {
|
|||||||
boeFlag = info.boeFlag;
|
boeFlag = info.boeFlag;
|
||||||
paraentID = Number(info.parentId);
|
paraentID = Number(info.parentId);
|
||||||
}
|
}
|
||||||
}).catch(err => { console.log(err) })
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
paraentID = Number(routers.query.projectId);
|
paraentID = Number(routers.query.projectId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const backPage = () => {
|
const backPage = () => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage"
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 400);
|
}, 400);
|
||||||
}
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const projectName = ref("");
|
const projectName = ref("");
|
||||||
|
|
||||||
@@ -453,7 +599,7 @@ export default {
|
|||||||
|
|
||||||
let beginTime = "";
|
let beginTime = "";
|
||||||
let endTime = "";
|
let endTime = "";
|
||||||
const dateFormatList = ['YYYY/MM/DD'];
|
const dateFormatList = ["YYYY/MM/DD"];
|
||||||
|
|
||||||
const onRangeChange = (value, dateString) => {
|
const onRangeChange = (value, dateString) => {
|
||||||
console.log("Selected Time: ", value);
|
console.log("Selected Time: ", value);
|
||||||
@@ -494,7 +640,7 @@ export default {
|
|||||||
let newoptions = [];
|
let newoptions = [];
|
||||||
for (let i = 0; i < state.classifySelect1.length; i++) {
|
for (let i = 0; i < state.classifySelect1.length; i++) {
|
||||||
if (state.classifySelect1[i].value) {
|
if (state.classifySelect1[i].value) {
|
||||||
newoptions.push(state.classifySelect1[i])
|
newoptions.push(state.classifySelect1[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
state.classifySelect1 = newoptions;
|
state.classifySelect1 = newoptions;
|
||||||
@@ -509,7 +655,7 @@ export default {
|
|||||||
{ value: 3, label: "项目三" },
|
{ value: 3, label: "项目三" },
|
||||||
]);
|
]);
|
||||||
|
|
||||||
let sourceBelongIdC = '';
|
let sourceBelongIdC = "";
|
||||||
const classificationChange2 = (key) => {
|
const classificationChange2 = (key) => {
|
||||||
console.log(`selected ${key}`, classifyList2);
|
console.log(`selected ${key}`, classifyList2);
|
||||||
sourceBelongIdC = key;
|
sourceBelongIdC = key;
|
||||||
@@ -603,13 +749,13 @@ export default {
|
|||||||
sourceBelongId: "请选择资源归属",
|
sourceBelongId: "请选择资源归属",
|
||||||
level: "请填写项目级别",
|
level: "请填写项目级别",
|
||||||
systemId: "请填写项目培训分类",
|
systemId: "请填写项目培训分类",
|
||||||
boeFlag: "请选择是否BOE实施"
|
boeFlag: "请选择是否BOE实施",
|
||||||
};
|
};
|
||||||
|
|
||||||
const createProject = () => {
|
const createProject = () => {
|
||||||
console.log('我是否要编辑项目', isEdit.value)
|
console.log("我是否要编辑项目", isEdit.value);
|
||||||
if (isEdit.value) {
|
if (isEdit.value) {
|
||||||
console.log('我要编辑项目', peojectID)
|
console.log("我要编辑项目", peojectID);
|
||||||
let obj = {
|
let obj = {
|
||||||
projectId: Number(peojectID),
|
projectId: Number(peojectID),
|
||||||
name: projectName["value"],
|
name: projectName["value"],
|
||||||
@@ -654,7 +800,7 @@ export default {
|
|||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage"
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
} else {
|
} else {
|
||||||
@@ -667,7 +813,6 @@ export default {
|
|||||||
message.destroy();
|
message.destroy();
|
||||||
message.error("编辑失败,请检查当前网络状态。");
|
message.error("编辑失败,请检查当前网络状态。");
|
||||||
});
|
});
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
let obj = {
|
let obj = {
|
||||||
name: projectName["value"],
|
name: projectName["value"],
|
||||||
@@ -710,7 +855,7 @@ export default {
|
|||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
query: { id: res.data.data.projectId },
|
query: { id: res.data.data.projectId },
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
|
|||||||
@@ -149,7 +149,7 @@
|
|||||||
<!-- <img class="img2" src="../../assets/images/projectadd/keep.png" />
|
<!-- <img class="img2" src="../../assets/images/projectadd/keep.png" />
|
||||||
<div class="pub">保存</div>
|
<div class="pub">保存</div>
|
||||||
<div class="line"></div> -->
|
<div class="line"></div> -->
|
||||||
<router-link to="/taskpage">
|
<router-link to="/manage/taskpage">
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<img
|
<img
|
||||||
class="img2"
|
class="img2"
|
||||||
|
|||||||
@@ -86,7 +86,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="line"></div>
|
<div class="line"></div>
|
||||||
<router-link to="/projectmanage">
|
<router-link to="/manage/projectmanage">
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<img class="img2" src="../../assets/images/leveladd/back.png" />
|
<img class="img2" src="../../assets/images/leveladd/back.png" />
|
||||||
<div class="return">返回</div>
|
<div class="return">返回</div>
|
||||||
@@ -321,8 +321,8 @@
|
|||||||
<button class="btn" @click="showFaceIn" v-if="morFaceT">
|
<button class="btn" @click="showFaceIn" v-if="morFaceT">
|
||||||
批量面授报名
|
批量面授报名
|
||||||
</button>
|
</button>
|
||||||
<router-link to="/taskadd">
|
<router-link to="/manage/taskadd">
|
||||||
<button to="/taskadd" class="edit">
|
<button to="/manage/taskadd" class="edit">
|
||||||
<img
|
<img
|
||||||
class="editimg"
|
class="editimg"
|
||||||
src="../../assets/images/projectadd/edit.png"
|
src="../../assets/images/projectadd/edit.png"
|
||||||
@@ -505,7 +505,7 @@
|
|||||||
</a-collapse>
|
</a-collapse>
|
||||||
<!-- 无数据创建任务 v-if="taskSyllabus.length == 0"-->
|
<!-- 无数据创建任务 v-if="taskSyllabus.length == 0"-->
|
||||||
<router-link
|
<router-link
|
||||||
to="/taskadd"
|
to="/manage/taskadd"
|
||||||
class="taskbox"
|
class="taskbox"
|
||||||
style="
|
style="
|
||||||
background: linear-gradient(180deg, #ddeaff, #f0f8fe);
|
background: linear-gradient(180deg, #ddeaff, #f0f8fe);
|
||||||
@@ -3349,7 +3349,7 @@ export default {
|
|||||||
const toEdit = () => {
|
const toEdit = () => {
|
||||||
if (state.parentId == "0") {
|
if (state.parentId == "0") {
|
||||||
routered.push({
|
routered.push({
|
||||||
path: "/projectadd",
|
path: "/manage/projectadd",
|
||||||
query: {
|
query: {
|
||||||
projectId: state.projectId,
|
projectId: state.projectId,
|
||||||
name: state.name,
|
name: state.name,
|
||||||
@@ -3358,7 +3358,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
if (state.isbj !== null) {
|
if (state.isbj !== null) {
|
||||||
routered.push({
|
routered.push({
|
||||||
path: "/classadd",
|
path: "/manage/classadd",
|
||||||
query: {
|
query: {
|
||||||
projectId: state.projectId,
|
projectId: state.projectId,
|
||||||
// name: state.paraentName,
|
// name: state.paraentName,
|
||||||
@@ -3368,7 +3368,7 @@ export default {
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
routered.push({
|
routered.push({
|
||||||
path: "/sonproject",
|
path: "/manage/sonproject",
|
||||||
query: {
|
query: {
|
||||||
projectId: state.projectId,
|
projectId: state.projectId,
|
||||||
name: state.name,
|
name: state.name,
|
||||||
|
|||||||
@@ -62,7 +62,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { reactive, defineComponent, toRefs, onMounted } from "vue";
|
import { reactive, defineComponent, toRefs, onMounted } from "vue";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import * as api from "@/api/indexLibrary"
|
import * as api from "@/api/indexLibrary";
|
||||||
const columns1 = [
|
const columns1 = [
|
||||||
{
|
{
|
||||||
title: "模版名称",
|
title: "模版名称",
|
||||||
@@ -123,7 +123,7 @@ export default defineComponent({
|
|||||||
creator: "李部长",
|
creator: "李部长",
|
||||||
stutime: "2022-10-31 23:12:00",
|
stutime: "2022-10-31 23:12:00",
|
||||||
operation: "operation",
|
operation: "operation",
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
// state
|
// state
|
||||||
});
|
});
|
||||||
@@ -138,7 +138,7 @@ export default defineComponent({
|
|||||||
{value.status === "已发布" ? (
|
{value.status === "已发布" ? (
|
||||||
<div class="nselect">
|
<div class="nselect">
|
||||||
<div class="ops2">
|
<div class="ops2">
|
||||||
<router-link to="/libraryadd">
|
<router-link to="/manage/libraryadd">
|
||||||
<div class="jc">
|
<div class="jc">
|
||||||
查看{" "}
|
查看{" "}
|
||||||
<span style="color:#E9E9E9;margin-left:15px;">|</span>
|
<span style="color:#E9E9E9;margin-left:15px;">|</span>
|
||||||
@@ -146,9 +146,17 @@ export default defineComponent({
|
|||||||
</router-link>
|
</router-link>
|
||||||
</div>
|
</div>
|
||||||
<div class="ops3">
|
<div class="ops3">
|
||||||
<div class="jc"
|
<div
|
||||||
onClick={() => {templateHadler({"projectTemplateId": value.projectTemplateId,"type": 0})}}
|
class="jc"
|
||||||
>撤回</div>
|
onClick={() => {
|
||||||
|
templateHadler({
|
||||||
|
projectTemplateId: value.projectTemplateId,
|
||||||
|
type: 0,
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
撤回
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
@@ -157,14 +165,21 @@ export default defineComponent({
|
|||||||
{value.status === "未发布" ? (
|
{value.status === "未发布" ? (
|
||||||
<div class="nselect">
|
<div class="nselect">
|
||||||
<div class="ops1">
|
<div class="ops1">
|
||||||
<div class="jc"
|
<div
|
||||||
onClick={() => {templateHadler({"projectTemplateId": value.projectTemplateId,"type": 1})}}>
|
class="jc"
|
||||||
|
onClick={() => {
|
||||||
|
templateHadler({
|
||||||
|
projectTemplateId: value.projectTemplateId,
|
||||||
|
type: 1,
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
发布
|
发布
|
||||||
<span style="color:#E9E9E9;margin-left:15px;">|</span>
|
<span style="color:#E9E9E9;margin-left:15px;">|</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="ops2">
|
<div class="ops2">
|
||||||
<router-link to="/libraryadd">
|
<router-link to="/manage/libraryadd">
|
||||||
<div class="jc">
|
<div class="jc">
|
||||||
查看
|
查看
|
||||||
<span style="color:#E9E9E9;margin-left:15px;">|</span>
|
<span style="color:#E9E9E9;margin-left:15px;">|</span>
|
||||||
@@ -172,9 +187,17 @@ export default defineComponent({
|
|||||||
</router-link>
|
</router-link>
|
||||||
</div>
|
</div>
|
||||||
<div class="ops3">
|
<div class="ops3">
|
||||||
<div class="jc"
|
<div
|
||||||
onClick={() => {templateHadler({"projectTemplateId": value.projectTemplateId,"type": -1})}}
|
class="jc"
|
||||||
>删除</div>
|
onClick={() => {
|
||||||
|
templateHadler({
|
||||||
|
projectTemplateId: value.projectTemplateId,
|
||||||
|
type: -1,
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
删除
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
@@ -191,54 +214,63 @@ export default defineComponent({
|
|||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getLibraryList();
|
getLibraryList();
|
||||||
})
|
});
|
||||||
const getLibraryList = () => {
|
const getLibraryList = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"beginTime": 0,
|
beginTime: 0,
|
||||||
"endTime": 0,
|
endTime: 0,
|
||||||
"name": "",
|
name: "",
|
||||||
"pageNo": 0,
|
pageNo: 0,
|
||||||
"pageSize": 0,
|
pageSize: 0,
|
||||||
"status": 0
|
status: 0,
|
||||||
}
|
};
|
||||||
api.templateList(obj).then((res) =>{
|
api
|
||||||
|
.templateList(obj)
|
||||||
|
.then((res) => {
|
||||||
console.log(res);
|
console.log(res);
|
||||||
let resData = res.data.data.rows
|
let resData = res.data.data.rows;
|
||||||
if (resData.length) {
|
if (resData.length) {
|
||||||
for (let i in resData) {
|
for (let i in resData) {
|
||||||
state.tableData1[i].id = i + 1;
|
state.tableData1[i].id = i + 1;
|
||||||
state.tableData1[i].projectTemplateId = resData[i].projectTemplateId;
|
state.tableData1[i].projectTemplateId =
|
||||||
state.tableData1[i].status = resData[i].status ? "已发布":"未发布" ;
|
resData[i].projectTemplateId;
|
||||||
|
state.tableData1[i].status = resData[i].status
|
||||||
|
? "已发布"
|
||||||
|
: "未发布";
|
||||||
state.tableData1[i].name = resData[i].name;
|
state.tableData1[i].name = resData[i].name;
|
||||||
state.tableData1[i].creator = resData[i].createName;
|
state.tableData1[i].creator = resData[i].createName;
|
||||||
state.tableData1[i].stutime = resData[i].publishTime;
|
state.tableData1[i].stutime = resData[i].publishTime;
|
||||||
state.tableData1[i].operation = "operation";
|
state.tableData1[i].operation = "operation";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
message.warning("获取的列表数据为空值")
|
message.warning("获取的列表数据为空值");
|
||||||
}
|
}
|
||||||
}).catch((error) => {
|
})
|
||||||
message.error(`获取模板列表失败`+error)
|
.catch((error) => {
|
||||||
|
message.error(`获取模板列表失败` + error);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
const templateHadler = (obj) => {
|
const templateHadler = (obj) => {
|
||||||
api.templateHadle(obj).then((res) => {
|
api
|
||||||
|
.templateHadle(obj)
|
||||||
|
.then((res) => {
|
||||||
if (res.data.success) {
|
if (res.data.success) {
|
||||||
message.success(`模板操作成功`)
|
message.success(`模板操作成功`);
|
||||||
getLibraryList();
|
getLibraryList();
|
||||||
}
|
}
|
||||||
}).catch((error) => {
|
|
||||||
message.error(`模板操作失败`+error)
|
|
||||||
})
|
})
|
||||||
}
|
.catch((error) => {
|
||||||
|
message.error(`模板操作失败` + error);
|
||||||
|
});
|
||||||
|
};
|
||||||
const searchLevel = () => {
|
const searchLevel = () => {
|
||||||
const result = state.tableData1.filter(item => item.name == state.value1)
|
const result = state.tableData1.filter(
|
||||||
|
(item) => item.name == state.value1
|
||||||
|
);
|
||||||
state.tableData1 = result;
|
state.tableData1 = result;
|
||||||
};
|
};
|
||||||
const resetLevel = () => {
|
const resetLevel = () => {
|
||||||
state.value1 = '';
|
state.value1 = "";
|
||||||
// getLibraryList();
|
// getLibraryList();
|
||||||
state.tableData1 = [
|
state.tableData1 = [
|
||||||
{
|
{
|
||||||
@@ -256,8 +288,8 @@ export default defineComponent({
|
|||||||
creator: "李部长",
|
creator: "李部长",
|
||||||
stutime: "2022-10-31 23:12:00",
|
stutime: "2022-10-31 23:12:00",
|
||||||
operation: "operation",
|
operation: "operation",
|
||||||
}
|
},
|
||||||
]
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div
|
<div
|
||||||
@click="backPage"
|
@click="backPage"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
to="/libraryAdd"
|
to="/manage/libraryAdd"
|
||||||
class="goback"
|
class="goback"
|
||||||
>
|
>
|
||||||
<span class="return"></span><span class="returntext">返回</span>
|
<span class="return"></span><span class="returntext">返回</span>
|
||||||
@@ -501,7 +501,7 @@
|
|||||||
storage.remove("projectAddId");
|
storage.remove("projectAddId");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/libraryAdd",
|
path: "/manage/libraryAdd",
|
||||||
});
|
});
|
||||||
}, 400);
|
}, 400);
|
||||||
};
|
};
|
||||||
@@ -950,7 +950,7 @@
|
|||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/projectmanage",
|
path: "/manage/projectmanage",
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
} else {
|
} else {
|
||||||
@@ -1005,7 +1005,7 @@
|
|||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/manage/taskpage",
|
||||||
query: { id: res.data.data.projectId },
|
query: { id: res.data.data.projectId },
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
|
|||||||
@@ -10,9 +10,9 @@
|
|||||||
导出信息
|
导出信息
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<router-link to="/researchmanage" class="goback">
|
<router-link to="/manage/researchmanage" class="goback">
|
||||||
<span class="return"></span>
|
<span class="return"></span>
|
||||||
<router-link class="returntext" to="/researchmanage">
|
<router-link class="returntext" to="/manage/researchmanage">
|
||||||
返回
|
返回
|
||||||
</router-link>
|
</router-link>
|
||||||
</router-link>
|
</router-link>
|
||||||
|
|||||||
@@ -3,9 +3,9 @@
|
|||||||
<div class="researchadd">
|
<div class="researchadd">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="title">创建评估</span>
|
<span class="title">创建评估</span>
|
||||||
<router-link to="/researchmanage" class="goback">
|
<router-link to="/manage/researchmanage" class="goback">
|
||||||
<span class="return"></span>
|
<span class="return"></span>
|
||||||
<router-link class="returntext" to="/researchmanage">
|
<router-link class="returntext" to="/manage/researchmanage">
|
||||||
返回
|
返回
|
||||||
</router-link>
|
</router-link>
|
||||||
</router-link>
|
</router-link>
|
||||||
@@ -401,7 +401,9 @@ export default {
|
|||||||
if (state.assessmentId) {
|
if (state.assessmentId) {
|
||||||
resultPost = {
|
resultPost = {
|
||||||
assessmentId: state.assessmentId,
|
assessmentId: state.assessmentId,
|
||||||
assessmentName: state.assessmentName ? state.assessmentName : "编辑测试",
|
assessmentName: state.assessmentName
|
||||||
|
? state.assessmentName
|
||||||
|
: "编辑测试",
|
||||||
assessmentMark: state.assessmentMark,
|
assessmentMark: state.assessmentMark,
|
||||||
...filterData,
|
...filterData,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -3,9 +3,9 @@
|
|||||||
<div class="researchadd">
|
<div class="researchadd">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="title">创建评估</span>
|
<span class="title">创建评估</span>
|
||||||
<router-link to="/researchmanage" class="goback">
|
<router-link to="/manage/researchmanage" class="goback">
|
||||||
<span class="return"></span>
|
<span class="return"></span>
|
||||||
<router-link class="returntext" to="/researchmanage">
|
<router-link class="returntext" to="/manage/researchmanage">
|
||||||
返回
|
返回
|
||||||
</router-link>
|
</router-link>
|
||||||
</router-link>
|
</router-link>
|
||||||
@@ -499,7 +499,7 @@ export default {
|
|||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
router.push({
|
router.push({
|
||||||
path: "/researchmanage",
|
path: "/manage/researchmanage",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -517,7 +517,7 @@ export default {
|
|||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
router.push({
|
router.push({
|
||||||
path: "/researchmanage",
|
path: "/manage/researchmanage",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -526,7 +526,7 @@ export default {
|
|||||||
const handleAllCancel = () => {
|
const handleAllCancel = () => {
|
||||||
state.allFormsData = [];
|
state.allFormsData = [];
|
||||||
router.push({
|
router.push({
|
||||||
path: "/researchmanage",
|
path: "/manage/researchmanage",
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
const checkVal = (filterData) => {
|
const checkVal = (filterData) => {
|
||||||
|
|||||||
@@ -428,7 +428,7 @@ export default {
|
|||||||
<div
|
<div
|
||||||
class="jc"
|
class="jc"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
handleToManagepage(value, "/managepage");
|
handleToManagepage(value, "/manage/managepage");
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
管理
|
管理
|
||||||
@@ -474,7 +474,7 @@ export default {
|
|||||||
<div
|
<div
|
||||||
class="jc"
|
class="jc"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
handleToResearchadd(value, "/researchadd");
|
handleToResearchadd(value, "/manage/researchadd");
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
基础信息
|
基础信息
|
||||||
|
|||||||
@@ -327,7 +327,7 @@ export default {
|
|||||||
};
|
};
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const golearningpath = () => {
|
const golearningpath = () => {
|
||||||
router.push({ path: "/learningpath", params: { id: 1 } });
|
router.push({ path: "/manage/learningpath", params: { id: 1 } });
|
||||||
};
|
};
|
||||||
|
|
||||||
//下载二维码图片
|
//下载二维码图片
|
||||||
|
|||||||
@@ -1,17 +1,25 @@
|
|||||||
|
/*
|
||||||
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
|
* @Date: 2022-11-21 14:32:52
|
||||||
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
|
* @LastEditTime: 2022-11-21 15:15:30
|
||||||
|
* @FilePath: /fe-manage/vue.config.js
|
||||||
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
|
*/
|
||||||
const { defineConfig } = require("@vue/cli-service");
|
const { defineConfig } = require("@vue/cli-service");
|
||||||
module.exports = defineConfig({
|
module.exports = defineConfig({
|
||||||
// transpileDependencies: true,
|
// transpileDependencies: true,
|
||||||
devServer: {
|
devServer: {
|
||||||
port: 8080,
|
port: 8080,
|
||||||
proxy: {
|
proxy: {
|
||||||
"/api": {
|
"/manageApi": {
|
||||||
// target:"http://192.168.100.208:30001",
|
// target:"http://192.168.100.208:30001",
|
||||||
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
|
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
|
||||||
changeOrigin: true, //表示是否改变原域名
|
changeOrigin: true, //表示是否改变原域名
|
||||||
// secure: false,
|
// secure: false,
|
||||||
// ws: false, //表示WebSocket协议
|
// ws: false, //表示WebSocket协议
|
||||||
pathRewrite: {
|
pathRewrite: {
|
||||||
"^/api": "",
|
"^/manageApi": "",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user