mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-12 04:16:47 +08:00
feat:创建投票
This commit is contained in:
@@ -79,10 +79,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 查看投票弹窗 -->
|
|
||||||
<queryStem @closeDrawer="closeStem"
|
|
||||||
v-model:addStemVisible="addStemVisible" />
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 创建投票侧弹窗 -->
|
<!-- 创建投票侧弹窗 -->
|
||||||
@@ -102,6 +99,7 @@
|
|||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
style="width: 424px"
|
style="width: 424px"
|
||||||
|
v-model:value="time"
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -111,7 +109,12 @@
|
|||||||
<span style="margin-right: 3px">基础投票数:</span>
|
<span style="margin-right: 3px">基础投票数:</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<button class="xkbtn">点击上传</button>
|
<a-upload
|
||||||
|
@change="handleChange"
|
||||||
|
action="/vote/baseVoteupload"
|
||||||
|
v-model:file-list="fileList"
|
||||||
|
>
|
||||||
|
<button class="xkbtn">点击上传</button></a-upload>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_item" style="margin-top: -25px">
|
<div class="main_item" style="margin-top: -25px">
|
||||||
@@ -150,13 +153,13 @@ import { message } from "ant-design-vue";
|
|||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as apiTask from "../../api/indexTaskadd";
|
import * as apiTask from "../../api/indexTaskadd";
|
||||||
import queryStem from "./queryStem.vue"
|
import { addTempTask } from "../../api/indexTaskadd";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "AddVote",
|
name: "AddVote",
|
||||||
components: {
|
components: {
|
||||||
CreateVote,
|
CreateVote
|
||||||
queryStem,
|
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
addvoteVisible: {
|
addvoteVisible: {
|
||||||
@@ -167,7 +170,7 @@ export default {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
voteId: {
|
EditVoteId: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
},
|
},
|
||||||
@@ -213,7 +216,7 @@ export default {
|
|||||||
basevote: "",
|
basevote: "",
|
||||||
ascriptionId: "",
|
ascriptionId: "",
|
||||||
voteStemId: null,
|
voteStemId: null,
|
||||||
voteId:"",
|
EditVoteId:"",
|
||||||
voteStemName:"",
|
voteStemName:"",
|
||||||
ballotName: "",
|
ballotName: "",
|
||||||
editStem: false, //编辑状态
|
editStem: false, //编辑状态
|
||||||
@@ -221,6 +224,7 @@ export default {
|
|||||||
optionId: "", //删除,修改选项id
|
optionId: "", //删除,修改选项id
|
||||||
addStemVisible:false, //
|
addStemVisible:false, //
|
||||||
editChild:false,
|
editChild:false,
|
||||||
|
fileList: [],
|
||||||
});
|
});
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
state.inputV1 = "",
|
state.inputV1 = "",
|
||||||
@@ -231,54 +235,54 @@ export default {
|
|||||||
ctx.emit("update:edit", false);
|
ctx.emit("update:edit", false);
|
||||||
};
|
};
|
||||||
const afterVisibleChange = () => {
|
const afterVisibleChange = () => {
|
||||||
|
if(props.edit){
|
||||||
queryVoteInfo();
|
queryVoteInfo();
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
const showDrawerCreVote = () => {
|
const showDrawerCreVote = () => {
|
||||||
state.createVoteVisible = true;
|
state.createVoteVisible = true;
|
||||||
state.editChild = props.edit;
|
state.editChild = props.edit;
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
const getStemId = (data) => {
|
|
||||||
state.ballotName = data.ballotName;
|
|
||||||
state.ballotId =data.ballotId;
|
|
||||||
}
|
|
||||||
|
|
||||||
const delBox = () => {
|
const handleChange = info => {
|
||||||
state.creVote = false;
|
if (info.file.status !== "uploading") {
|
||||||
|
|
||||||
|
console.log("基础票数rinfo======",info);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//删除题干信息接口
|
//删除题干信息接口
|
||||||
const dleVoteStem = () => {
|
const dleVoteStem = () => {
|
||||||
let objdelstem = {
|
api.deleteVoteStem({voteStemId:state.ballotId})
|
||||||
voteStemId:state.voteStemId
|
|
||||||
}
|
|
||||||
api.deleteVoteStem(objdelstem)
|
|
||||||
.then(() => {
|
.then(() => {
|
||||||
message.success('删除题干信息成功')
|
message.success('删除题干信息成功')
|
||||||
delBox()
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
//根据投票id获取投票信息
|
//根据投票id获取投票信息
|
||||||
const queryVoteInfo = ()=>{
|
const queryVoteInfo = ()=>{
|
||||||
/**
|
|
||||||
let obj = {
|
api.queryVoteDetailById({voteId:props.EditVoteId})
|
||||||
voteId:props.voteId
|
|
||||||
}
|
|
||||||
.queryVoteText(obj)
|
|
||||||
.then((res)=>{
|
.then((res)=>{
|
||||||
console.log('获取投票信息成功',res);
|
console.log('获取投票信息成功',res);
|
||||||
state.inputV1 = res.data.data.voteName
|
state.inputV1 = res.data.data.voteName;
|
||||||
state.time = [dayjs(res.data.data.voteEndTime).format("YYYY-MM-DD"), dayjs(res.data.data.voteEndTime).format("YYYY-MM-DD")]
|
state.textV1 = res.data.data.voteExplain;
|
||||||
state.textV1 = res.data.data.voteExplain
|
state.baseVote = res.data.data.baseVote;
|
||||||
state.baseVote = res.data.data.baseVote
|
state.ascriptionId = res.data.data.ascriptionId;
|
||||||
state.ascriptionId = res.data.data.ascriptionId
|
state.ballotId = res.data.data.ballotId;
|
||||||
state.ballotId = res.data.data.ballotId
|
state.time = [
|
||||||
|
dayjs(res.data.data.voteStartTime, "YYYY-MM-DD"),
|
||||||
|
dayjs(res.data.data.voteEndTime, "YYYY-MM-DD"),
|
||||||
|
];
|
||||||
})
|
})
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log('获取投票信息失败',err);
|
console.log('获取投票信息失败',err);
|
||||||
})
|
});
|
||||||
**/
|
|
||||||
|
|
||||||
}
|
}
|
||||||
const updateToTask =(res)=>{
|
const updateToTask =(res)=>{
|
||||||
@@ -316,8 +320,24 @@ export default {
|
|||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.error(`${props.edit ? '编辑' : '新增'}阶段任务失败`)
|
message.error(`${props.edit ? '编辑' : '新增'}阶段任务失败`)
|
||||||
});
|
});
|
||||||
}else if(props.isLevel ==3){
|
}else if (props.isLevel == 3) {
|
||||||
console.log("");
|
console.log("");
|
||||||
|
addTempTask({
|
||||||
|
duration: 0,
|
||||||
|
flag: true,
|
||||||
|
courseId: Number(res.data.data.EditVoteId),
|
||||||
|
name: res.data.data.data.voteName,
|
||||||
|
projectId: props.projectId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 10,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//修改投票信息接口
|
//修改投票信息接口
|
||||||
@@ -325,6 +345,10 @@ export default {
|
|||||||
if (!state.inputV1) {
|
if (!state.inputV1) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
return message.info("请输入投票名称");
|
return message.info("请输入投票名称");
|
||||||
|
}
|
||||||
|
if (!state.ballotId) {
|
||||||
|
message.destroy();
|
||||||
|
return message.info("请创建题干信息");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state.basevote == "") {
|
if (state.basevote == "") {
|
||||||
@@ -336,16 +360,14 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let obj = {
|
let obj = {
|
||||||
voteId: props.edit?state.voteId : 0,
|
voteId: props.edit?state.EditVoteId : 0,
|
||||||
voteName: state.inputV1,
|
voteName: state.inputV1,
|
||||||
voteStartTime: state.startTime,
|
voteStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
||||||
voteEndTime: state.endTime,
|
voteEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
||||||
ballotId: state.ballotId,
|
ballotId: state.ballotId,
|
||||||
baseVote: state.basevote,
|
baseVote: state.basevote,
|
||||||
voteExplain: state.textV1,
|
voteExplain: state.textV1,
|
||||||
createUser:0,
|
|
||||||
updateUser:0,
|
|
||||||
voteTag:"",
|
|
||||||
}
|
}
|
||||||
if(props.edit){
|
if(props.edit){
|
||||||
api
|
api
|
||||||
@@ -383,13 +405,12 @@ export default {
|
|||||||
showDrawerCreVote,
|
showDrawerCreVote,
|
||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
closeDrawer,
|
closeDrawer,
|
||||||
getStemId,
|
|
||||||
queryVoteInfo,
|
queryVoteInfo,
|
||||||
dleVoteStem,
|
dleVoteStem,
|
||||||
updateVoteInfo,
|
updateVoteInfo,
|
||||||
delBox,
|
|
||||||
queryStem,
|
queryStem,
|
||||||
closeStem,
|
closeStem,
|
||||||
|
handleChange,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-input
|
<a-input
|
||||||
v-model:value="voteName"
|
v-model:value="ballotName"
|
||||||
style="width: 424px; height: 32px"
|
style="width: 424px; height: 32px"
|
||||||
placeholder="请输入任务名称"
|
placeholder="请输入任务名称"
|
||||||
maxlength="20"
|
maxlength="20"
|
||||||
@@ -47,7 +47,7 @@
|
|||||||
<!-- 创建投票侧弹窗 -->
|
<!-- 创建投票侧弹窗 -->
|
||||||
</div>
|
</div>
|
||||||
<div v-for="(item, index) in allFormsData" :key="index">
|
<div v-for="(item, index) in allFormsData" :key="index">
|
||||||
<VoteQuestion :item="item" :ballotId="ballotId" @del="handleDel" />
|
<VoteQuestion :item="item" :optionId="optionId" @del="handleDel" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
@@ -84,20 +84,22 @@
|
|||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs } from "vue";
|
import { reactive, toRefs } from "vue";
|
||||||
// import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
// import { createResearch } from "../../api/indexResearch";
|
// import { createResearch } from "../../api/indexResearch";
|
||||||
import VoteQuestion from "./VoteQuestion.vue";
|
import VoteQuestion from "./VoteQuestion.vue";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
// sortBy,
|
// sortBy,
|
||||||
traverseArr,
|
traverseArr,
|
||||||
// filterCommon,
|
//filterCommon,
|
||||||
// deepCloneFilterString,
|
// deepCloneFilterString,
|
||||||
} from "../../utils/utils";
|
} from "../../utils/utils";
|
||||||
|
|
||||||
//import store from "@/store";
|
//import store from "@/store";
|
||||||
import * as api from "@/api/indexVote";
|
import * as api from "@/api/indexVote";
|
||||||
|
//import { useRouter } from "vue-router";
|
||||||
import {} from "@/api/indexResearch";
|
import {} from "@/api/indexResearch";
|
||||||
|
|
||||||
//import { message } from "ant-design-vue";
|
//import { message } from "ant-design-vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -124,51 +126,71 @@ export default {
|
|||||||
ballotId: "",
|
ballotId: "",
|
||||||
ballotName: "",
|
ballotName: "",
|
||||||
allFormsData: [],
|
allFormsData: [],
|
||||||
|
|
||||||
});
|
});
|
||||||
|
// const router = useRouter();
|
||||||
const afterVisibleChange = () => {
|
const afterVisibleChange = () => {
|
||||||
handleTypes();
|
getInfoDate();
|
||||||
|
|
||||||
|
/*
|
||||||
|
if(){
|
||||||
|
|
||||||
|
}else{
|
||||||
|
handleTypes();
|
||||||
|
}
|
||||||
|
*/
|
||||||
};
|
};
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:createVoteVisible", false);
|
ctx.emit("update:createVoteVisible", false);
|
||||||
|
ctx.emit("update:ballotId", state.ballotId);
|
||||||
|
handleAllCancel();
|
||||||
};
|
};
|
||||||
// 详情
|
// 详情
|
||||||
const getInfoDate = async () => {
|
const getInfoDate = async () => {
|
||||||
if (props.editChild) {
|
console.log("props.editChild=====",props.editChild);
|
||||||
//stemId 多余字段
|
if (props.ballotId>0) {
|
||||||
|
console.log("props.editChild2=====",props.editChild);
|
||||||
let res = await api
|
let res = await api
|
||||||
.queryStemByStemId({
|
.queryStemByStemId({ballotId:props.ballotId})
|
||||||
stemId: 0,
|
|
||||||
ballotId: state.ballotId,
|
|
||||||
})
|
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
return res.data.data;
|
return res.data.data;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
state.ballotName = res[0].ballotId;
|
console.log("res====",res);
|
||||||
let renderArr = [...res];
|
state.ballotName = res.ballotId;
|
||||||
|
// let renderArr = [...res];
|
||||||
// sortBy(renderArr, "orderNumber"); //序号
|
// sortBy(renderArr, "orderNumber"); //序号
|
||||||
state.allFormsData = parseData(renderArr); //类型
|
state.allFormsData = parseData(res); //类型
|
||||||
|
|
||||||
|
console.log( state.allFormsData);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
getInfoDate();
|
|
||||||
|
|
||||||
// 转换成前端格式
|
// 转换成前端格式
|
||||||
const parseData = (arr) => {
|
const parseData = (arr) => {
|
||||||
const resultArr = [];
|
const resultArr = [];
|
||||||
arr.forEach((item) => {
|
state.ballotId = arr.ballotId;
|
||||||
|
state.ballotName =arr.ballotName;
|
||||||
|
|
||||||
|
console.log("arr.voteStemVoList=====",arr.voteStemVoList);
|
||||||
|
arr.voteStemVoList.forEach((item) => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
let restList = traverseArr(item.optionDetailList, {
|
let restList = traverseArr(item.optionDetailList, {
|
||||||
inputVal: "singleOptionName",
|
inputVal: "optionName",
|
||||||
imgVal: "singleOptionPictureAddress",
|
imgVal: "optionPictureAddress",
|
||||||
optionId: "singleOptionId",
|
optionId: "optionId",
|
||||||
|
voteStemId:"voteStemId",
|
||||||
|
stem:"stem",
|
||||||
}).map((itm, idx) => {
|
}).map((itm, idx) => {
|
||||||
itm.id = idx + 1;
|
itm.id = idx + 1;
|
||||||
return itm;
|
return itm;
|
||||||
});
|
});
|
||||||
|
|
||||||
obj = {
|
obj = {
|
||||||
voteStemName: item.singleStemName,
|
voteStemId:item.voteStemId,
|
||||||
|
valueSingle: item.voteStemName,
|
||||||
singleList: restList,
|
singleList: restList,
|
||||||
};
|
};
|
||||||
resultArr.push(obj);
|
resultArr.push(obj);
|
||||||
@@ -179,78 +201,41 @@ export default {
|
|||||||
});
|
});
|
||||||
return resultArr;
|
return resultArr;
|
||||||
};
|
};
|
||||||
/**
|
|
||||||
// 转换成后端格式
|
// 转换成后端格式
|
||||||
const restData = (arr, typeKey) => {
|
const restData = (arr) => {
|
||||||
const resultArr = [];
|
const resultArr = [];
|
||||||
arr.forEach((item) => {
|
arr.forEach((item) => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
if (item[typeKey] === 1) {
|
console.log("item=======",item);
|
||||||
|
// if (item[typeKey] === 1) {
|
||||||
let restList = traverseArr(item.singleList, {
|
let restList = traverseArr(item.singleList, {
|
||||||
singleOptionName: "inputVal",
|
optionName: "inputVal",
|
||||||
singleOptionPictureAddress: "imgVal",
|
optionPictureAddress: "imgVal",
|
||||||
singleOptionId: "optionId",
|
optionId: "optionId",
|
||||||
|
voteStemId:"voteStemId",
|
||||||
|
stem:"stem",
|
||||||
}).map((itm, idx) => {
|
}).map((itm, idx) => {
|
||||||
itm.optionOrderNum = idx + 1;
|
itm.optionOrderNum = idx + 1;
|
||||||
return itm;
|
return itm;
|
||||||
});
|
});
|
||||||
restList.forEach((item) => {
|
restList.forEach((item) => {
|
||||||
item.singleOptionId = item.singleOptionId
|
item.optionId = item.optionId
|
||||||
? item.singleOptionId
|
? item.optionId
|
||||||
: "";
|
: "";
|
||||||
});
|
});
|
||||||
|
|
||||||
obj = {
|
obj = {
|
||||||
questionType: item[typeKey],
|
|
||||||
singleStemName: item.valueSingle,
|
voteStemName: item.valueSingle,
|
||||||
singleList: restList,
|
optionDetailList: restList,
|
||||||
orderNumber: item.orderNumber,
|
voteStemId:item.voteStemId,
|
||||||
};
|
|
||||||
|
};
|
||||||
resultArr.push(obj);
|
resultArr.push(obj);
|
||||||
}
|
// }
|
||||||
if (item[typeKey] === 2) {
|
console.log("resultArr=======",resultArr);
|
||||||
let restList = traverseArr(item.mutilList, {
|
|
||||||
multipleOptionName: "inputVal",
|
|
||||||
multipleOptionPictureAddress: "imgVal",
|
|
||||||
multipleOptionId: "optionId",
|
|
||||||
}).map((itm, idx) => {
|
|
||||||
itm.optionOrderNum = idx + 1;
|
|
||||||
return itm;
|
|
||||||
});
|
|
||||||
restList.forEach((item) => {
|
|
||||||
item.multipleOptionId = item.multipleOptionId
|
|
||||||
? item.multipleOptionId
|
|
||||||
: "";
|
|
||||||
});
|
|
||||||
|
|
||||||
obj = {
|
|
||||||
questionType: item[typeKey],
|
|
||||||
multipleStemName: item.valueMutil,
|
|
||||||
mutilList: restList,
|
|
||||||
orderNumber: item.orderNumber,
|
|
||||||
};
|
|
||||||
resultArr.push(obj);
|
|
||||||
}
|
|
||||||
if (item[typeKey] === 3) {
|
|
||||||
obj = {
|
|
||||||
questionType: item[typeKey],
|
|
||||||
assessmentQaTitle: item.valueAsk,
|
|
||||||
assessmentQaDescribe: item.valueAskDesc,
|
|
||||||
assessmentQaId: item.optionId ? item.optionId : "",
|
|
||||||
};
|
|
||||||
resultArr.push(obj);
|
|
||||||
}
|
|
||||||
if (item[typeKey] === 4) {
|
|
||||||
obj = {
|
|
||||||
questionType: item[typeKey],
|
|
||||||
assessmentScTitle: item.valuePin,
|
|
||||||
assessmentMinScore: item.minScore,
|
|
||||||
assessmentMaxScore: item.maxScore,
|
|
||||||
weightScale: item.pinQuan,
|
|
||||||
assessmentScId: item.optionId ? item.optionId : "",
|
|
||||||
};
|
|
||||||
resultArr.push(obj);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
resultArr.map((itm, idx) => {
|
resultArr.map((itm, idx) => {
|
||||||
itm.orderNumber = idx + 1;
|
itm.orderNumber = idx + 1;
|
||||||
@@ -260,55 +245,37 @@ export default {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 解散传值
|
// 解散传值
|
||||||
const parseItem = (arr) => {
|
const parseItem = (arrr) => {
|
||||||
const filterComObj = filterCommon(arr, "questionType");
|
// const filterComObj = filterCommon(arr, "questionType");
|
||||||
let resultObj = {};
|
let resultObj = {};
|
||||||
for (let key in filterComObj) {
|
// for (let key in filterComObj) {
|
||||||
if (key === "1") {
|
// if (key === "1") {
|
||||||
let arrSingle = filterComObj[key];
|
// let arrSingle = arrr
|
||||||
|
//filterComObj[key];
|
||||||
|
console.log("arrr======",arrr);
|
||||||
|
/*
|
||||||
let arr = [];
|
let arr = [];
|
||||||
arrSingle.forEach((item) => {
|
arrSingle.forEach((item) => {
|
||||||
|
console.log("item======",item);
|
||||||
if (item.singleList.length) {
|
if (item.singleList.length) {
|
||||||
item.singleList.forEach((itm) => {
|
item.singleList.forEach((itm) => {
|
||||||
arr.push({
|
arr.push({
|
||||||
...itm,
|
...itm,
|
||||||
singleStemName: item.singleStemName,
|
optionName: item.optionName,
|
||||||
orderNumber: item.orderNumber,
|
optionOrderNum: item.optionOrderNum,
|
||||||
questionType: item.questionType,
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});*/
|
||||||
resultObj.assessmentSingleChoiceDtoList = arr;
|
resultObj.voteStemDtoList = arrr;
|
||||||
}
|
// }
|
||||||
if (key === "2") {
|
console.log("resultObj======",resultObj);
|
||||||
let arrMulti = filterComObj[key];
|
// }
|
||||||
let arr = [];
|
|
||||||
arrMulti.forEach((item) => {
|
|
||||||
if (item.mutilList.length) {
|
|
||||||
item.mutilList.forEach((itm) => {
|
|
||||||
arr.push({
|
|
||||||
...itm,
|
|
||||||
multipleStemName: item.multipleStemName,
|
|
||||||
orderNumber: item.orderNumber,
|
|
||||||
questionType: item.questionType,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
resultObj.assessmentMultipleChoiceDtoList = arr;
|
|
||||||
}
|
|
||||||
if (key === "3") {
|
|
||||||
resultObj.assessmentEssayQuestionDtoList = filterComObj[key];
|
|
||||||
}
|
|
||||||
if (key === "4") {
|
|
||||||
resultObj.assessmentScoringQuestionDtoList = filterComObj[key];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return resultObj;
|
return resultObj;
|
||||||
};
|
};
|
||||||
|
|
||||||
*/
|
|
||||||
const handleTypes = () => {
|
const handleTypes = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
id: state.allFormsData.length,
|
id: state.allFormsData.length,
|
||||||
@@ -339,14 +306,21 @@ export default {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const handleSave = () => {
|
const handleSave = () => {
|
||||||
/**
|
|
||||||
let resultPost = {};
|
let resultPost = {};
|
||||||
|
|
||||||
let filterData = parseItem(restData(state.allFormsData, "type"));
|
let filterData = parseItem(restData(state.allFormsData, "type"));
|
||||||
|
|
||||||
|
if (!state.ballotName) {
|
||||||
|
return message.warning("请输入投票名称");
|
||||||
|
}
|
||||||
|
// 校验s
|
||||||
|
|
||||||
// 校验
|
// 校验
|
||||||
if (!checkVal(filterData)) {
|
if (!checkVal(filterData)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
// checkVal(filterData);
|
||||||
console.log(12121212);
|
console.log(12121212);
|
||||||
console.log(filterData);
|
console.log(filterData);
|
||||||
|
|
||||||
@@ -356,105 +330,71 @@ export default {
|
|||||||
ballotName: state.ballotName,
|
ballotName: state.ballotName,
|
||||||
...filterData,
|
...filterData,
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
resultPost = deepCloneFilterString(resultPost, [
|
resultPost = deepCloneFilterString(resultPost, [
|
||||||
"assessmentMaxScore",
|
"assessmentMaxScore",
|
||||||
"assessmentMinScore",
|
"assessmentMinScore",
|
||||||
]);
|
]);*/
|
||||||
console.log(1212334);
|
console.log(1212334);
|
||||||
console.log(resultPost);
|
console.log(resultPost);
|
||||||
editResearchMessage(resultPost).then((res) => {
|
api.updateStemMessage(resultPost).then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
|
state.ballotId=res.data.data.ballotId
|
||||||
|
console.log("res.data.data==============",res.data.data);
|
||||||
|
console.log("res.state.ballotId==============",state.ballotId);
|
||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
router.push({
|
closeDrawer();
|
||||||
path: "/researchmanage",
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
resultPost = {
|
resultPost = {
|
||||||
ballotName: state.ballotNameNew,
|
ballotName: state.ballotName,
|
||||||
assessmentMark: state.valueMore,
|
|
||||||
...filterData,
|
...filterData,
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
resultPost = deepCloneFilterString(resultPost, [
|
resultPost = deepCloneFilterString(resultPost, [
|
||||||
"assessmentMaxScore",
|
"assessmentMaxScore",
|
||||||
"assessmentMinScore",
|
"assessmentMinScore",
|
||||||
]);
|
]);*/
|
||||||
createOptionMessage(resultPost).then((res) => {
|
|
||||||
|
console.log("=========",resultPost);
|
||||||
|
api.createStemMessage(resultPost).then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
|
state.ballotId=res.data.data.ballotId
|
||||||
|
console.log("res.data.data2==============",res.data.data);
|
||||||
|
console.log("res.state.ballotId=2s=============",state.ballotId);
|
||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
|
closeDrawer();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
};
|
};
|
||||||
const handleAllCancel = () => {
|
const handleAllCancel = () => {
|
||||||
state.allFormsData = [];
|
state.allFormsData = [];
|
||||||
};
|
};
|
||||||
/**
|
|
||||||
const checkVal = (filterData) => {
|
const checkVal = (filterData) => {
|
||||||
// 问答
|
console.log("filterData.====",filterData);
|
||||||
if (
|
console.log("filterData.voteStemVoList====",filterData.voteStemDtoList);
|
||||||
filterData.assessmentEssayQuestionDtoList &&
|
|
||||||
filterData.assessmentEssayQuestionDtoList.length
|
if(!filterData.voteStemDtoList){
|
||||||
) {
|
message.error("请添加题干");
|
||||||
let arr = filterData.assessmentEssayQuestionDtoList;
|
return false;
|
||||||
for (let item of arr) {
|
}
|
||||||
if (!item.assessmentQaTitle) {
|
let arr = filterData.voteStemDtoList;
|
||||||
message.error("问答题干为必填 请确认");
|
arr.forEach((item) => {
|
||||||
|
console.log("item===",item);
|
||||||
|
console.log("!item.voteStemName===",!item.voteStemName);
|
||||||
|
if (!item.voteStemName) {
|
||||||
|
console.log("item.voteStemName===",item.voteStemName);
|
||||||
|
message.error("题干为必填 请确认",item.voteStemName);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
}
|
return true;
|
||||||
// 多选
|
|
||||||
if (
|
|
||||||
filterData.assessmentMultipleChoiceDtoList &&
|
|
||||||
filterData.assessmentMultipleChoiceDtoList.length
|
|
||||||
) {
|
|
||||||
let arr = filterData.assessmentMultipleChoiceDtoList;
|
|
||||||
for (let item of arr) {
|
|
||||||
if (!item.multipleStemName) {
|
|
||||||
message.error("多选题干为必填 请确认");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 评分
|
|
||||||
if (
|
|
||||||
filterData.assessmentScoringQuestionDtoList &&
|
|
||||||
filterData.assessmentScoringQuestionDtoList.length
|
|
||||||
) {
|
|
||||||
let CountNum = 0;
|
|
||||||
let CountArr = filterData.assessmentScoringQuestionDtoList;
|
|
||||||
for (let item of CountArr) {
|
|
||||||
if (!item.assessmentScTitle) {
|
|
||||||
message.error("评分题干为必填 请确认");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
CountNum += Number(item["weightScale"]);
|
|
||||||
}
|
|
||||||
if (CountNum !== 100) {
|
|
||||||
message.error("当前权重设置是百分制 请重新配置");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 单选
|
|
||||||
if (
|
|
||||||
filterData.assessmentSingleChoiceDtoList &&
|
|
||||||
filterData.assessmentSingleChoiceDtoList.length
|
|
||||||
) {
|
|
||||||
let arr = filterData.assessmentSingleChoiceDtoList;
|
|
||||||
for (let item of arr) {
|
|
||||||
if (!item.singleStemName) {
|
|
||||||
message.error("单选题干为必填 请确认");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
};
|
};
|
||||||
*/
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
|
|||||||
Reference in New Issue
Block a user