直播外链活动讨论阶段里关卡里编辑

This commit is contained in:
zhangyc
2022-11-10 20:10:26 +08:00
parent 31234d2574
commit cbddd79d4b
9 changed files with 608 additions and 987 deletions

View File

@@ -8,8 +8,7 @@
>
<div class="drawerMain">
<div class="header">
<div v-if="edit" class="headerTitle">编辑讨论</div>
<div v-else class="headerTitle">添加讨论</div>
<div class="headerTitle">{{edit?'编辑':'添加'}}讨论</div>
<img
style="width: 29px; height: 29px; cursor: pointer"
src="../../assets/images/basicinfo/close.png"
@@ -57,19 +56,17 @@
<span style="margin-right: 3px">讨论设置</span>
</div>
<div class="btnbox">
<a-checkbox v-model:checked="checkedC1">允许评论</a-checkbox>
<a-checkbox v-model:checked="checkedC1" @onclick = "checkedC1=!checkedC1">允许评论</a-checkbox>
</div>
</div>
</div>
</div>
<div class="main_btns">
<button class="btn1" @click="closeDrawer">取消</button>
<button class="btn2" @click="createDiscuss">确定</button>
<button class="btn2" @click="updateDiscussInfo">确定</button>
</div>
</div>
<div class="aeLoading" :style="{display:addLoading?'flex':'none'}">
<a-spin :spinning="addLoading" tip="添加中..." />
</div>
</a-drawer>
</template>
<script>
@@ -103,20 +100,12 @@ export default {
type: Boolean,
default: false,
},
edit: {
type: Boolean,
default: false,
},
isStudiscuss: {
type: Boolean,
default: false,
},
isactive: {
EditDiscussId: {
type: Number,
default: null,
},
routerId: {
type: Number,
edit: { // 是否为编辑
type: Boolean,
default: null,
},
projectId: {
@@ -127,11 +116,27 @@ export default {
type: Number,
default: null,
},
editDiscussId: {
routerTaskId: {
type: Number,
default: 0,
},
isLevel: { // 是否是关卡页面触发
type: Boolean,
default: null,
},
EditWorkId: { // 要编辑的workId
type: Number,
default: null,
},
projectTaskId: {
projectTaskId: { // 要编辑的projectId
type: Number,
default: null,
},
routerId: {
type: Number,
default: null,
},
isactive: {
type: Number,
default: null,
}
@@ -142,157 +147,113 @@ export default {
inputV1: "",
inputV2: "",
textV1: "",
checkedC1: "",
checkedC1: false,
addLoading:false,
});
const closeDrawer = () => {
ctx.emit("update:adddiscussVisible", false);
ctx.emit("update:edit", false);
console.log("编辑状态",props.edit);
state.inputV1 = "";
state.textV1 = "";
message.success(`${props.edit ? '编辑' : '新增'}关卡任务成功`)
ctx.emit("changeData", false);
};
const queryDiscuss = () =>{
if(props.edit){
//编辑讨
api.getDiscussDetail({discussId:props.EditDiscussId}).then(res => {
console.log('获取讨论信息成功',res.data.data)
//更新讨论信息
state.inputV1 = res.data.data.discussName;
state.textV1 = res.data.data.discussExplain;
state.checkedC1 = Boolean(res.data.data.discussSettings);
console.log("props.EditDiscussId",res.data.data.discussSettings,state.checkedC1==Boolean(res.data.data.discussSettings),Boolean(res.data.data.discussSettings),state.checkedC1)
}).catch(err=>{
console.log('获取讨论信息失败',err)
})
}
};
const afterVisibleChange = (bool) => {
console.log("state", bool);
console.log("项目任务ID",props.projectTaskId);
if(bool){
if(props.isStudiscuss == false){
if(props.edit){
//编辑讨论
console.log("props.editDiscussId",props.editDiscussId)
let formData = new FormData();
formData.append('discussId',props.editDiscussId);
console.log("formData",formData);
api.getDiscussDetail(formData).then(res => {
console.log('获取讨论信息成功',res.data.data)
//更新讨论信息
state.inputV1 = res.data.data.discussName;
state.textV1 = res.data.data.discussExplain;
state.checkedC1 = res.data.data.discussSettings;
}).catch(err=>{
console.log('获取讨论信息失败',err)
})
}
}
queryDiscuss();
}
};
//console.log("编辑状态",props.edit);
//创建讨论(项目任务列表)
const createDiscuss = () => {
const updateTask = (res) => {
console.log("jinlaile ========",props.isLevel);
if(props.isLevel){
RouterEditTask({
chapterId:props.isactive,
courseId: res.data.data.discussId,
name: res.data.data.discussName,
routerId: props.routerId,
routerTaskId: props.routerTaskId,
type: 8,
}).then(res => {
closeDrawer();
console.log("新增关卡任务失败",res);
}).catch(err => {console.log("新增关卡任务失败",err);})
}else{
apiTask
.updateTask({
courseId: res.data.data.discussId,
name: res.data.data.discussName,
projectId: props.projectId,
projectTaskId: props.projectTaskId,
stageId: props.stageId,
type: 8,
}).then(r=>{
closeDrawer();
console.log("新增关卡任务成功",r);
}).catch(r=>{
console.log('更新阶段任务失败',r)
})
}
}
const updateDiscussInfo = () => {
if (!state.inputV1) {
message.destroy();
return message.warning("请输入讨论名称");
}
state.addLoading=true
let obj = {
discussName: state.inputV1, //讨论名称
discussExplain: state.textV1, //讨论说明
discussSettings: state.checkedC1, //讨论设置
createTime: "", //创建时间
createUser: 0, //创建人
discussFlag: "", //活动逻辑删除标识
discussId: props.editDiscussId == null ? 0 : props.editDiscussId, //讨论Id
discussTag: "", //是否必修的标识
updateTime: "", //更新时间
updateUser: 0, //更新人
projectId: props.projectId, //项目id
discussSettings: String(state.checkedC1), //讨论设置
discussId: props.edit?props.EditDiscussId:0,//讨论Id
projectId: 0, //项目id,接口多余字段,
};
if(props.edit == false){
api
.createDiscuss(obj)
.then((res) => {
console.log("创建成功", res);
state.inputV1 = "";
state.textV1 = "";
//console.log("discussName",obj.discussName);
console.log("学习路径",props.isStudiscuss);
if(props.isStudiscuss){
let editObj1 = {
chapterId:props.isactive,
courseId: res.data.data.discussId,
duration: 0,
flag: true,
name: obj.discussName,
routerId: props.routerId,
routerTaskId: 0,
type: 8,
}
RouterEditTask(editObj1).then(res => {
console.log("新增关卡任务成功",res);
setTimeout(()=>{
message.success("创建成功");
ctx.emit("update:adddiscussVisible", false);
state.addLoading=false
},1000)
}).catch(err => {
console.log("新增关卡任务失败",err);
})
}else{
console.log("项目添加讨论");
apiTask
.addTask({
courseId: res.data.data.discussId,
duration: 0,
flag: true,
name: obj.discussName,
projectId: props.projectId,
projectTaskId: "",
stageId: props.chooseStageId,
type: 8,
})
.then((res) => {
console.log("调用项目添加接口后", res.data);
ctx.emit("changeData",false);
//重新获取任务列表
// apiTask.getTask({ projectId: 28 });
// router.push("/taskadd");
state.addLoading=false
})
.catch((err) => {
console.log(err);
});
}
})
.catch((err) => {
console.log("创建失败", err);
});
}else{
console.log("dianwanle -======",String(state.checkedC1));
if(props.edit){
api
.updateDiscuss(obj)
.then((res)=> {
updateTask(res);
console.log("更新成功",res);
console.log("项目任务ID",props.projectTaskId)
let taskObj={
courseId: res.data.data.discussId,
name: obj.discussName,
projectId: props.projectId,
projectTaskId: props.projectTaskId,
stageId: props.stageId,
type: 8,
}
api.updateTask(taskObj).then(taskRes=>{
console.log('更新阶段任务成功',taskRes)
}).catch(taskErr=>{
console.log('更新阶段任务失败',taskErr)
})
})
.catch((err) => {
console.log("更新失败",err)
console.log("更新失败",err)
})
}else{
api
.createDiscuss(obj)
.then((res)=> {
updateTask(res);
console.log("创建成功",res);
console.log("项目任务ID",props.projectTaskId)
})
.catch((err) => {
console.log("创建失败",err)
})
}
};
return {
...toRefs(state),
afterVisibleChange,
closeDrawer,
rowSelection,
createDiscuss,
updateDiscussInfo,
};
},
};