合并,补全测评评估投票丢失数据

This commit is contained in:
岳佳鑫
2022-11-04 12:13:51 +08:00
7 changed files with 352 additions and 165 deletions

View File

@@ -43,13 +43,15 @@ export const createAppraiseMessage = (obj) => http.post('/survey/createAppraiseM
//删除评估信息 //删除评估信息
export const deleteAppraise = (obj) => http.post('/survey/deleteAppraise', { params: obj }) export const deleteAppraise = (obj) => http.post('/survey/deleteAppraise', { params: obj })
//根据ID获取评估信息详情 //根据ID获取评估信息详情
export const queryAppraiseDetailById = (obj) => http.post('/survey/queryAppraiseDetailById', { params: obj }) export const queryAppraiseDetailById = (obj) => http.post('/survey/queryAppraiseDetailById', { params: obj })
//修改评估信息 //修改评估信息
export const updateAppraiseMessage = (obj) => http.post('/survey/updateAppraiseMessage', obj) export const updateAppraiseMessage = (obj) => http.post('/survey/updateAppraiseMessage', obj)
//获取全部评估信息接口
export const queryAssessmentDetailList = (obj) => http.post('/assessment/queryAssessmentDetailList', obj)
// 测试方法 // 测试方法
// import * as api from '../../api/index' // import * as api from '../../api/index'

View File

@@ -112,6 +112,7 @@ import * as api from "../../api/indexEval";
import * as apitaskadd from "../../api/indexTaskadd"; import * as apitaskadd from "../../api/indexTaskadd";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
import { toDate } from "../../api/method"; import { toDate } from "../../api/method";
import { RouterEditTask } from "@/api/indexTask";
// const router = useRouter(); // const router = useRouter();
export default { export default {
name: "AddEval", name: "AddEval",
@@ -126,6 +127,10 @@ export default {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
learn: {
type: Number,
default: 0,
},
}, },
setup(props, ctx) { setup(props, ctx) {
const state = reactive({ const state = reactive({
@@ -184,8 +189,7 @@ export default {
}; };
const beforeUpload = (file) => { const beforeUpload = (file) => {
const isJpgOrPng = const isJpgOrPng = file.type === "image/jpg" || file.type === "image/png";
file.type === "image/jpg" || file.type === "image/png";
if (!isJpgOrPng) { if (!isJpgOrPng) {
message.error("You can upload JPG/PNG file!"); message.error("You can upload JPG/PNG file!");
} }
@@ -238,6 +242,8 @@ export default {
console.log("创建成功", res); console.log("创建成功", res);
message.success("创建成功"); message.success("创建成功");
closeDrawer(); closeDrawer();
console.log("1111", props.learn);
if (props.learn == 0)
apitaskadd apitaskadd
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -256,6 +262,26 @@ export default {
.catch((err) => { .catch((err) => {
console.log(err); console.log(err);
}); });
else {
let editObj1 = {
chapterId: 36,
courseId: 0,
duration: 0,
flag: true,
name: obj.evaluationName,
routerId: 92,
routerTaskId: 0,
type: 10,
};
RouterEditTask(editObj1)
.then((res) => {
console.log("调用学历路径添加接口后", res.data);
ctx.emit("changeData", false);
})
.catch((err) => {
console.log(err);
});
}
}) })
.catch((err) => { .catch((err) => {
console.log("创建失败", err); console.log("创建失败", err);

View File

@@ -45,11 +45,7 @@
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:pagination="false" :pagination="false"
:row-selection="{ :row-selection="rowSelection"
columnWidth: 30,
selectedRowKeys: selectedRowKeys,
onChange: onSelectChange,
}"
/> />
<div class="pa"> <div class="pa">
@@ -93,34 +89,20 @@ export default {
inputV1: "", inputV1: "",
time: undefined, time: undefined,
tableData: [ tableData: [
{ // {
key: 1, // key: 1,
name: "评估", // name: "评估",
num: "2", // num: "2",
creator: "管理员", // creator: "管理员",
time: "2022-07-21 14:30:25", // time: "2022-07-21 14:30:25",
}, // },
{ // {
key: 2, // key: 2,
name: "评估", // name: "评估",
num: "8", // num: "8",
creator: "管理员", // creator: "管理员",
time: "2022-07-21 14:30:25", // time: "2022-07-21 14:30:25",
}, // },
{
key: 3,
name: "评估",
num: "5",
creator: "管理员",
time: "2022-07-21 14:30:25",
},
{
key: 4,
name: "评估",
num: "20",
creator: "管理员",
time: "2022-07-21 14:30:25",
},
], ],
}); });
const closeDrawer = () => { const closeDrawer = () => {
@@ -137,7 +119,7 @@ export default {
dataIndex: "name", dataIndex: "name",
// width: "30%", // width: "30%",
key: "name", key: "name",
width: '150px', width: "150px",
align: "left", align: "left",
className: "classify", className: "classify",
@@ -162,26 +144,36 @@ export default {
title: "题数", title: "题数",
dataIndex: "num", dataIndex: "num",
key: "num", key: "num",
width: '80px', width: "80px",
align: "center", align: "center",
}, },
{ {
title: "创建人", title: "创建人",
dataIndex: "creator", dataIndex: "creator",
key: "creator", key: "creator",
width: '150px', width: "150px",
align: "center", align: "center",
}, },
{ {
title: "创建时间", title: "创建时间",
dataIndex: "time", dataIndex: "time",
key: "time", key: "time",
width: '200px', width: "200px",
align: "center", align: "center",
}, },
]; ];
return columns; return columns;
}; };
const rowSelection = {
onChange: (selectedRowKeys, selectedRows) => {
console.log(`selectedRowKeys: ${selectedRowKeys}`, 'selectedRows: ', selectedRows);
},
getCheckboxProps: record => ({
// disabled: record.name === 'Disabled User',
// // Column configuration not to be checked
name: record.name,
}),
};
//创建评估信息 //创建评估信息
const createInvist = () => { const createInvist = () => {
let obj = { let obj = {
@@ -205,6 +197,7 @@ export default {
console.log("创建成功", res); console.log("创建成功", res);
message.success("创建成功"); message.success("创建成功");
closeDrawer(); closeDrawer();
getAllInvistText();
apitaskadd apitaskadd
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -229,12 +222,37 @@ export default {
// state.createLoading = false; // state.createLoading = false;
}); });
}; };
//获取全部评估信息接口
const getAllInvistText = () => {
let obj = {
assessmentName: "",
pageNo: 0,
pageSize: 0,
releaseStatus: "",
searchEndTime: "",
searchStartTime: "",
};
api
.queryAssessmentDetailList(obj)
.then((res) => {
console.log("获取全部评估信息接口成功", res);
message.success("获取全部评估信息接口成功");
console.log(obj);
})
.catch((err) => {
console.log("获取全部评估信息接口失败", err);
// state.createLoading = false;
});
};
return { return {
...toRefs(state), ...toRefs(state),
afterVisibleChange, afterVisibleChange,
closeDrawer, closeDrawer,
tableDataFunc, tableDataFunc,
rowSelection,
createInvist, createInvist,
getAllInvistText,
}; };
}, },
}; };
@@ -324,7 +342,6 @@ export default {
margin-left: 5px; margin-left: 5px;
} }
} }
} }
.main_item2 { .main_item2 {
.pa { .pa {

View File

@@ -303,50 +303,7 @@ const options1 = ref([
label: "请选择状态", label: "请选择状态",
}, },
]); ]);
// const columns1 = [
// {
// title: "课程编号",
// width: "20%",
// dataIndex: "num",
// key: "num",
// align: "center",
// },
// {
// title: "名称",
// width: "20%",
// dataIndex: "name",
// key: "name",
// align: "center",
// },
// {
// title: "内容分类",
// width: "13%",
// dataIndex: "content",
// key: "content",
// align: "center",
// },
// {
// title: "授课教师",
// width: "13%",
// dataIndex: "teacher",
// key: "teacher",
// align: "center",
// },
// {
// title: "创建人",
// width: "13%",
// dataIndex: "creator",
// key: "creator",
// align: "center",
// },
// {
// title: "完成时间",
// width: "20%",
// dataIndex: "time",
// key: "time",
// align: "center",
// },
// ];
const rowSelection = ref({ const rowSelection = ref({
checkStrictly: false, checkStrictly: false,
onChange: (selectedRowKeys, selectedRows) => { onChange: (selectedRowKeys, selectedRows) => {
@@ -583,6 +540,7 @@ export default {
new Date(state.time[1].$d).getTime() / 1000, new Date(state.time[1].$d).getTime() / 1000,
"Y-M-D" "Y-M-D"
); );
state.obj = { state.obj = {
afterSignIn: state.inputV6, afterSignIn: state.inputV6,
beforeSignIn: state.inputV7, beforeSignIn: state.inputV7,
@@ -607,6 +565,7 @@ export default {
updateTime: "", updateTime: "",
updateUser: 0, updateUser: 0,
}; };
api api
.createLiveBroadcast(state.obj) .createLiveBroadcast(state.obj)
.then((res) => { .then((res) => {
@@ -614,7 +573,6 @@ export default {
// console.log(state, 2222); // console.log(state, 2222);
message.success("提交成功"); message.success("提交成功");
closeDrawer(); closeDrawer();
apiTask apiTask
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -637,8 +595,6 @@ export default {
.catch((err) => { .catch((err) => {
console.log(err); console.log(err);
}); });
// state = {}
}) })
.catch((err) => { .catch((err) => {
console.log(err, 2222); console.log(err, 2222);

Binary file not shown.

View File

@@ -175,7 +175,7 @@
<div> <div>
<add-homework <add-homework
flag="0" flag="0"
routerTaskId="ListChoosedId" :workId="editID"
v-model:addhomeworkVisible="addhomeworkvisible" v-model:addhomeworkVisible="addhomeworkvisible"
/> />
</div> </div>
@@ -190,12 +190,16 @@
</div> </div>
<!-- 添加考试侧弹窗 --> <!-- 添加考试侧弹窗 -->
<div> <div>
<add-test v-model:addtestVisible="addtestvisible" /> <add-test
:workId="editID"
@clearEditData="clearEditData"
v-model:addtestVisible="addtestvisible"
/>
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item">
<div class="itcon"> <div class="itcon" @click="showDrawerAddLive">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/zhi.png" /> <img src="../../assets/images/leveladd/zhi.png" />
</div> </div>
@@ -204,7 +208,7 @@
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item">
<div class="itcon"> <div class="itcon" @click="showDrawerAddRef">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/wai.png" /> <img src="../../assets/images/leveladd/wai.png" />
</div> </div>
@@ -230,7 +234,7 @@
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item" @click="showDrawerAddEval"> <div class="item">
<div class="itcon"> <div class="itcon">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/ce.png" /> <img src="../../assets/images/leveladd/ce.png" />
@@ -241,37 +245,28 @@
<add-eval <add-eval
v-model:addevalVisible="addevalvisible" v-model:addevalVisible="addevalvisible"
v-model:edit="edit" v-model:edit="edit"
v-model:learn="learn"
/> />
</div> </div>
<!-- 添加测评侧弹窗 --> <!-- 添加测评侧弹窗 -->
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item" @click="showDrawerAddInvist"> <div class="item">
<div class="itcon"> <div class="itcon">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/diao.png" /> <img src="../../assets/images/leveladd/diao.png" />
</div> </div>
<div class="text">评估</div> <div class="text">评估</div>
<!-- 添加评估侧弹窗 -->
<div>
<add-invist v-model:addinvistVisible="addinvistvisible" />
</div>
<!-- 添加评估侧弹窗 -->
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item" @click="showDrawerAddVote"> <div class="item">
<div class="itcon"> <div class="itcon">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/tou.png" /> <img src="../../assets/images/leveladd/tou.png" />
</div> </div>
<div class="text">投票</div> <div class="text">投票</div>
<!-- 添加投票侧弹窗 -->
<div>
<add-vote v-model:addvoteVisible="addvotevisible" />
</div>
<!-- 添加投票侧弹窗 -->
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
@@ -311,6 +306,7 @@
:loading="tableDataTotal === -1 ? true : false" :loading="tableDataTotal === -1 ? true : false"
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:customRow="handleClickRow"
:pagination="false" :pagination="false"
:row-selection="{ :row-selection="{
columnWidth: 30, columnWidth: 30,
@@ -556,6 +552,40 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<!-- 添加直播抽屉 -->
<add-live v-model:addliveVisible="addlivevisible" />
<add-ref v-model:addrefVisible="addrefvisible" />
<!-- 是否确认删除任务弹窗 -->
<!-- 确认删除阶段弹窗 -->
<a-modal
v-model:visible="deleteModal"
:footer="null"
:closable="cC"
wrapClassName="ConfirmModal"
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="closeConfirm"></div>
</div>
<div class="body">
<span>您确定要删除此任务吗</span>
</div>
<div class="del_btnbox">
<div class="del_btn btn1">
<div class="btnText" @click="closeConfirm">取消</div>
</div>
<div class="del_btn btn2">
<div class="btnText" @click="deleteLevelTask">确定</div>
</div>
</div>
</div>
</div>
</a-modal>
</div> </div>
</template> </template>
@@ -568,8 +598,10 @@ import AddTest from "../../components/drawers/AddTest.vue";
import AddDiscuss from "../../components/drawers/AddDiscuss.vue"; import AddDiscuss from "../../components/drawers/AddDiscuss.vue";
import AddActive from "../../components/drawers/AddActive.vue"; import AddActive from "../../components/drawers/AddActive.vue";
import AddEval from "../../components/drawers/AddEval.vue"; import AddEval from "../../components/drawers/AddEval.vue";
import AddInvist from "../../components/drawers/AddInvist.vue"; // import AddInvist from "../../components/drawers/AddInvist.vue";
import AddVote from "../../components/drawers/AddVote.vue"; // import AddVote from "../../components/drawers/AddVote.vue";
import AddLive from "../../components/drawers/AddLive.vue";
import AddRef from "../../components/drawers/AddRef.vue";
import * as api from "../../api/indexLevel"; import * as api from "../../api/indexLevel";
import { GetRouterDetail, RouterDeleteTask } from "../../api/indexTask"; import { GetRouterDetail, RouterDeleteTask } from "../../api/indexTask";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
@@ -583,12 +615,12 @@ export default {
AddActive, AddActive,
AddTest, AddTest,
AddEval, AddEval,
AddInvist,
AddVote, AddLive,
AddRef,
}, },
setup() { setup() {
const state = reactive({ const state = reactive({
routerId: localStorage.getItem("routerId"),
level: [ level: [
{ {
chapterId: "1", chapterId: "1",
@@ -600,6 +632,7 @@ export default {
{ {
key: 1, key: 1,
lei: "在线", lei: "在线",
routerTaskId: 0,
// state: "已发布", // state: "已发布",
creater: "管理者课程", creater: "管理者课程",
// pubtime: "2022-07-20 14:00:03", // pubtime: "2022-07-20 14:00:03",
@@ -783,15 +816,22 @@ export default {
visible: false, visible: false,
AddSvisible: false, //添加学员抽屉 AddSvisible: false, //添加学员抽屉
AddImpStuvisible: false, //导入学员抽屉 AddImpStuvisible: false, //导入学员抽屉
addlivevisible: false, //添加直播抽屉
addrefvisible: false, //添加外链抽屉
modal: false, modal: false,
clos: false, clos: false,
stm_hs: false, stm_hs: false,
deleteAll: false, deleteAll: false,
closeDeleteAll: false, closeDeleteAll: false,
deleteModal: false, // 删除弹窗
deleteID: "", // 要删除的任务的id
editID: "", // 要编辑的任务id
cC: false,
value1: "", value1: "",
value2: "", value2: "",
selectedRowKeys: [], selectedRowKeys: [],
edit: false, //是否点击编辑 edit: false, //是否点击编辑
learn: 0,
gqxy_hs: true, gqxy_hs: true,
isactive: 0, isactive: 0,
projectChecked: null, //项目单选框 projectChecked: null, //项目单选框
@@ -874,6 +914,7 @@ export default {
//测试评估投票抽屉 //测试评估投票抽屉
const showDrawerAddEval = () => { const showDrawerAddEval = () => {
state.addevalvisible = true; state.addevalvisible = true;
state.learn = 1;
}; };
const showDrawerAddInvist = () => { const showDrawerAddInvist = () => {
state.addinvistvisible = true; state.addinvistvisible = true;
@@ -892,25 +933,19 @@ export default {
creater: element.name, creater: element.name,
cretime: element.duration, cretime: element.duration,
checked1: element.flag, checked1: element.flag,
routerTaskId: element.routerTaskId,
}; };
}); });
}; };
const getDetail = (index) => { const getDetail = (index) => {
GetRouterDetail(92) GetRouterDetail(92)
.then((res) => { .then((res) => {
state.level = res.data.data.chapterList; state.level = res.data.data.chapterList;
console.log(state.level); console.log(state.level);
if (index == 0) { if (index == 0) {
// state.tableData[1] = {
// key: 2,
// lei: "在线",
// creater: "管理者课程",
// cretime: "60",
// checked1: true,
// }
dataAssignment(0); dataAssignment(0);
} }
state.deleteModal = false;
}) })
.catch((err) => { .catch((err) => {
message.error(err); message.error(err);
@@ -1034,15 +1069,15 @@ export default {
// width: 100, // width: 100,
align: "center", align: "center",
scopedSlots: { customRender: "action" }, //引入的插槽 scopedSlots: { customRender: "action" }, //引入的插槽
customRender: () => { customRender: (e) => {
return ( return (
<div class="opa"> <div class="opa">
<div class="opacation"> <div class="opacation">
<span <span
style="color:#4EA6FF;margin-right:25px;cursor:pointer" style="color:#4EA6FF;margin-right:25px;cursor:pointer"
onClick={() => { onClick={() => {
state.edit = true; state.editID = e.record.routerTaskId;
state.addevalvisible = true; state.addhomeworkvisible = true;
}} }}
> >
编辑 编辑
@@ -1050,7 +1085,7 @@ export default {
<span <span
style="color:#4EA6FF;cursor:pointer" style="color:#4EA6FF;cursor:pointer"
onClick={() => { onClick={() => {
deleteLevelTask(); showDeleteModal(e.record.routerTaskId);
}} }}
> >
删除 删除
@@ -1284,6 +1319,15 @@ export default {
const delete_exit = () => { const delete_exit = () => {
state.deleteAll = false; state.deleteAll = false;
}; };
const showDeleteModal = (id) => {
state.deleteID = id;
state.deleteModal = true;
};
const closeConfirm = () => {
state.deleteModal = false;
state.deleteID = "";
state.editID = "";
};
const deleteLevelTask = () => { const deleteLevelTask = () => {
RouterDeleteTask(state.listChoosedId) RouterDeleteTask(state.listChoosedId)
.then((res) => { .then((res) => {
@@ -1295,6 +1339,23 @@ export default {
}); });
}; };
const showDrawerAddLive = () => {
state.addlivevisible = true;
};
const showDrawerAddRef = () => {
state.addrefvisible = true;
};
const closeDeleteModel = () => {
state.deleteModal = false;
state.deleteID = "";
};
// 子组件触发的清空 editid 事件
const clearEditData = () => {
state.editID = "";
getDetail(0);
};
return { return {
...toRefs(state), ...toRefs(state),
tableDataFunc, tableDataFunc,
@@ -1312,6 +1373,7 @@ export default {
gqxy_hShow, gqxy_hShow,
showDeleteALLModal, showDeleteALLModal,
delete_exit, delete_exit,
closeConfirm,
drawertableColumns, drawertableColumns,
editChapter, editChapter,
// updateChapter, // updateChapter,
@@ -1321,14 +1383,138 @@ export default {
showDrawerAddInvist, showDrawerAddInvist,
showDrawerAddVote, showDrawerAddVote,
deleteLevelTask, deleteLevelTask,
showDrawerAddLive,
showDrawerAddRef,
closeDeleteModel,
clearEditData,
showDrawerAddDiscuss, showDrawerAddDiscuss,
showDrawerAddActive, showDrawerAddActive,
<<<<<<< HEAD
showDrawerAddDiscuss,
showDrawerAddActive,
=======
showDrawerAddLive,
showDrawerAddRef,
closeDeleteModel,
clearEditData,
>>>>>>> 554eb1c235b7c421a65cd1b1999dd63344f7d7ec
}; };
}, },
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.ConfirmModal {
.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: 40px;
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/coursewareManage/QR.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;
}
}
}
}
}
}
}
}
.clearfix:after, .clearfix:after,
.clearfix:before { .clearfix:before {
content: " "; content: " ";

View File

@@ -462,7 +462,7 @@
> >
编辑 编辑
</span> </span>
<span style="color: #4ea6ff; cursor: pointer"> <span style="color: #4ea6ff; cursor: pointer" @click="showDelete()">
删除 删除
</span> </span>
</div> </div>