| | |
| | | :isFlex="false" |
| | | @click="handleCall" |
| | | ></PageFooterAction> |
| | | <PageFooterBtn |
| | | v-if="showApplyBtn" |
| | | type="primary" |
| | | @click="handleApply" |
| | | :disabled="detail?.hireStatus === EnumTaskUserHireStatus.Wait" |
| | | >{{ `报名(${detail?.applyCount ?? 0}人已报名)` }}</PageFooterBtn |
| | | > |
| | | <PageFooterBtn |
| | | v-if="detail.applyButton === GetTaskInfoQueryResultApplyButton.WaitHire" |
| | | color="#999999" |
| | | disabled |
| | | >待确认</PageFooterBtn |
| | | > |
| | | <!-- <PageFooterBtn |
| | | <template v-if="from === 'mine'"> |
| | | <PageFooterBtn |
| | | v-if="detail.applyButton === GetTaskInfoQueryResultApplyButton.WaitHire" |
| | | color="#999999" |
| | | disabled |
| | | >待确认</PageFooterBtn |
| | | > |
| | | <!-- <PageFooterBtn |
| | | v-if="detail.applyButton === GetTaskInfoQueryResultApplyButton.WaitSignContract" |
| | | >去签约</PageFooterBtn |
| | | > --> |
| | | <PageFooterBtn |
| | | v-if="detail.hireButton === GetTaskInfoQueryResultHireButton.InProcess" |
| | | color="#999999" |
| | | disabled |
| | | >进行中</PageFooterBtn |
| | | > |
| | | <!-- <PageFooterBtn |
| | | <PageFooterBtn |
| | | v-if="detail.hireButton === GetTaskInfoQueryResultHireButton.InProcess" |
| | | color="#999999" |
| | | disabled |
| | | >进行中</PageFooterBtn |
| | | > |
| | | <!-- <PageFooterBtn |
| | | v-if="detail.hireButton === GetTaskInfoQueryResultHireButton.ApplyCheckReceive" |
| | | >申请验收</PageFooterBtn |
| | | > --> |
| | | <PageFooterBtn |
| | | v-if="detail.hireButton === GetTaskInfoQueryResultHireButton.Completed" |
| | | color="#999999" |
| | | disabled |
| | | >已完成</PageFooterBtn |
| | | > |
| | | <PageFooterBtn v-if="detail.releaseStatus === EnumTaskReleaseStatus.Stopped" color="#999999" |
| | | >已停止</PageFooterBtn |
| | | > |
| | | <PageFooterBtn |
| | | v-if="detail.hireButton === GetTaskInfoQueryResultHireButton.Completed" |
| | | color="#999999" |
| | | disabled |
| | | >已完成</PageFooterBtn |
| | | > |
| | | </template> |
| | | <template v-else> |
| | | <PageFooterBtn |
| | | v-if="detail?.releaseStatus === EnumTaskReleaseStatus.InProcess" |
| | | type="primary" |
| | | @click="handleApply" |
| | | :disabled="detail?.hireStatus" |
| | | >{{ `报名(${detail?.applyCount ?? 0}人已报名)` }}</PageFooterBtn |
| | | > |
| | | |
| | | <PageFooterBtn v-if="detail.releaseStatus === EnumTaskReleaseStatus.Stopped" color="#999999" |
| | | >已停止</PageFooterBtn |
| | | > |
| | | </template> |
| | | </PageFooter> |
| | | </LoadingLayout> |
| | | </template> |
| | |
| | | */ |
| | | |
| | | const router = Taro.useRouter(); |
| | | const taskId = router.params?.id ?? ''; |
| | | |
| | | const showApplyBtn = computed(() => { |
| | | return ( |
| | | detail.value?.releaseStatus === EnumTaskReleaseStatus.InProcess && |
| | | (detail.value?.hireStatus === EnumTaskUserHireStatus.Wait || !detail.value?.hireStatus) |
| | | ); |
| | | }); |
| | | const id = router.params?.id ?? ''; |
| | | const from = router.params?.from ?? ''; |
| | | |
| | | const { |
| | | isLoading, |
| | |
| | | data: detail, |
| | | refetch, |
| | | } = useQuery({ |
| | | queryKey: ['taskServices/getTaskInfo', taskId], |
| | | queryKey: ['taskServices/getTaskInfo', id], |
| | | queryFn: async () => { |
| | | return await taskServices.getTaskInfo( |
| | | { id: taskId }, |
| | | { id: id }, |
| | | { |
| | | showLoading: false, |
| | | } |
| | |
| | | |
| | | const goComplaint = useAccessLogin(() => { |
| | | Taro.navigateTo({ |
| | | url: `${RouterPath.complaint}?id=${taskId}`, |
| | | url: `${RouterPath.complaint}?id=${id}`, |
| | | }); |
| | | }); |
| | | |
| | |
| | | const handleApply = useAccessLogin(async () => { |
| | | try { |
| | | let params: API.ApplyTaskCommand = { |
| | | ids: [taskId], |
| | | ids: [id], |
| | | }; |
| | | let res = await taskUserServices.applyTask(params); |
| | | if (res) { |
| | |
| | | message: `确定${detail.value?.isCollected ? '取消收藏' : '收藏'}吗?`, |
| | | }); |
| | | let params: API.CollectTaskCommand = { |
| | | ids: [taskId], |
| | | ids: [id], |
| | | isCollect: !detail.value?.isCollected, |
| | | }; |
| | | let res = await taskUserServices.collectTask(params); |