任务抽屉样式修改

This commit is contained in:
zhangyc
2022-11-16 08:28:05 +08:00
parent 9659ebef3a
commit a9ba5f6b5e
17 changed files with 1381 additions and 1267 deletions

View File

@@ -9,7 +9,8 @@
>
<div class="drawerMain">
<div class="header">
<div class="headerTitle">添加投票任务</div>
<div v-if="edit" class="headerTitle">编辑投票</div>
<div v-else class="headerTitle">添加投票</div>
<img
style="width: 29px; height: 29px; cursor: pointer"
src="../../assets/images/basicinfo/close.png"
@@ -32,7 +33,7 @@
<a-input
v-model:value="inputV1"
style="width: 424px; height: 32px"
placeholder="请输入任务名称"
placeholder="请输入投票名称"
maxlength="20"
/>
</div>
@@ -51,29 +52,37 @@
<button
class="xkbtn"
:style="{ display: creVote ? 'none' : 'block' }"
@click="showDrawerCreateVote"
@click="showDrawerCreVote"
>
创建投票
</button>
<div>
<CreateVote
v-model:createVoteVisible="createVoteVisible"
v-model:ballotId="ballotId"
v-model:editChild="editChild"
/>
</div>
<button
class="xkbtn"
:style="{ display: creVote ? 'block' : 'none' }"
@click="showDrawerCreateVote"
@click="showDrawerCreVote"
>
编辑投票
</button>
<div :style="{ display: creVote ? 'block' : 'none' }">
<div class="fileTigan">
<span style="color: #388be1">{{voteStemName}}</span>
<div class="delBox" @click="delBox()"></div>
<span style="color: #388be1">{{ballotName}}</span>
<div class="delBox" @click="dleVoteStem()"></div>
</div>
</div>
</div>
<!-- 创建投票侧弹窗 -->
<div>
<CreateVote
v-model:createVoteVisible="createVoteVisible"
<cre-vote
v-model:crevoteVisible="crevotevisible"
@getData="getStemId"
v-model:ballotId="ballotId"
/>
</div>
<!-- 创建投票侧弹窗 -->
@@ -85,7 +94,6 @@
<div class="btnbox">
<a-range-picker
style="width: 424px"
v-model:value="time"
:placeholder="[' 开始时间', ' 结束时间']"
/>
</div>
@@ -120,38 +128,38 @@
</div>
</div>
<div class="main_btns">
<button class="btn1">取消</button>
<button class="btn2" @click="createVoteText()">确定</button>
<button class="btn1" @click="closeDrawer()">取消</button>
<button class="btn2" @click="updateVoteInfo()">确定</button>
</div>
</div>
</a-drawer>
</template>
<script>
import { reactive, toRefs} from "vue";
import CreateVote from "./CreateVote.vue";
import CreVote from "./CreateVote.vue";
import * as api from "../../api/indexVote";
import * as apitaskadd from "../../api/indexTaskadd";
import { message } from "ant-design-vue";
import { toDate } from "../../api/method";
import { RouterEditTask } from "@/api/indexTask";
import dayjs from 'dayjs';
import dayjs from "dayjs";
import * as apiTask from "../../api/indexTaskadd";
export default {
name: "AddVote",
components: {
CreateVote,
CreVote,
},
props: {
addvoteVisible: {
type: Boolean,
default: false,
},
EditVoteId:{
type: Number,
default: 0,
},
edit: { // 是否为编辑
edit: {
type: Boolean,
default: false,
},
voteId: {
type: Number,
default: null,
},
projectId: {
@@ -182,36 +190,55 @@ export default {
type: Number,
default: null,
}
},
setup(props, ctx) {
const state = reactive({
voteName: "",
voteExplain: "",
inputV1: "",
textV1: "",
createVoteVisible: false,
time: undefined,
startTime:"",
endTime:"",
basevote: "",
ascriptionId: "",
voteStemId: null,
voteId:"",
voteStemName:"",
ballotName: "",
editStem: false, //编辑状态
ballotId: 0, //题干id
optionId: "", //删除修改选项id
editChild:false,
});
const closeDrawer = () => {
state.inputV1 = "",
state.textV1 = "",
state.time = undefined,
state.basevote = "",
ctx.emit("update:addvoteVisible", false);
ctx.emit("update:edit", false);
};
const afterVisibleChange = (bool) => {
console.log("state", bool);
queryVoteInfo();
};
const showDrawerCreateVote = () => {
const showDrawerCreVote = () => {
state.createVoteVisible = true;
console.log("进来了====");
};
const changeVData = (data) => {
state.ascriptionId = data.ascriptionId;
state.editChild = props.edit;
console.log("=======前")
};
const getStemId = (data) => {
state.ballotName = data.ballotName;
state.ballotId =data.ballotId;
}
const delBox = () => {
dleVoteStem()
state.creVote = false;
};
//删除题干信息接口
const dleVoteStem = () => {
let objdelstem = {
@@ -221,106 +248,133 @@ export default {
.then((res) => {
console.log('删除题干信息成功', res)
message.success('删除题干信息成功')
delBox()
})
}
const updteVote = (res) =>{
if (props.isLevel)
apitaskadd
.addTask({
courseId: res.data.data.voteId,
name: res.data.data.voteName,
projectId: props.projectId,
projectTaskId:props.projectTaskId || 0,
stageId: props.chooseStageId,
type: 12,
})
.then((res) => {
console.log("调用项目添加接口后", res.data);
ctx.emit("changeData", false);
})
.catch((err) => {
console.log(err);
});
else {
RouterEditTask({
chapterId: props.isactive,
courseId: res.data.data.voteId,
name: res.data.data.voteName,
routerId: props.routerId,
routerTaskId: props.routerTaskId,
type: 12,
}) .then((res) => {
console.log("调用项目添加接口后", res.data);
ctx.emit("changeData", false);
})
.catch((err) => {
console.log(err);
});
}
//根据投票id获取投票信息
const queryVoteInfo = ()=>{
/**
let obj = {
voteId:props.voteId
}
.queryVoteText(obj)
.then((res)=>{
console.log('获取投票信息成功',res);
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.baseVote = res.data.data.baseVote
state.ascriptionId = res.data.data.ascriptionId
state.ballotId = res.data.data.ballotId
})
.catch((err)=>{
console.log('获取投票信息失败',err);
})
**/
}
const updateToTask =(res)=>{
if(props.isLevel){
RouterEditTask({
chapterId: props.isactive,
courseId: res.data.data.voteId,
name: res.data.data.voteName,
routerId: props.routerId,
routerTaskId: props.routerTaskId || 0,
type: 12,
})
.then((res) => {
console.log(res, 11111);
message.success(`${props.edit ? '编辑' : '新增'}关卡任务成功`)
ctx.emit("changeData", false);
state.addLoading = false;
})
.catch((err) => {
console.log(err, 1111);
});
}else{
apiTask
.addTask({
courseId:res.data.data.voteId,
name: res.data.data.voteName,
projectId: props.projectId,
projectTaskId: props.projectTaskId || 0,
stageId: props.chooseStageId,
type: 12,
})
.then((res) => {
console.log("调用项目添加接口后111", res.data, 11111);
ctx.emit("changeData", false);
})
.catch((err) => {
console.log(err, 111111);
});
}
}
//创建投票信息
const createVoteText = () => {
if (!state.voteName) {
//修改投票信息接口
const updateVoteInfo = () => {
if (!state.inputV1) {
message.destroy();
return message.info("请输入投票名称");
}
if (state.basevote == "") {
state.basevote = 1;
}
if (state.time != undefined) {
state.time[0] = toDate(
new Date(state.time[0].$d).getTime() / 1000,
"Y-M-D"
);
state.time[1] = toDate(
new Date(state.time[1].$d).getTime() / 1000,
"Y-M-D"
);
if(state.time != undefined){
state.startTime = dayjs(state.time[0]).format("YYYY-MM-DD");
state.endTime = dayjs(state.time[1]).format("YYYY-MM-DD");
}
let obj = {
ascriptionId: state.ascriptionId,
voteId: props.edit?state.voteId : 0,
voteName: state.inputV1,
voteStartTime: state.startTime,
voteEndTime: state.endTime,
ballotId: state.ballotId,
baseVote: state.basevote,
voteEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
voteExplain: state.voteExplain,
voteName: state.voteName,
voteStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
};
voteExplain: state.textV1,
createUser:0,
updateUser:0,
voteTag:"",
}
if(props.edit){
api
.editVote(obj)
.then((res) => {
console.log("创建成功123", res);
message.success("创建成功");
updteVote(res);
updateToTask(res);
closeDrawer();
console.log('修改投票信息成功', res);
})
.catch((err) => {
console.log("创建失败", err);
});
console.log('修改投票信息失败', err);
})
}else{
api
.createVote(obj)
.then((res) => {
updteVote(res);
updateToTask(res);
closeDrawer();
console.log('创建投票信息成功', res);
})
.catch((err) => {
console.log("创建失败", err);
});
}
};
console.log('创建投票信息失败', err);
})
}
}
return {
...toRefs(state),
showDrawerCreateVote,
showDrawerCreVote,
afterVisibleChange,
closeDrawer,
changeVData,
getStemId,
queryVoteInfo,
dleVoteStem,
createVoteText,
updateVoteInfo,
delBox,
};
},
};
@@ -353,6 +407,7 @@ export default {
padding-right: 30px;
flex: 1;
border-right: 1px solid #e8e8e8;
margin-top: 32px;
.main_item {
display: flex;
align-items: center;