修复直播编辑bug

This commit is contained in:
zhangyc
2022-11-11 01:22:29 +08:00
parent 80d6f1adc2
commit ee03a13e6e
6 changed files with 131 additions and 65 deletions

View File

@@ -323,12 +323,12 @@ export default {
state.textV2 = ""; state.textV2 = "";
state.time = ""; state.time = "";
message.success(`${props.edit ? '编辑' : '新增'}关卡任务成功`) message.success(`${props.edit ? '编辑' : '新增'}关卡任务成功`)
ctx.emit("changeData", false);
}; };
const queryActive = () => { const queryActive = () => {
console.log("props.EditActiveId======",props.EditActiveId,props.chooseStageId,props.routerTaskId); console.log("props.EditActiveId======",props.EditActiveId,props.chooseStageId,props.routerTaskId);
api.getActivity(props.EditActiveId).then(res => { api.getActivity(props.EditActiveId).then(res => {
console.log('获取讨论信息成功',res.data.data) console.log('获取讨论信息成功',res.data.data.standardSettings)
//更新讨论信息 //更新讨论信息
state.inputV1 = res.data.data.activityName; state.inputV1 = res.data.data.activityName;
@@ -337,8 +337,10 @@ export default {
state.inputV2 = res.data.data.activityDuration; state.inputV2 = res.data.data.activityDuration;
state.inputV3 = res.data.data.activityAddress; state.inputV3 = res.data.data.activityAddress;
state.inputV5 = res.data.data.afterSignIn; state.inputV5 = res.data.data.afterSignIn;
state.inputV6 =res.data.data.signOutTime;
state.inputV4 = res.data.data.beforeSignIn; state.inputV4 = res.data.data.beforeSignIn;
state.radioV1 = res.data.data.standardSettings; state.radioV1 = Number(res.data.data.standardSettings);
state.time = [dayjs(res.data.data.activityStartTime, "YYYY-MM-DD"), dayjs(res.data.data.activityEndTime, "YYYY-MM-DD")] state.time = [dayjs(res.data.data.activityStartTime, "YYYY-MM-DD"), dayjs(res.data.data.activityEndTime, "YYYY-MM-DD")]
}).catch(err=>{ }).catch(err=>{
console.log('获取讨论信息失败',err) console.log('获取讨论信息失败',err)
@@ -363,11 +365,11 @@ export default {
duration: res.data.data.activityDuration, duration: res.data.data.activityDuration,
name: res.data.data.activityName, name: res.data.data.activityName,
routerId: props.routerId, routerId: props.routerId,
routerTaskId: props.routerTaskId, routerTaskId: props.routerTaskId ||0,
type: 9, type: 9,
}).then(res => { }).then(res => {
console.log("新增关卡任务成功",res); console.log("新增关卡任务成功",res);
}).catch(err => { }).catch(err => {
console.log("新增关卡任务失败",err); console.log("新增关卡任务失败",err);
}) })
@@ -377,11 +379,12 @@ export default {
duration: res.data.data.activityDuration, duration: res.data.data.activityDuration,
name: res.data.data.activityName, name: res.data.data.activityName,
projectId: props.projectId, projectId: props.projectId,
projectTaskId: props.projectTaskId, projectTaskId: props.projectTaskId ||0,
stageId:props.chooseStageId, stageId:props.chooseStageId,
type: 9, type: 9,
}).then((res)=> { }).then((res)=> {
console.log("更新任务列表成功",res); console.log("更新任务列表成功",res);
}) })
.catch((err)=> { .catch((err)=> {
console.log("更新任务列表失败",err); console.log("更新任务列表失败",err);
@@ -434,6 +437,7 @@ export default {
.then((res) => { .then((res) => {
closeDrawer(); closeDrawer();
updateTask(res); updateTask(res);
ctx.emit("changeData", false);
}) })
.catch((err) => { .catch((err) => {
console.log("更新失败",err); console.log("更新失败",err);
@@ -446,6 +450,7 @@ export default {
message.success("创建成功"); message.success("创建成功");
closeDrawer(); closeDrawer();
updateTask(res); updateTask(res);
ctx.emit("changeData", false);
}) })
.catch((err) => { .catch((err) => {
console.log("创建失败",err); console.log("创建失败",err);

View File

@@ -56,7 +56,7 @@
<span style="margin-right: 3px">讨论设置</span> <span style="margin-right: 3px">讨论设置</span>
</div> </div>
<div class="btnbox"> <div class="btnbox">
<a-checkbox v-model:checked="checkedC1" @onclick = "checkedC1=!checkedC1">允许评论</a-checkbox> <a-checkbox v-model:checked="checkedC1" @change = "checkRadio">允许评论</a-checkbox>
</div> </div>
</div> </div>
</div> </div>
@@ -148,15 +148,24 @@ export default {
inputV2: "", inputV2: "",
textV1: "", textV1: "",
checkedC1: false, checkedC1: false,
discussSettings:"",
addLoading:false, addLoading:false,
}); });
const checkRadio = () =>{
if(state.checkedC1){
state.discussSettings = "true"
}else{
state.discussSettings = "false";
}
console.log("state.checkedC1=====",state.discussSettings,state.discussSettings=="true");
}
const closeDrawer = () => { const closeDrawer = () => {
ctx.emit("update:adddiscussVisible", false); ctx.emit("update:adddiscussVisible", false);
ctx.emit("update:edit", false); ctx.emit("update:edit", false);
state.inputV1 = ""; state.inputV1 = "";
state.textV1 = ""; state.textV1 = "";
message.success(`${props.edit ? '编辑' : '新增'}关卡任务成功`) message.success(`${props.edit ? '编辑' : '新增'}关卡任务成功`)
ctx.emit("changeData", false);
}; };
const queryDiscuss = () =>{ const queryDiscuss = () =>{
if(props.edit){ if(props.edit){
@@ -166,8 +175,8 @@ export default {
//更新讨论信息 //更新讨论信息
state.inputV1 = res.data.data.discussName; state.inputV1 = res.data.data.discussName;
state.textV1 = res.data.data.discussExplain; state.textV1 = res.data.data.discussExplain;
state.checkedC1 = Boolean(res.data.data.discussSettings); state.checkedC1 = res.data.data.discussSettings=="true"?true:false;
console.log("props.EditDiscussId",res.data.data.discussSettings,state.checkedC1==Boolean(res.data.data.discussSettings),Boolean(res.data.data.discussSettings),state.checkedC1) console.log("props.EditDiscussId",res.data.data.discussSettings,"===",res.data.data.discussSettings=="true",state.checkedC1)
}).catch(err=>{ }).catch(err=>{
console.log('获取讨论信息失败',err) console.log('获取讨论信息失败',err)
}) })
@@ -187,23 +196,21 @@ export default {
courseId: res.data.data.discussId, courseId: res.data.data.discussId,
name: res.data.data.discussName, name: res.data.data.discussName,
routerId: props.routerId, routerId: props.routerId,
routerTaskId: props.routerTaskId, routerTaskId: props.routerTaskId ||0,
type: 8, type: 8,
}).then(res => { }).then(res => {
closeDrawer();
console.log("新增关卡任务失败",res); console.log("新增关卡任务失败",res);
}).catch(err => {console.log("新增关卡任务失败",err);}) }).catch(err => {console.log("新增关卡任务失败",err);})
}else{ }else{
apiTask apiTask
.updateTask({ .addTask({
courseId: res.data.data.discussId, courseId: res.data.data.discussId,
name: res.data.data.discussName, name: res.data.data.discussName,
projectId: props.projectId, projectId: props.projectId,
projectTaskId: props.projectTaskId, projectTaskId: props.projectTaskId || 0,
stageId: props.stageId, stageId:props.chooseStageId,
type: 8, type: 8,
}).then(r=>{ }).then(r=>{
closeDrawer();
console.log("新增关卡任务成功",r); console.log("新增关卡任务成功",r);
}).catch(r=>{ }).catch(r=>{
console.log('更新阶段任务失败',r) console.log('更新阶段任务失败',r)
@@ -218,7 +225,7 @@ export default {
let obj = { let obj = {
discussName: state.inputV1, //讨论名称 discussName: state.inputV1, //讨论名称
discussExplain: state.textV1, //讨论说明 discussExplain: state.textV1, //讨论说明
discussSettings: String(state.checkedC1), //讨论设置 discussSettings: state.discussSettings, //讨论设置
discussId: props.edit?props.EditDiscussId:0,//讨论Id discussId: props.edit?props.EditDiscussId:0,//讨论Id
projectId: 0, //项目id,接口多余字段, projectId: 0, //项目id,接口多余字段,
}; };
@@ -228,6 +235,8 @@ export default {
.updateDiscuss(obj) .updateDiscuss(obj)
.then((res)=> { .then((res)=> {
updateTask(res); updateTask(res);
closeDrawer();
ctx.emit("changeData", false);
console.log("更新成功",res); console.log("更新成功",res);
console.log("项目任务ID",props.projectTaskId) console.log("项目任务ID",props.projectTaskId)
}) })
@@ -239,6 +248,8 @@ export default {
.createDiscuss(obj) .createDiscuss(obj)
.then((res)=> { .then((res)=> {
updateTask(res); updateTask(res);
closeDrawer();
ctx.emit("changeData", false);
console.log("创建成功",res); console.log("创建成功",res);
console.log("项目任务ID",props.projectTaskId) console.log("项目任务ID",props.projectTaskId)
}) })
@@ -253,7 +264,7 @@ export default {
closeDrawer, closeDrawer,
rowSelection, rowSelection,
updateDiscussInfo, updateDiscussInfo,
checkRadio,
}; };
}, },
}; };

View File

@@ -32,7 +32,7 @@
<div class="btnbox"> <div class="btnbox">
<a-input <a-input
v-model:value="inputV1" v-model:value="inputV1"
style="width: 424px; height: 32px" style="width: 400px; height: 32px"
placeholder="请输入考试名称" placeholder="请输入考试名称"
maxlength="20" maxlength="20"
/> />
@@ -47,7 +47,7 @@
v-model:value="textV1" v-model:value="textV1"
placeholder="请输入考试说明" placeholder="请输入考试说明"
allow-clear allow-clear
maxlength="150" maxlength="364px"
/> />
</div> </div>
</div> </div>
@@ -84,7 +84,7 @@
:min="0" :min="0"
:max="300" :max="300"
:precision="0" :precision="0"
style=" width: 388px; height: 32px; border-radius: 8px;overflow: hidden; " style=" width: 364px; height: 32px; border-radius: 8px;overflow: hidden; "
v-model:value="inputV2" v-model:value="inputV2"
></a-input-number> ></a-input-number>
@@ -102,11 +102,19 @@
<span style="margin-right: 3px">授课老师</span> <span style="margin-right: 3px">授课老师</span>
</div> </div>
<div class="btnbox"> <div class="btnbox">
<a-input
v-model:value="inputV3" <a-select
style="width: 424px; height: 32px" v-model:value="value"
placeholder="请输入授课老师" show-search
/> placeholder="Select a teacher"
style="width: 364px"
:options="options"
:filter-option="filterOption"
@focus="handleFocus"
@blur="handleBlur"
@change="handleChange2"
></a-select>
</div> </div>
</div> </div>
<div class="main_item2"> <div class="main_item2">
@@ -177,20 +185,23 @@
<span style="margin-right: 3px">评价</span> <span style="margin-right: 3px">评价</span>
</div> </div>
<div class="btnbox"> <div class="btnbox">
<a-checkbox v-model:checked="checkedC1" @onclick = 'checkedC1=!checkedC1'>需要评估</a-checkbox> <a-checkbox v-model:checked="checkedC1" @change = "checkRadio">需要评估</a-checkbox>
</div> </div>
</div> </div>
<div class="main_item" style="margin-top: -25px"> <div class="main_item" style="margin-top: -25px," :style="{ display: checkedC1 ? 'block' : 'none' }">
<div class="signbox"></div> <div class="signbox"></div>
<div class="btnbox"> <div class="btnbox">
<a-select <a-select
dropdownClassName="dropdown-style" v-model:value="value"
style="width: 424px" show-search
placeholder="选择评估" placeholder="选择评估"
:options="options1" style="width: 364px"
allowClear :options="options"
showSearch :filter-option="filterOption"
/> @focus="handleFocus"
@blur="handleBlur"
@change="handleChange2"
></a-select>
</div> </div>
</div> </div>
<div class="main_item2"> <div class="main_item2">
@@ -298,6 +309,7 @@ const options1 = ref([
}, },
]); ]);
const rowSelection = ref({ const rowSelection = ref({
checkStrictly: false, checkStrictly: false,
onChange: (selectedRowKeys, selectedRows) => { onChange: (selectedRowKeys, selectedRows) => {
@@ -528,9 +540,7 @@ export default {
message.error(`查询失败`) message.error(`查询失败`)
}) })
}; };
const PlayBack = () => {
state.playback = !state.playback;
};
const cloradio1 = (value) => { const cloradio1 = (value) => {
console.log(value.target._value); //点击的选项 console.log(value.target._value); //点击的选项
if (state.radioV1 === value.target._value) { if (state.radioV1 === value.target._value) {
@@ -635,9 +645,17 @@ export default {
if (!regular.test(state.inputV2)) { if (!regular.test(state.inputV2)) {
message.destroy(); message.destroy();
return message.warning("直播时长需大于0"); return message.warning("直播时长需大于0");
}
const reg = /(https?|ftp|file):\/\/[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]/;
if (!reg.test(state.inputV3)) {
message.destroy();
return message.warning("请输入有效直播链接地址");
} }
if (!reg.test(state.inputV5)) {
if (!state.inputV3) return message.warning("请输入授课老师"); message.destroy();
return message.warning("请输入有效回放地址");
}
//if (!state.inputV3) return message.warning("请输入授课老师");
//let check = state.checkedC2 ; //let check = state.checkedC2 ;
let startTime = toDate( let startTime = toDate(
@@ -663,9 +681,8 @@ export default {
liveId: props.edit?props.EditLiveId:0, liveId: props.edit?props.EditLiveId:0,
liveLink: state.inputV4, liveLink: state.inputV4,
liveName: state.inputV1, liveName: state.inputV1,
livePlayback: "", livePlayback:state.playback ? "true":"false",
livePlaybackLink: state.inputV5, livePlaybackLink: state.playback?state.inputV5:"",
liveTag: "",
liveTeacherId: state.inputV3, liveTeacherId: state.inputV3,
otherSettings:0, //1或0 otherSettings:0, //1或0
signOutTime: state.inputV8, signOutTime: state.inputV8,
@@ -702,12 +719,40 @@ export default {
}; };
const options = ref([{
value: 'jack',
label: 'Jack',
}, {
value: 'lucy',
label: 'Lucy',
}, {
value: 'tom',
label: 'Tom',
}]);
const handleChange2 = value => {
console.log(`selected ${value}`);
};
const handleBlur = () => {
console.log('blur');
};
const handleFocus = () => {
console.log('focus');
};
const checkRadio = () =>{
if(state.checkedC1){
state.discussSettings = "true"
}else{
state.discussSettings = "false";
}
console.log("state.checkedC1=====",state.discussSettings,state.discussSettings=="true");
}
const filterOption = (input, option) => {
return option.value.toLowerCase().indexOf(input.toLowerCase()) >= 0;
};
return { return {
...toRefs(state), ...toRefs(state),
afterVisibleChange, afterVisibleChange,
closeDrawer, closeDrawer,
PlayBack,
options1, options1,
// columns1, // columns1,
rowSelection, rowSelection,
@@ -715,6 +760,12 @@ export default {
handleChange, handleChange,
beforeUpload, beforeUpload,
updateLiveBroadcast, updateLiveBroadcast,
filterOption,
handleBlur,
handleFocus,
handleChange2,
options,
checkRadio,
}; };
}, },
}; };

View File

@@ -229,7 +229,14 @@ export default {
//创建外链 //创建外链
const updateRef = () => { const updateRef = () => {
if (!state.inputV1) return message.warning("请输入外链名称"); if (!state.inputV1) return message.warning("请输入外链名称");
if (!state.inputV2) return message.warning("请输入链接"); if (!state.inputV2){
return message.warning("请输入链接");
}else{
const reg = /(https?|ftp|file):\/\/[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]/;
if ((!reg.test(state.inputV2)) && state.inputV2 != '') {
return message.warning("请输入合法的链接地址");
}
}
let obj = { let obj = {
linkAddress: state.inputV2, linkAddress: state.inputV2,
linkDescription: state.textV1, linkDescription: state.textV1,

View File

@@ -1276,7 +1276,7 @@ export default {
state.addactivevisible = true; state.addactivevisible = true;
state.EditActiveId = id; state.EditActiveId = id;
state.routerTaskId = eleId; state.routerTaskId = eleId;
};s };
// tableData数据赋值方法 // tableData数据赋值方法
const dataAssignment = (id) => { const dataAssignment = (id) => {

View File

@@ -235,7 +235,7 @@
v-model:edit="edit" v-model:edit="edit"
v-model:projectId="projectId" v-model:projectId="projectId"
v-model:chooseStageId="chooseStageId" v-model:chooseStageId="chooseStageId"
v-model:editDiscussId="editDiscussId" v-model:EditDiscussId="EditDiscussId"
v-model:projectTaskId="projectTaskId" v-model:projectTaskId="projectTaskId"
@changeData="updateTableData" @changeData="updateTableData"
/> />
@@ -255,7 +255,7 @@
<add-active <add-active
v-model:addactiveVisible="addactivevisible" v-model:addactiveVisible="addactivevisible"
v-model:projectId="projectId" v-model:projectId="projectId"
v-model:editActivityId="editActivityId" v-model:EditActiveId="EditActiveId"
v-model:projectTaskId="projectTaskId" v-model:projectTaskId="projectTaskId"
v-model:edit="edit" v-model:edit="edit"
v-model:chooseStageId="chooseStageId" v-model:chooseStageId="chooseStageId"
@@ -922,9 +922,9 @@ export default {
isRefEdit: false, //外链编辑 isRefEdit: false, //外链编辑
isLiveEdit: false, //直播编辑 isLiveEdit: false, //直播编辑
EditRefId: null, //要编辑的外链的id EditRefId: null, //要编辑的外链的id
EditLiveId: null, //要编辑的直播的id EditLiveId: null, //要编辑的直播的ids
editDiscussId:null,//要编辑的讨论的id EditDiscussId:null,//要编辑的讨论的id
editActivityId:null,//要编辑的活动id EditActiveId:null,//要编辑的活动id
EditWorkId:null, // 要编辑的作业id EditWorkId:null, // 要编辑的作业id
EditTestId: null,// 要编辑的考试id EditTestId: null,// 要编辑的考试id
EditEvalId:null, EditEvalId:null,
@@ -1326,16 +1326,7 @@ export default {
// console.log("22222", res.data.data.stageList); // console.log("22222", res.data.data.stageList);
let leng = res.data.data.stageList.length; let leng = res.data.data.stageList.length;
if (leng > 0) { if (leng > 0) {
//后加选择了阶段id
// if(state.chooseStageId!==null){
// let final = res.data.data.stageList.find((item)=>item.id==state.chooseStageId)
// getTableData(final)
// }else{
// //获取任务列表
// let arr = res.data.data.stageList[0].taskList;
// console.log("任务列表", arr);
// getTableData(arr);
// }
let arr = res.data.data.stageList[0].taskList; let arr = res.data.data.stageList[0].taskList;
console.log("任务列表", arr); console.log("任务列表", arr);
getTableData(arr); getTableData(arr);
@@ -1676,15 +1667,16 @@ export default {
state.addrefvisible = true; state.addrefvisible = true;
}; };
const showDrawerAddDiscuss = (id, eleId) => { const showDrawerAddDiscuss = (id, eleId) => {
state.editDiscussId = id; state.EditDiscussId = id;
state.projectTaskId = eleId; state.projectTaskId = eleId;
state.adddiscussvisible = true; state.adddiscussvisible = true;
}; };
const showDrawerAddActive = (id, eleId) => { const showDrawerAddActive = (id, eleId) => {
state.addactivevisible = true; state.addactivevisible = true;
state.editActivityId = id; state.EditActiveId = id;
state.projectTaskId = eleId; state.projectTaskId = eleId;
console.log("active=======",id);
}; };
const showDrawerAddEval = () => { const showDrawerAddEval = () => {
state.addevalvisible = true; state.addevalvisible = true;