diff --git a/src/views/tk/FanWorkbench.vue b/src/views/tk/FanWorkbench.vue index 093ed30..7329a84 100644 --- a/src/views/tk/FanWorkbench.vue +++ b/src/views/tk/FanWorkbench.vue @@ -406,38 +406,53 @@ const getlist = () => { function getBigBrother() { queryFormData.value.isRunning = true; - const settingData = { ...queryFormData.value, tenantId: userInfo.value.tenantId, region: countryData.value }; - - // Save settings - storageSetInfos({ key: "UserSettings", data: settingData }); - - controlTask(JSON.stringify(settingData)).then(() => { - isRunnings.value = true; - - startTimerfun(); - - // Start polling stats - timerId.value = setInterval(() => { - getBrotherInfo().then(res => { - getBrotherInfodata.value = res; - }); - }, 1000); - }); + queryFormData.value.tenantId = userInfo.value.tenantId; + queryFormData.value.region = countryData.value; + + // 保存设置 + storageSetInfos({ key: "UserSettings", data: queryFormData.value }); + + startTimerfun(); + isRunnings.value = true; + + const startPolling = () => { + timerId.value = setInterval(() => { + getBrotherInfo().then(res => { + getBrotherInfodata.value = res; + }); + }, 1000); + }; + + // 根据是否有指定直播间ID调用不同方法 + if ( + !queryFormData.value.anchor_ids || + queryFormData.value.anchor_ids.length === 0 + ) { + controlTask(JSON.stringify(queryFormData.value)).then(() => { + startPolling(); + }); + } else { + Specifystreaming(JSON.stringify(queryFormData.value)).then(() => { + startPolling(); + }); + } } function BigBrotherstop() { stopTimerfun(); isRunnings.value = false; queryFormData.value.isRunning = false; - if (timerId.value) { - clearInterval(timerId.value); - timerId.value = null; - } - // Send stop command (logic in controlTask might handle toggle or we need stop logic) - // Original uses controlTask to START, but maybe stop logic is handled by setting isRunning=false in payload? - // Original code calls controlTask with payload again. - const settingData = { ...queryFormData.value, tenantId: userInfo.value.tenantId, region: countryData.value, isRunning: false }; - controlTask(JSON.stringify(settingData)); + queryFormData.value.tenantId = userInfo.value.tenantId; + queryFormData.value.region = countryData.value; + + controlTask(JSON.stringify(queryFormData.value)).then(() => { + clearInterval(timerId.value); + timerId.value = null; + }); + Specifystreaming(JSON.stringify(queryFormData.value)).then(() => { + clearInterval(timerId.value); + timerId.value = null; + }); }