This commit is contained in:
宋文超
2022-11-22 18:08:42 +08:00
30 changed files with 3793 additions and 870 deletions

View File

@@ -2,7 +2,7 @@
* @Author: lixg lixg@dongwu-inc.com * @Author: lixg lixg@dongwu-inc.com
* @Date: 2022-11-07 17:06:45 * @Date: 2022-11-07 17:06:45
* @LastEditors: lixg lixg@dongwu-inc.com * @LastEditors: lixg lixg@dongwu-inc.com
* @LastEditTime: 2022-11-20 18:18:11 * @LastEditTime: 2022-11-21 16:39:00
* @FilePath: /fe-manage/src/api/index.js * @FilePath: /fe-manage/src/api/index.js
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
@@ -74,3 +74,4 @@ export const getTemplateDetail = (obj) => http.get('/admin/project/template/deta
//获取项目统计 //获取项目统计
export const getProjectCount = (projectId) => http.get('/admin/project/projectCount', { params: { projectId: projectId } }) export const getProjectCount = (projectId) => http.get('/admin/project/projectCount', { params: { projectId: projectId } })

View File

@@ -2,7 +2,7 @@
* @Author: lixg lixg@dongwu-inc.com * @Author: lixg lixg@dongwu-inc.com
* @Date: 2022-11-04 22:45:31 * @Date: 2022-11-04 22:45:31
* @LastEditors: lixg lixg@dongwu-inc.com * @LastEditors: lixg lixg@dongwu-inc.com
* @LastEditTime: 2022-11-21 11:51:11 * @LastEditTime: 2022-11-21 16:39:08
* @FilePath: /fe-manage/src/api/index1.js * @FilePath: /fe-manage/src/api/index1.js
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
@@ -85,10 +85,12 @@ export const scoreRank = (obj) => http.post('/admin/project/scoreRank', obj);
export const billboard = (obj) => http.post('/admin/project/billboard', obj); export const billboard = (obj) => http.post('/admin/project/billboard', obj);
//项目基础信息----------------------------------- //项目基础信息-----------------------------------
//获取字典信息
export const getDict = (obj) => http.post('/dict/getList', obj)
// 获取组织结构树 // 获取组织结构树
export const orgtree = () => http.get('/org/tree'); export const orgtree = () => http.get('/org/tree');
//获取积分列表 //获取积分列表
export const noticeList = (projectId) => http.post(`http://localhost:8080/api/admin/project/noticeList?projectId=` + projectId + ``) export const noticeList = (projectId) => http.post(`http://localhost:8080/api/admin/project/noticeList?projectId=` + projectId + ``)

View File

@@ -4,11 +4,11 @@ import http from "./config";
//编辑项目模板 //编辑项目模板
export const templateEdit = (obj) => http.post('/admin/project/template/edit',obj); export const templateEdit = (obj) => http.post('/admin/project/template/edit',obj);
// 模板详情 // 模板详情
export const templateDetail = (id) => http.get(`/admin/project/template/edit?projectTemplateId=${id}`); export const templateDetail = (id) => http.get(`/admin/project/template/detail?projectTemplateId=${id}`);
// 删除阶段 // 删除阶段
export const deleteStage = (id) => http.delete(`/admin/project/template/deleteStage`,{stageId:id}); export const deleteStage = (id) => http.delete(`/admin/project/template/deleteStage?stageId=${id}`);
//删除任务 //删除任务
export const deleteTask = (id) => http.delete(`/admin/project/template/deleteTask`,{projectTaskIds:id}); export const deleteTask = (id) => http.delete(`/admin/project/template/deleteTask?projectTaskIds=${id}`);
// 移动任务到阶段 // 移动任务到阶段
export const moveTask = (obj) => http.post('/admin/project/template/moveTask',obj); export const moveTask = (obj) => http.post('/admin/project/template/moveTask',obj);
// 新建或编辑阶段 // 新建或编辑阶段

View File

@@ -34,8 +34,8 @@ export default {
console.log("new:" + n + ",old:" + o); console.log("new:" + n + ",old:" + o);
if ( if (
n.indexOf("/manage/learningpath") !== -1 || n.indexOf("/learningpath") !== -1 ||
n.indexOf("/manage/LearningPath") !== -1 n.indexOf("/LearningPath") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -45,14 +45,11 @@ export default {
}, },
]; ];
} }
if ( if (n.indexOf("/leveladd") !== -1 || n.indexOf("/LevelAdd") !== -1) {
n.indexOf("/manage/leveladd") !== -1 ||
n.indexOf("/manage/LevelAdd") !== -1
) {
state.list = [ state.list = [
{ {
name: "学习路径", name: "学习路径",
href: "/manage/learningpath", href: "/learningpath",
}, },
{ {
name: "管理", name: "管理",
@@ -60,17 +57,17 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/leveladddetail") !== -1 || n.indexOf("/leveladddetail") !== -1 ||
n.indexOf("/manage/LevelAddDetail") !== -1 n.indexOf("/LevelAddDetail") !== -1
) { ) {
state.list = [ state.list = [
{ {
name: "学习路径", name: "学习路径",
href: "/manage/learningpath", href: "/learningpath",
}, },
{ {
name: "管理", name: "管理",
href: "/manage/leveladd", href: "/leveladd",
}, },
{ {
name: "创建关卡", name: "创建关卡",
@@ -78,17 +75,17 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/levelcheck") !== -1 || n.indexOf("/levelcheck") !== -1 ||
n.indexOf("/manage/LevelCheck") !== -1 n.indexOf("/LevelCheck") !== -1
) { ) {
state.list = [ state.list = [
{ {
name: "学习路径", name: "学习路径",
href: "/manage/learningpath", href: "/learningpath",
}, },
{ {
name: "管理", name: "管理",
href: "/manage/leveladd", href: "/leveladd",
}, },
{ {
name: "查看", name: "查看",
@@ -96,8 +93,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/projectmanage") !== -1 || n.indexOf("/projectmanage") !== -1 ||
n.indexOf("/manage/ProjectManage") !== -1 n.indexOf("/ProjectManage") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -112,23 +109,20 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/projectadd") !== -1 || n.indexOf("/projectadd") !== -1 ||
n.indexOf("/manage/ProjectAdd") !== -1 n.indexOf("/ProjectAdd") !== -1
) { ) {
state.list = [ state.list = [
{ {
name: "项目", name: "项目",
href: "/manage/projectmanage", href: "/projectmanage",
}, },
{ {
name: "创建项目", name: "创建项目",
}, },
]; ];
} }
if ( if (n.indexOf("/taskpage") !== -1 || n.indexOf("/TaskPage") !== -1) {
n.indexOf("/manage/taskpage") !== -1 ||
n.indexOf("/manage/TaskPage") !== -1
) {
state.list = [ state.list = [
{ {
name: "项目", name: "项目",
@@ -139,10 +133,7 @@ export default {
}, },
]; ];
} }
if ( if (n.indexOf("/taskadd") !== -1 || n.indexOf("/TaskAdd") !== -1) {
n.indexOf("/manage/taskadd") !== -1 ||
n.indexOf("/manage/TaskAdd") !== -1
) {
state.list = [ state.list = [
{ {
name: "项目", name: "项目",
@@ -160,8 +151,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/templatelibrary") !== -1 || n.indexOf("/templatelibrary") !== -1 ||
n.indexOf("/manage/TemplateLibrary") !== -1 n.indexOf("/TemplateLibrary") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -173,8 +164,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/libraryadd") !== -1 || n.indexOf("/libraryadd") !== -1 ||
n.indexOf("/manage/LibraryAdd") !== -1 n.indexOf("/LibraryAdd") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -185,13 +176,13 @@ export default {
}, },
{ {
name: "查看", name: "查看",
href: "/manage/libraryadd", href: "/libraryadd",
}, },
]; ];
} }
if ( if (
n.indexOf("/manage/coursemanage") !== -1 || n.indexOf("/coursemanage") !== -1 ||
n.indexOf("/manage/CourseManage") !== -1 n.indexOf("/CourseManage") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -206,8 +197,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/coursewaremanage") !== -1 || n.indexOf("/coursewaremanage") !== -1 ||
n.indexOf("/manage/CoursewareManage") !== -1 n.indexOf("/CoursewareManage") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -219,8 +210,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/researchmanage") !== -1 || n.indexOf("/researchmanage") !== -1 ||
n.indexOf("/manage/ResearchManage") !== -1 n.indexOf("/ResearchManage") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -231,8 +222,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/managepage") !== -1 || n.indexOf("/managepage") !== -1 ||
n.indexOf("/manage/ManagePage") !== -1 n.indexOf("/ManagePage") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -247,8 +238,8 @@ export default {
} }
if ( if (
n.indexOf("/manage/researchadd") !== -1 || n.indexOf("/researchadd") !== -1 ||
n.indexOf("/manage/ResearchAdd") !== -1 n.indexOf("/ResearchAdd") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -263,8 +254,8 @@ export default {
} }
if ( if (
n.indexOf("/manage/certificatecenter") !== -1 || n.indexOf("/certificatecenter") !== -1 ||
n.indexOf("/manage/CertificateCenter") !== -1 n.indexOf("/CertificateCenter") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -273,8 +264,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/systemmanage") !== -1 || n.indexOf("/systemmanage") !== -1 ||
n.indexOf("/manage/SystemManage") !== -1 n.indexOf("/SystemManage") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -283,8 +274,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/coursereviewed") !== -1 || n.indexOf("/coursereviewed") !== -1 ||
n.indexOf("/manage/CourseReiewed") !== -1 n.indexOf("/CourseReiewed") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -296,8 +287,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/coursereviewedn") !== -1 || n.indexOf("/coursereviewedn") !== -1 ||
n.indexOf("/manage/CourseReiewedN") !== -1 n.indexOf("/CourseReiewedN") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -309,8 +300,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/projectreviewed") !== -1 || n.indexOf("/projectreviewed") !== -1 ||
n.indexOf("/manage/ProjectReviewed") !== -1 n.indexOf("/ProjectReviewed") !== -1
) { ) {
state.list = [ state.list = [
{ {
@@ -322,8 +313,8 @@ export default {
]; ];
} }
if ( if (
n.indexOf("/manage/projectreviewedn") !== -1 || n.indexOf("/projectreviewedn") !== -1 ||
n.indexOf("/manage/ProjectReviewedN") !== -1 n.indexOf("/ProjectReviewedN") !== -1
) { ) {
state.list = [ state.list = [
{ {

View File

@@ -44,7 +44,7 @@
circle: selectedKeys[0] === 'sub10-1' ? false : true, circle: selectedKeys[0] === 'sub10-1' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/coursereviewedn">待审核课程</router-link> <router-link to="/coursereviewedn">待审核课程</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub10-2"> <a-menu-item key="sub10-2">
<span <span
@@ -53,7 +53,7 @@
circle: selectedKeys[0] === 'sub10-2' ? false : true, circle: selectedKeys[0] === 'sub10-2' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/coursereviewed">已审核课程</router-link> <router-link to="/coursereviewed">已审核课程</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub10-3"> <a-menu-item key="sub10-3">
<span <span
@@ -62,7 +62,7 @@
circle: selectedKeys[0] === 'sub10-3' ? false : true, circle: selectedKeys[0] === 'sub10-3' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/projectreviewedn">待审核项目</router-link> <router-link to="/projectreviewedn">待审核项目</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub10-4"> <a-menu-item key="sub10-4">
<span <span
@@ -71,7 +71,7 @@
circle: selectedKeys[0] === 'sub10-4' ? false : true, circle: selectedKeys[0] === 'sub10-4' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/projectreviewed">已审核项目</router-link> <router-link to="/projectreviewed">已审核项目</router-link>
</a-menu-item> </a-menu-item>
</a-sub-menu> </a-sub-menu>
@@ -82,7 +82,7 @@
src="../assets/images/navleft/studyPath.png" src="../assets/images/navleft/studyPath.png"
/> />
</div> </div>
<router-link to="/manage/learningpath">学习路径</router-link> <router-link to="/learningpath">学习路径</router-link>
</a-menu-item> </a-menu-item>
<a-sub-menu key="sub2" @titleClick="titleClick"> <a-sub-menu key="sub2" @titleClick="titleClick">
@@ -102,7 +102,7 @@
circle: selectedKeys[0] === 'sub2-1' ? false : true, circle: selectedKeys[0] === 'sub2-1' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/projectmanage">项目</router-link> <router-link to="/projectmanage">项目</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub2-2"> <a-menu-item key="sub2-2">
<span <span
@@ -111,7 +111,7 @@
circle: selectedKeys[0] === 'sub2-2' ? false : true, circle: selectedKeys[0] === 'sub2-2' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/templatelibrary">模板库</router-link> <router-link to="/templatelibrary">模板库</router-link>
</a-menu-item> </a-menu-item>
</a-sub-menu> </a-sub-menu>
@@ -132,7 +132,7 @@
circle: selectedKeys[0] === 'sub3-1' ? false : true, circle: selectedKeys[0] === 'sub3-1' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/coursemanage">课件管理</router-link> <router-link to="/coursemanage">课件管理</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub3-2"> <a-menu-item key="sub3-2">
<span <span
@@ -141,7 +141,7 @@
circle: selectedKeys[0] === 'sub3-2' ? false : true, circle: selectedKeys[0] === 'sub3-2' ? false : true,
}" }"
></span> ></span>
<router-link to="/manage/coursewaremanage">课程管理</router-link> <router-link to="/coursewaremanage">课程管理</router-link>
</a-menu-item> </a-menu-item>
</a-sub-menu> </a-sub-menu>
@@ -162,7 +162,7 @@
src="../assets/images/navleft/survey.png" src="../assets/images/navleft/survey.png"
/> />
</div> </div>
<router-link to="/manage/researchmanage">评估管理</router-link> <router-link to="/researchmanage">评估管理</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub6" @titleClick="titleClick"> <a-menu-item key="sub6" @titleClick="titleClick">
@@ -193,7 +193,7 @@
/> />
</div> </div>
<router-link to="/manage/certificatecenter">证书中心</router-link> <router-link to="/certificatecenter">证书中心</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub9" @titleClick="titleClick"> <a-menu-item key="sub9" @titleClick="titleClick">
<div class="imgBox"> <div class="imgBox">
@@ -202,7 +202,7 @@
src="../assets/images/navleft/system.png" src="../assets/images/navleft/system.png"
/> />
</div> </div>
<router-link to="/manage/systemmanage">系统管理</router-link> <router-link to="/systemmanage">系统管理</router-link>
</a-menu-item> </a-menu-item>
</a-menu> </a-menu>
</div> </div>
@@ -220,15 +220,15 @@
@click="handleClick" @click="handleClick"
> >
<a-menu-item key="sub1" @titleClick="titleClick"> <a-menu-item key="sub1" @titleClick="titleClick">
<router-link to="/manage/learningpath">学习</router-link> <router-link to="/learningpath">学习</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub2" @titleClick="titleClick"> <a-menu-item key="sub2" @titleClick="titleClick">
<router-link to="/manage/projectmanage">项目</router-link> <router-link to="/projectmanage">项目</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub3" @titleClick="titleClick"> <a-menu-item key="sub3" @titleClick="titleClick">
<router-link to="/manage/coursewaremanage">课程</router-link> <router-link to="/coursewaremanage">课程</router-link>
</a-menu-item> </a-menu-item>
<a-menu-item key="sub4" @titleClick="titleClick"> <a-menu-item key="sub4" @titleClick="titleClick">
@@ -295,104 +295,104 @@ export default {
keysList: [ keysList: [
{ {
href: "/manage/coursereviewedn", href: "/coursereviewedn",
openKeys: "sub10", openKeys: "sub10",
selectedKeys: "sub10-1", selectedKeys: "sub10-1",
pagename: "待审核课程", pagename: "待审核课程",
}, },
{ {
href: "/manage/coursereviewed", href: "/coursereviewed",
openKeys: "sub10", openKeys: "sub10",
selectedKeys: "sub10-2", selectedKeys: "sub10-2",
pagename: "已审核课程", pagename: "已审核课程",
}, },
{ {
href: "/manage/projectreviewedn", href: "/projectreviewedn",
openKeys: "sub10", openKeys: "sub10",
selectedKeys: "sub10-3", selectedKeys: "sub10-3",
pagename: "待审核项目", pagename: "待审核项目",
}, },
{ {
href: "/manage/projectrrviewed", href: "/projectrrviewed",
openKeys: "sub10", openKeys: "sub10",
selectedKeys: "sub10-4", selectedKeys: "sub10-4",
pagename: "已审核项目", pagename: "已审核项目",
}, },
{ {
href: "/manage/learningpath", href: "/learningpath",
openKeys: "sub1", openKeys: "sub1",
selectedKeys: "sub1", selectedKeys: "sub1",
pagename: "学习路径", pagename: "学习路径",
}, },
{ {
href: "/manage/leveladd", href: "/leveladd",
openKeys: "sub1", openKeys: "sub1",
selectedKeys: "sub1", selectedKeys: "sub1",
pagename: "关卡", pagename: "关卡",
}, },
{ {
href: "/manage/levelcheck", href: "/levelcheck",
openKeys: "sub1", openKeys: "sub1",
selectedKeys: "sub1", selectedKeys: "sub1",
pagename: "查看", pagename: "查看",
}, },
{ {
href: "/manage/leveladddetail", href: "/leveladddetail",
openKeys: "sub1", openKeys: "sub1",
selectedKeys: "sub1", selectedKeys: "sub1",
pagename: "创建关卡", pagename: "创建关卡",
}, },
{ {
href: "/manage/projectmanage", href: "/projectmanage",
openKeys: "sub2", openKeys: "sub2",
selectedKeys: "sub2-1", selectedKeys: "sub2-1",
pagename: "项目", pagename: "项目",
}, },
{ {
href: "/manage/projectadd", href: "/projectadd",
openKeys: "sub2", openKeys: "sub2",
selectedKeys: "sub2-1", selectedKeys: "sub2-1",
pagename: "创建项目", pagename: "创建项目",
}, },
{ {
href: "/manage/templatelibrary", href: "/templatelibrary",
openKeys: "sub2", openKeys: "sub2",
selectedKeys: "sub2-2", selectedKeys: "sub2-2",
pagename: "模板库", pagename: "模板库",
}, },
{ {
href: "/manage/libraryadd", href: "/libraryadd",
openKeys: "sub2", openKeys: "sub2",
selectedKeys: "sub2-2", selectedKeys: "sub2-2",
pagename: "查看", pagename: "查看",
}, },
{ {
href: "/manage/coursemanage", href: "/coursemanage",
openKeys: "sub3", openKeys: "sub3",
selectedKeys: "sub3-1", selectedKeys: "sub3-1",
pagename: "课件管理", pagename: "课件管理",
}, },
{ {
href: "/manage/coursewaremanage", href: "/coursewaremanage",
openKeys: "sub3", openKeys: "sub3",
selectedKeys: "sub3-2", selectedKeys: "sub3-2",
pagename: "课程管理", pagename: "课程管理",
}, },
{ {
href: "/manage/certificatecenter", href: "/certificatecenter",
openKeys: "sub8", openKeys: "sub8",
selectedKeys: "sub8", selectedKeys: "sub8",
pagename: "证书中心", pagename: "证书中心",
}, },
{ {
href: "/manage/systemmanage", href: "/systemmanage",
openKeys: "sub9", openKeys: "sub9",
selectedKeys: "sub9", selectedKeys: "sub9",
pagename: "系统管理", pagename: "系统管理",
}, },
{ {
href: "/manage/researchmanage", href: "/researchmanage",
openKeys: "sub5", openKeys: "sub5",
selectedKeys: "sub5", selectedKeys: "sub5",
pagename: "评估管理", pagename: "评估管理",

View File

@@ -58,10 +58,10 @@ export default {
state.openList.map((item, key) => { state.openList.map((item, key) => {
if (item.href === value.href) { if (item.href === value.href) {
if (state.openList.length === 1) { if (state.openList.length === 1) {
if (state.openList[0].href !== "/manage/learningpath") { if (state.openList[0].href !== "/learningpath") {
state.openList.splice(key, 1); state.openList.splice(key, 1);
} }
$router.push({ path: "/manage/learningpath" }); $router.push({ path: "/learningpath" });
} else { } else {
if (value.active) { if (value.active) {
if (key === state.openList.length - 1) { if (key === state.openList.length - 1) {

View File

@@ -366,7 +366,7 @@ export default {
if (res.data.code === 200) { if (res.data.code === 200) {
message.success("编辑成功"); message.success("编辑成功");
router.push({ router.push({
path: "/manage/researchmanage", path: "/researchmanage",
}); });
} }
}); });

View File

@@ -2,7 +2,7 @@
* @Author: lixg lixg@dongwu-inc.com * @Author: lixg lixg@dongwu-inc.com
* @Date: 2022-11-09 09:26:26 * @Date: 2022-11-09 09:26:26
* @LastEditors: lixg lixg@dongwu-inc.com * @LastEditors: lixg lixg@dongwu-inc.com
* @LastEditTime: 2022-11-21 15:06:51 * @LastEditTime: 2022-11-21 17:42:50
* @FilePath: /fe-manage/src/router/config.js * @FilePath: /fe-manage/src/router/config.js
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
@@ -12,7 +12,7 @@ context.keys().forEach((path) => {
// console.log('path', path) // console.log('path', path)
const componentName = path.replace(/.*\/([^\\.\\/]*)\.vue$/, "$1"); const componentName = path.replace(/.*\/([^\\.\\/]*)\.vue$/, "$1");
routes.push({ routes.push({
path: `/manage/${componentName.toLowerCase()}/:id?`, path: `/${componentName.toLowerCase()}/:id?`,
name: componentName, name: componentName,
component: () => context(path), component: () => context(path),
meta: { meta: {

View File

@@ -2,7 +2,7 @@
* @Author: lixg lixg@dongwu-inc.com * @Author: lixg lixg@dongwu-inc.com
* @Date: 2022-11-09 09:26:26 * @Date: 2022-11-09 09:26:26
* @LastEditors: lixg lixg@dongwu-inc.com * @LastEditors: lixg lixg@dongwu-inc.com
* @LastEditTime: 2022-11-21 14:55:13 * @LastEditTime: 2022-11-21 17:42:59
* @FilePath: /fe-manage/src/router/index.js * @FilePath: /fe-manage/src/router/index.js
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
@@ -12,13 +12,12 @@ const routes = [
{ {
path: '/', path: '/',
name: '首页', name: '首页',
redirect: '/manage/learningpath' redirect: '/learningpath'
}, },
...routesConfig ...routesConfig
] ]
const router = createRouter({ const router = createRouter({
history: createWebHistory(), history: createWebHistory("/manage/"),
base: '/manage',
routes, routes,
}) })

View File

@@ -2,7 +2,7 @@
* @Author: lixg lixg@dongwu-inc.com * @Author: lixg lixg@dongwu-inc.com
* @Date: 2022-11-09 09:26:26 * @Date: 2022-11-09 09:26:26
* @LastEditors: lixg lixg@dongwu-inc.com * @LastEditors: lixg lixg@dongwu-inc.com
* @LastEditTime: 2022-11-21 14:50:47 * @LastEditTime: 2022-11-21 17:43:07
* @FilePath: /fe-manage/src/store/index.js * @FilePath: /fe-manage/src/store/index.js
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
@@ -15,7 +15,7 @@ export default createStore({
: [ : [
{ {
pagename: "学习路径", pagename: "学习路径",
href: "/manage/learningpath", href: "/learningpath",
active: true, active: true,
}, },
], ],

View File

@@ -49,7 +49,7 @@
</div> </div>
</div> </div>
<div class="btns"> <div class="btns">
<!-- <router-link to="/manage/projectadd"> <!-- <router-link to="/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: "/manage/leveladd", path: "/leveladd",
}); });
storage.set("routerId", text.record.id); storage.set("routerId", text.record.id);
}} }}

View File

@@ -55,8 +55,8 @@
</div> </div>
</div> </div>
<div class="line"></div> <div class="line"></div>
<router-link to="/manage/learningpath"> <router-link to="/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>
</div> </div>
@@ -75,8 +75,11 @@
<div class="taskmain">快速创建项目详情</div> <div class="taskmain">快速创建项目详情</div>
</div> </div>
<div class="second"> <div class="second">
<router-link :to="{ path: '/manage/leveladddetail' }"> <router-link :to="{ path: '/leveladddetail' }">
<div class="taskbox" style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"> <div
class="taskbox"
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>
@@ -252,7 +255,7 @@
<div class="search"></div> <div class="search"></div>
<div class="btnText">重置</div> <div class="btnText">重置</div>
</div> </div>
<router-link to="/manage/leveladddetail"> <router-link to="/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>
@@ -274,15 +277,21 @@
<div class="onerow"> <div class="onerow">
<div class="taskmain">任务大纲</div> <div class="taskmain">任务大纲</div>
<router-link to="/manage/leveladddetail" class="editright"> <router-link to="/leveladddetail" class="editright">
<img class="editimg" src="../../assets/images/leveladd/edit.png" /> <img
class="editimg"
src="../../assets/images/leveladd/edit.png"
/>
<span class="editextb">编辑</span> <span class="editextb">编辑</span>
</router-link> </router-link>
</div> </div>
<!-- 无数据显示快速创建 --> <!-- 无数据显示快速创建 -->
<div v-show="!taskSyllabus.length"> <div v-show="!taskSyllabus.length">
<router-link :to="{ path: '/manage/leveladddetail' }"> <router-link :to="{ path: '/leveladddetail' }">
<div class="taskbox" style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"> <div
class="taskbox"
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>

View File

@@ -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="/manage/leveladd"> <router-link to="/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="/manage/leveladd"> <router-link to="/leveladd">
<div style="display: flex"> <div style="display: flex">
<img <img
class="img2" class="img2"

View File

@@ -31,7 +31,7 @@
</div> </div>
</div> </div>
<div class="lne"></div> <div class="lne"></div>
<router-link to="/manage/leveladd"> <router-link to="/leveladd">
<div class="return"> <div class="return">
<div class="im"></div> <div class="im"></div>
<div class="fan">返回</div> <div class="fan">返回</div>

View File

@@ -6,7 +6,7 @@
<div <div
@click="backPage" @click="backPage"
style="cursor: pointer" style="cursor: pointer"
to="/manage/projectmanage" to="/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: "/manage/projectmanage", path: "/projectmanage",
}); });
} }
@@ -481,7 +481,7 @@ export default {
const backPage = () => { const backPage = () => {
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 400); }, 400);
}; };
@@ -800,7 +800,7 @@ export default {
message.success("编辑成功"); message.success("编辑成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 1000); }, 1000);
} else { } else {
@@ -855,7 +855,7 @@ export default {
message.success("创建成功"); message.success("创建成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/taskpage", path: "/taskpage",
query: { id: res.data.data.projectId }, query: { id: res.data.data.projectId },
}); });
}, 1000); }, 1000);

View File

@@ -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="/manage/taskadd" class="edit"> <router-link to="/temTask" class="edit">
<img <img
class="editimg" class="editimg"
src="../../assets/images/projectadd/edit.png" src="../../assets/images/projectadd/edit.png"
@@ -299,7 +299,7 @@
<div class="ntcc_tit">公告内容</div> <div class="ntcc_tit">公告内容</div>
<div class="textarea"> <div class="textarea">
<a-textarea <a-textarea
v-model:value="value2" v-model:value="projectInfo.notice"
placeholder="公告信息最多输入150个字。" placeholder="公告信息最多输入150个字。"
:maxlength="textnum" :maxlength="textnum"
allow-clear allow-clear
@@ -385,124 +385,95 @@
<div class="split"></div> <div class="split"></div>
<a-tabs> <a-tabs>
<a-tab-pane key="1" tab="编辑"> <a-tab-pane key="1" tab="编辑">
<div class="setting"> <div class="content7">
<div class="set_tit"> <!-- <div class="set_tit">
<span>基本信息</span> <span>基本信息</span>
<span class="editBtn" @click="toEdit">编辑</span> </div> -->
</div>
<hr color="#E8E8E8" />
<div class="set_body">
<div class="set_content">
<div class="setc_name"><span>模板名称</span></div>
<div class="setc_main">
<a-input v-model:value="formData.name"
:bordered="isEdit" :disabled="!isEdit"
style="width:300px;"
></a-input>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>封面图</span></div>
<div class="setc_main">
<a-upload
v-model:file-list="fileList"
name="file"
action="/api/file/upload"
@change="handleChange"
:disabled="!isEdit"
>
<img src="@/assets/images/projectadd/picture.png" alt="" />
</a-upload>
<!-- <div class="line"></div> -->
<div class="set_body">
<!-- <div class="edit" @click="showEditProj">
<div class="img"></div>
<div class="ed">编辑</div>
</div> -->
<div class="edit" @click="toEdit">
<div class="img"></div>
<div class="ed">编辑</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目名称</span></div>
<div class="setc_main">
<span style="color: #999999">{{ projectInfo.name }}</span>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>封面图</span></div>
<div class="setc_main">
<img
style="width: 151px; height: 84px"
:src="picUrl"
alt=""
/>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目时间</span></div>
<div class="setc_main">
<span style="color: #999999"
>{{ projectInfo.beginTime }} {{ projectInfo.endTime }}</span
>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目经理</span></div>
<div class="setc_main">
<span style="color: #999999">{{ projectInfo.manager }}</span>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>资源归属</span></div>
<div class="setc_main">
<span style="color: #999999">{{ projectInfo.sourceBelong }}</span>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目说明</span></div>
<div class="setc_main">
<span style="color: #999999">{{ projectInfo.remark }}</span>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>同步学习记录</span></div>
<div class="setc_main">
<a-radio v-model:checked="projectInfo.courseSyncFlag"
><span style="color: #333333"
>同步课程学习记录如学员在课程库中拥有课程的学习记录自动免修该课程</span
></a-radio
>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目级别</span></div>
<div class="setc_main">
<span style="color: #999999">{{ projectInfo.level }}</span>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>培训体系</span></div>
<div class="setc_main">
<span style="color: #999999">{{ projectInfo.systemId }}</span>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>是否BOEU实施</span></div>
<div class="setc_main">
<a-radio v-model:checked="projectInfo.boeFlag"
><span style="color: #333333">BOEU实施</span></a-radio
>
</div>
</div>
</div> </div>
</div> </div>
<div class="set_content">
<div class="setc_name"><span>模板时间</span></div>
<div class="setc_main">
<a-range-picker v-model:value="formData.time"
:bordered="isEdit" :disabled="!isEdit" />
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目经理</span></div>
<div class="setc_main">
<a-select
v-model:value="formData.manager" mode="multiple"
placeholder="请选择项目经理"
:size="large" :bordered="isEdit" :disabled="!isEdit"
style="width: 200px;color: #999999;" :options="managerOptions"
></a-select>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>资源归属</span></div>
<div class="setc_main">
<a-select
v-model:value="formData.sourceBelongId"
placeholder="请选择资源归属"
:size="large" :bordered="isEdit" :disabled="!isEdit"
style="width: 200px;color: #999999;" :options="sourceBelongOptions"
></a-select>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>模板说明</span></div>
<div class="setc_main">
<a-input v-model:value="formData.remark"
style="width:300px;"
:bordered="isEdit" :disabled="!isEdit"
></a-input>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>同步学习记录</span></div>
<div class="setc_main" @click="changecheck2">
<a-radio v-model:checked="formData.courseSyncFlag"
:bordered="isEdit" :disabled="!isEdit"
><span style="color: #333333"
>同步课程学习记录如学员在课程库中拥有课程的学习记录自动免修该课程</span
></a-radio
>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>项目级别</span></div>
<div class="setc_main">
<a-select
v-model:value="formData.level"
placeholder="请选择项目级别"
:size="large" :bordered="isEdit" :disabled="!isEdit"
style="width: 200px;color: #999999;" :options="levelOptions"
></a-select>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>培训分类</span></div>
<div class="setc_main">
<a-select
v-model:value="formData.systemId"
placeholder="请选择培训分类"
:size="large" :bordered="isEdit" :disabled="!isEdit"
style="width: 200px;color: #999999;" :options="systemOptions"
></a-select>
</div>
</div>
<div class="set_content">
<div class="setc_name"><span>是否BOEU实施</span></div>
<div class="setc_main" @click="changecheck3">
<a-radio v-model:checked="formData.boeFlag"
:bordered="isEdit" :disabled="!isEdit"
><span style="color: #333333">BOEU实施</span></a-radio
>
</div>
</div>
<div v-if="isEdit" style="transform: translateX(50%)">
<a-button @click="cancelEdit" style="background-color: #f9f9f9">取消</a-button>
<a-button @click="confirmEdit" style="background-color: #f5faff">保存</a-button>
</div>
</div>
</div>
</a-tab-pane> </a-tab-pane>
<a-tab-pane key="2" tab="共享文档"> <a-tab-pane key="2" tab="共享文档">
<div class="sametab"> <div class="sametab">
@@ -677,47 +648,6 @@ export default defineComponent({
}, },
], ],
}, },
{
text: "阶段2腾飞班阶段2",
children: [
{
course: "讨论",
name: "时间管理",
classify: "选修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 20, //完成人数
percent: 40,
},
{
course: "测评",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
{
course: "评估",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
{
course: "投票",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
],
},
], ],
// 模板编辑列表 // 模板编辑列表
managerOptions:[ managerOptions:[
@@ -774,28 +704,23 @@ export default defineComponent({
src:"", src:"",
} }
], ],
// 基本信息 isEdit:false, // 是否处于编辑状态
formData:{ // 基本信息
name: "123", projectInfo:{
time: "", beginTime:null,
manager: "建国", endTime:null,
name: null,
manager: null,
notice: null,
sourceBelongId: null, sourceBelongId: null,
remark: "", remark: "",
courseSyncFlag: false, courseSyncFlag: false,
level: null, level: null,
systemId: null, systemId: null,
boeFlag: false, boeFlag: false,
},
isEdit:false, // 是否处于编辑状态
projectInfo:{
beginTime:null,
endTime:null,
name: null,
manager: null,
} }
}); });
const value = ref(""); const value = ref("");
const value2 = ref("");
const textnum = "150"; const textnum = "150";
const routered = useRouter(); const routered = useRouter();
const changeopclo = () => { const changeopclo = () => {
@@ -813,58 +738,64 @@ export default defineComponent({
}; };
const confirmEdit = () => { const confirmEdit = () => {
state.isEdit = false; state.isEdit = false;
editTemplate()
getDetail(); getDetail();
}; };
const checkType = (type) => {
let typeRules = [
"",
"在线",
"面授",
"案例",
"作业",
"考试",
"直播",
"外链",
"讨论",
"活动",
"测评",
"评估",
"投票",
];
return typeRules[type];
};
onMounted(() => {getDetail()}); onMounted(() => {getDetail()});
// 获取详情 // 获取详情
const getDetail = () => { const getDetail = () => {
api.templateDetail(1).then(res => { api.templateDetail(1).then(res => {
console.log(res) state.taskSyllabus = []
state.formData.name = res.data.data.projectInfo.name console.log(res);
state.formData.time = res.data.data.projectInfo.startTime+res.data.data.projectInfo.endTime; state.projectInfo.name = res.data.data.projectTemplateInfo.name
state.formData.manager = res.data.data.projectInfo.manager state.projectInfo.beginTime = res.data.data.projectTemplateInfo.createTime
state.formData.sourceBelongId = res.data.data.projectInfo.sourceBelongId state.projectInfo.manager = res.data.data.projectTemplateInfo.manager
state.formData.remark = res.data.data.stageList.remark state.projectInfo.notice = res.data.data.projectTemplateInfo.notice
state.formData.courseSyncFlag = res.data.data.projectInfo.courseSyncFlag state.projectInfo.sourceBelongId = res.data.data.projectTemplateInfo.sourceBelongId
state.formData.level = res.data.data.projectInfo.level state.projectInfo.remark = res.data.data.stageList.remark
state.formData.systemId = res.data.data.projectInfo.systemId state.projectInfo.courseSyncFlag = res.data.data.projectTemplateInfo.courseSyncFlag
state.formData.boeFlag = res.data.data.projectInfo.boeFlag state.projectInfo.level = res.data.data.projectTemplateInfo.level
state.value2 = res.data.data.projectInfo.notice state.projectInfo.systemId = res.data.data.projectTemplateInfo.systemId
state.projectInfo.boeFlag = res.data.data.projectTemplateInfo.boeFlag
state.projectInfo.picUrl = res.data.data.projectTemplateInfo.picUrl
let data = res.data.data.stageList;
for(let i in data) {
state.taskSyllabus.push({text: data[i].name,children:[]});
for(let j in data[i].taskList) {
state.taskSyllabus[i].children.push({
course: checkType(data[i].taskList[j].type),
name: data[i].taskList[j].name,
classify: data[i].taskList[j].flag,
beginTime: "",
total: 0, //总人数
complete: 0, //完成人数
percent: 0,
})
}
}
}).catch(err => { }).catch(err => {
message.error("操作失败"+err) message.error("操作失败"+err)
console.log(err) console.log(err)
}) })
} }
// 编辑项目模板
const editTemplate = () => {
let obj = {
"beginTime": state.formData.time,
"boeFlag": state.formData.boeFlag,
"category": 0,
"courseSyncFlag": state.formData.courseSyncFlag,
"endTime": state.formData.time,
"level": state.formData.level,
"manager": state.formData.manager,
"managerId": "",
"name": state.formData.name,
"notice": "",
"noticeFlag": 0,
"picUrl": "",
"projectTemplateId": 0,
"remark": state.formData.remark,
"sourceBelongId": state.formData.sourceBelongId,
"status": 0,
"systemId": state.formData.systemId
};
api.templateEdit(obj).methods(obj).then(res => {
message.success("编辑成功")
console.log(res)
}).catch(err => {
message.error("编辑失败"+err)
console.log(err)
})
}
// 发布公告 // 发布公告
const addNotice = () => { const addNotice = () => {
let obj = { let obj = {
@@ -877,7 +808,7 @@ export default defineComponent({
"manager": "", "manager": "",
"managerId": "", "managerId": "",
"name": "", "name": "",
"notice": state.value2, "notice": state.projectInfo.notice,
"noticeFlag": 0, "noticeFlag": 0,
"picUrl": "", "picUrl": "",
"projectTemplateId": 0, "projectTemplateId": 0,
@@ -924,6 +855,7 @@ export default defineComponent({
}, },
}); });
} }
// 新建或编辑阶段 // 新建或编辑阶段
const stateEdit = () => { const stateEdit = () => {
let obj={ let obj={
@@ -963,7 +895,6 @@ export default defineComponent({
return { return {
...toRefs(state), ...toRefs(state),
value, value,
value2,
textnum, textnum,
changeopclo, changeopclo,
changecheck2, changecheck2,
@@ -987,6 +918,73 @@ export default defineComponent({
}); });
</script> </script>
<style lang="scss"> <style lang="scss">
.content7 {
margin-top: 20px;
.set_tit {
margin-left: 34px;
font-size: 18px;
font-weight: 500;
color: #232425;
}
.line {
width: 100%;
height: 1px;
background-color: #e8e8e8;
margin-top: 10px;
}
.set_body {
margin-left: 34px;
margin-right: 34px;
position: relative;
.edit {
position: absolute;
width: 100px;
height: 40px;
background: #388be1;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
right: 0;
cursor: pointer;
.img {
width: 18px;
height: 18px;
background-image: url(../../assets/images/basicinfo/edit.png);
background-size: 100%;
margin-right: 7px;
}
.ed {
font-size: 14px;
font-weight: 400;
color: #ffffff;
}
}
.set_content {
margin: 32px auto;
display: flex;
// justify-content: end;
.setc_name {
width: 150px;
display: flex;
justify-content: end;
}
.setc_main {
flex: 1;
margin-left: 12px;
}
}
}
}
.editBtn { .editBtn {
float:right; float:right;
margin-right: 150px; margin-right: 150px;

View File

@@ -6,7 +6,7 @@
<div <div
@click="backPage" @click="backPage"
style="cursor: pointer" style="cursor: pointer"
to="/manage/projectmanage" to="/projectmanage"
class="goback" class="goback"
> >
<span class="return"></span><span class="returntext">返回</span> <span class="return"></span><span class="returntext">返回</span>
@@ -48,13 +48,17 @@
} }
" "
v-model:value="classifySelect" v-model:value="classifySelect"
placeholder="四个养成" placeholder="请选择分类"
style="width: 100%" style="width: 100%"
:options="classifyList" :options="classifyList"
@change="classificationChange" @change="classificationChange"
allowClear allowClear
showSearch showSearch
:disabled="viewDetail ? true : false" :disabled="viewDetail ? true : false"
:fieldNames="{
label: 'dictName',
value: 'dictCode',
}"
> >
</a-select> </a-select>
</div> </div>
@@ -79,7 +83,18 @@
overflow: hidden; overflow: hidden;
" "
> >
<a-upload <img
style="
width: 100px;
height: 100px;
margin-bottom: 4px;
margin-right: 4px;
"
v-if="imageUrl"
:src="imageUrl"
alt="avatar"
/>
<!-- <a-upload
v-model:file-list="fileList" v-model:file-list="fileList"
name="file" name="file"
list-type="picture-card" list-type="picture-card"
@@ -102,13 +117,10 @@
alt="avatar" alt="avatar"
/> />
<div v-else> <div v-else>
<!-- <loading-outlined v-if="loading"></loading-outlined> -->
<!-- <plus-outlined v-else></plus-outlined> -->
<div class="box1"></div> <div class="box1"></div>
<div class="box2"></div> <div class="box2"></div>
<!-- <div class="ant-upload-text"></div> -->
</div> </div>
</a-upload> </a-upload> -->
</div> </div>
</div> </div>
<div class="name"> <div class="name">
@@ -263,9 +275,14 @@
" "
v-model:value="classifySelect3" v-model:value="classifySelect3"
:options="classifyList3" :options="classifyList3"
style="width: 100%"
@change="classificationChange3" @change="classificationChange3"
placeholder="集团级/组织级/现地级/部门级" placeholder="请选择项目级别"
:disabled="viewDetail ? true : false" :disabled="viewDetail ? true : false"
:fieldNames="{
label: 'dictName',
value: 'dictCode',
}"
/> />
</div> </div>
</div> </div>
@@ -286,8 +303,9 @@
" "
v-model:value="classifySelect4" v-model:value="classifySelect4"
:options="classifyList4" :options="classifyList4"
style="width: 100%"
@change="classificationChange4" @change="classificationChange4"
placeholder="集团级/组织级/现地级/部门级" placeholder="请选择培训分类"
:disabled="viewDetail ? true : false" :disabled="viewDetail ? true : false"
/> />
</div> </div>
@@ -392,7 +410,7 @@ 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 * as api1 from "../../api/index1"; import * as api1 from "../../api/index1";
import { storage } from "../../api/storage"; import { storage } from "../../api/storage";
import { toDate } from "../../api/method"; import { toDate } from "../../api/method";
import { useStore } from "vuex"; import { useStore } from "vuex";
@@ -530,7 +548,7 @@ export default {
storage.remove("projectAddId"); storage.remove("projectAddId");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 400); }, 400);
}; };
@@ -558,15 +576,41 @@ export default {
}); });
const projectName = ref(""); const projectName = ref("");
//分类
const classifyList = ref([ const classifyList = ref([]);
{ value: 1, label: "管理者" }, const getDictList = (param) => {
{ value: 2, label: "领军者" }, let obj = {
{ value: 3, label: "产业人" }, pageNo: 1,
]); pageSize: 20,
setCode: param,
};
api1
.getDict(obj)
.then((res) => {
console.log("获取字典成功", res);
if (res.status === 200) {
if (param === "projectClass") {
classifyList.value = res.data.data.rows;
}
if (param === "projectPic") {
if (res.data.data.rows.length > 0) {
imageUrl.value = res.data.data.rows[0].dictValue;
}
}
if (param === "projectLevel") {
classifyList3.value = res.data.data.rows;
}
}
})
.catch((err) => {
console.log("获取字典失败", err);
});
};
getDictList("projectClass");
getDictList("projectPic");
getDictList("projectLevel");
let projectType = ""; let projectType = "";
const classificationChange = (value) => { const classificationChange = (value) => {
console.log(`selected ${value}`); console.log(`selected ${value}`);
projectType = value; projectType = value;
@@ -721,25 +765,9 @@ export default {
// 资源归属 sourceBelongId 后续给接口 // 资源归属 sourceBelongId 后续给接口
const classifyList2 = computed(() => { const classifyList2 = computed(() => {
return store.state.orgtreeList ? store.state.orgtreeList : ref(null); return store.state.orgtreeList ? store.state.orgtreeList : ref([]);
}); });
// //获取资源归属
// const orgTree = () => {
// api1
// .orgtree()
// .then((res) => {
// console.log("获取集团组织成功", res);
// if (res.status === 200) {
// classifyList2.value = res.data.data;
// }
// })
// .catch((err) => {
// console.log("获取集团组织失败", err);
// });
// };
// orgTree();
let sourceBelongIdC = ""; let sourceBelongIdC = "";
const classificationChange2 = (key) => { const classificationChange2 = (key) => {
console.log(`selected ${key}`, classifyList2); console.log(`selected ${key}`, classifyList2);
@@ -748,10 +776,10 @@ export default {
// 项目级别 // 项目级别
const classifyList3 = ref([ const classifyList3 = ref([
{ value: 1, label: "集团级" }, // { value: 1, label: "集团级" },
{ value: 2, label: "组织级" }, // { value: 2, label: "组织级" },
{ value: 3, label: "现地级" }, // { value: 3, label: "现地级" },
{ value: 4, label: "部门级" }, // { value: 4, label: "部门级" },
]); ]);
let levels = ""; let levels = "";
@@ -874,7 +902,7 @@ export default {
}); });
}; };
getTemplate(); getTemplate();
//模版滚动加载信息 //模版滚动加载模板信息
const templateScroll = (e) => { const templateScroll = (e) => {
// console.log("滚动", e, b); // console.log("滚动", e, b);
const { target } = e; const { target } = e;
@@ -993,7 +1021,7 @@ export default {
message.success("编辑成功"); message.success("编辑成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 1000); }, 1000);
} else { } else {
@@ -1048,7 +1076,7 @@ export default {
message.success("创建成功"); message.success("创建成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/taskpage", path: "/taskpage",
query: { id: res.data.data.projectId }, query: { id: res.data.data.projectId },
}); });
}, 1000); }, 1000);

View File

@@ -259,7 +259,7 @@
</div> </div>
</div> </div>
<div class="modalMain"> <div class="modalMain">
<router-link to="/manage/projectadd"> <router-link to="/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: "/manage/sonproject", path: "/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="/manage/taskpage">基础信息</router-link> <router-link to="/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="/manage/taskpage">基础信息</router-link> <router-link to="/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="/manage/taskpage">基础信息</router-link> <router-link to="/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: "/manage/classadd", path: "/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="/manage/classadd" to="/classadd"
class="operation3" class="operation3"
> >
创建班级 创建班级
@@ -2566,7 +2566,7 @@ export default {
</a-select> </a-select>
</div> </div>
<router-link to="/manage/classadd" class="operation3"> <router-link to="/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: "/manage/projectadd", path: "/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: "/manage/classadd", path: "/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: "/manage/sonproject", path: "/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: "/manage/projectadd", // path: "/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: "/manage/classadd", // path: "/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: "/manage/sonproject", // path: "/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: "/manage/taskpage", path: "/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: "/manage/taskpage", path: "/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: "/manage/taskpage", path: "/taskpage",
}); });
storage.set("projectId", value.record.projectId); storage.set("projectId", value.record.projectId);
}} }}
@@ -2992,7 +2992,7 @@ export default {
基础信息 基础信息
</div> </div>
{/** {/**
<router-link to="/manage/taskpage">基础信息</router-link> <router-link to="/taskpage">基础信息</router-link>
*/} */}
</a-select-option> </a-select-option>
</a-select> </a-select>

View File

@@ -6,7 +6,7 @@
<div <div
@click="backPage" @click="backPage"
style="cursor: pointer" style="cursor: pointer"
to="/manage/projectmanage" to="/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: "/manage/projectmanage", path: "/projectmanage",
}); });
} }
@@ -481,7 +481,7 @@ export default {
const backPage = () => { const backPage = () => {
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 400); }, 400);
}; };
@@ -800,7 +800,7 @@ export default {
message.success("编辑成功"); message.success("编辑成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 1000); }, 1000);
} else { } else {
@@ -855,7 +855,7 @@ export default {
message.success("创建成功"); message.success("创建成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/taskpage", path: "/taskpage",
query: { id: res.data.data.projectId }, query: { id: res.data.data.projectId },
}); });
}, 1000); }, 1000);

