From 157ccc5dd9df9358f62a2f753668f21bec1c90ee Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期五, 29 八月 2025 16:47:32 +0800 Subject: [PATCH] feat: 签约 --- apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue | 63 +++++++++++++++++++++---------- 1 files changed, 43 insertions(+), 20 deletions(-) diff --git a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue index 51b1318..3204d9c 100644 --- a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue +++ b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue @@ -21,6 +21,7 @@ > {{ GetTaskInfoQueryResultHireButtonText[detail.hireButton] }} </div> + <div v-if="from === 'cancel'" :style="{ color: '#999999' }">宸插彇娑�</div> </template> <div class="taskDetail-time"> {{ dayjs(detail?.beginTime).format('YYYY骞碝M鏈圖D鏃�') }} 鑷� @@ -40,7 +41,7 @@ :unit="BillingMethodEnumUnit[detail.billingMethod]" /> </div> - <div class="taskDetail-address-wrapper"> + <div class="taskDetail-address-wrapper" @click="goMap"> <div class="taskDetail-address-title-wrapper"> <img :src="IconLocaltion" class="taskDetail-address-title-icon" /> <div class="taskDetail-address-title">{{ detail?.addressName ?? '' }}</div> @@ -120,7 +121,12 @@ :isFlex="false" @click="handleCall" ></PageFooterAction> - <PageFooterBtn v-if="from === 'sign'" type="primary" disabled> + <PageFooterBtn + v-if="from === 'sign'" + type="primary" + :disabled="detail?.applyButton === GetTaskInfoQueryResultApplyButton.WaitHire" + @click="handleSign" + > {{ GetTaskInfoQueryResultApplyButtonText[detail.applyButton] }} </PageFooterBtn> <PageFooterBtn @@ -153,6 +159,7 @@ import { useQuery } from '@tanstack/vue-query'; import * as taskServices from '@12333/services/apiV2/task'; import * as taskUserServices from '@12333/services/apiV2/taskUser'; +import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee'; import { useToggle } from 'senin-mini/hooks'; import { TaskPrice, TaskDetailWelfareItem } from '@12333/components'; import IconAttention from '@/assets/task/icon-attention.png'; @@ -175,6 +182,7 @@ GetPersonalHireTaskInfosQueryStatusColor, GetTaskInfoQueryResultHireButtonText, GetTaskInfoQueryResultHireButton, + GetTaskInfoQueryResultApplyButton, } from '@12333/constants'; import { useAccessLogin } from '@/hooks'; @@ -183,9 +191,9 @@ }); /** - * TODO 缂哄皯 鎵嬫満 鎶曡瘔涓炬姤鎺ュ彛 鎶ュ悕鎺ュ彛 + * TODO 缂哄皯 鎶曡瘔涓炬姤鎺ュ彛 */ - +const { userDetail } = useUser(); const router = Taro.useRouter(); const id = router.params?.id ?? ''; const from = router.params?.from ?? ''; @@ -234,31 +242,29 @@ }; let res = await taskUserServices.applyTask(params); if (res) { - Message.success('鎶ュ悕鎴愬姛', { - onClosed() { - refetch({ type: 'inactive' }); - }, - }); + Message.success('鎶ュ悕鎴愬姛'); + refetch({ type: 'inactive' }); } } catch (error) {} }); const handleAttention = useAccessLogin(async () => { try { - await Message.confirm({ - message: `纭畾${detail.value?.isCollected ? '鍙栨秷鏀惰棌' : '鏀惰棌'}鍚楋紵`, - }); + // await Message.confirm({ + // message: `纭畾${detail.value?.isCollected ? '鍙栨秷鏀惰棌' : '鏀惰棌'}鍚楋紵`, + // }); let params: API.CollectTaskCommand = { ids: [id], isCollect: !detail.value?.isCollected, }; let res = await taskUserServices.collectTask(params); if (res) { - Message.success('鎿嶄綔鎴愬姛', { - onClosed() { - refetch({ type: 'inactive' }); - }, - }); + refetch({ type: 'inactive' }); + // Message.success('鎿嶄綔鎴愬姛', { + // onClosed() { + // refetch({ type: 'inactive' }); + // }, + // }); } } catch (error) {} }); @@ -272,8 +278,25 @@ }); function handleHire() { -Taro.navigateTo({ - url: `${RouterPath.taskSubmitCheck}?id=${id}`, -}) + Taro.navigateTo({ + url: `${RouterPath.taskSubmitCheck}?id=${id}`, + }); } +const handleSign = useAccessReal(() => { + Taro.navigateTo({ + url: `${RouterPath.mineAgreementSignDetail}?id=${detail.value?.enterpriseEmployeeId}`, + }); +}); + +function goMap() { + Taro.openLocation({ + latitude: detail.value?.latitude, + longitude: detail.value?.longitude, + scale: 18, + }); +} + +Taro.useDidShow(() => { + refetch(); +}); </script> -- Gitblit v1.9.1