zhengyiming
4 天以前 ba48054b6f2680cfa1a0b3b912880925a8b5861b
apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue
@@ -8,8 +8,11 @@
    title-gutter="8"
    title-scroll
  >
    <ProTabPane :title="`待安排(${notCount})`" :pane-key="EnumTaskStatus.Wait"></ProTabPane>
    <ProTabPane :title="`已安排(${hasCount})`" :pane-key="EnumTaskStatus.Complete"></ProTabPane>
    <ProTabPane :title="`待安排(${waitAssignCount})`" :pane-key="EnumTaskStatus.Wait"></ProTabPane>
    <ProTabPane
      :title="`已安排(${completedAssignCount})`"
      :pane-key="EnumTaskStatus.Complete"
    ></ProTabPane>
  </ProTabs>
  <InfiniteLoading
    scrollViewClassName="common-infinite-scroll-list"
@@ -25,20 +28,21 @@
        :createdTime="item.createdTime"
        :serviceFee="item.serviceFee"
        :unit="BillingMethodEnumUnit[item.billingMethod]"
        @click="goSubmitTaskDetail(item)"
        mode="taskManage"
      >
        <template #footer-actions>
          <nut-button
            type="primary"
            @click.stop="goBatchTaskList(item, EnumTaskUserArrangeStatus.Wait)"
            >人员安排</nut-button
          >
          <nut-button
            v-if="item.status === EnumTaskStatus.Complete"
            type="primary"
            :color="Colors.Info"
            class="dark-btn"
            @click.stop="goBatchTaskList(item, 'detail')"
            @click.stop="goBatchTaskList(item, EnumTaskUserArrangeStatus.Complete)"
            >详情</nut-button
          >
          <nut-button type="primary" v-else @click.stop="goBatchTaskList(item, 'arrange')"
            >人员安排</nut-button
          >
        </template>
      </JobApplicationCard>
@@ -49,20 +53,29 @@
<script setup lang="ts">
import { JobApplicationCard, ProTabs, ProTabPane } from '@12333/components';
import Taro from '@tarojs/taro';
import { EnumTaskStatus, BillingMethodEnumUnit, Colors } from '@12333/constants';
import { useTaskList } from '@/hooks/task';
import {
  EnumTaskStatus,
  BillingMethodEnumUnit,
  Colors,
  EnumTaskUserArrangeStatus,
} from '@12333/constants';
import { useTaskList } from '@12333/hooks';
defineOptions({
  name: 'InnerPage',
});
const { queryMenuState, infiniteLoadingProps } = useTaskList();
const hasCount = computed(() => {
  return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.hasCount ?? 0;
const { queryMenuState, infiniteLoadingProps } = useTaskList({
  defaultQueryMenuState: {
    status: EnumTaskStatus.Wait,
  },
});
const notCount = computed(() => {
  return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.notCount ?? 0;
const completedAssignCount = computed(() => {
  return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.completedAssignCount ?? 0;
});
const waitAssignCount = computed(() => {
  return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.waitAssignCount ?? 0;
});
function goSubmitTaskDetail(item: API.GetTaskInfosQueryResultItem) {
@@ -71,9 +84,9 @@
  });
}
function goBatchTaskList(item: API.GetTaskInfosQueryResultItem, status: string) {
function goBatchTaskList(item: API.GetTaskInfosQueryResultItem, status: EnumTaskUserArrangeStatus) {
  Taro.navigateTo({
    url: `${RouterPath.batchTaskList}?taskId=${item.id}&detail=${status}`,
    url: `${RouterPath.batchTaskList}?id=${item.id}&status=${status}`,
  });
}
</script>