View File

@@ -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="/manage/taskpage"> <router-link to="/taskpage">
<div style="display: flex"> <div style="display: flex">
<img <img
class="img2" class="img2"

View File

@@ -86,7 +86,7 @@
</div> </div>
</div> </div>
<div class="line"></div> <div class="line"></div>
<router-link to="/manage/projectmanage"> <router-link to="/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="/manage/taskadd"> <router-link to="/taskadd">
<button to="/manage/taskadd" class="edit"> <button to="/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="/manage/taskadd" to="/taskadd"
class="taskbox" class="taskbox"
style=" style="
background: linear-gradient(180deg, #ddeaff, #f0f8fe); background: linear-gradient(180deg, #ddeaff, #f0f8fe);
@@ -3381,7 +3381,7 @@ export default {
list = state.fileList; list = state.fileList;
console.log("list", list); console.log("list", list);
let str = JSON.stringify(list); let str = JSON.stringify(list);
console.log("str",str) console.log("str", str);
//要编辑项目 //要编辑项目
editProj({ editProj({
attach: str, attach: str,
@@ -3425,7 +3425,7 @@ export default {
const toEdit = () => { const toEdit = () => {
if (state.parentId == "0") { if (state.parentId == "0") {
routered.push({ routered.push({
path: "/manage/projectadd", path: "/projectadd",
query: { query: {
projectId: state.projectId, projectId: state.projectId,
name: state.name, name: state.name,
@@ -3434,7 +3434,7 @@ export default {
} else { } else {
if (state.isbj !== null) { if (state.isbj !== null) {
routered.push({ routered.push({
path: "/manage/classadd", path: "/classadd",
query: { query: {
projectId: state.projectId, projectId: state.projectId,
// name: state.paraentName, // name: state.paraentName,
@@ -3444,7 +3444,7 @@ export default {
}); });
} else { } else {
routered.push({ routered.push({
path: "/manage/sonproject", path: "/sonproject",
query: { query: {
projectId: state.projectId, projectId: state.projectId,
name: state.name, name: state.name,

View File

@@ -124,7 +124,7 @@ export default defineComponent({
{value.status === "已发布" ? ( {value.status === "已发布" ? (
<div class="nselect"> <div class="nselect">
<div class="ops2"> <div class="ops2">
<router-link to="/manage/libraryadd"> <router-link to="/libraryadd">
<div class="jc"> <div class="jc">
查看{" "} 查看{" "}
<span style="color:#E9E9E9;margin-left:15px;">|</span> <span style="color:#E9E9E9;margin-left:15px;">|</span>
@@ -150,7 +150,7 @@ export default defineComponent({
</div> </div>
</div> </div>
<div class="ops2"> <div class="ops2">
<router-link to="/manage/libraryadd"> <router-link to="/libraryadd">
<div class="jc"> <div class="jc">
查看 查看
<span style="color:#E9E9E9;margin-left:15px;">|</span> <span style="color:#E9E9E9;margin-left:15px;">|</span>

File diff suppressed because it is too large Load Diff

View File

@@ -24,11 +24,10 @@
</div> </div>
<div class="in"> <div class="in">
<a-input <a-input
v-model:value="projectName" v-model:value="projectInfo.name"
placeholder="请输入模板名称" placeholder="请输入模板名称"
show-count show-count
:maxlength="30" :maxlength="30"
:disabled="viewDetail ? true : false"
/> />
</div> </div>
</div> </div>
@@ -47,14 +46,13 @@
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
v-model:value="classifySelect" v-model:value="projectInfo.category"
placeholder="四个养成" placeholder="管理者"
style="width: 100%" style="width: 100%"
:options="classifyList" :options="classifyList"
@change="classificationChange" @change="classificationChange"
allowClear allowClear
showSearch showSearch
:disabled="viewDetail ? true : false"
> >
</a-select> </a-select>
</div> </div>
@@ -88,7 +86,6 @@
action="/api/file/upload" action="/api/file/upload"
:before-upload="beforeUpload" :before-upload="beforeUpload"
@change="handleChange" @change="handleChange"
:disabled="viewDetail ? true : false"
> >
<img <img
style=" style="
@@ -126,8 +123,6 @@
:placeholder="[' 开始时间', ' 结束时间']" :placeholder="[' 开始时间', ' 结束时间']"
v-model:value="rangevalue" v-model:value="rangevalue"
style="width: 100%; height: 40px; border-radius: 5px" style="width: 100%; height: 40px; border-radius: 5px"
@change="onRangeChange"
:disabled="viewDetail ? true : false"
/> />
</div> </div>
</div> </div>
@@ -146,7 +141,7 @@
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
:value="classifySelect1" :value="projectInfo.manager"
mode="multiple" mode="multiple"
placeholder="请选择项目经理" placeholder="请选择项目经理"
style="width: 100%" style="width: 100%"
@@ -154,7 +149,6 @@
@change="classificationChange1" @change="classificationChange1"
allowClear allowClear
showSearch showSearch
:disabled="viewDetail ? true : false"
> >
</a-select> </a-select>
</div> </div>
@@ -175,11 +169,10 @@
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
v-model:value="classifySelect2" v-model:value="projectInfo.sourceBelongId"
placeholder="自动带出 可修改" placeholder="项目一"
:options="classifyList2" :options="classifyList2"
@change="classificationChange2" @change="classificationChange2"
:disabled="viewDetail ? true : false"
/> />
</div> </div>
</div> </div>
@@ -189,12 +182,11 @@
</div> </div>
<div class="in"> <div class="in">
<a-textarea <a-textarea
v-model:value="remark" v-model:value="projectInfo.remark"
style="height: 80px" style="height: 80px"
placeholder="请输入说明" placeholder="请输入说明"
show-count show-count
:maxlength="200" :maxlength="200"
:disabled="viewDetail ? true : false"
/> />
</div> </div>
</div> </div>
@@ -205,8 +197,7 @@
<div class="in"> <div class="in">
<a-radio <a-radio
@click="changeChecked" @click="changeChecked"
v-model:checked="checked" v-model:checked="projectInfo.courseSyncFlag"
:disabled="viewDetail ? true : false"
><span ><span
style=" style="
width: 100%; width: 100%;
@@ -233,7 +224,7 @@
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
v-model:value="classifySelect3" v-model:value="projectInfo.level"
:options="classifyList3" :options="classifyList3"
@change="classificationChange3" @change="classificationChange3"
placeholder="集团级/组织级/现地级/部门级" placeholder="集团级/组织级/现地级/部门级"
@@ -256,7 +247,7 @@
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
v-model:value="classifySelect4" v-model:value="projectInfo.systemId"
:options="classifyList4" :options="classifyList4"
@change="classificationChange4" @change="classificationChange4"
placeholder="集团级/组织级/现地级/部门级" placeholder="集团级/组织级/现地级/部门级"
@@ -275,7 +266,7 @@
<div class="in"> <div class="in">
<a-radio <a-radio
@click="changeChecked1" @click="changeChecked1"
v-model:checked="checked1" v-model:checked="projectInfo.boeFlag"
:disabled="viewDetail ? true : false" :disabled="viewDetail ? true : false"
><span ><span
style=" style="
@@ -308,46 +299,6 @@
</div> </div>
</div> --> </div> -->
</div> </div>
<!-- 选择模板 ------------------------------ -->
<div class="template" style="display: none">
<div class="name">
<div class="inname" style="width: 50px">模版</div>
<div class="in select" style="margin-left: 2px">
<a-select
v-if="isEdit"
disabled="true"
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
"
v-model:value="classifySelect5"
placeholder="请选择模版"
:size="size"
style="width: 100%"
:options="classifyList5"
@change="classificationChange5"
>
</a-select>
<a-select
v-else
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
"
v-model:value="classifySelect5"
placeholder="请选择模版"
:size="size"
style="width: 100%"
:options="classifyList5"
@change="classificationChange5"
@popupScroll="templateScroll"
>
</a-select>
</div>
</div>
</div>
</div> </div>
<div class="footer"> <div class="footer">
<div class="btn"> <div class="btn">
@@ -363,10 +314,10 @@
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/indexTemplate";
import { storage } from "../../api/storage"; import { storage } from "../../api/storage";
import { toDate } from "../../api/method"; // import { toDate } from "../../api/method";
export default { export default {
name: "projectAdd", name: "projectAdd",
@@ -374,126 +325,16 @@ export default {
// 编辑页面跳转过来时候,自动填充表格 // 编辑页面跳转过来时候,自动填充表格
const routers = useRoute(); const routers = useRoute();
const isEdit = ref(false); const isEdit = ref(false);
let peojectID = ""; // let peojectID = "";
if (routers.query.projectId) { if (routers.query.projectId) {
storage.set("projectAddId", routers.query.projectId); storage.set("projectAddId", routers.query.projectId);
isEdit.value = true; isEdit.value = true;
peojectID = routers.query.projectId; // peojectID = routers.query.projectId;
// 需要编辑
api
.getProjectDetail({ projectId: routers.query.projectId })
.then((res) => {
if (res.status == 200 && res.data.code == 200) {
let info = res.data.data.projectInfo;
console.log(info);
// projectName classifySelect imageUrl * classifySelect1 * remark checked classifySelect3 classifySelect4 changeChecked1 *
projectName.value = info.name;
state.classifySelect = classifyList.value[1]; // info.category
imageUrl.value = info.picUrl;
let start = toDate(info.beginTime / 1000, "YYYY/MM/DD");
let end = toDate(info.endTime / 1000, "YYYY/MM/DD");
state.rangevalue = [
dayjs(start, "YYYY/MM/DD"),
dayjs(end, "YYYY/MM/DD"),
];
let manageName = info.manager.split(",");
let manageValue = info.managerId.split(",");
let optionsManage = [];
for (let i = 0; i < manageName.length; i++) {
let obj = {
label: manageName[i],
value: manageValue[i],
};
optionsManage.push(obj);
}
console.log(optionsManage);
state.classifySelect1 = optionsManage;
state.classifySelect2 =
classifyList2.value[info.sourceBelongId - 1];
remark.value = info.remark;
state.checked = info.boeFlag ? info.boeFlag : false;
state.classifySelect3 = classifyList3.value[info.level];
state.classifySelect4 = classifyList4.value[info.systemId - 1];
state.checked1 = info.boeFlag ? info.boeFlag : false;
// fileList1.value = info.attach.split(",");
projectType = 1;
picUrl = info.picUrl;
beginTime = Number(info.beginTime / 1000);
endTime = Number(info.endTime / 1000);
manager = info.manager;
managerId = info.managerId;
sourceBelongIdC = Number(info.sourceBelongId);
courseSyncFlag = info.courseSyncFlag;
levels = info.level;
systemid = info.systemId;
boeFlag = info.boeFlag;
}
})
.catch((err) => {
console.log(err);
});
} else { } else {
if (storage.get("projectAddId")) { if (storage.get("projectAddId")) {
isEdit.value = true; isEdit.value = true;
peojectID = storage.get("projectAddId"); // peojectID = storage.get("projectAddId");
// 需要编辑
api
.getProjectDetail({ projectId: storage.get("projectAddId") })
.then((res) => {
if (res.status == 200 && res.data.code == 200) {
let info = res.data.data.projectInfo;
console.log("我是从本地存储获取的id", info);
projectName.value = info.name;
state.classifySelect = classifyList.value[1]; // info.category
imageUrl.value = info.picUrl;
let start = toDate(info.beginTime / 1000, "YYYY/MM/DD");
let end = toDate(info.endTime / 1000, "YYYY/MM/DD");
state.rangevalue = [
dayjs(start, "YYYY/MM/DD"),
dayjs(end, "YYYY/MM/DD"),
];
let manageName = info.manager.split(",");
let manageValue = info.managerId.split(",");
let optionsManage = [];
for (let i = 0; i < manageName.length; i++) {
let obj = {
label: manageName[i],
value: manageValue[i],
};
optionsManage.push(obj);
}
console.log(optionsManage);
state.classifySelect1 = optionsManage;
state.classifySelect2 =
classifyList2.value[info.sourceBelongId - 1];
remark.value = info.remark;
state.checked = info.boeFlag ? info.boeFlag : false;
state.classifySelect3 = classifyList3.value[info.level];
state.classifySelect4 = classifyList4.value[info.systemId - 1];
state.checked1 = info.boeFlag ? info.boeFlag : false;
projectType = 1;
picUrl = info.picUrl;
beginTime = Number(info.beginTime / 1000);
endTime = Number(info.endTime / 1000);
manager = info.manager;
managerId = info.managerId;
sourceBelongIdC = Number(info.sourceBelongId);
courseSyncFlag = info.courseSyncFlag;
levels = info.level;
systemid = info.systemId;
boeFlag = info.boeFlag;
}
})
.catch((err) => {
console.log(err);
});
} }
} }
@@ -526,6 +367,19 @@ export default {
pageSize: 10, //每页10条数据 pageSize: 10, //每页10条数据
totalPages: 0, //总页数 totalPages: 0, //总页数
viewDetail: routers.query.viewDetail ? routers.query.viewDetail : null, viewDetail: routers.query.viewDetail ? routers.query.viewDetail : null,
projectInfo:{
beginTime:null,
endTime:null,
name: null,
manager: null,
notice: null,
sourceBelongId: null,
remark: "",
courseSyncFlag: false,
level: null,
systemId: null,
boeFlag: false,
}
}); });
const projectName = ref(""); const projectName = ref("");
@@ -536,11 +390,11 @@ export default {
{ value: 3, label: "产业人" }, { value: 3, label: "产业人" },
]); ]);
let projectType = ""; // let projectType = "";
const classificationChange = (value) => { const classificationChange = (value) => {
console.log(`selected ${value}`); console.log(`selected ${value}`);
projectType = value; // projectType = value;
}; };
function getBase64(img, callback) { function getBase64(img, callback) {
@@ -553,7 +407,7 @@ export default {
const fileList1 = ref([]); const fileList1 = ref([]);
const loading = ref(false); const loading = ref(false);
const imageUrl = ref(""); const imageUrl = ref("");
let picUrl = ""; // let picUrl = "";
const handleChange = (info) => { const handleChange = (info) => {
if (info.file.status === "uploading") { if (info.file.status === "uploading") {
@@ -562,7 +416,7 @@ export default {
} }
if (info.file.status === "done") { if (info.file.status === "done") {
console.log("上传图片返回的信息 %o", info); console.log("上传图片返回的信息 %o", info);
picUrl = info.file.response.data; // picUrl = info.file.response.data;
// Get this url from response in real world. // Get this url from response in real world.
getBase64(info.file.originFileObj, (base64Url) => { getBase64(info.file.originFileObj, (base64Url) => {
imageUrl.value = base64Url; imageUrl.value = base64Url;
@@ -577,7 +431,7 @@ export default {
let uplodaFileCount = false; let uplodaFileCount = false;
let attach = ""; // let attach = "";
let attachData = ""; let attachData = "";
const handleChange1 = (info) => { const handleChange1 = (info) => {
if (info.file.status === "uploading") { if (info.file.status === "uploading") {
@@ -602,7 +456,7 @@ export default {
} }
} }
console.log(attachStr); console.log(attachStr);
attach = attachStr; // attach = attachStr;
if (info.fileList.length > 5) { if (info.fileList.length > 5) {
uplodaFileCount = true; uplodaFileCount = true;
@@ -639,8 +493,6 @@ export default {
}); });
}; };
let beginTime = "";
let endTime = "";
const dateFormatList = ["YYYY/MM/DD"]; const dateFormatList = ["YYYY/MM/DD"];
const onRangeChange = (value, dateString) => { const onRangeChange = (value, dateString) => {
@@ -651,8 +503,8 @@ export default {
"Formatted Selected TimeStamp", "Formatted Selected TimeStamp",
new Date(dateString[0]).getTime() new Date(dateString[0]).getTime()
); );
beginTime = new Date(dateString[0]).getTime() / 1000; // beginTime = new Date(dateString[0]).getTime() / 1000;
endTime = new Date(dateString[1]).getTime() / 1000; // endTime = new Date(dateString[1]).getTime() / 1000;
}; };
// 项目经理 后续接口调用 // 项目经理 后续接口调用
@@ -662,8 +514,6 @@ export default {
{ value: 3, label: "刘孟君" }, { value: 3, label: "刘孟君" },
]); ]);
let manager = "";
let managerId = "";
const classificationChange1 = (key, options) => { const classificationChange1 = (key, options) => {
console.log(`selected ${key}`, options); console.log(`selected ${key}`, options);
let mstr = ""; let mstr = "";
@@ -686,8 +536,8 @@ export default {
} }
} }
state.classifySelect1 = newoptions; state.classifySelect1 = newoptions;
manager = mstr; // manager = mstr;
managerId = midstr; // managerId = midstr;
}; };
// 资源归属 sourceBelongId 后续给接口 // 资源归属 sourceBelongId 后续给接口
@@ -697,10 +547,10 @@ 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;
}; };
// 项目级别 // 项目级别
@@ -711,10 +561,10 @@ export default {
{ value: 4, label: "部门级" }, { value: 4, label: "部门级" },
]); ]);
let levels = ""; // let levels = "";
const classificationChange3 = (key) => { const classificationChange3 = (key) => {
console.log(`selected ${key}`, classifyList3); console.log(`selected ${key}`, classifyList3);
levels = key; // levels = key;
}; };
// 培训体系 // 培训体系
@@ -725,112 +575,11 @@ export default {
{ value: 4, label: "部门级" }, { value: 4, label: "部门级" },
]); ]);
let systemid = ""; // let systemid = "";
const classificationChange4 = (key) => { const classificationChange4 = (key) => {
console.log(`selected ${key}`, classifyList4); console.log(`selected ${key}`, classifyList4);
systemid = key; // systemid = key;
}; };
// 模版
const classifyList5 = ref([
// { value: 1, label: "模版一" },
// { value: 2, label: "模版二" },
// { value: 3, label: "模版三" },
// { value: 4, label: "模版四" },
]);
const classificationChange5 = (key) => {
console.log(`selected ${key}`, classifyList5.value);
//获取模版信息
let obj = {
projectId: Number(key),
};
api
.getProjectDetail(obj)
.then((res) => {
console.log("获取项目详情", res);
if (res.status === 200) {
let info = res.data.data.projectInfo;
console.log(info);
// projectName classifySelect imageUrl * classifySelect1 * remark checked classifySelect3 classifySelect4 changeChecked1 *
projectName.value = info.name;
state.classifySelect = classifyList.value[1]; // info.category
imageUrl.value = info.picUrl;
let start = toDate(info.beginTime / 1000, "YYYY/MM/DD");
let end = toDate(info.endTime / 1000, "YYYY/MM/DD");
state.rangevalue = [
dayjs(start, "YYYY/MM/DD"),
dayjs(end, "YYYY/MM/DD"),
];
let manageName = info.manager.split(",");
let manageValue = info.managerId.split(",");
let optionsManage = [];
for (let i = 0; i < manageName.length; i++) {
let obj = {
label: manageName[i],
value: manageValue[i],
};
optionsManage.push(obj);
}
console.log(optionsManage);
state.classifySelect1 = optionsManage;
state.classifySelect2 =
classifyList2.value[info.sourceBelongId - 1];
remark.value = info.remark;
state.checked = info.boeFlag ? info.boeFlag : false;
state.classifySelect3 = classifyList3.value[info.level];
state.classifySelect4 = classifyList4.value[info.systemId - 1];
state.checked1 = info.boeFlag ? info.boeFlag : false;
// fileList1.value = info.attach.split(",");
projectType = 1;
picUrl = info.picUrl;
beginTime = Number(info.beginTime / 1000);
endTime = Number(info.endTime / 1000);
manager = info.manager;
managerId = info.managerId;
sourceBelongIdC = Number(info.sourceBelongId);
courseSyncFlag = info.courseSyncFlag;
levels = info.level;
systemid = info.systemId;
boeFlag = info.boeFlag;
}
})
.catch((err) => {
console.log("获取详情失败", err);
});
};
//获取模版列表
const getTemplate = () => {
let obj = {
pageNo: state.currentPage,
pageSize: state.pageSize,
// projectId:id?id:''
};
api
.getProjectList(obj)
.then((res) => {
console.log("获取模版列表", res);
state.totalPages = Number(res.data.data.pages);
if (res.status === 200) {
let arr = res.data.data.rows;
let array = classifyList5.value;
arr.map((value) => {
let obj = {
value: value.projectId,
label: value.name,
};
array.push(obj);
});
classifyList5.value = array;
}
})
.catch((err) => {
console.log("获取模版列表失败", err);
});
};
getTemplate();
//模版滚动加载信息 //模版滚动加载信息
const templateScroll = (e) => { const templateScroll = (e) => {
// console.log("滚动", e, b); // console.log("滚动", e, b);
@@ -845,52 +594,34 @@ export default {
if (state.currentPage < state.totalPages) { if (state.currentPage < state.totalPages) {
// 如果滑到底部,则加载下一页 // 如果滑到底部,则加载下一页
state.currentPage++; state.currentPage++;
getTemplate();
} }
} }
}; };
// 项目说明 // const removeFile = (file) => {
const remark = ref(""); // const index = fileList1.value.indexOf(file);
// const newFileList = fileList1.value.slice();
// newFileList.splice(index, 1);
// fileList1.value = newFileList;
let courseSyncFlag = 0; // let attachStr = "";
const changeChecked = () => { // if (newFileList.length == 0) {
console.log(state.checked); // attachStr = "";
state.checked ? (state.checked = false) : (state.checked = true); // }
courseSyncFlag = state.checked ? 1 : 0; // for (let i = 0; i < fileList1["value"].length; i++) {
}; // console.log(fileList1["value"][i].response.data);
// if (fileList1["value"].length - 1 == i) {
let boeFlag = 0; // attachStr += fileList1["value"][i].response.data;
const changeChecked1 = () => { // } else {
console.log(state.checked1); // attachStr += fileList1["value"][i].response.data + ",";
state.checked1 ? (state.checked1 = false) : (state.checked1 = true); // }
boeFlag = state.checked1 ? 1 : 0; // }
}; // attach = attachStr;
// };
const removeFile = (file) => {
const index = fileList1.value.indexOf(file);
const newFileList = fileList1.value.slice();
newFileList.splice(index, 1);
fileList1.value = newFileList;
let attachStr = "";
if (newFileList.length == 0) {
attachStr = "";
}
for (let i = 0; i < fileList1["value"].length; i++) {
console.log(fileList1["value"][i].response.data);
if (fileList1["value"].length - 1 == i) {
attachStr += fileList1["value"][i].response.data;
} else {
attachStr += fileList1["value"][i].response.data + ",";
}
}
attach = attachStr;
};
const errorMsgs = { const errorMsgs = {
name: "请输入项目名称", name: "请输入模板名称",
category: "请选择项目分类", category: "请选择模板分类",
picUrl: "请上传项目封面图", picUrl: "请上传项目封面图",
beginTime: "请选择项目开始时间", beginTime: "请选择项目开始时间",
endTime: "请选择项目结束时间", endTime: "请选择项目结束时间",
@@ -903,31 +634,26 @@ export default {
}; };
const createProject = () => { const createProject = () => {
console.log("我是否要编辑项目", isEdit.value); console.log("我要编辑项目", isEdit.value);
if (isEdit.value) {
console.log("我要编辑项目", peojectID);
let obj = { let obj = {
projectId: Number(peojectID), "name": state.projectInfo.name,
name: projectName["value"], "category": state.projectInfo.category,
category: projectType, "picUrl": "x",
picUrl: picUrl, "beginTime": state.projectInfo.rangevalue || 1,
beginTime: beginTime, "endTime": state.projectInfo.rangevalue || 1,
endTime: endTime, "manager": state.projectInfo.manager,
manager: manager, "managerId": state.projectInfo.managerId || 0,
managerId: managerId, "sourceBelongId": state.projectInfo.sourceBelongId,
sourceBelongId: sourceBelongIdC, "level": state.projectInfo.level,
remark: remark["value"], "systemId": state.projectInfo.systemId,
courseSyncFlag: courseSyncFlag, "boeFlag": state.projectInfo.boeFlag,
level: levels, "courseSyncFlag": state.projectInfo.courseSyncFlag,
systemId: systemid, "notice": "",
boeFlag: boeFlag, "noticeFlag": 0,
attach: attach, "projectTemplateId": 0,
type: 3, "remark": "",
templateId: 0, "status": 0,
parentId: 0,
notice: "",
noticeFlag: 0,
status: 0,
}; };
console.log(obj); console.log(obj);
@@ -940,9 +666,26 @@ export default {
return; return;
} }
} }
api api
.createProject(obj) .templateEdit({
"beginTime": 0,
"boeFlag": 0,
"category": 0,
"courseSyncFlag": 0,
"endTime": 0,
"level": 0,
"manager": "",
"managerId": "",
"name": "",
"notice": "",
"noticeFlag": 0,
"picUrl": "",
"projectTemplateId": 0,
"remark": "",
"sourceBelongId": 0,
"status": 0,
"systemId": 0
})
.then((res) => { .then((res) => {
console.log(res); console.log(res);
if (res.status == 200 && res.data.code == 200) { if (res.status == 200 && res.data.code == 200) {
@@ -950,7 +693,7 @@ export default {
message.success("编辑成功"); message.success("编辑成功");
setTimeout(() => { setTimeout(() => {
router.push({ router.push({
path: "/manage/projectmanage", path: "/projectmanage",
}); });
}, 1000); }, 1000);
} else { } else {
@@ -963,64 +706,37 @@ export default {
message.destroy(); message.destroy();
message.error("编辑失败,请检查当前网络状态。"); message.error("编辑失败,请检查当前网络状态。");
}); });
} else {
let obj = {
name: projectName["value"],
category: projectType,
picUrl: picUrl,
beginTime: beginTime,
endTime: endTime,
manager: manager,
managerId: managerId,
sourceBelongId: sourceBelongIdC,
remark: remark["value"],
courseSyncFlag: courseSyncFlag,
level: levels,
systemId: systemid,
boeFlag: boeFlag,
attach: attach,
type: 3,
templateId: 10,
parentId: 0,
notice: "",
noticeFlag: 0,
status: 0,
};
console.log("提交的数据格式 %o", obj);
for (let i in errorMsgs) {
console.log(obj[i]);
if (obj[i] === "" || obj[i] === undefined) {
message.destroy();
message.warning(errorMsgs[i]);
return;
}
}
api
.createProject(obj)
.then((res) => {
console.log(res);
if (res.status == 200 && res.data.code == 200) {
message.destroy();
message.success("创建成功");
setTimeout(() => {
router.push({
path: "/manage/taskpage",
query: { id: res.data.data.projectId },
});
}, 1000);
} else {
message.destroy();
message.error("创建失败,请检查当前网络状态。");
}
})
.catch((err) => {
console.log(err);
message.destroy();
message.error("创建失败,请检查当前网络状态。");
});
}
}; };
// 编辑项目模板
const editTemplate = () => {
let obj = {
"beginTime": state.projectInfo.time,
"boeFlag": state.projectInfo.boeFlag,
"category": 0,
"courseSyncFlag": state.projectInfo.courseSyncFlag,
"endTime": state.projectInfo.time,
"level": state.projectInfo.level,
"manager": state.projectInfo.manager,
"managerId": "",
"name": state.projectInfo.name,
"notice": "",
"noticeFlag": 0,
"picUrl": "",
"projectTemplateId": 0,
"remark": state.projectInfo.remark,
"sourceBelongId": state.projectInfo.sourceBelongId,
"status": 0,
"systemId": state.projectInfo.systemId
};
api.templateEdit(obj).methods(obj).then(res => {
message.success("编辑成功")
console.log(res)
}).catch(err => {
message.error("编辑失败"+err)
console.log(err)
})
}
return { return {
...toRefs(state), ...toRefs(state),
@@ -1031,7 +747,6 @@ export default {
classificationChange2, classificationChange2,
classificationChange3, classificationChange3,
classificationChange4, classificationChange4,
classificationChange5,
fileList, fileList,
fileList1, fileList1,
loading, loading,
@@ -1045,18 +760,13 @@ export default {
classifyList2, classifyList2,
classifyList3, classifyList3,
classifyList4, classifyList4,
classifyList5,
remark,
changeChecked,
changeChecked1,
uplodaFileCount, uplodaFileCount,
createProject, createProject,
removeFile, // removeFile,
isEdit, isEdit,
backPage, backPage,
dateFormatList, dateFormatList,
editTemplate,
templateScroll, templateScroll,
}; };
}, },

View File

@@ -10,9 +10,9 @@
导出信息 导出信息
</span> </span>
</div> </div>
<router-link to="/manage/researchmanage" class="goback"> <router-link to="/researchmanage" class="goback">
<span class="return"></span> <span class="return"></span>
<router-link class="returntext" to="/manage/researchmanage"> <router-link class="returntext" to="/researchmanage">
返回 返回
</router-link> </router-link>
</router-link> </router-link>

View File

@@ -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="/manage/researchmanage" class="goback"> <router-link to="/researchmanage" class="goback">
<span class="return"></span> <span class="return"></span>
<router-link class="returntext" to="/manage/researchmanage"> <router-link class="returntext" to="/researchmanage">
返回 返回
</router-link> </router-link>
</router-link> </router-link>

View File

@@ -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="/manage/researchmanage" class="goback"> <router-link to="/researchmanage" class="goback">
<span class="return"></span> <span class="return"></span>
<router-link class="returntext" to="/manage/researchmanage"> <router-link class="returntext" to="/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: "/manage/researchmanage", path: "/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: "/manage/researchmanage", path: "/researchmanage",
}); });
} }
}); });
@@ -526,7 +526,7 @@ export default {
const handleAllCancel = () => { const handleAllCancel = () => {
state.allFormsData = []; state.allFormsData = [];
router.push({ router.push({
path: "/manage/researchmanage", path: "/researchmanage",
}); });
}; };
const checkVal = (filterData) => { const checkVal = (filterData) => {

View File

@@ -428,7 +428,7 @@ export default {
<div <div
class="jc" class="jc"
onClick={() => { onClick={() => {
handleToManagepage(value, "/manage/managepage"); handleToManagepage(value, "/managepage");
}} }}
> >
管理 管理
@@ -474,7 +474,7 @@ export default {
<div <div
class="jc" class="jc"
onClick={() => { onClick={() => {
handleToResearchadd(value, "/manage/researchadd"); handleToResearchadd(value, "/researchadd");
}} }}
> >
基础信息 基础信息

View File

@@ -327,7 +327,7 @@ export default {
}; };
const router = useRouter(); const router = useRouter();
const golearningpath = () => { const golearningpath = () => {
router.push({ path: "/manage/learningpath", params: { id: 1 } }); router.push({ path: "/learningpath", params: { id: 1 } });
}; };
//下载二维码图片 //下载二维码图片

View File

@@ -8,20 +8,21 @@
*/ */
const { defineConfig } = require("@vue/cli-service"); const { defineConfig } = require("@vue/cli-service");
module.exports = defineConfig({ module.exports = defineConfig({
// transpileDependencies: true, publicPath: '/manage',
devServer: { // transpileDependencies: true,
port: 8080, devServer: {
proxy: { port: 8080,
"/manageApi": { proxy: {
// target:"http://192.168.100.208:30001", "/manageApi": {
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口 // target:"http://192.168.100.208:30001",
changeOrigin: true, //表示是否改变原域名 target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
// secure: false, changeOrigin: true, //表示是否改变原域名
// ws: false, //表示WebSocket协议 // secure: false,
pathRewrite: { // ws: false, //表示WebSocket协议
"^/manageApi": "", pathRewrite: {
}, "^/manageApi": "",
}, },
}, },
}, },
},
}); });