mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-10 11:26:45 +08:00
合并课程
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -21,3 +21,5 @@ pnpm-debug.log*
|
|||||||
*.njsproj
|
*.njsproj
|
||||||
*.sln
|
*.sln
|
||||||
*.sw?
|
*.sw?
|
||||||
|
fe-manage.iml
|
||||||
|
package-lock.json
|
||||||
|
|||||||
1004
package-lock.json
generated
1004
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -32,7 +32,7 @@ http.interceptors.request.use(
|
|||||||
|
|
||||||
// 此处测试默认配置token
|
// 此处测试默认配置token
|
||||||
config.headers.token = "123456";
|
config.headers.token = "123456";
|
||||||
// config.headers.token = "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2NjkyMTE4MzMsImV4cCI6MTY2OTIxOTAzMywiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.40067eca3be5d50857448005a673cbe1a48f560ff8e9c7aea4e7ff12f59c7962";
|
// config.headers.token = "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2Njg4NjI2MTAsImV4cCI6MTY2ODg2OTgxMCwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.defa91ecb2b61d9b20d858db0c2c8d7d80dea4613cb2559a22569b7df36b3f6b";
|
||||||
}
|
}
|
||||||
return config;
|
return config;
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -3,10 +3,12 @@ import http from "./config";
|
|||||||
/**
|
/**
|
||||||
* 1
|
* 1
|
||||||
*/
|
*/
|
||||||
//添加课程学员
|
//1添加课程学员
|
||||||
export const addStudent = (obj) =>
|
export const addStudent = (obj) =>
|
||||||
http.post("/admin/offcourse/addStudent", obj);
|
http.post("/admin/offcourse/addStudent", obj);
|
||||||
//删除开课
|
//2面授课审核?
|
||||||
|
export const auditView = (obj) => http.post("/admin/offcourse/auditView", obj);
|
||||||
|
//3删除开课
|
||||||
export const deletePlan = (obj) =>
|
export const deletePlan = (obj) =>
|
||||||
http.delete(
|
http.delete(
|
||||||
"/admin/offcourse/deletePlan",
|
"/admin/offcourse/deletePlan",
|
||||||
@@ -15,40 +17,44 @@ export const deletePlan = (obj) =>
|
|||||||
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
//获取面授课详情
|
//4获取面授课详情
|
||||||
export const detail = (obj) =>
|
export const detail = (obj) =>
|
||||||
http.post("/admin/offcourse/detail", obj, {
|
http.post("/admin/offcourse/detail", obj, {
|
||||||
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
||||||
});
|
});
|
||||||
//获取面授课开课详情
|
//5获取面授课开课详情
|
||||||
export const detailPlan = (obj) =>
|
export const detailPlan = (obj) =>
|
||||||
http.post("/admin/offcourse/detailPlan", obj, {
|
http.post("/admin/offcourse/detailPlan", obj, {
|
||||||
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
||||||
});
|
});
|
||||||
//新建或编辑面授课
|
//6新建或编辑面授课
|
||||||
export const edit = (obj) => http.post("/admin/offcourse/edit", obj);
|
export const edit = (obj) => http.post("/admin/offcourse/edit", obj);
|
||||||
//新建或编辑面授课开课
|
//7新建或编辑面授课开课
|
||||||
export const editPlan = (obj) => http.post("/admin/offcourse/editPlan", obj);
|
export const editPlan = (obj) => http.post("/admin/offcourse/editPlan", obj);
|
||||||
//课程导出
|
//8课程导出
|
||||||
export const exportP = (obj) => http.post("/admin/offcourse/export", obj);
|
export const exportP = (obj) => http.post("/admin/offcourse/export", obj);
|
||||||
//操作面授课(发布,撤回,删除,审核,停用)
|
//9操作面授课(发布,撤回,删除,审核,停用)
|
||||||
export const handle = (obj) => http.post("/admin/offcourse/handle", obj);
|
export const handle = (obj) => http.post("/admin/offcourse/handle", obj);
|
||||||
//学员操作-支持批量
|
//10学员操作-支持批量
|
||||||
export const handleStudent = (obj) =>
|
export const handleStudent = (obj) =>
|
||||||
http.post("/admin/offcourse/handleStudent", obj);
|
http.post("/admin/offcourse/handleStudent", obj);
|
||||||
//获取面授课列表
|
//11获取面授课列表
|
||||||
export const list = (obj) => http.post("/admin/offcourse/list", obj);
|
export const list = (obj) => http.post("/admin/offcourse/list", obj);
|
||||||
//获取面授课已审核列表
|
//12获取面授课已审核列表?
|
||||||
export const listReview = (obj) =>
|
export const listReview = (obj) =>
|
||||||
http.post("/admin/offcourse/listReview", obj);
|
http.post("/admin/offcourse/listReview", obj);
|
||||||
//面授课开课列表
|
//13面授课开课列表
|
||||||
export const planList = (obj) => http.post("/admin/offcourse/planList", obj);
|
export const planList = (obj) => http.post("/admin/offcourse/planList", obj);
|
||||||
//学员导出
|
//14学员导出
|
||||||
export const studentExport = (obj) =>
|
export const studentExport = (obj) =>
|
||||||
http.post("/admin/offcourse/studentExport", obj);
|
http.post("/admin/offcourse/studentExport", obj);
|
||||||
//获取学员列表
|
//15获取学员列表
|
||||||
export const studentList = (obj) =>
|
export const studentList = (obj) =>
|
||||||
http.post("/admin/offcourse/studentList", obj);
|
http.post("/admin/offcourse/studentList", obj);
|
||||||
//学习记录列表
|
//16学习记录列表?
|
||||||
export const studyRecordList = (obj) =>
|
export const studyRecordList = (obj) =>
|
||||||
http.post("/admin/offcourse/studyRecordList", obj);
|
http.post("/admin/offcourse/studyRecordList", obj);
|
||||||
|
|
||||||
|
// 获取员工信息
|
||||||
|
export const getMemberInfoApi = (obj) =>
|
||||||
|
http.post("/admin/orgStruct/getMemberInfo", obj);
|
||||||
|
|||||||
14
src/api/indexStu.js
Normal file
14
src/api/indexStu.js
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
import http from "./config";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1
|
||||||
|
*/
|
||||||
|
//获取受众信息
|
||||||
|
export const getAudienceInfoApi = (obj) =>
|
||||||
|
http.post("/admin/orgStruct/getAudienceInfo", obj);
|
||||||
|
//获取员工信息
|
||||||
|
export const getMemberInfoApi = (obj) =>
|
||||||
|
http.post("/admin/orgStruct/getMemberInfo", obj);
|
||||||
|
//获取所有组织
|
||||||
|
export const getOrgInfoApi = (obj) =>
|
||||||
|
http.post("/admin/orgStruct/getOrgInfo", obj);
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
:row-class-name="
|
:row-class-name="
|
||||||
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||||
"
|
"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,onSelect:onSelect }"
|
||||||
:columns="tableDataFunc()"
|
:columns="tableDataFunc()"
|
||||||
:data-source="tableData"
|
:data-source="tableData"
|
||||||
:loading="tableDataTotal === -1 ? true : false"
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
@@ -189,8 +189,11 @@ export default {
|
|||||||
}
|
}
|
||||||
state.selectedRowKeys = selectedRowKeys;
|
state.selectedRowKeys = selectedRowKeys;
|
||||||
state.apiTaskList = selectedRows;
|
state.apiTaskList = selectedRows;
|
||||||
console.log('-------------%o-%o',state.apiTaskList, state.apiTaskList.length);
|
|
||||||
};
|
};
|
||||||
|
const onSelect = ( record ) => {
|
||||||
|
state.caseId = record.caseid;
|
||||||
|
state.caseName = record.title;
|
||||||
|
}
|
||||||
const handelChangePage = (page, pageSize) => {
|
const handelChangePage = (page, pageSize) => {
|
||||||
state.currentPage = page;
|
state.currentPage = page;
|
||||||
state.pageSize = pageSize;
|
state.pageSize = pageSize;
|
||||||
@@ -212,7 +215,6 @@ export default {
|
|||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
state.tableData = array;
|
state.tableData = array;
|
||||||
console.log('get下来的数据',state.tableData);
|
|
||||||
};
|
};
|
||||||
//获取全部案例信息接口
|
//获取全部案例信息接口
|
||||||
const getAllCaseText = () => {
|
const getAllCaseText = () => {
|
||||||
@@ -235,32 +237,29 @@ export default {
|
|||||||
};
|
};
|
||||||
const updateTask = () => {
|
const updateTask = () => {
|
||||||
if (props.isLevel == 1) {
|
if (props.isLevel == 1) {
|
||||||
for(let i = 0;i < state.apiTaskList.length;i++){
|
RouterEditTask({
|
||||||
RouterEditTask({
|
chapterId: props.isactive,
|
||||||
chapterId: props.isactive,
|
courseId: state.caseId,
|
||||||
courseId: state.apiTaskList[i].caseid,
|
name: state.caseName,
|
||||||
name: state.apiTaskList[i].caseName,
|
routerId: props.routerId,
|
||||||
routerId: props.routerId,
|
routerTaskId: props.routerTaskId || 0,
|
||||||
routerTaskId: props.routerTaskId || 0,
|
type: 3,
|
||||||
type: 3,
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
closeDrawer();
|
||||||
|
state.addLoading = false;
|
||||||
})
|
})
|
||||||
.then(() => {
|
.catch(() => {
|
||||||
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||||
ctx.emit("changeData", false);
|
});
|
||||||
closeDrawer();
|
|
||||||
state.addLoading = false;
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else if (props.isLevel == 2) {
|
} else if (props.isLevel == 2) {
|
||||||
console.log("state api task list: %o-length: %o", state.apiTaskList, state.apiTaskList.length )
|
if(state.apiTaskList.length > 1){
|
||||||
for(let i = 0;i < state.apiTaskList.length;i++){
|
for(let i = 0;i <= state.apiTaskList.length;i++){
|
||||||
console.log(state.apiTaskList[i],'state.apiTaskList[i].caseIdstate.apiTaskList[i].caseId');
|
|
||||||
apiTask
|
apiTask
|
||||||
.addTask({
|
.addTask({
|
||||||
"courseId": state.apiTaskList[i].caseid,
|
"courseId": state.apiTaskList[i].caseId,
|
||||||
"duration": 0,
|
"duration": 0,
|
||||||
"flag": true,
|
"flag": true,
|
||||||
"name": state.apiTaskList[i].caseName,
|
"name": state.apiTaskList[i].caseName,
|
||||||
@@ -280,6 +279,27 @@ export default {
|
|||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
apiTask
|
||||||
|
.addTask({
|
||||||
|
"courseId": state.caseId,
|
||||||
|
"duration": 0,
|
||||||
|
"flag": true,
|
||||||
|
"name": state.caseName,
|
||||||
|
"projectId": props.projectId,
|
||||||
|
"projectTaskId": props.projectTaskId,
|
||||||
|
"stageId": props.chooseStageId,
|
||||||
|
"type": 3,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
closeDrawer();
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
|
}
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
console.log("");
|
||||||
}
|
}
|
||||||
@@ -295,6 +315,7 @@ export default {
|
|||||||
closeDrawer,
|
closeDrawer,
|
||||||
tableDataFunc,
|
tableDataFunc,
|
||||||
onSelectChange,
|
onSelectChange,
|
||||||
|
onSelect,
|
||||||
handelChangePage,
|
handelChangePage,
|
||||||
getTableDate,
|
getTableDate,
|
||||||
updateTask,
|
updateTask,
|
||||||
|
|||||||
@@ -51,14 +51,6 @@
|
|||||||
<button class="checkEval" @click="showEvalDrawer">
|
<button class="checkEval" @click="showEvalDrawer">
|
||||||
选择测评
|
选择测评
|
||||||
</button>
|
</button>
|
||||||
<span style="margin-left: 10px">
|
|
||||||
<a-tag
|
|
||||||
class="tag-style"
|
|
||||||
v-if="evaluationTypeName != ''"
|
|
||||||
:closable="true"
|
|
||||||
>{{ evaluationTypeName }}</a-tag
|
|
||||||
>
|
|
||||||
</span>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_item">
|
<div class="main_item">
|
||||||
@@ -96,8 +88,11 @@
|
|||||||
</div>
|
</div>
|
||||||
<EvList
|
<EvList
|
||||||
v-model:EvalListVisible="EvalListVisible"
|
v-model:EvalListVisible="EvalListVisible"
|
||||||
@getEvListData="checkFinish"
|
@getEvLsitDate="checkFinish"
|
||||||
/>
|
/>
|
||||||
|
<!-- v-model:evaluationTypeId="evaluationTypeId"
|
||||||
|
v-model:evaluationTypeName="evaluationTypeName" -->
|
||||||
|
|
||||||
<!-- <div class="aeLoading" :style="{display:addLoading?'flex':'none'}">
|
<!-- <div class="aeLoading" :style="{display:addLoading?'flex':'none'}">
|
||||||
<a-spin :spinning="addLoading" tip="添加中..." />
|
<a-spin :spinning="addLoading" tip="添加中..." />
|
||||||
</div> -->
|
</div> -->
|
||||||
@@ -166,105 +161,106 @@ export default {
|
|||||||
setup(props, ctx) {
|
setup(props, ctx) {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
inputV1: "",
|
inputV1: "",
|
||||||
|
inputV2: "",
|
||||||
time: undefined,
|
time: undefined,
|
||||||
EvalId: null,
|
EvalId: null,
|
||||||
//子传回来的参数
|
//子传回来的参数
|
||||||
evaluationTypeId: 0,
|
evaluationTypeId: null,
|
||||||
evaluationTypeName: "",
|
evaluationTypeName: "",
|
||||||
description: "",
|
description: "",
|
||||||
EvalListVisible: false,
|
EvalListVisible: false,
|
||||||
// addLoading:false,
|
// addLoading:false,
|
||||||
});
|
});
|
||||||
const checkFinish = (value)=> {
|
const checkFinish = (EvListDate)=> {
|
||||||
state.evaluationTypeId = value.quiz_kid
|
state.evaluationTypeId = EvListDate.Id
|
||||||
state.evaluationTypeName = value.title
|
state.evaluationTypeName = EvListDate.Name
|
||||||
}
|
}
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:addevalVisible", false);
|
ctx.emit("update:addevalVisible", false);
|
||||||
ctx.emit("update:edit", false);
|
ctx.emit("update:edit", false);
|
||||||
state.inputV1 = "";
|
state.inputV1 = "";
|
||||||
|
state.inputV2 = "";
|
||||||
localStorage.setItem("stageId", props.chooseStageId);
|
localStorage.setItem("stageId", props.chooseStageId);
|
||||||
localStorage.setItem("chapterId", props.isactive);
|
localStorage.setItem("chapterId", props.isactive);
|
||||||
};
|
};
|
||||||
const afterVisibleChange = (bool) => {
|
const afterVisibleChange = (bool) => {
|
||||||
if (props.edit && bool) {
|
if (props.edit && bool) {
|
||||||
queryInvistById()
|
queryEval();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const showEvalDrawer = () => {
|
const showEvalDrawer = () => {
|
||||||
state.EvalListVisible = true;
|
state.EvalListVisible = true;
|
||||||
};
|
};
|
||||||
const updateTask = (value) => {
|
const queryEval = () => {
|
||||||
if (props.isLevel == 1) {
|
api
|
||||||
RouterEditTask({
|
.queryEvaluationDetailById({ evaluationId: props.evaluationId })
|
||||||
chapterId: props.isactive,
|
.then((res) => {
|
||||||
courseId: Number(value.evaluationId),
|
state.inputV1 = res.data.data.evaluationName;
|
||||||
name: value.evaluationName,
|
state.time = [
|
||||||
routerId: props.routerId,
|
dayjs(res.data.data.evaluationStartTime, "YYYY-MM-DD"),
|
||||||
routerTaskId: props.routerTaskId || 0,
|
dayjs(res.data.data.evaluationEndTime, "YYYY-MM-DD"),
|
||||||
type: 10,
|
];
|
||||||
|
state.evaluationTypeId = res.data.data.evaluationTypeId;
|
||||||
|
state.evaluationTypeName = res.data.data.evaluationTypeName;
|
||||||
})
|
})
|
||||||
.then(( ) => {
|
.catch(() => {
|
||||||
message.success(`${props.EditTestId ? "编辑" : "新增"}关卡任务成功`);
|
});
|
||||||
})
|
};
|
||||||
.catch(( ) => {
|
const updateTask = (res) => {
|
||||||
message.error(`${props.EditTestId ? "编辑" : "新增"}关卡任务失败`);
|
if (props.isLevel == 1) {
|
||||||
});
|
|
||||||
} else if (props.isLevel == 2) {
|
|
||||||
apitaskadd
|
apitaskadd
|
||||||
.addTask({
|
.addTask({
|
||||||
duration: 0,
|
courseId: res.data.data.evaluationId,
|
||||||
flag: true,
|
name: res.data.data.evaluationName,
|
||||||
courseId: Number(value.evaluationId),
|
|
||||||
name: value.evaluationName,
|
|
||||||
projectId: props.projectId,
|
projectId: props.projectId,
|
||||||
projectTaskId: props.projectTaskId || 0,
|
projectTaskId: props.projectTaskId || 0,
|
||||||
stageId: props.chooseStageId,
|
stageId: props.chooseStageId,
|
||||||
|
evaluationTypeId: state.evaluationTypeId,
|
||||||
|
evaluationTypeName: state.evaluationTypeName,
|
||||||
type: 10,
|
type: 10,
|
||||||
})
|
})
|
||||||
.then(( ) => {
|
.then(( ) => {
|
||||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||||
})
|
})
|
||||||
.catch(( ) => {
|
.catch(( ) => {
|
||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||||
|
});
|
||||||
|
} else if (props.isLevel == 2) {
|
||||||
|
RouterEditTask({
|
||||||
|
chapterId: props.isactive,
|
||||||
|
courseId: res.data.data.evaluationId,
|
||||||
|
name: res.data.data.evaluationName,
|
||||||
|
routerId: props.routerId,
|
||||||
|
routerTaskId: props.routerTaskId || 0,
|
||||||
|
evaluationTypeId: state.evaluationTypeId,
|
||||||
|
evaluationTypeName: state.evaluationTypeName,
|
||||||
|
type: 10,
|
||||||
|
})
|
||||||
|
.then(( ) => {
|
||||||
|
message.success(`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
})
|
||||||
|
.catch(( ) => {
|
||||||
|
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
console.log("");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//根据id获取测评信息
|
//创建或编辑测评信息
|
||||||
const queryInvistById = ()=> {
|
|
||||||
let objqi = {
|
|
||||||
evaluationId : props.EditEvalId
|
|
||||||
}
|
|
||||||
api
|
|
||||||
.queryEvaluationDetailById(objqi)
|
|
||||||
.then((res) => {
|
|
||||||
message.destroy()
|
|
||||||
message.success("获取测评信息成功");
|
|
||||||
state.inputV1 = res.data.data.evaluationName
|
|
||||||
state.evaluationTypeName = res.data.data.evaluationTypeName
|
|
||||||
state.evaluationTypeId = res.data.data.evaluationTypeId;
|
|
||||||
state.time = [
|
|
||||||
dayjs(res.data.data.evaluationStartTime, "YYYY-MM-DD"),
|
|
||||||
dayjs(res.data.data.evaluationEndTime, "YYYY-MM-DD"),
|
|
||||||
];
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
message.destroy()
|
|
||||||
message.error("获取测量平信息失败");
|
|
||||||
});
|
|
||||||
}
|
|
||||||
//创建测评信息
|
|
||||||
const createEvalText = () => {
|
const createEvalText = () => {
|
||||||
if (!state.inputV1) {
|
if (!state.inputV1) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
return message.info("请输入测评名称");
|
return message.info("请输入测评名称");
|
||||||
}
|
}
|
||||||
if (!state.evaluationTypeId) {
|
if (!state.inputV2) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
return message.info("请选择测评");
|
return message.info("请选择测评");
|
||||||
}
|
}
|
||||||
|
if (!state.time) {
|
||||||
|
message.destroy();
|
||||||
|
return message.warning("请输入直播时间");
|
||||||
|
}
|
||||||
|
|
||||||
let obj = {
|
let obj = {
|
||||||
evaluationName: state.inputV1,
|
evaluationName: state.inputV1,
|
||||||
evaluationEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
evaluationEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
||||||
@@ -272,15 +268,12 @@ export default {
|
|||||||
evaluationStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
evaluationStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
||||||
evaluationTypeId: state.evaluationTypeId,
|
evaluationTypeId: state.evaluationTypeId,
|
||||||
evaluationTypeName: state.evaluationTypeName,
|
evaluationTypeName: state.evaluationTypeName,
|
||||||
evaluationFlag: "",
|
|
||||||
evaluationPictureAddress: "",
|
|
||||||
evaluationTag: "",
|
|
||||||
updateTime: "",
|
|
||||||
};
|
};
|
||||||
|
if (props.edit !== true) {
|
||||||
api
|
api
|
||||||
.createEvaluation(obj)
|
.createEvaluation(obj)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
updateTask(res.data.data);
|
updateTask(res);
|
||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
closeDrawer();
|
closeDrawer();
|
||||||
ctx.emit("changeData", false);
|
ctx.emit("changeData", false);
|
||||||
@@ -288,6 +281,19 @@ export default {
|
|||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.error("创建失败");
|
message.error("创建失败");
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
api
|
||||||
|
.updateEvaluation(obj)
|
||||||
|
.then((res) => {
|
||||||
|
updateTask(res);
|
||||||
|
message.success("编辑成功");
|
||||||
|
closeDrawer();
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
})
|
||||||
|
.catch(( ) => {
|
||||||
|
message.error("编辑失败");
|
||||||
|
});
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@@ -297,7 +303,6 @@ export default {
|
|||||||
closeDrawer,
|
closeDrawer,
|
||||||
//增改
|
//增改
|
||||||
createEvalText,
|
createEvalText,
|
||||||
queryInvistById,
|
|
||||||
showEvalDrawer,
|
showEvalDrawer,
|
||||||
updateTask,
|
updateTask,
|
||||||
};
|
};
|
||||||
@@ -361,10 +366,6 @@ export default {
|
|||||||
margin-left: 15px;
|
margin-left: 15px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
.tag-style {
|
|
||||||
color: rgb(113, 113, 237);
|
|
||||||
background-color: #d7d1f7;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.main_item2 {
|
.main_item2 {
|
||||||
|
|||||||
@@ -759,7 +759,7 @@ export default {
|
|||||||
};
|
};
|
||||||
const getData = (value)=> {
|
const getData = (value)=> {
|
||||||
state.paperId = value.paperId;
|
state.paperId = value.paperId;
|
||||||
state.paperName = value.testName;
|
state.paperName = value.paperName;
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
formState,
|
formState,
|
||||||
|
|||||||
354
src/components/drawers/AssessmentList.vue
Normal file
354
src/components/drawers/AssessmentList.vue
Normal file
@@ -0,0 +1,354 @@
|
|||||||
|
<!-- 评估列表 -->
|
||||||
|
<template>
|
||||||
|
<a-drawer
|
||||||
|
:visible="assessmentVisible"
|
||||||
|
class="drawerStyle addinvistDrawer"
|
||||||
|
width="70%"
|
||||||
|
title="添加评估"
|
||||||
|
placement="right"
|
||||||
|
@after-visible-change="afterVisibleChange"
|
||||||
|
>
|
||||||
|
<div class="drawerMain">
|
||||||
|
<div class="header">
|
||||||
|
<div v-if="edit" class="headerTitle">编辑评估</div>
|
||||||
|
<div v-else class="headerTitle">添加评估</div>
|
||||||
|
<img
|
||||||
|
style="width: 29px; height: 29px; cursor: pointer"
|
||||||
|
src="../../assets/images/basicinfo/close.png"
|
||||||
|
@click="closeDrawer"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="contentMain">
|
||||||
|
<div class="main_left">
|
||||||
|
<div class="main_item">
|
||||||
|
<div class="fi_input">
|
||||||
|
<a-input
|
||||||
|
v-model:value="inputV1"
|
||||||
|
style="width: 424px; height: 40px"
|
||||||
|
placeholder="请输入评估名称"
|
||||||
|
maxlength="20"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="btns" @click="getAllInvistText">
|
||||||
|
<div class="search"></div>
|
||||||
|
<div class="btnText">搜索</div>
|
||||||
|
</div>
|
||||||
|
<div class="btnsn" @click="resetInvist">
|
||||||
|
<div class="search"></div>
|
||||||
|
<div class="btnText">重置</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="main_item2">
|
||||||
|
<a-table
|
||||||
|
style="border: 1px solid #f2f6fe"
|
||||||
|
:columns="tableDataFunc()"
|
||||||
|
:data-source="tableData"
|
||||||
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
|
expandRowByClick="true"
|
||||||
|
@expand="expandTable"
|
||||||
|
:pagination="false"
|
||||||
|
:row-selection="rowSelection"
|
||||||
|
filterMultiple:false
|
||||||
|
/>
|
||||||
|
|
||||||
|
<div class="pa">
|
||||||
|
<a-pagination
|
||||||
|
showSizeChanger="true"
|
||||||
|
showQuickJumper="true"
|
||||||
|
hideOnSinglePage="true"
|
||||||
|
:pageSize="pageSize"
|
||||||
|
:current="currentPage"
|
||||||
|
:total="tableDataTotal"
|
||||||
|
class="pagination"
|
||||||
|
@change="handelChangePage"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { reactive, toRefs } from "vue";
|
||||||
|
import * as api from "../../api/indexInvist.js";
|
||||||
|
import dayjs from "dayjs";
|
||||||
|
export default {
|
||||||
|
name: "AssessmentList",
|
||||||
|
// components: {
|
||||||
|
// },
|
||||||
|
props: {
|
||||||
|
assessmentVisible: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
isface: {
|
||||||
|
type: Number,
|
||||||
|
default: null,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
setup(props, ctx) {
|
||||||
|
const state = reactive({
|
||||||
|
assessmentVisible: false,
|
||||||
|
assessment: null,
|
||||||
|
inputV1: "",
|
||||||
|
currentPage: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
tableDataTotal: 0,
|
||||||
|
tableData: [],
|
||||||
|
selectedRowKeys: [],
|
||||||
|
});
|
||||||
|
const closeDrawer = () => {
|
||||||
|
ctx.emit("update:assessmentVisible", false);
|
||||||
|
};
|
||||||
|
const afterVisibleChange = (bool) => {
|
||||||
|
console.log("state getAllInvistText", bool);
|
||||||
|
if (props.assessmentVisible) {
|
||||||
|
getAllInvistText();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const tableDataFunc = () => {
|
||||||
|
const columns = [
|
||||||
|
{
|
||||||
|
title: "名称",
|
||||||
|
dataIndex: "name",
|
||||||
|
// width: "30%",
|
||||||
|
key: "name",
|
||||||
|
width: "150px",
|
||||||
|
align: "left",
|
||||||
|
className: "classify",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "题数",
|
||||||
|
dataIndex: "num",
|
||||||
|
key: "num",
|
||||||
|
width: "80px",
|
||||||
|
align: "center",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "创建人",
|
||||||
|
dataIndex: "creator",
|
||||||
|
key: "creator",
|
||||||
|
width: "150px",
|
||||||
|
align: "center",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "创建时间",
|
||||||
|
dataIndex: "time",
|
||||||
|
key: "time",
|
||||||
|
width: "200px",
|
||||||
|
align: "center",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
return columns;
|
||||||
|
};
|
||||||
|
const rowSelection = {
|
||||||
|
type: "radio",
|
||||||
|
onSelect: (selectedRows) => {
|
||||||
|
state.assessment = selectedRows;
|
||||||
|
console.log("selectedRows=======", state.assessment);
|
||||||
|
if (props.isface == 1) {
|
||||||
|
ctx.emit("faceAssess", state.assessment);
|
||||||
|
} else {
|
||||||
|
ctx.emit("checkedAss", state.assessment);
|
||||||
|
}
|
||||||
|
|
||||||
|
state.selectedRowKeys = [];
|
||||||
|
closeDrawer();
|
||||||
|
},
|
||||||
|
};
|
||||||
|
// const onSelectChange = (selectedRowKeys) => {
|
||||||
|
// if(selectedRowKeys.length>2){return}
|
||||||
|
// state.selectedRowKeys = selectedRowKeys;
|
||||||
|
// };
|
||||||
|
|
||||||
|
const handelChangePage = (page, pageSize) => {
|
||||||
|
state.currentPage = page;
|
||||||
|
state.pageSize = pageSize;
|
||||||
|
getAllInvistText();
|
||||||
|
};
|
||||||
|
const getTableDate = (tableData) => {
|
||||||
|
let data = tableData;
|
||||||
|
let array = [];
|
||||||
|
data.map((value, index) => {
|
||||||
|
let obj = {
|
||||||
|
key: index,
|
||||||
|
assessmentId: value.assessmentId,
|
||||||
|
num: value.essayQuestionVoList.length,
|
||||||
|
name: value.assessmentName ? value.assessmentName : "-",
|
||||||
|
creator: value.createUser ? value.createUser : "-",
|
||||||
|
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
|
};
|
||||||
|
array.push(obj);
|
||||||
|
});
|
||||||
|
(state.selectedRowKeys = []), (state.tableData = array);
|
||||||
|
};
|
||||||
|
//获取全部评估信息接口
|
||||||
|
const getAllInvistText = () => {
|
||||||
|
api
|
||||||
|
.queryAssessmentDetailList({
|
||||||
|
assessmentName: state.inputV1,
|
||||||
|
pageNo: state.currentPage,
|
||||||
|
pageSize: state.pageSize,
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
let arr = res.data.data.rows;
|
||||||
|
if (res.status === 200) {
|
||||||
|
// console.log("获取全部评估信息", res.data.data);
|
||||||
|
getTableDate(arr);
|
||||||
|
state.tableDataTotal = Number(res.data.data.total);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log("获取全部评估信息接口失败", err);
|
||||||
|
// state.createLoading = false;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
//重置评估信息
|
||||||
|
const resetInvist = () => {
|
||||||
|
state.inputV1 = "";
|
||||||
|
getAllInvistText();
|
||||||
|
};
|
||||||
|
return {
|
||||||
|
...toRefs(state),
|
||||||
|
afterVisibleChange,
|
||||||
|
closeDrawer,
|
||||||
|
tableDataFunc,
|
||||||
|
rowSelection,
|
||||||
|
getAllInvistText,
|
||||||
|
resetInvist,
|
||||||
|
handelChangePage,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.ant-table-striped :deep(.table-striped) td {
|
||||||
|
background-color: #fafafa !important;
|
||||||
|
}
|
||||||
|
.addinvistDrawer {
|
||||||
|
.drawerMain {
|
||||||
|
.header {
|
||||||
|
height: 73px;
|
||||||
|
border-bottom: 1px solid #e8e8e8;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
.headerTitle {
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #333333;
|
||||||
|
line-height: 25px;
|
||||||
|
margin-left: 24px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.contentMain {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
.main_left {
|
||||||
|
padding-right: 30px;
|
||||||
|
margin-top: 32px;
|
||||||
|
.main_item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 32px;
|
||||||
|
.fi_input {
|
||||||
|
margin-right: 20px;
|
||||||
|
}
|
||||||
|
.btns {
|
||||||
|
margin-right: 20px;
|
||||||
|
padding: 0px 26px 0px 26px;
|
||||||
|
height: 38px;
|
||||||
|
background: #409eff;
|
||||||
|
border-radius: 8px;
|
||||||
|
//border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
.search {
|
||||||
|
width: 15px;
|
||||||
|
height: 17px;
|
||||||
|
background-image: url("../../assets/images/courseManage/search0.png");
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #ffffff;
|
||||||
|
line-height: 36px;
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.btnsn {
|
||||||
|
padding: 0px 26px 0px 26px;
|
||||||
|
height: 38px;
|
||||||
|
background: #ffffff;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
.search {
|
||||||
|
width: 16px;
|
||||||
|
height: 18px;
|
||||||
|
background-image: url("../../assets/images/courseManage/reset1.png");
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #409eff;
|
||||||
|
line-height: 36px;
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.main_item2 {
|
||||||
|
.pa {
|
||||||
|
width: 100%;
|
||||||
|
margin: 15px auto;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.main_btns {
|
||||||
|
height: 72px;
|
||||||
|
width: 100%;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.16);
|
||||||
|
.btn1 {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
border: 1px solid #4ea6ff;
|
||||||
|
border-radius: 8px;
|
||||||
|
color: #4ea6ff;
|
||||||
|
background-color: #fff;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.btn2 {
|
||||||
|
cursor: pointer;
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
background: #4ea6ff;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 0;
|
||||||
|
margin-left: 15px;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -77,7 +77,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs } from "vue";
|
import { reactive, toRefs } from "vue";
|
||||||
import * as api from "../../api/indexEval";
|
import * as api from "../../api/indexEval";
|
||||||
export default {
|
export default {
|
||||||
name: "EvList",
|
name: "EvList",
|
||||||
props: {
|
props: {
|
||||||
EvalListVisible: {
|
EvalListVisible: {
|
||||||
@@ -103,7 +103,6 @@
|
|||||||
evaluationTypeName:"",
|
evaluationTypeName:"",
|
||||||
tableData: [],
|
tableData: [],
|
||||||
selectedRowKeys:[],
|
selectedRowKeys:[],
|
||||||
evListData:{},
|
|
||||||
columns:[
|
columns:[
|
||||||
{
|
{
|
||||||
title: "课程编号",
|
title: "课程编号",
|
||||||
@@ -149,12 +148,17 @@
|
|||||||
},
|
},
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
// const onSelect = (record)=> {
|
||||||
|
// state.evaluationTypeName = record.title
|
||||||
|
// state.evaluationTypeId = record.quiz_code
|
||||||
|
// };
|
||||||
const onSelectChange = (selectedRowKeys,selectedRows)=> {
|
const onSelectChange = (selectedRowKeys,selectedRows)=> {
|
||||||
if(selectedRowKeys.length>1){
|
if(state.selectedRowKeys.length>1){
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
state.selectedRowKeys = selectedRowKeys
|
state.selectedRowKeys = selectedRowKeys
|
||||||
state.evListData = selectedRows[0] ? selectedRows[0] : []
|
state.evaluationTypeName = selectedRows[0].record.title
|
||||||
|
state.evaluationTypeId = selectedRows[0].quiz_code
|
||||||
}
|
}
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:EvalListVisible", false);
|
ctx.emit("update:EvalListVisible", false);
|
||||||
@@ -165,7 +169,11 @@
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
const checkFinish =() =>{
|
const checkFinish =() =>{
|
||||||
ctx.emit("getEvListData", state.evListData);
|
let EvListDate = {
|
||||||
|
Id : state.evaluationTypeId,
|
||||||
|
Name : state.evaluationTypeName,
|
||||||
|
}
|
||||||
|
ctx.emit("getEvListDate", EvListDate);
|
||||||
closeDrawer();
|
closeDrawer();
|
||||||
}
|
}
|
||||||
const changePagination = (page) => {
|
const changePagination = (page) => {
|
||||||
@@ -179,7 +187,6 @@
|
|||||||
let obj = {
|
let obj = {
|
||||||
status:value.status,
|
status:value.status,
|
||||||
quiz_code:value.quiz_code,
|
quiz_code:value.quiz_code,
|
||||||
quiz_kid:value.quiz_kid,
|
|
||||||
title:value.title,
|
title:value.title,
|
||||||
theme_desc:value.theme_desc,
|
theme_desc:value.theme_desc,
|
||||||
quiz_price:value.quiz_price,
|
quiz_price:value.quiz_price,
|
||||||
|
|||||||
@@ -61,7 +61,7 @@
|
|||||||
:columns="tableDataFunc()"
|
:columns="tableDataFunc()"
|
||||||
:data-source="tableData"
|
:data-source="tableData"
|
||||||
:loading="tableDataTotal === -1 ? true : false"
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
:row-selection="{selectedRowKeys:selectedRowKeys, onChange:onSelectChange, hideSelectAll:true}"
|
:row-selection="{selectedRowKeys:selectedRowKeys,onSelect:onSelect,onChange:onSelectChange}"
|
||||||
:scroll="{ x: 900 }"
|
:scroll="{ x: 900 }"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
/>
|
/>
|
||||||
@@ -119,7 +119,7 @@
|
|||||||
});
|
});
|
||||||
//点击确认后执行此方法将参数传给父亲
|
//点击确认后执行此方法将参数传给父亲
|
||||||
const CreatSTText = ()=> {
|
const CreatSTText = ()=> {
|
||||||
ctx.emit('getSTData',state.SelectTestData)
|
ctx.emit('getSTData',state.SelectTestData)
|
||||||
closeDrawer()
|
closeDrawer()
|
||||||
}
|
}
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
@@ -184,13 +184,14 @@
|
|||||||
console.log("Page: ", pageNumber);
|
console.log("Page: ", pageNumber);
|
||||||
};
|
};
|
||||||
|
|
||||||
const onSelectChange = (selectedRowKeys,selectedRows) => {
|
const onSelect = (record) => {
|
||||||
|
state.SelectTestData = record
|
||||||
|
};
|
||||||
|
const onSelectChange = (selectedRowKeys) => {
|
||||||
if(selectedRowKeys.length>1){
|
if(selectedRowKeys.length>1){
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
state.selectedRowKeys = selectedRowKeys;
|
state.selectedRowKeys = selectedRowKeys;
|
||||||
state.SelectTestData = selectedRows[0];
|
|
||||||
console.log('state.SelectTestData---------------',state.SelectTestData);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const newTest = ()=> {
|
const newTest = ()=> {
|
||||||
@@ -281,6 +282,7 @@
|
|||||||
closeDrawer,
|
closeDrawer,
|
||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
getTableDate,
|
getTableDate,
|
||||||
|
onSelect,
|
||||||
onSelectChange,
|
onSelectChange,
|
||||||
CreatSTText,
|
CreatSTText,
|
||||||
newTest,
|
newTest,
|
||||||
@@ -296,6 +298,7 @@
|
|||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.TimeManage {
|
.TimeManage {
|
||||||
|
// overflow-x: auto;
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
min-width: 550px;
|
min-width: 550px;
|
||||||
margin: 0px 32px 0px 32px;
|
margin: 0px 32px 0px 32px;
|
||||||
@@ -403,7 +406,13 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.tab {
|
.tab {
|
||||||
th,th.h {
|
|
||||||
|
.ant-table-selection-column {
|
||||||
|
.ant-table-selection{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
th.h {
|
||||||
background-color: #eff4fc !important;
|
background-color: #eff4fc !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -414,10 +423,15 @@
|
|||||||
}
|
}
|
||||||
.tableBox {
|
.tableBox {
|
||||||
.pa {
|
.pa {
|
||||||
|
// left: 0;
|
||||||
margin-top: 15px;
|
margin-top: 15px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
// height: 20px;
|
||||||
|
// background-color: red;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
// position: absolute;
|
||||||
|
// bottom: 20px;
|
||||||
.ant-pagination-prev,
|
.ant-pagination-prev,
|
||||||
.ant-pagination-next,
|
.ant-pagination-next,
|
||||||
.ant-pagination-item,
|
.ant-pagination-item,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -669,7 +669,7 @@ export default {
|
|||||||
background-color: #eff4fc !important;
|
background-color: #eff4fc !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
th,th.h {
|
th.h {
|
||||||
background-color: #eff4fc !important;
|
background-color: #eff4fc !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,20 +26,20 @@ export function traverseArr(arr, traverseObj, saveOld = false) {
|
|||||||
return newArr;
|
return newArr;
|
||||||
}
|
}
|
||||||
|
|
||||||
// export function deepClone(obj) {
|
export function deepClone(obj) {
|
||||||
// let result = typeof obj.splice === "function" ? [] : {};
|
let result = typeof obj.splice === "function" ? [] : {};
|
||||||
// if (obj && typeof obj === "object") {
|
if (obj && typeof obj === "object") {
|
||||||
// for (let key in obj) {
|
for (let key in obj) {
|
||||||
// if (obj[key] && typeof obj[key] === "object") {
|
if (obj[key] && typeof obj[key] === "object") {
|
||||||
// result[key] = deepClone(obj[key]);
|
result[key] = deepClone(obj[key]);
|
||||||
// } else {
|
} else {
|
||||||
// result[key] = obj[key];
|
result[key] = obj[key];
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// return result;
|
return result;
|
||||||
// }
|
}
|
||||||
// return obj;
|
return obj;
|
||||||
// }
|
}
|
||||||
|
|
||||||
export function deepCloneFilterString(obj, fillterKeys) {
|
export function deepCloneFilterString(obj, fillterKeys) {
|
||||||
let result = typeof obj.splice === "function" ? [] : {};
|
let result = typeof obj.splice === "function" ? [] : {};
|
||||||
@@ -95,6 +95,14 @@ export function getdateToTime(date) {
|
|||||||
return `${y}-${m < 10 ? "0" + m : m}-${d < 10 ? "0" + d : d} ${hh}:${mm}`;
|
return `${y}-${m < 10 ? "0" + m : m}-${d < 10 ? "0" + d : d} ${hh}:${mm}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getdateToDate(date) {
|
||||||
|
let now = new Date(parseInt(date)),
|
||||||
|
y = now.getFullYear(),
|
||||||
|
m = now.getMonth() + 1,
|
||||||
|
d = now.getDate();
|
||||||
|
return `${y}${m < 10 ? "0" + m : m}${d < 10 ? "0" + d : d}`;
|
||||||
|
}
|
||||||
|
|
||||||
//计算两个时间之间的时间差 多少天时分秒
|
//计算两个时间之间的时间差 多少天时分秒
|
||||||
export function intervalTime(startTime) {
|
export function intervalTime(startTime) {
|
||||||
const curTime = new Date().getTime(); //计算当前时间戳
|
const curTime = new Date().getTime(); //计算当前时间戳
|
||||||
@@ -117,3 +125,47 @@ export function intervalTime(startTime) {
|
|||||||
seconds,
|
seconds,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 分片处理
|
||||||
|
export function batchLoadList(
|
||||||
|
sourceData,
|
||||||
|
dataTotal,
|
||||||
|
splitNumber = 10,
|
||||||
|
callback,
|
||||||
|
complete
|
||||||
|
) {
|
||||||
|
if (sourceData.length <= splitNumber) {
|
||||||
|
typeof callback === "function" && callback(sourceData);
|
||||||
|
typeof callback === "function" && complete();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let first = 0;
|
||||||
|
const intTime = parseInt(String(dataTotal / splitNumber));
|
||||||
|
const floatTime = sourceData.length % splitNumber;
|
||||||
|
const total = intTime + (floatTime > 0 ? 1 : 0);
|
||||||
|
for (let i = 0; i < total; i += 1) {
|
||||||
|
const end = first + splitNumber;
|
||||||
|
const splitArray = sourceData.slice(first, end);
|
||||||
|
setTimeout(() => {
|
||||||
|
typeof callback === "function" && callback(splitArray);
|
||||||
|
if (i === total - 1) {
|
||||||
|
// 分片处理完成
|
||||||
|
typeof callback === "function" && complete();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
first = end;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export function newFile(code) {
|
||||||
|
const blob = new Blob([code], {
|
||||||
|
type: "application/vnd.ms-excel",
|
||||||
|
});
|
||||||
|
const linkNode = document.createElement("a");
|
||||||
|
linkNode.style.display = "none";
|
||||||
|
linkNode.href = URL.createObjectURL(blob); //生成一个Blob URL
|
||||||
|
document.body.appendChild(linkNode);
|
||||||
|
linkNode.click(); //模拟在按钮上的一次鼠标单击
|
||||||
|
URL.revokeObjectURL(linkNode.href); // 释放URL 对象
|
||||||
|
document.body.removeChild(linkNode);
|
||||||
|
}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -483,6 +483,7 @@
|
|||||||
<div class="img">
|
<div class="img">
|
||||||
<img
|
<img
|
||||||
src="../../assets/images/leveladd/xiang.png"
|
src="../../assets/images/leveladd/xiang.png"
|
||||||
|
@click="showDrawer"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="text">项目</div>
|
<div class="text">项目</div>
|
||||||
@@ -730,7 +731,6 @@
|
|||||||
<a-table
|
<a-table
|
||||||
:columns="drawertableColumns()"
|
:columns="drawertableColumns()"
|
||||||
:data-source="drawertableData"
|
:data-source="drawertableData"
|
||||||
:row-selection="{selectedRowKeys:selectedProjRowKeys,onChange:onProjSelectChange}"
|
|
||||||
:loading="tableDataTotal === -1 ? true : false"
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
:scroll="{ x: 700 }"
|
:scroll="{ x: 700 }"
|
||||||
@expand="expandTable"
|
@expand="expandTable"
|
||||||
@@ -1065,7 +1065,7 @@ import draggable from "vuedraggable";
|
|||||||
import { editTask } from "../../api/indexTaskadd";
|
import { editTask } from "../../api/indexTaskadd";
|
||||||
import * as apiProj from "../../api/index.js";
|
import * as apiProj from "../../api/index.js";
|
||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
import dayjs from "dayjs";
|
// import dayjs from "dayjs";
|
||||||
import { toDate } from "../../api/method";
|
import { toDate } from "../../api/method";
|
||||||
import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
||||||
export default {
|
export default {
|
||||||
@@ -1188,52 +1188,94 @@ export default {
|
|||||||
time: "2022-07-15 14:00",
|
time: "2022-07-15 14:00",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
//项目抽屉、列表参数
|
// drawertableData: [
|
||||||
drawertableData: [
|
// {
|
||||||
{
|
// key: 1,
|
||||||
key: 1,
|
// projectName: "管理者进阶",
|
||||||
parentId:1,
|
// manager: "黄华 刘俊",
|
||||||
name: '123',
|
// creater: "毛继禹",
|
||||||
manager:'afssfa',
|
// time: "2022-07-20 14:00:03",
|
||||||
children:[
|
// children: [
|
||||||
{
|
// {
|
||||||
key: 5,
|
// key: "1-1",
|
||||||
parentId:1,
|
// projectName: "管理者进阶-腾飞班",
|
||||||
name: '123',
|
// manager: "黄华 刘俊",
|
||||||
manager:'afssfa',
|
// creater: "毛继禹",
|
||||||
},
|
// time: "2022-07-20 14:00:03",
|
||||||
]
|
// children: [
|
||||||
},
|
// {
|
||||||
{
|
// key: "1-1-1",
|
||||||
key: 2,
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
parentId:2,
|
// manager: "黄华 刘俊",
|
||||||
name: '123',
|
// creater: "毛继禹",
|
||||||
manager:'afssfa',
|
// time: "2022-07-20 14:00:03",
|
||||||
children:[
|
// },
|
||||||
{
|
// ],
|
||||||
key: 7,
|
// },
|
||||||
parentId:1,
|
// ],
|
||||||
name: '123',
|
// },
|
||||||
manager:'afssfa',
|
// {
|
||||||
children:[
|
// key: 2,
|
||||||
{
|
// projectName: "管理者进阶",
|
||||||
key: 9,
|
// manager: "黄华 刘俊",
|
||||||
parentId:1,
|
// creater: "毛继禹",
|
||||||
name: '123',
|
// time: "2022-07-20 14:00:03",
|
||||||
manager:'afssfa',
|
// children: [
|
||||||
},
|
// {
|
||||||
]
|
// key: "2-1",
|
||||||
},
|
// projectName: "管理者进阶-腾飞班",
|
||||||
]
|
// manager: "黄华 刘俊",
|
||||||
},
|
// creater: "毛继禹",
|
||||||
{
|
// time: "2022-07-20 14:00:03",
|
||||||
key: 3,
|
// children: [
|
||||||
parentId:3,
|
// {
|
||||||
name: '123',
|
// key: "2-1-1",
|
||||||
manager:'afssfa',
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
},
|
// manager: "黄华 刘俊",
|
||||||
],
|
// creater: "毛继禹",
|
||||||
selectedProjRowKeys:[],
|
// time: "2022-07-20 14:00:03",
|
||||||
|
// },
|
||||||
|
// ],
|
||||||
|
// },
|
||||||
|
// ],
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// key: 3,
|
||||||
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
|
// manager: "黄华 刘俊",
|
||||||
|
// creater: "毛继禹",
|
||||||
|
// time: "2022-07-20 14:00:03",
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// key: 4,
|
||||||
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
|
// manager: "黄华 刘俊",
|
||||||
|
// creater: "毛继禹",
|
||||||
|
// time: "2022-07-20 14:00:03",
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// key: 5,
|
||||||
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
|
// manager: "黄华 刘俊",
|
||||||
|
// creater: "毛继禹",
|
||||||
|
// time: "2022-07-20 14:00:03",
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// key: 6,
|
||||||
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
|
// manager: "黄华 刘俊",
|
||||||
|
// creater: "毛继禹",
|
||||||
|
// time: "2022-07-20 14:00:03",
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// key: 7,
|
||||||
|
// projectName: "管理者进阶-腾飞班K1",
|
||||||
|
// manager: "黄华 刘俊",
|
||||||
|
// creater: "毛继禹",
|
||||||
|
// time: "2022-07-20 14:00:03",
|
||||||
|
// },
|
||||||
|
// ],
|
||||||
|
drawertableData: [],
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
tableDataTotal: 0,
|
tableDataTotal: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
@@ -1279,6 +1321,7 @@ export default {
|
|||||||
isLevel: 1, //学习路径1项目2模板库3
|
isLevel: 1, //学习路径1项目2模板库3
|
||||||
gqxy_hs: true,
|
gqxy_hs: true,
|
||||||
isactive: 0,
|
isactive: 0,
|
||||||
|
projectChecked: null, //项目单选框
|
||||||
adddiscussvisible: false, //讨论抽屉
|
adddiscussvisible: false, //讨论抽屉
|
||||||
isStudiscuss: false,
|
isStudiscuss: false,
|
||||||
addactivevisible: false, //活动抽屉
|
addactivevisible: false, //活动抽屉
|
||||||
@@ -1408,6 +1451,14 @@ export default {
|
|||||||
console.log("删除关卡失败", err);
|
console.log("删除关卡失败", err);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const showDrawer = () => {
|
||||||
|
state.visible = true;
|
||||||
|
};
|
||||||
|
//关闭项目抽屉
|
||||||
|
const leaveProjDrawer = () => {
|
||||||
|
state.addprojvisible = false;
|
||||||
|
};
|
||||||
//在线抽屉
|
//在线抽屉
|
||||||
const showDrawerAddOnline = (id, eleId) => {
|
const showDrawerAddOnline = (id, eleId) => {
|
||||||
state.addonlinevisible = true;
|
state.addonlinevisible = true;
|
||||||
@@ -1441,12 +1492,14 @@ export default {
|
|||||||
};
|
};
|
||||||
//测试抽屉
|
//测试抽屉
|
||||||
const showDrawerAddEval = (id, eleId) => {
|
const showDrawerAddEval = (id, eleId) => {
|
||||||
|
// state.addevalVisible = true;
|
||||||
state.addevalvisible = true;
|
state.addevalvisible = true;
|
||||||
state.EditEvalId = id;
|
state.EditEvalId = id;
|
||||||
state.routerTaskId = eleId;
|
state.routerTaskId = eleId;
|
||||||
};
|
};
|
||||||
//评估抽屉
|
//评估抽屉
|
||||||
const showDrawerAddInvist = (id, eleId) => {
|
const showDrawerAddInvist = (id, eleId) => {
|
||||||
|
// state.addinvistVisible = true;
|
||||||
state.addinvistvisible = true;
|
state.addinvistvisible = true;
|
||||||
state.routerTaskId = eleId;
|
state.routerTaskId = eleId;
|
||||||
state.EditInvistId = id;
|
state.EditInvistId = id;
|
||||||
@@ -1488,10 +1541,6 @@ export default {
|
|||||||
state.EditActiveId = id;
|
state.EditActiveId = id;
|
||||||
state.routerTaskId = eleId;
|
state.routerTaskId = eleId;
|
||||||
};
|
};
|
||||||
//关闭项目抽屉
|
|
||||||
const leaveProjDrawer = () => {
|
|
||||||
state.addprojvisible = false;
|
|
||||||
};
|
|
||||||
//tableData数据赋值方法
|
//tableData数据赋值方法
|
||||||
const dataAssignment = (id) => {
|
const dataAssignment = (id) => {
|
||||||
console.log(state.level);
|
console.log(state.level);
|
||||||
@@ -1557,6 +1606,9 @@ export default {
|
|||||||
message.error(err);
|
message.error(err);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
const closeDrawer = () => {
|
||||||
|
state.visible = false;
|
||||||
|
};
|
||||||
const afterProjVisibleChange = (bol) => {
|
const afterProjVisibleChange = (bol) => {
|
||||||
if(bol == true){
|
if(bol == true){
|
||||||
getAllProjText()
|
getAllProjText()
|
||||||
@@ -1718,6 +1770,7 @@ export default {
|
|||||||
"rgb(245, 247, 250,1)";
|
"rgb(245, 247, 250,1)";
|
||||||
document.getElementsByTagName("main")[0].style.boxShadow = "none";
|
document.getElementsByTagName("main")[0].style.boxShadow = "none";
|
||||||
getDetail();
|
getDetail();
|
||||||
|
getAllProjText();
|
||||||
});
|
});
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
document.getElementsByTagName("main")[0].style.background = "#ffffff";
|
document.getElementsByTagName("main")[0].style.background = "#ffffff";
|
||||||
@@ -1891,9 +1944,9 @@ export default {
|
|||||||
} else if (type == "活动") {
|
} else if (type == "活动") {
|
||||||
showDrawerAddActive(id, eleId);
|
showDrawerAddActive(id, eleId);
|
||||||
} else if (type == "测评") {
|
} else if (type == "测评") {
|
||||||
showDrawerAddEval(id, eleId);
|
|
||||||
} else if (type == "评估") {
|
|
||||||
showDrawerAddInvist(id, eleId);
|
showDrawerAddInvist(id, eleId);
|
||||||
|
} else if (type == "评估") {
|
||||||
|
showDrawerAddEval(id, eleId);
|
||||||
} else if (type == "投票") {
|
} else if (type == "投票") {
|
||||||
showDrawerAddVote(id, eleId);
|
showDrawerAddVote(id, eleId);
|
||||||
} else if (type == "项目") {
|
} else if (type == "项目") {
|
||||||
@@ -1948,43 +2001,91 @@ export default {
|
|||||||
state.removeStageId = option.chapterId;
|
state.removeStageId = option.chapterId;
|
||||||
};
|
};
|
||||||
//项目抽屉用的
|
//项目抽屉用的
|
||||||
const onProjSelectChange = (selectedRowKeys,selectedRows) => {
|
const rowSelection = {
|
||||||
state.selectedProjRowKeys = selectedRowKeys
|
onSelect: (selectedRows, selected, selectedRowKeys) => {
|
||||||
// if(selectedRowKeys.length>1){
|
console.log(
|
||||||
// return
|
"selectedRowKeys",
|
||||||
// }
|
selectedRowKeys,
|
||||||
state.projId = selectedRows[0].projectId
|
"selectedRows",
|
||||||
state.projName = selectedRows[0].name
|
selectedRows,
|
||||||
console.log(state.projId,'------------------');
|
"selected",
|
||||||
// console.log(selectedRowKeys,selectedRows);
|
selected
|
||||||
}
|
);
|
||||||
const getTableDate = (data) => {
|
state.projId = selectedRows.parentId;
|
||||||
|
state.projName = selectedRows.name;
|
||||||
|
},
|
||||||
|
};
|
||||||
|
const getTableDate = (drawertableData) => {
|
||||||
|
console.log(drawertableData,'drawertableDatadrawertableDatadrawertableDatadrawertableData')
|
||||||
|
let data = drawertableData
|
||||||
let array = []
|
let array = []
|
||||||
data.map((value)=>{
|
data.map((value)=>{
|
||||||
if(value.type == 3){
|
if(value.type ==3){
|
||||||
|
let obj = {
|
||||||
|
key: value.projectId,
|
||||||
|
parentId:value.parentId,
|
||||||
|
name: value.name,
|
||||||
|
manager:value.manager,
|
||||||
|
creator: value.createName,
|
||||||
|
// time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
|
};
|
||||||
|
array.push(obj);
|
||||||
|
}
|
||||||
|
else if(value.type == 2){
|
||||||
|
value.subList.map((item)=>{
|
||||||
let obj = {
|
let obj = {
|
||||||
key: value.projectId,
|
key: value.projectId,
|
||||||
parentId:value.parentId,
|
parentId:value.parentId,
|
||||||
projectId:value.projectId,
|
name: value.name,
|
||||||
name: value.name,
|
manager:value.manager,
|
||||||
manager:value.manager,
|
creator: value.createName,
|
||||||
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
// time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
|
children:[{
|
||||||
|
key: item.projectId,
|
||||||
|
parentId:item.parentId,
|
||||||
|
name: item.name,
|
||||||
|
manager:item.manager,
|
||||||
|
creator: item.createName,
|
||||||
|
// time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
|
}]
|
||||||
}
|
}
|
||||||
array.push(obj)
|
array.push(obj);
|
||||||
}
|
})
|
||||||
else {
|
}
|
||||||
let obj = {
|
else{
|
||||||
key: value.projectId,
|
value.subList.map((item)=>{
|
||||||
parentId:value.parentId,
|
item.subList.map((items)=>{
|
||||||
name: value.name,
|
let obj = {
|
||||||
manager:value.manager,
|
key: value.projectId,
|
||||||
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
parentId:value.parentId,
|
||||||
children: value.subList ? getTableDate(value.subList) : [] ,
|
name: value.name,
|
||||||
}
|
manager:value.manager,
|
||||||
array.push(obj)
|
creator: value.createName,
|
||||||
}
|
// time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
})
|
children:[{
|
||||||
return array
|
key: item.projectId,
|
||||||
|
parentId:item.parentId,
|
||||||
|
name: item.name,
|
||||||
|
manager:item.manager,
|
||||||
|
creator: item.createName,
|
||||||
|
children:[{
|
||||||
|
key: items.projectId,
|
||||||
|
parentId:items.parentId,
|
||||||
|
name: items.name,
|
||||||
|
manager:items.manager,
|
||||||
|
creator: items.createName,
|
||||||
|
}]
|
||||||
|
// time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
array.push(obj);
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
state.drawertableData = array;
|
||||||
|
console.log(state.drawertableData,"------------state.drawertableData---------------");
|
||||||
};
|
};
|
||||||
//获取全部项目信息接口
|
//获取全部项目信息接口
|
||||||
const getAllProjText = () => {
|
const getAllProjText = () => {
|
||||||
@@ -2002,35 +2103,35 @@ export default {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
let arr = res.data.data.rows;
|
let arr = res.data.data.rows;
|
||||||
if (res.status === 200) {
|
if (res.status === 200) {
|
||||||
state.drawertableData = getTableDate(arr);
|
getTableDate(arr);
|
||||||
|
console.log("---------------项目信息---------------------------",res.data.data);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch((err) => {
|
||||||
message.destroy()
|
console.log("获取全部项目信息接口失败", err);
|
||||||
message.error("获取全部项目信息接口失败")
|
console.log("+++++++++++++++++++++++++++++++++++++++++++++++");
|
||||||
|
// state.createLoading = false;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
//添加关卡项目
|
//不需要下面这个添加应该 没选数据
|
||||||
const updateTask = () => {
|
const updateTask = () => {
|
||||||
RouterEditTask({
|
RouterEditTask({
|
||||||
duration: 0,
|
|
||||||
flag: true,
|
|
||||||
chapterId: state.isactive,
|
chapterId: state.isactive,
|
||||||
courseId: Number(state.projId),
|
courseId: state.assessmentId,
|
||||||
name: state.projName,
|
name: state.assessmentName,
|
||||||
routerId: state.routerId,
|
routerId: state.routerId,
|
||||||
routerTaskId: state.routerTaskId,
|
routerTaskId: state.routerTaskId || 0,
|
||||||
type: 13,
|
type: 13,
|
||||||
})
|
})
|
||||||
.then(( ) => {
|
.then((res) => {
|
||||||
|
console.log(res, 11111);
|
||||||
message.success(`${state.editproj ? "编辑" : "新增"}关卡任务成功`);
|
message.success(`${state.editproj ? "编辑" : "新增"}关卡任务成功`);
|
||||||
// ctx.emit("changeData", false);
|
// ctx.emit("changeData", false);
|
||||||
leaveProjDrawer()
|
closeDrawer();
|
||||||
state.addLoading = false;
|
state.addLoading = false;
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch((err) => {
|
||||||
message.destroy()
|
console.log(err, 1111);
|
||||||
message.error("添加关卡任务失败")
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -2038,10 +2139,16 @@ export default {
|
|||||||
const showModeVisible = () => {
|
const showModeVisible = () => {
|
||||||
state.unlockModeVisible = true;
|
state.unlockModeVisible = true;
|
||||||
};
|
};
|
||||||
|
onMounted(() => {
|
||||||
|
// createCase();
|
||||||
|
getAllProjText();
|
||||||
|
});
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
// tableDataFunc,
|
// tableDataFunc,
|
||||||
tableDataFunc2,
|
tableDataFunc2,
|
||||||
|
showDrawer,
|
||||||
|
closeDrawer,
|
||||||
showModal,
|
showModal,
|
||||||
closeModal,
|
closeModal,
|
||||||
afterProjVisibleChange,
|
afterProjVisibleChange,
|
||||||
@@ -2084,7 +2191,7 @@ export default {
|
|||||||
showChangeModal,
|
showChangeModal,
|
||||||
closeChangeModal,
|
closeChangeModal,
|
||||||
handleChangeStage,
|
handleChangeStage,
|
||||||
onProjSelectChange,
|
rowSelection,
|
||||||
getTableDate,
|
getTableDate,
|
||||||
getAllProjText,
|
getAllProjText,
|
||||||
updateTask,
|
updateTask,
|
||||||
|
|||||||
@@ -8,22 +8,21 @@
|
|||||||
*/
|
*/
|
||||||
const { defineConfig } = require("@vue/cli-service");
|
const { defineConfig } = require("@vue/cli-service");
|
||||||
module.exports = defineConfig({
|
module.exports = defineConfig({
|
||||||
publicPath: '/manage',
|
publicPath: "/manage",
|
||||||
// transpileDependencies: true,
|
// transpileDependencies: true,
|
||||||
devServer: {
|
devServer: {
|
||||||
port: 8080,
|
port: 8080,
|
||||||
proxy: {
|
proxy: {
|
||||||
"/manageApi": {
|
"/manageApi": {
|
||||||
// target:"http://192.168.19.246:30001",
|
// 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: {
|
"^/manageApi": "",
|
||||||
"^/manageApi": "",
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user