mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-17 23:06:47 +08:00
feat:合并
This commit is contained in:
@@ -34,7 +34,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.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2NjkzMDA4MDksImV4cCI6MTY2OTMwODAwOSwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.bb3e0e031513761003d5c3bfeaf16e364bdf8fe7bc4cf691a05a74dc454afbfb";
|
||||||
}
|
}
|
||||||
return config;
|
return config;
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mi_btns">
|
<div class="mi_btns">
|
||||||
<div class="btn btn1">
|
<div class="btn btn1" @click="getAllCaseText">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">搜索</div>
|
<div class="btnText">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -149,6 +149,8 @@ export default {
|
|||||||
ctx.emit("update:edit", false);
|
ctx.emit("update:edit", false);
|
||||||
localStorage.setItem("stageId", props.chooseStageId);
|
localStorage.setItem("stageId", props.chooseStageId);
|
||||||
localStorage.setItem("chapterId", props.isactive);
|
localStorage.setItem("chapterId", props.isactive);
|
||||||
|
state.inputV1=""
|
||||||
|
state.selectedRowKeys=[]
|
||||||
};
|
};
|
||||||
const afterVisibleChange = (bol) => {
|
const afterVisibleChange = (bol) => {
|
||||||
if ( bol == true ) {
|
if ( bol == true ) {
|
||||||
@@ -189,7 +191,6 @@ export default {
|
|||||||
}
|
}
|
||||||
state.selectedRowKeys = selectedRowKeys;
|
state.selectedRowKeys = selectedRowKeys;
|
||||||
state.apiTaskList = selectedRows;
|
state.apiTaskList = selectedRows;
|
||||||
console.log('-------------%o-%o',state.apiTaskList, state.apiTaskList.length);
|
|
||||||
};
|
};
|
||||||
const handelChangePage = (page, pageSize) => {
|
const handelChangePage = (page, pageSize) => {
|
||||||
state.currentPage = page;
|
state.currentPage = page;
|
||||||
@@ -206,19 +207,19 @@ export default {
|
|||||||
authorName:value.authorName,
|
authorName:value.authorName,
|
||||||
companyId:value.companyId,
|
companyId:value.companyId,
|
||||||
coverUrl:value.coverUrl,
|
coverUrl:value.coverUrl,
|
||||||
caseid:value.id,
|
id:value.id,
|
||||||
|
casesId:value.casesId,
|
||||||
title:value.title,
|
title:value.title,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
state.tableData = array;
|
state.tableData = array;
|
||||||
console.log('get下来的数据',state.tableData);
|
|
||||||
};
|
};
|
||||||
//获取全部案例信息接口
|
//获取全部案例信息接口
|
||||||
const getAllCaseText = () => {
|
const getAllCaseText = () => {
|
||||||
api
|
api
|
||||||
.queryCasesDetailList({
|
.queryCasesDetailList({
|
||||||
"keyWord": "",
|
"keyWord": state.inputV1,
|
||||||
"orderAsc": true,
|
"orderAsc": true,
|
||||||
"orderField": "",
|
"orderField": "",
|
||||||
"pageIndex": 0,
|
"pageIndex": 0,
|
||||||
@@ -238,8 +239,8 @@ export default {
|
|||||||
for(let i = 0;i < state.apiTaskList.length;i++){
|
for(let i = 0;i < state.apiTaskList.length;i++){
|
||||||
RouterEditTask({
|
RouterEditTask({
|
||||||
chapterId: props.isactive,
|
chapterId: props.isactive,
|
||||||
courseId: state.apiTaskList[i].caseid,
|
courseId: state.apiTaskList[i].casesId,
|
||||||
name: state.apiTaskList[i].caseName,
|
name: state.apiTaskList[i].title,
|
||||||
routerId: props.routerId,
|
routerId: props.routerId,
|
||||||
routerTaskId: props.routerTaskId || 0,
|
routerTaskId: props.routerTaskId || 0,
|
||||||
type: 3,
|
type: 3,
|
||||||
@@ -255,18 +256,16 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else if (props.isLevel == 2) {
|
} else if (props.isLevel == 2) {
|
||||||
console.log("state api task list: %o-length: %o", state.apiTaskList, state.apiTaskList.length )
|
|
||||||
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].casesId,
|
||||||
"duration": 0,
|
"duration": 0,
|
||||||
"flag": true,
|
"flag": true,
|
||||||
"name": state.apiTaskList[i].caseName,
|
"name": state.apiTaskList[i].title,
|
||||||
"projectId": props.projectId,
|
"projectId": props.projectId,
|
||||||
"projectTaskId": props.projectTaskId,
|
"projectTaskId": props.projectTaskId,
|
||||||
"stageId": props.chooseStageId,
|
"stageId": Number(props.chooseStageId),
|
||||||
"type": 3,
|
"type": 3,
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
@@ -281,7 +280,30 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
for(let i = 0;i < state.apiTaskList.length;i++){
|
||||||
|
console.log(state.apiTaskList[i],'state.apiTaskList[i].caseIdstate.apiTaskList[i].caseId');
|
||||||
|
apiTask
|
||||||
|
.addTask({
|
||||||
|
"courseId": state.apiTaskList[i].caseid,
|
||||||
|
"duration": 0,
|
||||||
|
"flag": true,
|
||||||
|
"name": state.apiTaskList[i].caseName,
|
||||||
|
"projectId": props.projectId,
|
||||||
|
"projectTemplateId": props.projectTemplateId,
|
||||||
|
"stageId": props.chooseStageId,
|
||||||
|
"type": 3,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.destroy()
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
closeDrawer();
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.destroy()
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//重置案例信息
|
//重置案例信息
|
||||||
|
|||||||
@@ -201,7 +201,15 @@ export default {
|
|||||||
type: 8,
|
type: 8,
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
apiTask.addTask({
|
||||||
|
courseId: res.data.data.discussId,
|
||||||
|
duration: res.data.data.discussExplain,
|
||||||
|
name: res.data.data.discussName,
|
||||||
|
projectId: props.projectId,
|
||||||
|
projectTaskTemplateId: props.projectTaskTemplateId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 8,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const updateDiscussInfo = () => {
|
const updateDiscussInfo = () => {
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
class="tag-style"
|
class="tag-style"
|
||||||
v-if="evaluationTypeName != ''"
|
v-if="evaluationTypeName != ''"
|
||||||
:closable="true"
|
:closable="true"
|
||||||
|
@close="delTag"
|
||||||
>{{ evaluationTypeName }}</a-tag
|
>{{ evaluationTypeName }}</a-tag
|
||||||
>
|
>
|
||||||
</span>
|
</span>
|
||||||
@@ -91,7 +92,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="main_btns">
|
<div class="main_btns">
|
||||||
<button class="btn1" @click="closeDrawer">取消</button>
|
<button class="btn1" @click="closeDrawer">取消</button>
|
||||||
<button class="btn2" @click="createEvalText">确定</button>
|
<button class="btn2" @click="creoredit">确定</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<EvList
|
<EvList
|
||||||
@@ -149,11 +150,6 @@ export default {
|
|||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
},
|
},
|
||||||
projectTaskId: {
|
|
||||||
// 要编辑的projectId
|
|
||||||
type: Number,
|
|
||||||
default: null,
|
|
||||||
},
|
|
||||||
routerId: {
|
routerId: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
@@ -183,6 +179,10 @@ export default {
|
|||||||
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.time= undefined;
|
||||||
|
state.description="";
|
||||||
|
state.evaluationTypeId= 0,
|
||||||
|
state.evaluationTypeName= "",
|
||||||
localStorage.setItem("stageId", props.chooseStageId);
|
localStorage.setItem("stageId", props.chooseStageId);
|
||||||
localStorage.setItem("chapterId", props.isactive);
|
localStorage.setItem("chapterId", props.isactive);
|
||||||
};
|
};
|
||||||
@@ -194,6 +194,12 @@ export default {
|
|||||||
const showEvalDrawer = () => {
|
const showEvalDrawer = () => {
|
||||||
state.EvalListVisible = true;
|
state.EvalListVisible = true;
|
||||||
};
|
};
|
||||||
|
//删除标签要清除子组件传过来的参数
|
||||||
|
const delTag = ()=> {
|
||||||
|
state.evaluationTypeId= 0
|
||||||
|
state.evaluationTypeName= ""
|
||||||
|
}
|
||||||
|
//向关卡或阶段渲染
|
||||||
const updateTask = (value) => {
|
const updateTask = (value) => {
|
||||||
if (props.isLevel == 1) {
|
if (props.isLevel == 1) {
|
||||||
RouterEditTask({
|
RouterEditTask({
|
||||||
@@ -222,14 +228,32 @@ export default {
|
|||||||
stageId: props.chooseStageId,
|
stageId: props.chooseStageId,
|
||||||
type: 10,
|
type: 10,
|
||||||
})
|
})
|
||||||
|
.then(( ) => {
|
||||||
|
message.destroy()
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
})
|
||||||
|
.catch(( ) => {
|
||||||
|
message.destroy()
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
|
} else if (props.isLevel == 3) {
|
||||||
|
apitaskadd
|
||||||
|
.addTask({
|
||||||
|
duration:0,
|
||||||
|
flag:true,
|
||||||
|
courseId: Number(value.evaluationId),
|
||||||
|
name: value.evaluationName,
|
||||||
|
projectTemplateId: props.projectTemplateId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
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 == 3) {
|
|
||||||
console.log("");
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//根据id获取测评信息
|
//根据id获取测评信息
|
||||||
@@ -250,9 +274,49 @@ export default {
|
|||||||
dayjs(res.data.data.evaluationEndTime, "YYYY-MM-DD"),
|
dayjs(res.data.data.evaluationEndTime, "YYYY-MM-DD"),
|
||||||
];
|
];
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch((err) => {
|
||||||
message.destroy()
|
message.destroy()
|
||||||
message.error("获取测量平信息失败");
|
message.error("获取测量平信息失败");
|
||||||
|
console.log(err,"erererrerererererer");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const creoredit = ()=> {
|
||||||
|
if(props.edit){
|
||||||
|
editInvistText()
|
||||||
|
}else{
|
||||||
|
createEvalText()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const editInvistText = ()=> {
|
||||||
|
if (!state.inputV1) {
|
||||||
|
message.destroy();
|
||||||
|
return message.info("请输入测评名称");
|
||||||
|
}
|
||||||
|
if (!state.evaluationTypeId) {
|
||||||
|
message.destroy();
|
||||||
|
return message.info("请选择测评");
|
||||||
|
}
|
||||||
|
let objei = {
|
||||||
|
evaluationName: state.inputV1,
|
||||||
|
evaluationEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
||||||
|
evaluationId: props.edit ? Number(props.EditEvalId) : 0,
|
||||||
|
evaluationStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
||||||
|
evaluationTypeId: state.evaluationTypeId,
|
||||||
|
evaluationTypeName: state.evaluationTypeName,
|
||||||
|
evaluationFlag: "",
|
||||||
|
evaluationPictureAddress: "",
|
||||||
|
evaluationTag: "",
|
||||||
|
updateTime: "",
|
||||||
|
}
|
||||||
|
api
|
||||||
|
.updateEvaluation(objei)
|
||||||
|
.then((res) => {
|
||||||
|
updateTask(res.data.data);
|
||||||
|
closeDrawer();
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err,'errrrrrrrrrrrrrrrrrrrrr');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
//创建测评信息
|
//创建测评信息
|
||||||
@@ -268,7 +332,7 @@ export default {
|
|||||||
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"),
|
||||||
evaluationId: props.edit ? props.evaluationId : 0,
|
evaluationId: props.evaluationId ,
|
||||||
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,
|
||||||
@@ -281,12 +345,10 @@ export default {
|
|||||||
.createEvaluation(obj)
|
.createEvaluation(obj)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
updateTask(res.data.data);
|
updateTask(res.data.data);
|
||||||
message.success("创建成功");
|
|
||||||
closeDrawer();
|
closeDrawer();
|
||||||
ctx.emit("changeData", false);
|
ctx.emit("changeData", false);
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.error("创建失败");
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -295,9 +357,12 @@ export default {
|
|||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
checkFinish,
|
checkFinish,
|
||||||
closeDrawer,
|
closeDrawer,
|
||||||
|
delTag,
|
||||||
//增改
|
//增改
|
||||||
|
creoredit,
|
||||||
createEvalText,
|
createEvalText,
|
||||||
queryInvistById,
|
queryInvistById,
|
||||||
|
editInvistText,
|
||||||
showEvalDrawer,
|
showEvalDrawer,
|
||||||
updateTask,
|
updateTask,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -699,7 +699,26 @@ export default {
|
|||||||
message.error(`${props.EditFaceId ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.EditFaceId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
let editObj = {
|
||||||
|
courseId: res.data.data.offcoursePlanId,
|
||||||
|
duration: 0,
|
||||||
|
name: res.data.data.name,
|
||||||
|
projectTemplateId: props.projecTempaltetId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 2,
|
||||||
|
};
|
||||||
|
// 新增编辑或新增项目
|
||||||
|
ProjectEditTask(editObj)
|
||||||
|
.then(() => {
|
||||||
|
message.success(
|
||||||
|
`${props.EditFaceId ? "编辑" : "新增"}阶段任务成功`
|
||||||
|
);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.EditFaceId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const closeTag = () => {
|
const closeTag = () => {
|
||||||
|
|||||||
@@ -362,7 +362,23 @@ export default {
|
|||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
let editObj = {
|
||||||
|
courseId: res.data.data.workId,
|
||||||
|
name: res.data.data.workName,
|
||||||
|
projectId: props.edit ? props.projectId : 0,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 4,
|
||||||
|
};
|
||||||
|
ProjectEditTask(editObj)
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
state.addLoading = false;
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -29,8 +29,6 @@
|
|||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
|
|
||||||
|
|
||||||
<div v-if="assessment1 == null">
|
<div v-if="assessment1 == null">
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>已选择 <span class="data">1</span> 条;</span
|
>已选择 <span class="data">1</span> 条;</span
|
||||||
@@ -42,10 +40,12 @@
|
|||||||
>题数: <span class="data">{{ assessment.num }}</span>
|
>题数: <span class="data">{{ assessment.num }}</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>创建人: <span class="data">{{ assessment.creator }}</span>
|
>创建人:
|
||||||
|
<span class="data">{{ assessment.creator }}</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>创建时间: <span class="data">{{ assessment.time }}</span>
|
>创建时间:
|
||||||
|
<span class="data">{{ assessment.time }}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
@@ -53,23 +53,25 @@
|
|||||||
>已选择 <span class="data">1</span> 条;</span
|
>已选择 <span class="data">1</span> 条;</span
|
||||||
>
|
>
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>名称: <span class="data">{{ assessment1.createName }}</span>
|
>名称:
|
||||||
|
<span class="data">{{ assessment1.createName }}</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>题数: <span class="data">{{ assessment1.essayQuestionVoList.length }}</span>
|
>题数:
|
||||||
|
<span class="data">{{
|
||||||
|
assessment1.essayQuestionVoList.length
|
||||||
|
}}</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>创建人: <span class="data">{{ assessment1.createUser }}</span>
|
>创建人:
|
||||||
|
<span class="data">{{ assessment1.createUser }}</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>创建时间: <span class="data">{{ assessment1.createTime }}</span>
|
>创建时间:
|
||||||
|
<span class="data">{{ assessment1.createTime }}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_item">
|
<div class="main_item">
|
||||||
@@ -190,7 +192,6 @@ export default {
|
|||||||
state.assessmentName = "";
|
state.assessmentName = "";
|
||||||
state.assessment = null;
|
state.assessment = null;
|
||||||
queryInfo();
|
queryInfo();
|
||||||
|
|
||||||
};
|
};
|
||||||
const queryInfo = () => {
|
const queryInfo = () => {
|
||||||
if (props.edit) {
|
if (props.edit) {
|
||||||
@@ -201,10 +202,8 @@ export default {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
//更新讨论信息
|
//更新讨论信息
|
||||||
state.assessment1 = res.data.data;
|
state.assessment1 = res.data.data;
|
||||||
|
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {});
|
||||||
});
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const updateTask = () => {
|
const updateTask = () => {
|
||||||
@@ -248,7 +247,23 @@ export default {
|
|||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
apiTask
|
||||||
|
.addTask({
|
||||||
|
courseId: state.assessment.assessmentId,
|
||||||
|
name: state.assessment.name,
|
||||||
|
projectId: props.projectId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 11,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
closeDrawer();
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -557,7 +557,23 @@ export default {
|
|||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
apiTask
|
||||||
|
.addTask({
|
||||||
|
courseId: res.data.data.liveId,
|
||||||
|
duration: res.data.data.duration,
|
||||||
|
name: res.data.data.liveName,
|
||||||
|
projectTemplateId: props.projectTemplateId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 6,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//创建直播
|
//创建直播
|
||||||
|
|||||||
@@ -328,7 +328,25 @@ export default {
|
|||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
apiTask
|
||||||
|
.addTask({
|
||||||
|
courseId: state.assessmentId,
|
||||||
|
name: state.assessmentName,
|
||||||
|
projectTemplateId: props.projectTemplateId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 1,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.destroy()
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
closeDrawer();
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.destroy()
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//重置在线信息
|
//重置在线信息
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
<template>
|
<template>
|
||||||
|
|
||||||
<a-drawer
|
<a-drawer
|
||||||
:visible="addprojvisible"
|
:visible="addprojvisible"
|
||||||
class="drawerStyle addonlineDrawer"
|
class="drawerStyle addonlineDrawer"
|
||||||
@@ -51,7 +50,6 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="mi_btns">
|
<div class="mi_btns">
|
||||||
<div class="btn btn1">
|
<div class="btn btn1">
|
||||||
@@ -64,12 +62,109 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="main_notice" v-if="edit">
|
||||||
|
<div class="mntc_left">
|
||||||
|
<div class="notice_icon"></div>
|
||||||
|
<div v-if="selectedRows.length == 0">
|
||||||
|
<span class="title"
|
||||||
|
>已选择
|
||||||
|
<span class="data" style="color: #4ea6ff">{{ 0 }}</span>
|
||||||
|
条</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div v-else>
|
||||||
|
<div>
|
||||||
|
<span class="title"
|
||||||
|
>已选择
|
||||||
|
<span class="data" style="color: #4ea6ff">{{
|
||||||
|
selectedRows.length
|
||||||
|
}}</span>
|
||||||
|
条 </span
|
||||||
|
>
|
||||||
|
<span class="title"
|
||||||
|
>名称:
|
||||||
|
<span
|
||||||
|
class="data"
|
||||||
|
style="color: #4ea6ff; margin-right: 15px"
|
||||||
|
>{{ selectedRows[0].name }}</span
|
||||||
|
>
|
||||||
|
</span>
|
||||||
|
<span class="title"
|
||||||
|
>项目经理:
|
||||||
|
<span
|
||||||
|
class="data"
|
||||||
|
style="color: #4ea6ff; margin-right: 15px"
|
||||||
|
>{{ selectedRows[0].manager }}</span
|
||||||
|
>
|
||||||
|
</span>
|
||||||
|
<span class="title"
|
||||||
|
>创建人:
|
||||||
|
<span
|
||||||
|
class="data"
|
||||||
|
style="color: #4ea6ff; margin-right: 15px"
|
||||||
|
>{{ selectedRows[0].creater }}</span
|
||||||
|
>
|
||||||
|
</span>
|
||||||
|
<span class="title"
|
||||||
|
>创建时间:
|
||||||
|
<span class="data" style="color: #4ea6ff">{{
|
||||||
|
selectedRows[0].time
|
||||||
|
}}</span>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<!-- <div v-else>
|
||||||
|
<span class="title"
|
||||||
|
>已选择 <span class="data">1</span> 条;</span
|
||||||
|
>
|
||||||
|
<span class="title"
|
||||||
|
>名称:
|
||||||
|
<span class="data">{{ assessment1.createName }}</span>
|
||||||
|
</span>
|
||||||
|
<span class="title"
|
||||||
|
>题数:
|
||||||
|
<span class="data">{{
|
||||||
|
assessment1.essayQuestionVoList.length
|
||||||
|
}}</span>
|
||||||
|
</span>
|
||||||
|
<span class="title"
|
||||||
|
>创建人:
|
||||||
|
<span class="data">{{ assessment1.createUser }}</span>
|
||||||
|
</span>
|
||||||
|
<span class="title"
|
||||||
|
>创建时间:
|
||||||
|
<span class="data">{{ assessment1.createTime }}</span>
|
||||||
|
</span>
|
||||||
|
</div> -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="">
|
<div class="">
|
||||||
<div class="drawerbox">
|
<div class="drawerbox">
|
||||||
|
<!-- 添加的时候显示多选的表 -->
|
||||||
<a-table
|
<a-table
|
||||||
|
v-if="!edit"
|
||||||
:columns="tableDataFunc()"
|
:columns="tableDataFunc()"
|
||||||
:data-source="drawertableData"
|
:data-source="drawertableData"
|
||||||
:row-selection="rowSelection"
|
:row-selection="{
|
||||||
|
selectedRowKeys: selectedRowKeys,
|
||||||
|
onChange: onSelectChange,
|
||||||
|
}"
|
||||||
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
|
:scroll="{ x: 700 }"
|
||||||
|
@expand="expandTable"
|
||||||
|
:pagination="false"
|
||||||
|
>
|
||||||
|
</a-table>
|
||||||
|
<!-- 编辑的时候显示单选的表 -->
|
||||||
|
<a-table
|
||||||
|
v-else
|
||||||
|
:columns="tableDataFunc()"
|
||||||
|
:data-source="drawertableData"
|
||||||
|
:row-selection="{
|
||||||
|
selectedRowKeys: selectedRowKeys,
|
||||||
|
onChange: onSelectChange,
|
||||||
|
type: 'radio',
|
||||||
|
}"
|
||||||
:loading="tableDataTotal === -1 ? true : false"
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
:scroll="{ x: 700 }"
|
:scroll="{ x: 700 }"
|
||||||
@expand="expandTable"
|
@expand="expandTable"
|
||||||
@@ -83,16 +178,41 @@
|
|||||||
<button @click="closeDrawer" class="btn1">取消</button>
|
<button @click="closeDrawer" class="btn1">取消</button>
|
||||||
<button @click="updateTaskList" class="btn2">确定</button>
|
<button @click="updateTaskList" class="btn2">确定</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 有重复添加的项目时的弹窗 -->
|
||||||
|
<a-modal
|
||||||
|
v-model:visible="sameModal"
|
||||||
|
:footer="null"
|
||||||
|
:closable="sameCopy"
|
||||||
|
wrapClassName="sameModal"
|
||||||
|
centered="true"
|
||||||
|
>
|
||||||
|
<div class="delete">
|
||||||
|
<div class="del_header"></div>
|
||||||
|
<div class="del_main">
|
||||||
|
<div class="header">
|
||||||
|
<div class="icon"></div>
|
||||||
|
<span>提示</span>
|
||||||
|
<div class="close_exit" @click="closeSameModal"></div>
|
||||||
|
</div>
|
||||||
|
<div class="body">
|
||||||
|
<span>项目已存在,是否重复添加?</span>
|
||||||
|
</div>
|
||||||
|
<div class="del_btnbox">
|
||||||
|
<div class="del_btn btn1" @click="closeSameModal">
|
||||||
|
<div class="btnText">取消</div>
|
||||||
|
</div>
|
||||||
|
<div class="del_btn btn2" @click="sureSameModal">
|
||||||
|
<div class="btnText">确定</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a-modal>
|
||||||
</a-drawer>
|
</a-drawer>
|
||||||
|
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs,ref } from "vue";
|
import { reactive, toRefs } from "vue";
|
||||||
|
|
||||||
import * as apiTask from "../../api/indexTaskadd";
|
|
||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import * as apiProj from "../../api/index.js";
|
import * as apiProj from "../../api/index.js";
|
||||||
@@ -144,6 +264,11 @@ export default {
|
|||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
},
|
},
|
||||||
|
// 路径图里选择的阶段下的任务列表
|
||||||
|
chooseProjectList: {
|
||||||
|
type: String,
|
||||||
|
default: null,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
setup(props, ctx) {
|
setup(props, ctx) {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
@@ -155,101 +280,16 @@ export default {
|
|||||||
checkedC1: false,
|
checkedC1: false,
|
||||||
discussSettings: "",
|
discussSettings: "",
|
||||||
addLoading: false,
|
addLoading: false,
|
||||||
tableData: [
|
sameModal: false,
|
||||||
{
|
sameCopy: false,
|
||||||
key: 1,
|
sameProj: null,
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 5,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 2,
|
|
||||||
parentId:2,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 7,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 9,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 3,
|
|
||||||
parentId:3,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
selectedRows: [],
|
selectedRows: [],
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
tableDataTotal: 0,
|
tableDataTotal: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
//项目抽屉、列表参数
|
//项目抽屉、列表参数
|
||||||
drawertableData: [
|
drawertableData: [],
|
||||||
{
|
|
||||||
key: 1,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 5,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 2,
|
|
||||||
parentId:2,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 7,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 9,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 3,
|
|
||||||
parentId:3,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const tableDataFunc = () => {
|
const tableDataFunc = () => {
|
||||||
@@ -270,7 +310,7 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "创建人",
|
title: "创建人",
|
||||||
dataIndex: "creator",
|
dataIndex: "creater",
|
||||||
key: "creater",
|
key: "creater",
|
||||||
width: 100,
|
width: 100,
|
||||||
align: "center",
|
align: "center",
|
||||||
@@ -288,21 +328,22 @@ export default {
|
|||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:addprojvisible", false);
|
ctx.emit("update:addprojvisible", false);
|
||||||
ctx.emit("update:edit", false);
|
ctx.emit("update:edit", false);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
state.selectedRows = [];
|
||||||
|
state.selectedRowKeys = [];
|
||||||
};
|
};
|
||||||
const rowSelection =()=> ref({
|
// const rowSelection =()=> ref({
|
||||||
checkStrictly: false,
|
// checkStrictly: false,
|
||||||
onChange: (selectedRowKeys, selectedRows) => {
|
// onChange: (selectedRowKeys, selectedRows) => {
|
||||||
console.log(`selectedRowKeys: ${selectedRowKeys}`, 'selectedRows: ', selectedRows);
|
// console.log(`selectedRowKeys: ${selectedRowKeys}`, 'selectedRows: ', selectedRows);
|
||||||
},
|
// },
|
||||||
onSelect: (record, selected, selectedRows) => {
|
// onSelect: (record, selected, selectedRows) => {
|
||||||
console.log(record, selected, selectedRows);
|
// console.log(record, selected, selectedRows);
|
||||||
},
|
// },
|
||||||
onSelectAll: (selected, selectedRows, changeRows) => {
|
// onSelectAll: (selected, selectedRows, changeRows) => {
|
||||||
console.log(selected, selectedRows, changeRows);
|
// console.log(selected, selectedRows, changeRows);
|
||||||
},
|
// },
|
||||||
});
|
// });
|
||||||
const start = () => {
|
const start = () => {
|
||||||
state.loading = true;
|
state.loading = true;
|
||||||
// ajax request after empty completing
|
// ajax request after empty completing
|
||||||
@@ -311,31 +352,31 @@ export default {
|
|||||||
state.selectedRowKeys = [];
|
state.selectedRowKeys = [];
|
||||||
}, 1000);
|
}, 1000);
|
||||||
};
|
};
|
||||||
const onSelectChange =(selectedRowKeys,selectedRows) => {
|
// const onSelectChange = (selectedRowKeys, selectedRows) => {
|
||||||
console.log('selectedRowKeys changed: ', selectedRowKeys);
|
// console.log("selectedRowKeys changed: ", selectedRowKeys);
|
||||||
state.selectedRowKeys = selectedRowKeys;
|
// state.selectedRowKeys = selectedRowKeys;
|
||||||
this.selectedRows=selectedRows;
|
// this.selectedRows = selectedRows;
|
||||||
};
|
// };
|
||||||
const searchProjectList = () => {
|
const searchProjectList = () => {
|
||||||
getAllProjText();
|
getAllProjText();
|
||||||
}
|
};
|
||||||
const resetProjectList = () => {
|
const resetProjectList = () => {
|
||||||
state.inputV1 = "";
|
state.inputV1 = "";
|
||||||
state.inputV2 = "";
|
state.inputV2 = "";
|
||||||
state.inputV1 = "";
|
state.inputV1 = "";
|
||||||
getAllProjText();
|
getAllProjText();
|
||||||
}
|
};
|
||||||
|
|
||||||
//获取全部项目信息接口
|
//获取全部项目信息接口
|
||||||
const getAllProjText = () => {
|
const getAllProjText = () => {
|
||||||
apiProj
|
apiProj
|
||||||
.getProjectList({
|
.getProjectList({
|
||||||
"createName": state.inputV1,
|
createName: state.inputV1,
|
||||||
"manager": state.inputV2,
|
manager: state.inputV2,
|
||||||
"name":state.inputV3,
|
name: state.inputV3,
|
||||||
pageNo: state.currentPage,
|
pageNo: state.currentPage,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
"status": state.status
|
status: state.status,
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
let arr = res.data.data.rows;
|
let arr = res.data.data.rows;
|
||||||
@@ -344,12 +385,12 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.destroy()
|
message.destroy();
|
||||||
message.error("获取全部项目信息接口失败")
|
message.error("获取全部项目信息接口失败");
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
const afterVisibleChange = (bool) => {
|
const afterVisibleChange = (bool) => {
|
||||||
console.log("哈哈,我进来了")
|
console.log("哈哈,我进来了");
|
||||||
if (bool) {
|
if (bool) {
|
||||||
getAllProjText();
|
getAllProjText();
|
||||||
}
|
}
|
||||||
@@ -361,7 +402,7 @@ export default {
|
|||||||
getAllProjText();
|
getAllProjText();
|
||||||
};
|
};
|
||||||
const getTableDate = (data) => {
|
const getTableDate = (data) => {
|
||||||
let array = []
|
let array = [];
|
||||||
data.map((value) => {
|
data.map((value) => {
|
||||||
if (value.type == 3) {
|
if (value.type == 3) {
|
||||||
let obj = {
|
let obj = {
|
||||||
@@ -371,10 +412,10 @@ export default {
|
|||||||
name: value.name,
|
name: value.name,
|
||||||
manager: value.manager,
|
manager: value.manager,
|
||||||
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
}
|
creater: value.createName,
|
||||||
array.push(obj)
|
};
|
||||||
}
|
array.push(obj);
|
||||||
else {
|
} else {
|
||||||
let obj = {
|
let obj = {
|
||||||
key: value.projectId,
|
key: value.projectId,
|
||||||
parentId: value.parentId,
|
parentId: value.parentId,
|
||||||
@@ -382,28 +423,50 @@ export default {
|
|||||||
manager: value.manager,
|
manager: value.manager,
|
||||||
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||||
children: value.subList ? getTableDate(value.subList) : [],
|
children: value.subList ? getTableDate(value.subList) : [],
|
||||||
|
};
|
||||||
|
array.push(obj);
|
||||||
}
|
}
|
||||||
array.push(obj)
|
});
|
||||||
}
|
return array;
|
||||||
})
|
|
||||||
return array
|
|
||||||
};
|
};
|
||||||
//项目抽屉用的
|
//项目抽屉用的
|
||||||
const updateTaskList = () => {
|
const updateTaskList = () => {
|
||||||
//const resultArr = [];
|
//const resultArr = [];
|
||||||
state.selectedRows.forEach((item) => {
|
state.selectedRows.forEach((item) => {
|
||||||
|
let origin = JSON.parse(props.chooseProjectList);
|
||||||
|
console.log("ccxx", origin);
|
||||||
|
|
||||||
|
if (origin.length == 0) {
|
||||||
|
//可以直接添加到任务列表里
|
||||||
updateTask(item);
|
updateTask(item);
|
||||||
|
closeDrawer();
|
||||||
|
} else {
|
||||||
|
//需要先判断是否含有之前的
|
||||||
|
//根据courseId判断
|
||||||
|
let re = origin.filter((it) => {
|
||||||
|
return it.courseId == item.key;
|
||||||
});
|
});
|
||||||
|
console.log("re", re);
|
||||||
|
if (re.length == 0) {
|
||||||
|
updateTask(item);
|
||||||
|
} else {
|
||||||
|
state.sameProj = item;
|
||||||
|
//询问是否重复添加
|
||||||
|
showSameModal();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
const updateTask = (res) => {
|
const updateTask = (res) => {
|
||||||
if (props.isLevel == 1) {
|
if (props.isLevel == 1) {
|
||||||
RouterEditTask({
|
RouterEditTask({
|
||||||
chapterId: props.isactive,
|
chapterId: props.isactive,
|
||||||
courseId: 0,
|
courseId: res.key,
|
||||||
name: res.data.data.discussName,
|
name: res.name,
|
||||||
routerId: props.routerId,
|
routerId: props.routerId,
|
||||||
routerTaskId: props.routerTaskId || 0,
|
routerTaskId: props.routerTaskId || 0,
|
||||||
type: 8,
|
type: 13,
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||||
@@ -411,21 +474,31 @@ export default {
|
|||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 2) {
|
|
||||||
apiTask.addTask({
|
|
||||||
courseId: res.data.data.discussId,
|
|
||||||
duration: res.data.data.discussExplain,
|
|
||||||
name: res.data.data.discussName,
|
|
||||||
projectId: props.projectId,
|
|
||||||
projectTaskId: props.projectTaskId || 0,
|
|
||||||
stageId: props.chooseStageId,
|
|
||||||
type: 8,
|
|
||||||
});
|
|
||||||
} else if (props.isLevel == 3) {
|
|
||||||
console.log("");
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
const onSelectChange = (selectedRowKeys, selectRow) => {
|
||||||
|
console.log("selectedRowKeys changed: ", selectedRowKeys, selectRow);
|
||||||
|
state.selectedRowKeys = selectedRowKeys;
|
||||||
|
state.selectedRows = selectRow;
|
||||||
|
};
|
||||||
|
|
||||||
|
const showSameModal = () => {
|
||||||
|
state.sameModal = true;
|
||||||
|
};
|
||||||
|
const closeSameModal = () => {
|
||||||
|
state.sameProj = null;
|
||||||
|
state.sameModal = false;
|
||||||
|
};
|
||||||
|
const sureSameModal = () => {
|
||||||
|
// updateTask(state.sameProj);
|
||||||
|
state.selectedRows.forEach((item) => {
|
||||||
|
updateTask(item);
|
||||||
|
});
|
||||||
|
state.sameProj = null;
|
||||||
|
state.sameModal = false;
|
||||||
|
closeDrawer();
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
};
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
@@ -439,8 +512,9 @@ export default {
|
|||||||
searchProjectList,
|
searchProjectList,
|
||||||
resetProjectList,
|
resetProjectList,
|
||||||
handelChangePage,
|
handelChangePage,
|
||||||
rowSelection,
|
showSameModal,
|
||||||
|
closeSameModal,
|
||||||
|
sureSameModal,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@@ -449,8 +523,149 @@ export default {
|
|||||||
.ant-table-striped :deep(.table-striped) td {
|
.ant-table-striped :deep(.table-striped) td {
|
||||||
background-color: #fafafa !important;
|
background-color: #fafafa !important;
|
||||||
}
|
}
|
||||||
|
.sameModal {
|
||||||
|
.ant-modal {
|
||||||
|
width: 424px !important;
|
||||||
|
height: 258px !important;
|
||||||
|
.ant-modal-content {
|
||||||
|
width: 424px !important;
|
||||||
|
height: 258px !important;
|
||||||
|
.ant-modal-body {
|
||||||
|
width: 424px !important;
|
||||||
|
height: 258px !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
.delete {
|
||||||
|
z-index: 999;
|
||||||
|
width: 424px;
|
||||||
|
height: 258px;
|
||||||
|
background: #ffffff;
|
||||||
|
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
|
||||||
|
border-radius: 4px;
|
||||||
|
// position: absolute;
|
||||||
|
// left: 50%;
|
||||||
|
// top: 10%;
|
||||||
|
// transform: translate(-50%, -50%);
|
||||||
|
.del_header {
|
||||||
|
position: absolute;
|
||||||
|
width: calc(100%);
|
||||||
|
height: 68px;
|
||||||
|
background: linear-gradient(
|
||||||
|
rgba(78, 166, 255, 0.2) 0%,
|
||||||
|
rgba(78, 166, 255, 0) 100%
|
||||||
|
);
|
||||||
|
}
|
||||||
|
.del_main {
|
||||||
|
width: 100%;
|
||||||
|
position: relative;
|
||||||
|
.header {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-left: 26px;
|
||||||
|
font-size: 16px;
|
||||||
|
.icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 10px;
|
||||||
|
background-image: url(@/assets/images/taskpage/gan.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
.close_exit {
|
||||||
|
position: absolute;
|
||||||
|
right: 42px;
|
||||||
|
cursor: pointer;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
background-image: url(@/assets/images/coursewareManage/close.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.body {
|
||||||
|
width: 100%;
|
||||||
|
margin: 34px auto 56px auto;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
// background-color: red;
|
||||||
|
position: relative;
|
||||||
|
.back {
|
||||||
|
position: absolute;
|
||||||
|
top: 30px;
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #666666;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.del_btnbox {
|
||||||
|
display: flex;
|
||||||
|
margin: 30px auto;
|
||||||
|
justify-content: center;
|
||||||
|
.del_btn {
|
||||||
|
width: 100px;
|
||||||
|
height: 40px;
|
||||||
|
background: rgba(64, 158, 255, 0);
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
.btnText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.btn1 {
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
color: #4ea6ff;
|
||||||
|
margin-right: 14px;
|
||||||
|
}
|
||||||
|
.btn2 {
|
||||||
|
background-color: #4ea6ff;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.addrefDrawer {
|
.addrefDrawer {
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
|
// .main_notice {
|
||||||
|
// display: flex;
|
||||||
|
// justify-content: space-between;
|
||||||
|
// align-items: center;
|
||||||
|
// margin-bottom: 32px;
|
||||||
|
// height: 40px;
|
||||||
|
// background-color: #e9f6fe;
|
||||||
|
// .mntc_left {
|
||||||
|
// display: flex;
|
||||||
|
// align-items: center;
|
||||||
|
// .title {
|
||||||
|
// color: rgba(0, 0, 0, 0.65);
|
||||||
|
// margin-right: 17px;
|
||||||
|
// }
|
||||||
|
// .data {
|
||||||
|
// color: #388be1;
|
||||||
|
// }
|
||||||
|
// .notice_icon {
|
||||||
|
// width: 14px;
|
||||||
|
// height: 14px;
|
||||||
|
// margin-right: 9px;
|
||||||
|
// margin-left: 9px;
|
||||||
|
// background-image: url(@/assets/images/coursewareManage/gan.png);
|
||||||
|
// background-size: 100% 100%;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// .mntc_right {
|
||||||
|
// cursor: pointer;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
.header {
|
.header {
|
||||||
height: 73px;
|
height: 73px;
|
||||||
border-bottom: 1px solid #e8e8e8;
|
border-bottom: 1px solid #e8e8e8;
|
||||||
|
|||||||
@@ -210,7 +210,23 @@ export default {
|
|||||||
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
apiTask
|
||||||
|
.addTask({
|
||||||
|
courseId: res.data.data.linkId,
|
||||||
|
name: res.data.data.linkName,
|
||||||
|
projectTempalteId: props.projectTemplateId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 7,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
closeDrawer();
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//创建外链
|
//创建外链
|
||||||
|
|||||||
@@ -717,7 +717,26 @@ export default {
|
|||||||
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
console.log("");
|
let editObj = {
|
||||||
|
courseId: res.data.data.examinationId,
|
||||||
|
duration: 0,
|
||||||
|
name: res.data.data.examinationName,
|
||||||
|
projectId: props.projectId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 5,
|
||||||
|
};
|
||||||
|
// 新增编辑或新增项目
|
||||||
|
ProjectEditTask(editObj)
|
||||||
|
.then(() => {
|
||||||
|
message.success(
|
||||||
|
`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`
|
||||||
|
);
|
||||||
|
ctx.emit("changeData", false);
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,6 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="mi_btns">
|
<div class="mi_btns">
|
||||||
<div class="btn btn1">
|
<div class="btn btn1">
|
||||||
@@ -42,7 +41,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="main_table">
|
<div class="main_table">
|
||||||
<a-table
|
<a-table
|
||||||
style="border: 1px solid #f2f6fe"
|
style="border: 1px solid #f2f6fe"
|
||||||
|
|||||||
@@ -399,16 +399,17 @@ export default {
|
|||||||
array.push(obj)
|
array.push(obj)
|
||||||
})
|
})
|
||||||
state.tabledata = array
|
state.tabledata = array
|
||||||
|
ListOpera();
|
||||||
}
|
}
|
||||||
//获取任务管理列表
|
//获取任务管理列表
|
||||||
const getManageList = () => {
|
const getManageList = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
api
|
api
|
||||||
.taskStudentList(obj)
|
.taskStudentList(obj)
|
||||||
@@ -425,12 +426,12 @@ export default {
|
|||||||
//搜索任务列表
|
//搜索任务列表
|
||||||
const searchTaskList = () => {
|
const searchTaskList = () => {
|
||||||
let objser = {
|
let objser = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
if (state.name !== "" || state.projectName !== "") {
|
if (state.name !== "" || state.projectName !== "") {
|
||||||
api
|
api
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ export default {
|
|||||||
};
|
};
|
||||||
noticeList(obj)
|
noticeList(obj)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log("获取公告列表成功");
|
console.log("获取公告列表成功", res.data.data);
|
||||||
let result = res.data.data;
|
let result = res.data.data;
|
||||||
if (result.total > 0) {
|
if (result.total > 0) {
|
||||||
setNoticeData(result.rows);
|
setNoticeData(result.rows);
|
||||||
|
|||||||
@@ -254,6 +254,7 @@ export default {
|
|||||||
.queryExaminationPaper(obj)
|
.queryExaminationPaper(obj)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
getTableDate(res.data.data);
|
getTableDate(res.data.data);
|
||||||
|
message.success("获取选择考试列表成功");
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
|
|||||||
@@ -126,6 +126,8 @@
|
|||||||
<button class="btn2">确定</button>
|
<button class="btn2">确定</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 查看答卷抽屉 -->
|
||||||
|
<CQue v-model:CQvisible="CQvisible"/>
|
||||||
</a-drawer>
|
</a-drawer>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -133,8 +135,12 @@
|
|||||||
import { toRefs, reactive } from "vue";
|
import { toRefs, reactive } from "vue";
|
||||||
import { message } from 'ant-design-vue';
|
import { message } from 'ant-design-vue';
|
||||||
import * as api from "../../api/index";
|
import * as api from "../../api/index";
|
||||||
|
import CQue from './CheckQue.vue'
|
||||||
export default {
|
export default {
|
||||||
name: "TestManage",
|
name: "TestManage",
|
||||||
|
components: {
|
||||||
|
CQue,
|
||||||
|
},
|
||||||
props: {
|
props: {
|
||||||
TMvisible: {
|
TMvisible: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
@@ -158,6 +164,7 @@ export default {
|
|||||||
const state = reactive({
|
const state = reactive({
|
||||||
name: null,
|
name: null,
|
||||||
open: false,
|
open: false,
|
||||||
|
CQvisible:false, //查看答卷抽屉
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
@@ -182,15 +189,15 @@ export default {
|
|||||||
],
|
],
|
||||||
tabledata: [
|
tabledata: [
|
||||||
{
|
{
|
||||||
workNum:1,
|
key:1,
|
||||||
status:"已完成",
|
status:"已完成",
|
||||||
operation:"",
|
operation:"",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
workNum:1,
|
key:2,
|
||||||
status:"未完成",
|
status:"未完成",
|
||||||
operation:"",
|
operation:"",
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
selectedRowKeys:[],
|
selectedRowKeys:[],
|
||||||
});
|
});
|
||||||
@@ -325,20 +332,16 @@ export default {
|
|||||||
title: "操作",
|
title: "操作",
|
||||||
dataIndex: "operation",
|
dataIndex: "operation",
|
||||||
key: "operation",
|
key: "operation",
|
||||||
width: 60,
|
width: 90,
|
||||||
align: "center",
|
align: "center",
|
||||||
className: "h",
|
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
return columns;
|
return columns;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
//考试管理列表操作
|
//考试管理列表操作
|
||||||
const ListOpera = () => {
|
const ListOpera = () => {
|
||||||
let arr = state.tabledata;
|
let arr = state.tabledata;
|
||||||
if(props.itemsType == 5){
|
|
||||||
arr.map((value) => {
|
arr.map((value) => {
|
||||||
if(value.status == '已完成'){
|
if(value.status == '已完成'){
|
||||||
value.operation = (
|
value.operation = (
|
||||||
@@ -354,7 +357,7 @@ export default {
|
|||||||
class="operation"
|
class="operation"
|
||||||
style="cursor:pointer;margin-right:10px;"
|
style="cursor:pointer;margin-right:10px;"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
console.log('123')
|
state.CQvisible = true
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
查看
|
查看
|
||||||
@@ -382,7 +385,6 @@ export default {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
|
||||||
};
|
};
|
||||||
ListOpera();
|
ListOpera();
|
||||||
const onSelect = (record) => {
|
const onSelect = (record) => {
|
||||||
@@ -398,7 +400,6 @@ export default {
|
|||||||
if ( bol == true ) {
|
if ( bol == true ) {
|
||||||
getManageList();
|
getManageList();
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
const selectProjectName = (value, index) => {
|
const selectProjectName = (value, index) => {
|
||||||
console.log("value", value, index);
|
console.log("value", value, index);
|
||||||
@@ -438,12 +439,12 @@ export default {
|
|||||||
//获取任务管理列表
|
//获取任务管理列表
|
||||||
const getManageList = () => {
|
const getManageList = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
api
|
api
|
||||||
.taskStudentList(obj)
|
.taskStudentList(obj)
|
||||||
@@ -461,12 +462,12 @@ export default {
|
|||||||
//搜索任务列表
|
//搜索任务列表
|
||||||
const searchTaskList = () => {
|
const searchTaskList = () => {
|
||||||
let objser = {
|
let objser = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
if (state.name !== "" || state.projectName !== "") {
|
if (state.name !== "" || state.projectName !== "") {
|
||||||
api
|
api
|
||||||
|
|||||||
@@ -364,36 +364,37 @@ export default {
|
|||||||
//获取任务管理列表
|
//获取任务管理列表
|
||||||
const getManageList = () => {
|
const getManageList = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
api
|
api
|
||||||
.taskStudentList(obj)
|
.taskStudentList(obj)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
state.pageNo = res.data.data.pageNo;
|
state.pageNo = res.data.data.pageNo;
|
||||||
state.pageSize = res.data.data.pageSize;
|
state.pageSize = res.data.data.pageSize;
|
||||||
state.pageSize = res.data.data.pageSize;
|
|
||||||
for (let i = 0; i < res.data.data.rows.length; i++) {
|
for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||||
state.tabledata.push(res.data.data.rows[i].userInfoBo);
|
state.tabledata.push(res.data.data.rows[i].userInfoBo);
|
||||||
}
|
}
|
||||||
|
ListOpera();
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch((err) => {
|
||||||
|
console.log(err,'sss');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
//搜索任务列表
|
//搜索任务列表
|
||||||
const searchTaskList = () => {
|
const searchTaskList = () => {
|
||||||
let objser = {
|
let objser = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
if (state.name !== "" || state.projectName !== "") {
|
if (state.name !== "" || state.projectName !== "") {
|
||||||
api
|
api
|
||||||
|
|||||||
@@ -323,12 +323,12 @@ export default {
|
|||||||
//获取任务管理列表
|
//获取任务管理列表
|
||||||
const getManageList = () => {
|
const getManageList = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
api
|
api
|
||||||
.taskStudentList(obj)
|
.taskStudentList(obj)
|
||||||
@@ -347,12 +347,12 @@ export default {
|
|||||||
//搜索任务列表
|
//搜索任务列表
|
||||||
const searchTaskList = () => {
|
const searchTaskList = () => {
|
||||||
let objser = {
|
let objser = {
|
||||||
name: "",
|
// name: "",
|
||||||
pageNo: state.pageNo,
|
pageNo: state.pageNo,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
projectId: 27,
|
// projectId: 27,
|
||||||
projectTaskId: props.projectTaskId,
|
projectTaskId: props.projectTaskId,
|
||||||
status: -1,
|
status: 0,
|
||||||
};
|
};
|
||||||
if (state.name !== "" || state.projectName !== "") {
|
if (state.name !== "" || state.projectName !== "") {
|
||||||
api
|
api
|
||||||
|
|||||||
@@ -780,8 +780,8 @@
|
|||||||
支持:pdf.ppt.pptx.doc.docx.xls.xlsx.jpeg.png.gif.zip
|
支持:pdf.ppt.pptx.doc.docx.xls.xlsx.jpeg.png.gif.zip
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<!-- <div
|
||||||
v-for="item in docList"
|
v-for="item in fileList"
|
||||||
:key="item.src"
|
:key="item.src"
|
||||||
style="margin-top: 20px"
|
style="margin-top: 20px"
|
||||||
class="docListStyle"
|
class="docListStyle"
|
||||||
@@ -800,6 +800,30 @@
|
|||||||
item.name
|
item.name
|
||||||
}}</span>
|
}}</span>
|
||||||
<span style="color: #4ea6ff; float: right">删除</span>
|
<span style="color: #4ea6ff; float: right">删除</span>
|
||||||
|
</div> -->
|
||||||
|
<div
|
||||||
|
v-for="item in fileList"
|
||||||
|
:key="item.uid"
|
||||||
|
class="docListStyle"
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
src="@/assets/images/basicinfo/download.png"
|
||||||
|
style="
|
||||||
|
cursor: pointer;
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<span style="font: oblique bold 16px Sans-serif">{{
|
||||||
|
item.name
|
||||||
|
}}</span>
|
||||||
|
<span
|
||||||
|
style="color: #4ea6ff; float: right; cursor: pointer"
|
||||||
|
@click="deFile(item.uid)"
|
||||||
|
>删除</span
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1898,11 +1922,13 @@ export default {
|
|||||||
remark: state.remark,
|
remark: state.remark,
|
||||||
routerId: state.routerId,
|
routerId: state.routerId,
|
||||||
status: state.action,
|
status: state.action,
|
||||||
}).then((res) => {
|
|
||||||
console.log(res)
|
|
||||||
}).catch((err) => {
|
|
||||||
console.log(err)
|
|
||||||
})
|
})
|
||||||
|
.then((res) => {
|
||||||
|
console.log(res);
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (info.file.status === "done") {
|
if (info.file.status === "done") {
|
||||||
@@ -2003,6 +2029,32 @@ export default {
|
|||||||
message.error("编辑失败");
|
message.error("编辑失败");
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
const deFile = (id) => {
|
||||||
|
console.log(id);
|
||||||
|
let index = state.fileList.findIndex((item) => {
|
||||||
|
item.uid == id;
|
||||||
|
});
|
||||||
|
state.fileList.splice(index, 1);
|
||||||
|
let str = JSON.stringify(state.fileList);
|
||||||
|
//要编辑路径图
|
||||||
|
editRoutered({
|
||||||
|
attach: str,
|
||||||
|
name: state.styTitle,
|
||||||
|
picUrl: state.picUrl,
|
||||||
|
remark: state.remark,
|
||||||
|
routerId: state.routerId,
|
||||||
|
status: state.action,
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
console.log(res);
|
||||||
|
message.destroy();
|
||||||
|
return message.success("删除成功");
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
message.warning("删除失败");
|
||||||
|
});
|
||||||
|
};
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
...toRefs(levelList),
|
...toRefs(levelList),
|
||||||
@@ -2052,6 +2104,7 @@ export default {
|
|||||||
stageChange,
|
stageChange,
|
||||||
pageChange,
|
pageChange,
|
||||||
setconfig,
|
setconfig,
|
||||||
|
deFile,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@@ -3924,6 +3977,11 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.btnbox {
|
||||||
|
.ant-upload-list {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.onemain {
|
.onemain {
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
|
|||||||
@@ -263,6 +263,9 @@
|
|||||||
<add-case
|
<add-case
|
||||||
v-model:addcaseVisible="addcasevisible"
|
v-model:addcaseVisible="addcasevisible"
|
||||||
@changeData="updateTableData"
|
@changeData="updateTableData"
|
||||||
|
:isLevel="isLevel"
|
||||||
|
v-model:isactive="isactive"
|
||||||
|
v-model:routerId="routerId"
|
||||||
v-model:edit="edit"
|
v-model:edit="edit"
|
||||||
v-model:projectId="projectId"
|
v-model:projectId="projectId"
|
||||||
v-model:chooseStageId="chooseStageId"
|
v-model:chooseStageId="chooseStageId"
|
||||||
@@ -420,10 +423,13 @@
|
|||||||
:isLevel="isLevel"
|
:isLevel="isLevel"
|
||||||
@changeData="updateTableData"
|
@changeData="updateTableData"
|
||||||
v-model:isactive="isactive"
|
v-model:isactive="isactive"
|
||||||
|
v-model:routerTaskId="routerTaskId"
|
||||||
v-model:edit="edit"
|
v-model:edit="edit"
|
||||||
v-model:routerId="routerId"
|
v-model:routerId="routerId"
|
||||||
|
v-model:projectId="projectId"
|
||||||
|
v-model:chooseStageId="chooseStageId"
|
||||||
|
v-model:projectTaskId="projectTaskId"
|
||||||
v-model:EditEvalId="EditEvalId"
|
v-model:EditEvalId="EditEvalId"
|
||||||
v-model:routerTaskId="routerTaskId"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- 添加测评侧弹窗 -->
|
<!-- 添加测评侧弹窗 -->
|
||||||
@@ -481,9 +487,7 @@
|
|||||||
<div class="item" @click="showDrawerAddProj">
|
<div class="item" @click="showDrawerAddProj">
|
||||||
<div class="itcon">
|
<div class="itcon">
|
||||||
<div class="img">
|
<div class="img">
|
||||||
<img
|
<img src="../../assets/images/leveladd/xiang.png" />
|
||||||
src="../../assets/images/leveladd/xiang.png"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="text">项目</div>
|
<div class="text">项目</div>
|
||||||
<div>
|
<div>
|
||||||
@@ -497,6 +501,7 @@
|
|||||||
v-model:chooseStageId="chooseStageId"
|
v-model:chooseStageId="chooseStageId"
|
||||||
v-model:EditProjectId="EditProjectId"
|
v-model:EditProjectId="EditProjectId"
|
||||||
v-model:routerTaskId="routerTaskId"
|
v-model:routerTaskId="routerTaskId"
|
||||||
|
v-model:chooseProjectList = "chooseProjectList"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -720,9 +725,6 @@
|
|||||||
<!-- 无数据样式 -->
|
<!-- 无数据样式 -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="right" :style="{ display: gqxy_hs ? 'none' : 'block' }">
|
<div class="right" :style="{ display: gqxy_hs ? 'none' : 'block' }">
|
||||||
<div class="addhead">
|
<div class="addhead">
|
||||||
@@ -1043,7 +1045,7 @@ import { deleteStudyTask } from "../../api/indexStudy";
|
|||||||
import draggable from "vuedraggable";
|
import draggable from "vuedraggable";
|
||||||
import { editTask } from "../../api/indexTaskadd";
|
import { editTask } from "../../api/indexTaskadd";
|
||||||
|
|
||||||
import { RouterEditTask } from "@/api/indexTask";
|
// import { RouterEditTask } from "@/api/indexTask";
|
||||||
|
|
||||||
import { toDate } from "../../api/method";
|
import { toDate } from "../../api/method";
|
||||||
import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
||||||
@@ -1169,55 +1171,9 @@ export default {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
//项目抽屉、列表参数
|
//项目抽屉、列表参数
|
||||||
drawertableData: [
|
|
||||||
{
|
|
||||||
key: 1,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 5,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 2,
|
|
||||||
parentId:2,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 7,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
children:[
|
|
||||||
{
|
|
||||||
key: 9,
|
|
||||||
parentId:1,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 3,
|
|
||||||
parentId:3,
|
|
||||||
name: '123',
|
|
||||||
manager:'afssfa',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
selectedProjRowKeys:[],
|
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
tableDataTotal: 0,
|
tableDataTotal: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
visible: false,
|
|
||||||
//项目
|
//项目
|
||||||
editproj: false,
|
editproj: false,
|
||||||
addprojvisible: false,
|
addprojvisible: false,
|
||||||
@@ -1292,6 +1248,7 @@ export default {
|
|||||||
deleteChapterId: null, //删除关卡id
|
deleteChapterId: null, //删除关卡id
|
||||||
|
|
||||||
unlockModeVisible: false, //切换模式抽屉
|
unlockModeVisible: false, //切换模式抽屉
|
||||||
|
chooseProjectList: null, //选择的阶段下的任务列表
|
||||||
});
|
});
|
||||||
|
|
||||||
const showModal = (element) => {
|
const showModal = (element) => {
|
||||||
@@ -1468,16 +1425,17 @@ export default {
|
|||||||
state.EditProjectId = id;
|
state.EditProjectId = 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);
|
||||||
for (let i = 0; i < state.level.length; i++) {
|
for (let i = 0; i < state.level.length; i++) {
|
||||||
if (state.level[i].chapterId === id) {
|
if (state.level[i].chapterId === id) {
|
||||||
let array = [];
|
let array = [];
|
||||||
|
state.chooseProjectList = JSON.stringify(state.level[i].taskList);
|
||||||
|
// console.log(
|
||||||
|
// "goggoo",
|
||||||
|
// Object.prototype.toString.call(state.chooseProjectList)
|
||||||
|
// );
|
||||||
state.level[i].taskList.forEach((element) => {
|
state.level[i].taskList.forEach((element) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
id: element.routerTaskId,
|
id: element.routerTaskId,
|
||||||
@@ -1559,6 +1517,7 @@ export default {
|
|||||||
"测评",
|
"测评",
|
||||||
"评估",
|
"评估",
|
||||||
"投票",
|
"投票",
|
||||||
|
"项目",
|
||||||
];
|
];
|
||||||
return typeRules[index];
|
return typeRules[index];
|
||||||
};
|
};
|
||||||
@@ -1924,30 +1883,6 @@ export default {
|
|||||||
state.removeStageId = option.chapterId;
|
state.removeStageId = option.chapterId;
|
||||||
};
|
};
|
||||||
|
|
||||||
//添加关卡项目
|
|
||||||
const updateTask = () => {
|
|
||||||
RouterEditTask({
|
|
||||||
duration: 0,
|
|
||||||
flag: true,
|
|
||||||
chapterId: state.isactive,
|
|
||||||
courseId: Number(state.projId),
|
|
||||||
name: state.projName,
|
|
||||||
routerId: state.routerId,
|
|
||||||
routerTaskId: state.routerTaskId,
|
|
||||||
type: 13,
|
|
||||||
})
|
|
||||||
.then(( ) => {
|
|
||||||
message.success(`${state.editproj ? "编辑" : "新增"}关卡任务成功`);
|
|
||||||
// ctx.emit("changeData", false);
|
|
||||||
leaveProjDrawer()
|
|
||||||
state.addLoading = false;
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
message.destroy()
|
|
||||||
message.error("添加关卡任务失败")
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
//显示切换模式抽屉
|
//显示切换模式抽屉
|
||||||
const showModeVisible = () => {
|
const showModeVisible = () => {
|
||||||
state.unlockModeVisible = true;
|
state.unlockModeVisible = true;
|
||||||
@@ -1981,7 +1916,6 @@ export default {
|
|||||||
showDrawerAddLive,
|
showDrawerAddLive,
|
||||||
showDrawerAddRef,
|
showDrawerAddRef,
|
||||||
showDrawerAddProj,
|
showDrawerAddProj,
|
||||||
leaveProjDrawer,
|
|
||||||
closeDeleteModel,
|
closeDeleteModel,
|
||||||
clearEditData,
|
clearEditData,
|
||||||
showDrawerAddDiscuss,
|
showDrawerAddDiscuss,
|
||||||
@@ -1998,7 +1932,6 @@ export default {
|
|||||||
closeChangeModal,
|
closeChangeModal,
|
||||||
handleChangeStage,
|
handleChangeStage,
|
||||||
|
|
||||||
updateTask,
|
|
||||||
|
|
||||||
showDeleteChapter,
|
showDeleteChapter,
|
||||||
closeDeleteChapter,
|
closeDeleteChapter,
|
||||||
|
|||||||
@@ -272,13 +272,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
<a-tab-pane key="2" tab="公告" force-render>
|
<a-tab-pane key="2" tab="公告" force-render>
|
||||||
<div class="notice">
|
|
||||||
<div class="split"></div>
|
<div class="split"></div>
|
||||||
<div class="ntc_tit"><span>公告</span></div>
|
<a-tabs v-model:activeKey="activeKeyNotice">
|
||||||
<hr color="#E8E8E8" />
|
<a-tab-pane key="11" tab="公告">
|
||||||
|
<div class="notice">
|
||||||
<div class="ntc_body">
|
<div class="ntc_body">
|
||||||
<div class="ntc_switch">
|
<div class="ntc_switch">
|
||||||
<a-switch v-model:checked="checked" @click="changeopclo" />
|
<a-switch size="small" v-model:checked="checked" @click="changeopclo" />
|
||||||
<div
|
<div
|
||||||
class="opclo"
|
class="opclo"
|
||||||
:style="{ display: hideshow ? 'block' : 'none' }"
|
:style="{ display: hideshow ? 'block' : 'none' }"
|
||||||
@@ -316,6 +317,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
|
|
||||||
|
</a-tabs>
|
||||||
|
|
||||||
|
</a-tab-pane>
|
||||||
<a-tab-pane key="3" tab="项目积分">
|
<a-tab-pane key="3" tab="项目积分">
|
||||||
<div class="split"></div>
|
<div class="split"></div>
|
||||||
<div class="projectscore">
|
<div class="projectscore">
|
||||||
@@ -326,14 +331,14 @@
|
|||||||
<div class="pjc_body">
|
<div class="pjc_body">
|
||||||
<div class="groupright">
|
<div class="groupright">
|
||||||
<div class="spandiv"><span class="spantext">规则</span></div>
|
<div class="spandiv"><span class="spantext">规则</span></div>
|
||||||
<div v-if="edit" class="btns">
|
<div v-if="edit" class="btns" style="display:none">
|
||||||
<div class="btn1" @click="edit = !edit">
|
<div class="btn1" @click="edit = !edit">
|
||||||
<img src="../../assets/images/projectadd/edit1.png" />
|
<img src="../../assets/images/projectadd/edit1.png" />
|
||||||
<span class="btn1text">编辑</span>
|
<span class="btn1text">编辑</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else class="btns">
|
<div v-else class="btns">
|
||||||
<div class="btn1" @click="edit = !edit">
|
<div class="btn1" @click="editRule">
|
||||||
<span class="btn1text">保存</span>
|
<span class="btn1text">保存</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -349,9 +354,40 @@
|
|||||||
<span>完成【必修/选修】获得 </span
|
<span>完成【必修/选修】获得 </span
|
||||||
><span class="scoretext">{{ score1 }} </span><span>积分</span>
|
><span class="scoretext">{{ score1 }} </span><span>积分</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="content content3">
|
<div class="content">
|
||||||
<span>优秀学员可获得 </span
|
<span>完成作业成绩不低于 </span
|
||||||
><span class="scoretext">{{ score2 }}</span
|
><span class="scoretext">{{ done2 }}</span
|
||||||
|
><span>分获得</span> <span class="scoretext">{{ done3 }}</span
|
||||||
|
><span>积分</span>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>前</span><span class="scoretext">{{ four1 }}</span
|
||||||
|
><span>名学完在线课程获得</span>
|
||||||
|
<span class="scoretext">{{ four2 }}</span
|
||||||
|
><span style="margin-right: 50px">积分</span> <span>前</span
|
||||||
|
><span class="scoretext">{{ four3 }}</span
|
||||||
|
><span>名提交作业且成绩不低于</span>
|
||||||
|
<span class="scoretext">{{ four4 }}</span
|
||||||
|
><span>分获得</span> <span class="scoretext">{{ four5 }}</span
|
||||||
|
><span>积分</span>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>考试成绩高于</span
|
||||||
|
><span class="scoretext">{{ five1 }}</span
|
||||||
|
><span>分获得</span> <span class="scoretext">{{ five2 }}</span
|
||||||
|
><span>积分</span>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>考勤正常学员获得 </span
|
||||||
|
><span class="scoretext">{{ six1 }}</span
|
||||||
|
><span>积分</span>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>成为小组长获得</span
|
||||||
|
><span class="scoretext">{{ seven1 }}</span
|
||||||
|
><span style="margin-right: 50px">积分</span>
|
||||||
|
<span>优秀学员可获得</span>
|
||||||
|
<span class="scoretext">{{ seven2 }}</span
|
||||||
><span>积分</span>
|
><span>积分</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -371,11 +407,60 @@
|
|||||||
/> </span
|
/> </span
|
||||||
><span>积分</span>
|
><span>积分</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="content content3">
|
<div class="content">
|
||||||
<span>优秀学员可获得 </span
|
<span>完成作业成绩不低于 </span
|
||||||
><span
|
><a-input v-model:value="done2" :bordered="false" /><span
|
||||||
><a-input v-model:value="score2" :bordered="false" /></span
|
>分获得</span
|
||||||
><span>积分</span>
|
>
|
||||||
|
<a-input v-model:value="done3" :bordered="false" /><span
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>前</span
|
||||||
|
><a-input v-model:value="four1" :bordered="false" /><span
|
||||||
|
>名学完在线课程获得</span
|
||||||
|
>
|
||||||
|
<a-input v-model:value="four2" :bordered="false" /><span
|
||||||
|
style="margin-right: 50px"
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
|
<span>前</span
|
||||||
|
><a-input v-model:value="four3" :bordered="false" /><span
|
||||||
|
>名提交作业且成绩不低于</span
|
||||||
|
>
|
||||||
|
<a-input v-model:value="four4" :bordered="false" /><span
|
||||||
|
>分获得</span
|
||||||
|
>
|
||||||
|
<a-input v-model:value="four5" :bordered="false" /><span
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>考试成绩高于</span
|
||||||
|
><a-input v-model:value="five1" :bordered="false" /><span
|
||||||
|
>分获得</span
|
||||||
|
>
|
||||||
|
<a-input v-model:value="five2" :bordered="false" /><span
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>考勤正常学员获得 </span
|
||||||
|
><a-input v-model:value="six1" :bordered="false" /><span
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>成为小组长获得</span
|
||||||
|
><a-input v-model:value="seven1" :bordered="false" /><span
|
||||||
|
style="margin-right: 50px"
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
|
<span>优秀学员可获得</span>
|
||||||
|
<a-input v-model:value="seven2" :bordered="false" /><span
|
||||||
|
>积分</span
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -561,10 +646,11 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { ref, reactive, defineComponent, toRefs, onMounted} from "vue";
|
import { ref, reactive, defineComponent, toRefs, onMounted,computed} from "vue";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import * as api from "@/api/indexTemplate"
|
import * as api from "@/api/indexTemplate"
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
|
import {scoreRule,setScoreRule} from "@/api/indexTaskadd"
|
||||||
import { useStore } from "vuex";
|
import { useStore } from "vuex";
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "LibraryAdd",
|
name: "LibraryAdd",
|
||||||
@@ -688,8 +774,19 @@ export default defineComponent({
|
|||||||
value3: false,
|
value3: false,
|
||||||
value4: false,
|
value4: false,
|
||||||
hideshow: true,
|
hideshow: true,
|
||||||
score1: 5,
|
score1: null,
|
||||||
score2: 5,
|
done2: null,
|
||||||
|
done3: null,
|
||||||
|
four1: null,
|
||||||
|
four2: null,
|
||||||
|
four3: null,
|
||||||
|
four4: null,
|
||||||
|
four5: null,
|
||||||
|
five1: null,
|
||||||
|
five2: null,
|
||||||
|
six1: null,
|
||||||
|
seven1: null,
|
||||||
|
seven2: null,
|
||||||
edit: true,
|
edit: true,
|
||||||
// 共享文档列表
|
// 共享文档列表
|
||||||
docList:[
|
docList:[
|
||||||
@@ -731,6 +828,23 @@ export default defineComponent({
|
|||||||
const changecheck2 = () => {
|
const changecheck2 = () => {
|
||||||
state.checked2 = !state.checked2;
|
state.checked2 = !state.checked2;
|
||||||
};
|
};
|
||||||
|
const scoresum = computed(() => {
|
||||||
|
// console.log(Object.prototype.toString.call(Number(state.score1)));
|
||||||
|
// if (Object.prototype.toString.call(state.score1) !== "[object Number]") {
|
||||||
|
// message.destroy();
|
||||||
|
// return message.warning("请输入合法数字");
|
||||||
|
// }
|
||||||
|
return (
|
||||||
|
Number(state.score1) +
|
||||||
|
Number(state.done3) +
|
||||||
|
Number(state.four2) +
|
||||||
|
Number(state.four5) +
|
||||||
|
Number(state.five2) +
|
||||||
|
Number(state.six1) +
|
||||||
|
Number(state.seven1) +
|
||||||
|
Number(state.seven2)
|
||||||
|
);
|
||||||
|
});
|
||||||
const changecheck3 = () => {
|
const changecheck3 = () => {
|
||||||
state.checked3 = !state.checked3;
|
state.checked3 = !state.checked3;
|
||||||
};
|
};
|
||||||
@@ -760,7 +874,10 @@ export default defineComponent({
|
|||||||
];
|
];
|
||||||
return typeRules[type];
|
return typeRules[type];
|
||||||
};
|
};
|
||||||
onMounted(() => {getDetail()});
|
onMounted(() => {
|
||||||
|
getDetail();
|
||||||
|
getScoreRule();
|
||||||
|
});
|
||||||
// 获取详情
|
// 获取详情
|
||||||
const getDetail = () => {
|
const getDetail = () => {
|
||||||
api.templateDetail(store.state.projectTemplateId).then(res => {
|
api.templateDetail(store.state.projectTemplateId).then(res => {
|
||||||
@@ -772,6 +889,7 @@ export default defineComponent({
|
|||||||
state.projectInfo.manager = res.data.data.projectTemplateInfo.manager
|
state.projectInfo.manager = res.data.data.projectTemplateInfo.manager
|
||||||
state.projectInfo.notice = res.data.data.projectTemplateInfo.notice
|
state.projectInfo.notice = res.data.data.projectTemplateInfo.notice
|
||||||
state.projectInfo.sourceBelongId = res.data.data.projectTemplateInfo.sourceBelongId
|
state.projectInfo.sourceBelongId = res.data.data.projectTemplateInfo.sourceBelongId
|
||||||
|
state.projectInfo.managerId = res.data.data.projectTemplateInfo.managerId
|
||||||
state.projectInfo.remark = res.data.data.stageList.remark
|
state.projectInfo.remark = res.data.data.stageList.remark
|
||||||
state.projectInfo.courseSyncFlag = res.data.data.projectTemplateInfo.courseSyncFlag
|
state.projectInfo.courseSyncFlag = res.data.data.projectTemplateInfo.courseSyncFlag
|
||||||
state.projectInfo.level = res.data.data.projectTemplateInfo.level
|
state.projectInfo.level = res.data.data.projectTemplateInfo.level
|
||||||
@@ -802,11 +920,25 @@ export default defineComponent({
|
|||||||
// 发布公告
|
// 发布公告
|
||||||
const addNotice = () => {
|
const addNotice = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
|
"name": state.projectInfo.name,
|
||||||
|
"category": state.projectInfo.category,
|
||||||
|
"picUrl": "x",
|
||||||
|
"beginTime": Number(state. projectInfo.beginTime) || 1,
|
||||||
|
"endTime": 1,
|
||||||
|
"manager": state.projectInfo.manager,
|
||||||
|
"managerId": state.projectInfo.managerId || 0,
|
||||||
|
"sourceBelongId": state.projectInfo.sourceBelongId,
|
||||||
|
"level": state.projectInfo.level,
|
||||||
|
"systemId": state.projectInfo.systemId,
|
||||||
|
"boeFlag": state.projectInfo.boeFlag ? 1:0,
|
||||||
|
"courseSyncFlag": state.projectInfo.courseSyncFlag? 1:0,
|
||||||
"notice": state.projectInfo.notice,
|
"notice": state.projectInfo.notice,
|
||||||
"projectId": store.state.projectTemplateId,
|
"noticeFlag": 0,
|
||||||
"title": ""
|
"projectTemplateId": store.state.projectTemplateId,
|
||||||
|
"remark": "",
|
||||||
|
"status": 0,
|
||||||
};
|
};
|
||||||
api.templateEdit(obj).methods(obj).then(res => {
|
api.templateEdit(obj).then(res => {
|
||||||
message.success("公告发布成功")
|
message.success("公告发布成功")
|
||||||
console.log(res)
|
console.log(res)
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
@@ -881,6 +1013,94 @@ export default defineComponent({
|
|||||||
console.log(err)
|
console.log(err)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
const getScoreRule = () => {
|
||||||
|
scoreRule({
|
||||||
|
projectId: store.state.projectTemplateId,
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
console.log("获取了项目积分规则", res.data.data);
|
||||||
|
let result = res.data.data;
|
||||||
|
scoresum.value = result.totalScore; //Write operation failed: computed value is readonly
|
||||||
|
state.seven1 = result.leaderScore;
|
||||||
|
state.score1 = result.courseScore;
|
||||||
|
state.done2 = result.homeworkItem[1].scoreLimit;
|
||||||
|
state.done3 = result.homeworkItem[1].score;
|
||||||
|
state.four1 = result.topCompleteCourseItem[0].numLimit;
|
||||||
|
state.four2 = result.topCompleteCourseItem[0].score;
|
||||||
|
state.four3 = result.homeworkItem[0].numLimit;
|
||||||
|
state.four4 = result.homeworkItem[0].scoreLimit;
|
||||||
|
state.four5 = result.homeworkItem[0].score;
|
||||||
|
state.five1 = result.examItem[0].scoreLimit;
|
||||||
|
state.five2 = result.examItem[0].score;
|
||||||
|
state.six1 = result.signScore;
|
||||||
|
state.seven1 = result.leaderScore;
|
||||||
|
state.seven2 = result.topStudentScore;
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log("获取项目积分规则失败了", err);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
//设置积分规则
|
||||||
|
const editRule = () => {
|
||||||
|
let obj = {
|
||||||
|
courseScore: state.score1,
|
||||||
|
examItem: [
|
||||||
|
{
|
||||||
|
numLimit: 0,
|
||||||
|
score: state.five2,
|
||||||
|
scoreLimit: state.five1,
|
||||||
|
type: 3,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
|
||||||
|
homeworkItem: [
|
||||||
|
//有名次要求的提交作业
|
||||||
|
{
|
||||||
|
numLimit: state.four3,
|
||||||
|
score: state.four5,
|
||||||
|
scoreLimit: state.four4,
|
||||||
|
type: 2,
|
||||||
|
},
|
||||||
|
//无名次要求的提交作业
|
||||||
|
{
|
||||||
|
numLimit: 0,
|
||||||
|
score: state.done3,
|
||||||
|
scoreLimit: state.done2,
|
||||||
|
type: 2,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
leaderScore: state.seven1,
|
||||||
|
projectId: store.state.projectTemplateId,
|
||||||
|
signScore: state.six1,
|
||||||
|
topCompleteCourseItem: [
|
||||||
|
{
|
||||||
|
numLimit: state.four1,
|
||||||
|
score: state.four2,
|
||||||
|
scoreLimit: 0,
|
||||||
|
type: 1,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
topStudentScore: state.seven2,
|
||||||
|
totalScore: scoresum.value,
|
||||||
|
};
|
||||||
|
console.log(obj);
|
||||||
|
setScoreRule(obj)
|
||||||
|
.then((res) => {
|
||||||
|
console.log(res.data, "修改成功");
|
||||||
|
message.destroy();
|
||||||
|
return message.success("修改积分规则成功");
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err.data);
|
||||||
|
message.destroy();
|
||||||
|
return message.warning("修改积分规则失败");
|
||||||
|
});
|
||||||
|
// scoreRule({
|
||||||
|
// projectId: props.projectId,
|
||||||
|
// });
|
||||||
|
|
||||||
|
state.edit = true;
|
||||||
|
};
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
value,
|
value,
|
||||||
@@ -896,14 +1116,11 @@ export default defineComponent({
|
|||||||
stateEdit,
|
stateEdit,
|
||||||
taskEdit,
|
taskEdit,
|
||||||
toEdit,
|
toEdit,
|
||||||
|
getScoreRule,
|
||||||
|
editRule,
|
||||||
|
scoresum,
|
||||||
};
|
};
|
||||||
},
|
}
|
||||||
computed: {
|
|
||||||
// 计算属性的 getter
|
|
||||||
scoresum: function () {
|
|
||||||
return Number(this.score1) + Number(this.score2);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@@ -1395,7 +1612,7 @@ export default defineComponent({
|
|||||||
|
|
||||||
}
|
}
|
||||||
.ntc_body {
|
.ntc_body {
|
||||||
margin-left: 34px;
|
margin-left: 65px;
|
||||||
margin-right: 34px;
|
margin-right: 34px;
|
||||||
.ntc_switch {
|
.ntc_switch {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -1988,11 +1988,9 @@ export default {
|
|||||||
|
|
||||||
//打开测评的弹窗
|
//打开测评的弹窗
|
||||||
const showEditEvalDrawer = (id, eleId) => {
|
const showEditEvalDrawer = (id, eleId) => {
|
||||||
console.log("222222222222222222222", id);
|
|
||||||
state.addevalvisible = true;
|
state.addevalvisible = true;
|
||||||
state.projectTaskId = eleId;
|
state.projectTaskId = eleId;
|
||||||
state.EditRefId = id;
|
state.EditEvalId = id;
|
||||||
console.log(state.EditRefId);
|
|
||||||
};
|
};
|
||||||
//编辑的按钮
|
//编辑的按钮
|
||||||
const decideType = (type, id, eleId) => {
|
const decideType = (type, id, eleId) => {
|
||||||
@@ -2020,6 +2018,8 @@ export default {
|
|||||||
showDrawerOnline(id, eleId);
|
showDrawerOnline(id, eleId);
|
||||||
} else if (type == "面授") {
|
} else if (type == "面授") {
|
||||||
showDrawerFaceteach(id, eleId);
|
showDrawerFaceteach(id, eleId);
|
||||||
|
} else if (type == "案例") {
|
||||||
|
showDrawerAddCase(id, eleId);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const showdeAll = () => {
|
const showdeAll = () => {
|
||||||
|
|||||||
@@ -3650,6 +3650,7 @@ export default {
|
|||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log("上传失败了", err);
|
console.log("上传失败了", err);
|
||||||
|
message.warning("删除失败");
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
|||||||
@@ -346,7 +346,7 @@ export default {
|
|||||||
storage.remove("projectAddId");
|
storage.remove("projectAddId");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/manage/libraryAdd",
|
path: "/libraryAdd",
|
||||||
});
|
});
|
||||||
}, 400);
|
}, 400);
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user