diff --git a/src/api/indexTask.js b/src/api/indexTask.js
index ec36f89c..7862f35b 100644
--- a/src/api/indexTask.js
+++ b/src/api/indexTask.js
@@ -19,3 +19,5 @@ export const IsExistenceProject = (obj) => http.post('/admin/project/queryTaskDo
// 判断当前在线课是否已经添加到该模板库下
export const IsExistenceProjectTemplate = (obj) => http.post('/admin/project/template/queryTaskDoesItExistForTemplate',obj);
+// 新建外部考试
+export const CreateExternalExam = (obj) => http.post('/external/exam/createExternalExam',obj);
\ No newline at end of file
diff --git a/src/components/drawers/ActiveAttendance.vue b/src/components/drawers/ActiveAttendance.vue
index 7b780f05..5f071b3f 100644
--- a/src/components/drawers/ActiveAttendance.vue
+++ b/src/components/drawers/ActiveAttendance.vue
@@ -899,7 +899,7 @@ export default {
process.env.VUE_APP_BASE_API
}/admin/student/exportTaskStudent?currentStageId=${
props.datasource.chapterId
- }&type=2&pid=${props.datasource.courseId}&thirdType=1&taskId=${props.datasource.routerTaskId}`
+ }&type=2&pid=${props.datasource.courseId}&thirdType=1&taskId=${props.datasource.routerTaskId}&taskType=${props.datasource.type}`
);
}else{
window.open(
@@ -907,7 +907,7 @@ export default {
process.env.VUE_APP_BASE_API
}/admin/student/exportTaskStudent?currentStageId=${
props.datasource.stageId
- }&type=1&pid=${props.datasource.courseId}&thirdType=1&taskId=${props.datasource.projectTaskId}`
+ }&type=1&pid=${props.datasource.courseId}&thirdType=1&taskId=${props.datasource.projectTaskId}&taskType=${props.datasource.type}`
);
}
diff --git a/src/components/drawers/AddTest.vue b/src/components/drawers/AddTest.vue
index 6389e906..e1ee545c 100644
--- a/src/components/drawers/AddTest.vue
+++ b/src/components/drawers/AddTest.vue
@@ -303,7 +303,7 @@
{
- if (!state.test.examinationName) {
- message.destroy();
- return message.warning("请输入考试名称");
- }
- if (!state.paperId) {
- message.destroy();
- return message.warning("请输入选择试卷");
- }
- if (!state.test.chooseTime) {
- message.destroy();
- return message.warning("请输入开始结束时间");
- }
- if (!state.test.examinationDuration) {
- message.destroy();
- return message.warning("请输入考试时长");
- }
- if (!state.test.passLine) {
- message.destroy();
- return message.warning("请输入及格线");
- }
+ if(state.isOuter==1){
+
+ if (!state.test.examinationName) {
+ message.destroy();
+ return message.warning("请输入考试名称");
+ }
+ if (!state.paperId) {
+ message.destroy();
+ return message.warning("请输入选择试卷");
+ }
+ if (!state.test.chooseTime) {
+ message.destroy();
+ return message.warning("请输入开始结束时间");
+ }
+ if (!state.test.examinationDuration) {
+ message.destroy();
+ return message.warning("请输入考试时长");
+ }
+ if (!state.test.passLine) {
+ message.destroy();
+ return message.warning("请输入及格线");
+ }
+
+ state.addLoading = true;
+ console.log("test", state.test);
+ // state.test.examinationStartTime = toDate(
+ // new Date(state.test.chooseTime[0].$d).getTime() / 1000,
+ // "Y-M-D h:m"
+ // );
+ // state.test.examinationEndTime =toDate(
+ // new Date(state.test.$slotschooseTime[1].$d).getTime() / 1000,
+ // "Y-M-D h:m"
+ // );
+ (state.test.examinationStartTime = dayjs(state.test.chooseTime[0]).format(
+ "YYYY-MM-DD HH:mm"
+ )),
+ (state.test.examinationEndTime = dayjs(state.test.chooseTime[1]).format(
+ "YYYY-MM-DD HH:mm"
+ )),
+ (state.test.examinationPaperId = state.paperId);
+ //TODO缺少paperName字段
+ state.test.examinationTestName = state.paperName;
+ //考试推送
+ state.test.targetId = 0;
+ state.test.type = 0;
+ state.test.chapterId=0;
+ console.log("props.offCourseId",props.offCourseId);
+ if (props.faceLevel && props.offCourseId > 0) {
+ state.test.targetId = props.offCourseId;
+ state.test.type = 3;
+ }else{
+ if(props.isLevel == 1){
+ state.test.targetId = props.routerId;
+ state.test.chapterId = props.isactive;
+ state.test.type = 2;
+
+
+ } else if (props.isLevel == 2) {
+ state.test.targetId = props.projectId;
+ state.test.type = 1;
+
+ }
+ }
- state.addLoading = true;
- console.log("test", state.test);
- // state.test.examinationStartTime = toDate(
- // new Date(state.test.chooseTime[0].$d).getTime() / 1000,
- // "Y-M-D h:m"
- // );
- // state.test.examinationEndTime =toDate(
- // new Date(state.test.$slotschooseTime[1].$d).getTime() / 1000,
- // "Y-M-D h:m"
- // );
- (state.test.examinationStartTime = dayjs(state.test.chooseTime[0]).format(
- "YYYY-MM-DD HH:mm"
- )),
- (state.test.examinationEndTime = dayjs(state.test.chooseTime[1]).format(
- "YYYY-MM-DD HH:mm"
- )),
- (state.test.examinationPaperId = state.paperId);
- //TODO缺少paperName字段
- state.test.examinationTestName = state.paperName;
- //考试推送
- state.test.targetId = 0;
- state.test.type = 0;
- state.test.chapterId=0;
- console.log("props.offCourseId",props.offCourseId);
- if (props.faceLevel && props.offCourseId > 0) {
- state.test.targetId = props.offCourseId;
- state.test.type = 3;
- }else{
- if(props.isLevel == 1){
- state.test.targetId = props.routerId;
- state.test.chapterId = props.isactive;
- state.test.type = 2;
- } else if (props.isLevel == 2) {
- state.test.targetId = props.projectId;
- state.test.type = 1;
-
- }
- }
+ // if (props.EditTestId > 0) {
+ // // 编辑任务
+ // updateExamination(state.test)
+ // .then(async (res) => {
+ // await updateTask(res);
+ // // closeDrawer();
+ // })
+ // .catch(() => {
+ // message.destroy();
+ // message.error(`编辑失败`);
+ // });
+ // } else {
+ // 创建任务
+ createExamination(state.test)
+ .then(async (res) => {
+ await updateTask(res);
+ // closeDrawer();
+ })
+ .catch(() => {
+ message.destroy();
+ message.error(`创建失败`);
+ });
+ // }
+ }else{
+ // 创建外部考试
+ console.log('我是点了外部考试')
+ if (!state.test1.externalName) {
+ message.destroy();
+ message.warning("请输入考试名称");
+ return
+ }
+ if (!state.test1.source) {
+ message.destroy();
+ message.warning("请输入数据来源");
+ return
+ }
+ //考试推送
+ state.test1.targetId = 0;
+ state.test1.type = 0;
+ state.test1.chapterId=0;
+ console.log("props.offCourseId",props.offCourseId);
+ if (props.faceLevel && props.offCourseId > 0) {
+ state.test1.targetId = props.offCourseId;
+ state.test1.type = 3;
+ }else{
+ if(props.isLevel == 1){
+ state.test1.targetId = props.routerId;
+ state.test1.chapterId = props.isactive;
+ state.test1.type = 2;
+ } else if (props.isLevel == 2) {
+ state.test1.targetId = props.projectId;
+ state.test1.type = 1;
- // if (props.EditTestId > 0) {
- // // 编辑任务
- // updateExamination(state.test)
- // .then(async (res) => {
- // await updateTask(res);
- // // closeDrawer();
- // })
- // .catch(() => {
- // message.destroy();
- // message.error(`编辑失败`);
- // });
- // } else {
- // 创建任务
- createExamination(state.test)
- .then(async (res) => {
- await updateTask(res);
- // closeDrawer();
- })
- .catch(() => {
- message.destroy();
- message.error(`创建失败`);
- });
- // }
+ }
+ }
+ // 新建外部考试
+ CreateExternalExam(state.test1).then( async res=>{
+ console.log(res)
+ // 添加更新到任务
+ await updateTask1(res);
+ }).catch(err=>{
+ console.log(err)
+ })
+ }
};
+ // 系统考试
const updateTask = (res) => {
state.EditTestId = res.data.data.examinationId;
if (props.faceLevel) {
@@ -734,6 +773,81 @@ export default {
}
}
};
+ // 外部考试
+ const updateTask1 = (res) => {
+ state.EditTestId = res.data.data.externalId;
+ if (props.faceLevel) {
+ state.EditTestId = res.data.data.externalId;
+ state.paperName = "";
+ closeDrawer();
+ } else {
+ if (props.isLevel == 1) {
+ if (!props.isactive) {
+ message.destroy();
+ return message.warning("请先选中关卡");
+ }
+ let editObj1 = {
+ chapterId: props.isactive,
+ courseId: res.data.data.externalId,
+ name: res.data.data.externalName,
+ routerId: props.routerId,
+ routerTaskId: props.routerTaskId || 0,
+ type: 5,
+ };
+ RouterEditTask(editObj1)
+ .then(() => {
+ console.log("props.edit", props.edit);
+ message.success(`${props.edit ? "编辑" : "新增"}任务成功`);
+ ctx.emit("changeData", false);
+ state.paperName = "";
+ closeDrawer();
+ })
+ .catch(() => {
+ //message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
+ });
+ } else if (props.isLevel == 2) {
+ let editObj = {
+ courseId: res.data.data.externalId,
+ name: res.data.data.externalName,
+ projectId: props.projectId,
+ projectTaskId: props.projectTaskId || 0,
+ stageId: props.chooseStageId || 0,
+ type: 5,
+ };
+ // 新增编辑或新增项目
+ ProjectEditTask(editObj)
+ .then(() => {
+ message.success(`${props.edit ? "编辑" : "新增"}任务成功`);
+ ctx.emit("changeData", false);
+ state.paperName = "";
+ closeDrawer();
+ })
+ .catch(() => {
+ //message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
+ });
+ } else if (props.isLevel == 3) {
+ addTempTask({
+ courseId: res.data.data.externalId,
+ name: res.data.data.externalName,
+ projectTemplateId: props.projectTemplateId,
+ projectTaskId: props.projectTaskId || 0,
+ stageId: props.chooseStageId || 0,
+ type: 5,
+ })
+ .then(() => {
+ message.success(`${props.edit ? "编辑" : "新增"}任务成功`);
+ ctx.emit("changeData", false);
+ state.paperName = "";
+ closeDrawer();
+ })
+ .catch(() => {
+ //message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
+ });
+ }
+ }
+ };
+
+
const cloradio1 = (value) => {
if (value != "") {
state.showAnswers = "";
diff --git a/src/components/project/OrgClass.vue b/src/components/project/OrgClass.vue
index 31f207cd..03d5dd3e 100644
--- a/src/components/project/OrgClass.vue
+++ b/src/components/project/OrgClass.vue
@@ -28,7 +28,7 @@