面授 审核

This commit is contained in:
宋文超
2022-11-23 14:47:44 +08:00
parent ce3d807f2f
commit 006097a63e
13 changed files with 534 additions and 64 deletions

View File

@@ -48,7 +48,24 @@
<span style="margin-right: 3px">选择课程</span>
</div>
<div class="btnbox" @click="showDrawerSelFacet">
<button class="xkbtn">授课课程</button>
<button class="xkbtn">
{{ chooseCourse == null ? "授课" : "修改" }}课程
</button>
<a-tag
style="
width: 104px;
height: 32px;
border-radius: 4px;
color: #388be1;
display: flex;
align-items: center;
"
color="#ECF3FC"
v-if="chooseCourse !== null"
closable
@close="closeTag"
>{{ chooseCourseName }}</a-tag
>
</div>
<!-- 选择面授侧弹窗 -->
<div>
@@ -259,7 +276,22 @@
<a-checkbox v-model:checked="checkedAssessment"
>需要评估</a-checkbox
>
<button class="xkbtn">选择评估</button>
<button class="xkbtn" @click="showAssessment">选择评估</button>
<a-tag
style="
width: 104px;
height: 32px;
border-radius: 4px;
color: #388be1;
display: flex;
align-items: center;
"
color="#ECF3FC"
v-if="chooseMent !== null"
closable
@close="closeTag"
>{{ chooseMentName }}</a-tag
>
</div>
</div>
</div>
@@ -271,12 +303,35 @@
<div class="btnbox" @click="showDrawerAddHomework">
<button class="xkbtn">配置</button>
</div>
<!-- 添加作业侧弹窗 -->
<div>
<add-homework v-model:addhomeworkVisible="addhomeworkvisible" />
<add-homework
v-model:addhomeworkVisible="addhomeworkvisible"
@getWork="getWork"
v-model:face="face"
/>
</div>
<!-- 添加作业侧弹窗 -->
</div>
<div>
<a-tag
style="
width: 104px;
height: 32px;
border-radius: 4px;
color: #388be1;
display: flex;
align-items: center;
margin-left: 120px;
"
color="#ECF3FC"
v-if="chooseWork !== null"
closable
@close="closeTagWork"
>{{ chooseWorkName }}</a-tag
>
</div>
<div class="main_item">
<div class="signbox">
<span style="margin-right: 3px">配置考试</span>
@@ -295,7 +350,13 @@
<span style="margin-right: 3px">附件</span>
</div>
<div class="btnbox">
<button class="xkbtn">上传附件</button>
<a-upload
@change="handleChange"
action="/manageApi/file/upload"
v-model:file-list="fileList"
>
<button class="xkbtn">上传附件</button></a-upload
>
</div>
</div>
</div>
@@ -304,6 +365,11 @@
<button class="btn1">取消</button>
<button class="btn2" @click="updateFaceTeach">确定</button>
</div>
<assessment-list
v-model:assessmentVisible="assessmentVisible"
v-model:isface="isface"
@faceAssess="faceAssess"
/>
</div>
</a-drawer>
</template>
@@ -315,21 +381,24 @@ import AddTest from "../../components/drawers/AddTest.vue";
import { ProjectEditTask, RouterEditTask } from "@/api/indexTask";
// import * as method from "../../api/method"
import { message } from "ant-design-vue";
import { queryFaceDetailById } from "../../api/indexFace";
import { queryFaceDetailById, editPlan } from "../../api/indexFace";
import dayjs from "dayjs";
import AssessmentList from "../drawers/ AssessmentList.vue";
// import { toDate } from "../../api/method";
export default {
name: "AddFaceteach",
components: {
SelFacet,
AddHomework,
AddTest,
AssessmentList,
},
props: {
addfaceteachVisible: {
type: Boolean,
default: false,
},
EditEvalId: {
EditFaceId: {
// 要编辑的workId
type: Number,
default: null,
@@ -390,13 +459,42 @@ export default {
checkedHolidy: false,
checkedAssessment: false,
chooseTime: [],
fileList: [],
chooseCourse: null, //选择的在线课程
chooseCourseName: null, //选择的课程的名字
face: true, //面授传给配置作业的标识
chooseWork: null, //配置的work
chooseWorkName: null, //配置的work名字
chooseMent: null,
chooseMentName: null,
assessmentVisible: false,
isface: 1,
});
const clear = () => {
state.inputV1 = null;
state.inputV2 = null;
state.inputV3 = null;
state.inputV4 = null;
state.inputV5 = null;
state.inputV6 = null;
state.inputV7 = null;
state.chooseTime = [];
state.textV1 = null;
state.radioV1 = "";
state.radioV2 = "";
state.checkedHolidy = false;
state.checkedAssessment = false;
state.chooseMent = null;
state.chooseWork = null;
state.chooseCourse = null;
};
const closeDrawer = () => {
ctx.emit("update:addfaceteachVisible", false);
state.radioV1 = "";
state.radioV2 = "";
localStorage.setItem("stageId", props.chooseStageId);
localStorage.setItem("chapterId", props.isactive);
clear();
};
const afterVisibleChange = (bool) => {
if (bool && props.edit) {
@@ -427,7 +525,7 @@ export default {
//查询面授
const queryFaceTeach = () => {
//暂时写一个假的offcoursePlanId
queryFaceDetailById(2).then((res) => {
queryFaceDetailById(props.EditFaceId).then((res) => {
// state.inputV1 = res.data.data.name;
// state.inputV2 = res.data.data.teacherId;
console.log("获取到了面授课开课详情", res.data.data);
@@ -447,6 +545,7 @@ export default {
state.inputV5 = result.beforeStart;
state.inputV6 = result.afterStart;
state.inputV7 = result.beforeEnd;
state.fileList = JSON.parse(result.attach);
// state.radioV1 = result.
state.checkedHolidy =
result.completeType == 1
@@ -473,10 +572,79 @@ export default {
};
//新建或编辑面授
const updateFaceTeach = () => {};
const upDateTable = () => {};
// 新增任务
const updateFaceTeach = () => {
if (
state.inputV1 == "" ||
state.chooseCourse == null ||
state.inputV2 == "" ||
state.chooseTime == [] ||
state.inputV3 == "" ||
state.inputV4 == ""
) {
message.destroy();
return message.warning("请输入必填字段");
} else {
let obj = {
address: state.inputV4,
afterStart: state.inputV6,
applyFlag: 1,
attach: JSON.stringify(state.fileList),
beforeEnd: state.inputV7,
beforeStart: state.inputV5,
// beginTime: dayjs(state.chooseTime[0]).format("YYYY-MM-DD"),
beginTime: parseInt(
new Date(state.chooseTime[0].$d).getTime() / 1000
),
completeType: state.radioV1 == "1" ? 2 : 1,
description: state.textV1,
// endTime: dayjs(state.chooseTime[1]).format("YYYY-MM-DD"),
endTime: parseInt(new Date(state.chooseTime[0].$d).getTime() / 1000),
evalFlag: state.checkedAssessment == true ? 1 : 0,
evaluateId:
state.chooseMent == null ? 0 : state.chooseMent.assessmentId,
homeWorkId: 0,
name: state.inputV1,
noProjectMember: state.radioV2 == "1" ? 0 : 1,
offcourseId: 0,
offcoursePlanId: props.edit ? props.EditFaceId : 0,
projectMember: state.radioV2 == "1" ? 1 : 0,
signFlag: 0,
signWordFlag: 0,
teacherId: 0,
testId: 0,
};
if (props.edit) {
editPlan(obj)
.then((res) => {
updateTask(res);
closeDrawer();
})
.catch((err) => {
message.error(`添加失败${err}`);
});
} else {
editPlan(obj)
.then((res) => {
updateTask(res);
closeDrawer();
})
.catch((err) => {
message.error(`添加失败${err}`);
});
}
}
};
const upDateTable = (value) => {
console.log("gg", value);
console.log("gg", value[0].name);
state.chooseCourse = value[0];
state.chooseCourseName = value[0].name;
};
//更新任务列表
// 新增编辑或新增项目任务
const updateTask = (res) => {
if (props.isLevel == 1) {
let editObj1 = {
@@ -511,17 +679,44 @@ export default {
ProjectEditTask(editObj)
.then(() => {
message.success(
`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`
`${props.EditFaceId ? "编辑" : "新增"}阶段任务成功`
);
ctx.emit("changeData", false);
})
.catch(() => {
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
message.error(`${props.EditFaceId ? "编辑" : "新增"}阶段任务失败`);
});
} else if (props.isLevel == 3) {
console.log("");
}
};
const closeTag = () => {
state.chooseCourse = null;
state.chooseCourseName = null;
};
const closeTagWork = () => {
state.chooseWork = null;
state.chooseWorkName = null;
};
const getWork = (value) => {
console.log("getWork", value);
state.chooseWork = value;
state.chooseWorkName = value.workName;
console.log("getWorkName", value.workName);
};
const handleChange = ({ file, fileList }) => {
if (file.status !== "uploading") {
console.log(file, fileList);
}
};
const showAssessment = () => {
state.assessmentVisible = true;
};
const faceAssess = (value) => {
console.log(value);
state.chooseMent = value;
state.chooseMentName = value.name;
};
return {
...toRefs(state),
showDrawerSelFacet,
@@ -534,6 +729,13 @@ export default {
updateFaceTeach,
updateTask,
upDateTable,
closeTag,
getWork,
closeTagWork,
clear,
handleChange,
showAssessment,
faceAssess,
// change,
};
},