haoxuan
2023-11-03 1b1953b435e3187243102c794d29b56acb0dba5a
src/stores/tasks.ts
@@ -28,11 +28,29 @@
    return getTaskList(params)
      .then((res) => {
        channels.value = res.data
        // 首次获取通道数据时自动选中第一个任务
        if (!activeTask?.value) {
          selectFirstTask(channels.value)
        }
      })
      .catch((err) => {
        console.error(err)
        channels.value = []
      })
  }
  function selectFirstTask(channels: TasksGroupByChannel) {
    const firstNotEmptyChannel = Object.entries(channels).find((ele) => {
      const taskList = (ele[1] as TasksResponse)?.Tasks
      return !!taskList.length
    })
    if (firstNotEmptyChannel) {
      const channelNumber = +firstNotEmptyChannel[0]
      activeTask.value = channels[channelNumber].Tasks[0]
    }
  }
  /**
@@ -105,22 +123,6 @@
    activeTask.value = task
  }
  const requestParamsMap = ref<{
    [channel: number]: TaskListParams
  }>({})
  function getParamsByChannel(channel: number) {
    return (
      requestParamsMap.value[channel] ?? {
        type: 1,
        offset: 0,
        limit: 3
      }
    )
  }
  function setParamsByChannel(channel: number, params: TaskListParams) {
    requestParamsMap.value[channel] = params
  }
  return {
    channels,
    getChannels,
@@ -128,9 +130,6 @@
    activeTask,
    reload,
    setActiveTask,
    requestParamsMap,
    getParamsByChannel,
    setParamsByChannel,
    moreChannelTasksBtn,
    foldChannelTasksBtn
  }