fix:评估管理-单选题-多选题-问答题-评分提编辑删除选项保存修改bug修复

This commit is contained in:
wyx
2023-03-08 23:25:01 +08:00
parent 06875c82fb
commit 003c3b0e00
4 changed files with 138 additions and 77 deletions

View File

@@ -22,25 +22,25 @@
:key="index + new Date().getTime()"
>
<ResearchAddSingle
v-if="item.type === 1"
v-if="item.type === 1 && item.deleted!==true"
:item="item"
:assessmentId="assessmentId"
@del="handleDel"
/>
<ResearchAddMulti
v-if="item.type === 2"
v-if="item.type === 2 && item.deleted!==true"
:item="item"
:assessmentId="assessmentId"
@del="handleDel"
/>
<ResearchAddAsk
v-if="item.type === 3"
v-if="item.type === 3 && item.deleted!==true"
:item="item"
:assessmentId="assessmentId"
@del="handleDel"
/>
<ResearchAddPin
v-if="item.type === 4"
v-if="item.type === 4 && item.deleted!==true"
:item="item"
:assessmentId="assessmentId"
@del="handleDel"
@@ -109,8 +109,8 @@ import {
queryResearchDetailById,
editResearchMessage,
createResearch,
deleteChoiceQuestion,
deleteQuestionScAndQa,
// deleteChoiceQuestion,
// deleteQuestionScAndQa,
} from "@/api/indexResearch";
import {useRoute, useRouter} from "vue-router";
import {message} from "ant-design-vue";
@@ -157,6 +157,7 @@ export default {
...res.scoringQuestionVoList,
];
sortBy(renderArr, "orderNumber"); //序号
console.log(renderArr)
state.allFormsData = parseData(renderArr, "questionType"); //类型
}
};
@@ -171,6 +172,7 @@ export default {
if (key === 1) {
let restList = traverseArr(item.assessmentSingleChoiceVoList, {
ids:"id",
deleted:"deleted",
inputVal: "singleOptionName",
imgVal: "singleOptionPictureAddress",
optionId: "singleOptionId",
@@ -190,6 +192,7 @@ export default {
if (key === 2) {
let restList = traverseArr(item.multipleChoiceVoList, {
ids:"id",
deleted:"deleted",
inputVal: "multipleOptionName",
imgVal: "multipleOptionPictureAddress",
optionId: "multipleOptionId",
@@ -209,6 +212,7 @@ export default {
if (key === 3) {
obj = {
ids: item.id,
deleted:item.deleted,
type: key,
valueAsk: item.assessmentQaTitle,
valueAskDesc: item.assessmentQaDescribe,
@@ -219,6 +223,7 @@ export default {
if (key === 4) {
obj = {
ids: item.id,
deleted:item.deleted,
type: key,
valuePin: item.assessmentScTitle,
minScore: item.assessmentMinScore,
@@ -244,6 +249,7 @@ export default {
if (item[typeKey] === 1) {
let restList = traverseArr(item.singleList, {
id:"ids",
deleted:"deleted",
singleOptionName: "inputVal",
singleOptionPictureAddress: "imgVal",
singleOptionId: "optionId",
@@ -268,6 +274,7 @@ export default {
if (item[typeKey] === 2) {
let restList = traverseArr(item.mutilList, {
id:"ids",
deleted:"deleted",
multipleOptionName: "inputVal",
multipleOptionPictureAddress: "imgVal",
multipleOptionId: "optionId",
@@ -292,6 +299,7 @@ export default {
if (item[typeKey] === 3) {
obj = {
id:item.ids,
deleted:item.deleted,
questionType: item[typeKey],
assessmentQaTitle: item.valueAsk,
assessmentQaDescribe: item.valueAskDesc,
@@ -302,6 +310,7 @@ export default {
if (item[typeKey] === 4) {
obj = {
id:item.ids,
deleted:item.deleted,
questionType: item[typeKey],
assessmentScTitle: item.valuePin,
assessmentMinScore: item.minScore,
@@ -425,67 +434,90 @@ export default {
};
const handleDel = ({ id, type, curItem }) => {
// 接口删除
// if (state.assessmentId && (curItem.orderNumber || curItem.optionId)) {
// if (type === 1) {
// deleteChoiceQuestion({
// assessmentId: state.assessmentId,
// questionType: "1",
// orderNumber: curItem.orderNumber,
// }).then((res) => {
// if (res.data.code === 200) {
// virtualDel(id);
// }
// });
// }
// if (type === 2) {
// deleteChoiceQuestion({
// assessmentId: state.assessmentId,
// questionType: "2",
// orderNumber: curItem.orderNumber,
// }).then((res) => {
// if (res.data.code === 200) {
// virtualDel(id);
// }
// });
// }
// if (type === 3) {
// deleteQuestionScAndQa({
// assessmentId: state.assessmentId,
// questionType: "3",
// optionId: curItem.optionId,
// }).then((res) => {
// if (res.data.code === 200) {
// virtualDel(id);
// }
// });
// }
// if (type === 4) {
// deleteQuestionScAndQa({
// assessmentId: state.assessmentId,
// questionType: "4",
// optionId: curItem.optionId,
// }).then((res) => {
// if (res.data.code === 200) {
// virtualDel(id);
// }
// });
// }
// } else {
// virtualDel(id);
// }
if (state.assessmentId && (curItem.orderNumber || curItem.optionId)) {
if (type === 1) {
deleteChoiceQuestion({
assessmentId: state.assessmentId,
questionType: "1",
orderNumber: curItem.orderNumber,
}).then((res) => {
if (res.data.code === 200) {
virtualDel(id);
}
});
virtualDel(id);
}
if (type === 2) {
deleteChoiceQuestion({
assessmentId: state.assessmentId,
questionType: "2",
orderNumber: curItem.orderNumber,
}).then((res) => {
if (res.data.code === 200) {
virtualDel(id);
}
});
virtualDel(id);
}
if (type === 3) {
deleteQuestionScAndQa({
assessmentId: state.assessmentId,
questionType: "3",
optionId: curItem.optionId,
}).then((res) => {
if (res.data.code === 200) {
virtualDel(id);
}
});
virtualDel(id);
}
if (type === 4) {
deleteQuestionScAndQa({
assessmentId: state.assessmentId,
questionType: "4",
optionId: curItem.optionId,
}).then((res) => {
if (res.data.code === 200) {
virtualDel(id);
}
});
virtualDel(id);
}
} else {
virtualDel(id);
}
};
const virtualDel = (id) => {
// 前端删除
// state.allFormsData.forEach((item, index) => {
// if (item.id === id) {
// state.allFormsData.splice(index, 1);
// }
// });
// state.allFormsData.map((item, index) => {
// item.id = index + 1;
// return item;
// });
// 前端删除
state.allFormsData.forEach((item, index) => {
if (item.id === id) {
state.allFormsData.splice(index, 1);
state.allFormsData[index].deleted = true;
}
});
state.allFormsData.map((item, index) => {
item.id = index + 1;
return item;
});
};
// 处理id为空的字段
@@ -500,6 +532,7 @@ export default {
}else{
let obj1 = {...data[i][k]}
delete obj1.id
delete obj1.deleted
arr1.push(obj1)
}
}
@@ -513,6 +546,7 @@ export default {
}else{
let obj1 = {...data[i][k]}
delete obj1.id
delete obj1.deleted
arr1.push(obj1)
}
}
@@ -526,6 +560,7 @@ export default {
}else{
let obj1 = {...data[i][k]}
delete obj1.id
delete obj1.deleted
arr1.push(obj1)
}
}
@@ -539,6 +574,7 @@ export default {
}else{
let obj1 = {...data[i][k]}
delete obj1.id
delete obj1.deleted
arr1.push(obj1)
}
}
@@ -649,6 +685,9 @@ export default {
}
console.log("CountNum");
console.log(CountNum);
if(CountNum>100){
CountNum = 100;
}
if (CountNum !== 100) {
message.error("当前权重设置是百分制 请重新配置");
return false;

View File

@@ -1,6 +1,6 @@
<!-- 评估管理-创建评估页面 -->
<template>
<div class="itemRow">
<div class="itemRow" v-if="!item.deleted">
<div class="options">
<div class="name">
<div class="namebox">

View File

@@ -56,7 +56,7 @@
<script>
import { ref } from "vue";
import ResearchAddItem from "./ResearchAddItem.vue";
import { deleteChoiceQuestion } from "@/api/indexResearch";
// import { deleteChoiceQuestion } from "@/api/indexResearch";
export default {
name: "ResearchAddMulti",
@@ -110,30 +110,40 @@ export default {
};
const delMutil = ({ id, optionId }) => {
// 接口删除
// if (assessmentId.value && optionId) {
// deleteChoiceQuestion({
// assessmentId: assessmentId.value,
// questionType: "2",
// optionId,
// }).then((res) => {
// if (res.data.code === 200) {
// virtualDel(id);
// }
// });
// } else {
// virtualDel(id);
// }
if (assessmentId.value && optionId) {
deleteChoiceQuestion({
assessmentId: assessmentId.value,
questionType: "2",
optionId,
}).then((res) => {
if (res.data.code === 200) {
virtualDel(id);
}
});
virtualDel(id);
} else {
virtualDel(id);
}
};
const virtualDel = (id) => {
// 前端删除
// curItem.value.mutilList.forEach((item, index) => {
// if (item.id === id) {
// curItem.value.mutilList.splice(index, 1);
// }
// });
// curItem.value.mutilList.map((item, index) => {
// item.id = index + 1;
// });
curItem.value.mutilList.forEach((item, index) => {
if (item.id === id) {
curItem.value.mutilList.splice(index, 1);
curItem.value.mutilList[index].deleted = true;
}
});
curItem.value.mutilList.map((item, index) => {
item.id = index + 1;
});
};
return {

View File

@@ -56,7 +56,7 @@
<script>
import { ref } from "vue";
import ResearchAddItem from "./ResearchAddItem.vue";
import { deleteChoiceQuestion } from "@/api/indexResearch";
// import { deleteChoiceQuestion } from "@/api/indexResearch";
export default {
name: "ResearchAddSingle",
@@ -104,32 +104,44 @@ export default {
}
});
};
const del = ({ id, optionId }) => {
const del = ({ id, optionId}) => {
// 接口删除
// if (assessmentId.value && optionId) {
// deleteChoiceQuestion({
// assessmentId: assessmentId.value,
// questionType: "1",
// optionId,
// }).then((res) => {
// if (res.data.code === 200) {
// virtualDel(id);
// }
// });
// } else {
// virtualDel(id);
// }
if (assessmentId.value && optionId) {
deleteChoiceQuestion({
assessmentId: assessmentId.value,
questionType: "1",
optionId,
}).then((res) => {
if (res.data.code === 200) {
virtualDel(id);
}
});
virtualDel(id);
} else {
virtualDel(id);
}
};
const virtualDel = (id) => {
// 前端删除
// curItem.value.singleList.forEach((item, index) => {
// if (item.id === id) {
// curItem.value.singleList.splice(index, 1);
// }
// });
// curItem.value.singleList.map((item, index) => {
// item.id = index + 1;
// });
// 前端删除
curItem.value.singleList.forEach((item, index) => {
if (item.id === id) {
curItem.value.singleList.splice(index, 1);
curItem.value.singleList[index].deleted = true;
}
});
curItem.value.singleList.map((item, index) => {
item.id = index + 1;
});
};
return {