|  |  |  | 
|---|
|  |  |  | :name="item.name" | 
|---|
|  |  |  | :gender="item.gender" | 
|---|
|  |  |  | :age="item.age" | 
|---|
|  |  |  | :avatar="item.avatar" | 
|---|
|  |  |  | :isReal="item.isReal" | 
|---|
|  |  |  | :educationalBackgroundContent="item.educationalBackgroundContent" | 
|---|
|  |  |  | :personalIdentityContent="item.personalIdentityContent" | 
|---|
|  |  |  | :workExperience="item.workExperience" | 
|---|
|  |  |  | :workSeniority="item.workSeniority" | 
|---|
|  |  |  | :taskCount="item.taskCount" | 
|---|
|  |  |  | :showFooterLeft="false" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template #footerRight> | 
|---|
|  |  |  | <nut-button v-if="showQueryState" type="primary" @click="handleArrange(item)" | 
|---|
|  |  |  | <nut-button v-if="showQueryState" type="primary" @click.stop="handleArrange(item)" | 
|---|
|  |  |  | >安排</nut-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div v-else class="batch-task-card-status">已安排</div> | 
|---|
|  |  |  | 
|---|
|  |  |  | <script setup lang="ts"> | 
|---|
|  |  |  | import Taro from '@tarojs/taro'; | 
|---|
|  |  |  | import { useInfiniteLoading } from '@12333/hooks'; | 
|---|
|  |  |  | import { EnumTaskUserArrangeStatus, EnumPagedListOrder } from '@12333/constants'; | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | EnumTaskUserArrangeStatus, | 
|---|
|  |  |  | EnumPagedListOrder, | 
|---|
|  |  |  | EnumGetArrangeTaskUsersQueryApplyStatus, | 
|---|
|  |  |  | } from '@12333/constants'; | 
|---|
|  |  |  | import * as taskUserServices from '@12333/services/apiV2/taskUser'; | 
|---|
|  |  |  | import _ from 'lodash'; | 
|---|
|  |  |  | import { Message, trim } from '@12333/utils'; | 
|---|
|  |  |  | 
|---|
|  |  |  | const searchValue = ref(''); | 
|---|
|  |  |  | const router = Taro.useRouter(); | 
|---|
|  |  |  | const id = router.params?.id ?? ''; | 
|---|
|  |  |  | const status = router.params?.status ?? ''; | 
|---|
|  |  |  | const status = Number(router.params?.status); | 
|---|
|  |  |  | const queryState = reactive({ | 
|---|
|  |  |  | keywords: '', | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const showQueryState = computed(() => { | 
|---|
|  |  |  | return status === 'arrange'; | 
|---|
|  |  |  | return status === EnumTaskUserArrangeStatus.Wait; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const handleSearch = _.debounce(function () { | 
|---|
|  |  |  | 
|---|
|  |  |  | ({ pageParam }) => { | 
|---|
|  |  |  | let params: API.GetArrangeTaskUsersQuery = { | 
|---|
|  |  |  | keywords: queryState.keywords, | 
|---|
|  |  |  | arrangeStatus: EnumTaskUserArrangeStatus.Wait, | 
|---|
|  |  |  | arrangeStatus: status, | 
|---|
|  |  |  | applyStatus: EnumGetArrangeTaskUsersQueryApplyStatus.Completed, | 
|---|
|  |  |  | id: id, | 
|---|
|  |  |  | pageModel: { | 
|---|
|  |  |  | rows: 20, | 
|---|
|  |  |  | 
|---|
|  |  |  | async function handleArrange(item: API.GetArrangeTaskUsersQueryResultItem) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | let params: API.SetTaskUserArrangeCommand = { | 
|---|
|  |  |  | id: item.id, | 
|---|
|  |  |  | enterpriseEmployeeId: item.id, | 
|---|
|  |  |  | taskInfoId: id, | 
|---|
|  |  |  | arrangeStatus: EnumTaskUserArrangeStatus.Complete, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | let res = await taskUserServices.setTaskUserArrange(params); | 
|---|