zhengyiming
4 天以前 8b40022d423cb9734813326e60957ec513b8a942
apps/cMiniApp/src/pages/task/InnerPage.vue
@@ -1,5 +1,5 @@
<template>
  <Calendar v-model="queryState.date"></Calendar>
  <Calendar key="calendar" v-model="queryState.date"></Calendar>
  <ProTabs
    v-model="queryState.checkReceiveStatus"
    name="task-tab"
@@ -16,28 +16,34 @@
    ></ProTabPane>
    <ProTabPane :title="`已验收`" :pane-key="EnumTaskCheckReceiveStatus.Completed"></ProTabPane>
  </ProTabs>
  <InfiniteLoading
    scrollViewClassName="common-infinite-scroll-list task-list"
    v-bind="infiniteLoadingProps"
    :key="queryState.checkReceiveStatus"
  >
    <template #renderItem="{ item }">
      <MyTaskCard
        :name="item.name"
        :addressName="item.addressName"
        :begin-time="item.beginTime"
        :end-time="item.endTime"
        @click="goSubmitTaskDetail(item)"
      />
    </template>
  </InfiniteLoading>
  <div class="task-list-container">
    <InfiniteLoading
      scrollViewClassName="common-infinite-scroll-list task-list"
      v-bind="infiniteLoadingProps"
      :key="queryState.checkReceiveStatus"
    >
      <template #renderItem="{ item }">
        <MyTaskCard
          :name="item.name"
          :addressName="item.addressName"
          :begin-time="item.beginTime"
          :end-time="item.endTime"
          :showActions="
            item.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn &&
            queryState.checkReceiveStatus === EnumTaskCheckReceiveStatus.Completed
          "
          @click="goSubmitTaskDetail(item)"
        />
      </template>
    </InfiniteLoading>
  </div>
</template>
<script setup lang="ts">
import { MyTaskCard, ProTabs, ProTabPane, Calendar } from '@12333/components';
import Taro from '@tarojs/taro';
import { useCheckReceiveTasks, useTaskList } from '@12333/hooks';
import { EnumTaskCheckReceiveStatus } from '@12333/constants';
import { EnumTaskCheckReceiveStatus, EnumTaskCheckReceiveMethod } from '@12333/constants';
defineOptions({
  name: 'InnerPage',
@@ -51,10 +57,21 @@
      url: `${RouterPath.taskSubmitCheck}?id=${item.id}&date=${queryState.date}`,
    });
  }
  if (Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed) {
    Taro.navigateTo({
      url: `${RouterPath.taskCheckDetail}?id=${item.id}`,
    });
  if (item.checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn) {
    if (Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed) {
      Taro.navigateTo({
        url: `${RouterPath.taskUserSubmitCheckHistories}?id=${item.id}&date=${queryState.date}`,
      });
    }
  } else {
    if (
      Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.WaitCheckReceive ||
      Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed
    ) {
      Taro.navigateTo({
        url: `${RouterPath.taskCheckDetail}?id=${item.id}`,
      });
    }
  }
}
</script>
@@ -62,7 +79,16 @@
<style lang="scss">
@import '@/styles/common.scss';
.task-list {
  @include infiniteLoadingInTabBarPage;
.task-page-wrapper {
  .task-list-container {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
  }
  .task-list {
    @include infiniteLoadingInTabBarPage;
  }
}
</style>