From 354fa08d53f4cd97014bfb0008c8c5f0326bbdd3 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期一, 11 八月 2025 09:38:35 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp
---
apps/bMiniApp/src/subpackages/task/taskCheck/InnerPage.vue | 50 +++++-----------
apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue | 17 +++--
apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue | 16 ++---
packages/components/src/Card/FlexJobTopView.vue | 6 +-
packages/constants/task.ts | 6 ++
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue | 16 +++++
apps/bMiniApp/src/subpackages/task/components/TaskCheckPersonalView.vue | 4
apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue | 15 +++--
packages/components/src/Card/MyTaskCard.vue | 10 +-
apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue | 4
packages/hooks/task.ts | 5 +
11 files changed, 77 insertions(+), 72 deletions(-)
diff --git a/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
index 3a23ff1..11a4540 100644
--- a/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
@@ -61,10 +61,10 @@
const { queryMenuState, infiniteLoadingProps, invalidateQueries } = useTaskList();
const releaseing = computed(() => {
- return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.releaseing ?? 0;
+ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.inProcessReleaseCount ?? 0;
});
const stoping = computed(() => {
- return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.stoping ?? 0;
+ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.stoppedReleaseCount ?? 0;
});
async function handleChangeStatus(
diff --git a/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue b/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue
index 5334987..46667a7 100644
--- a/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue
+++ b/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue
@@ -10,13 +10,13 @@
>
<template #actions>
<nut-button
- v-if="checkAcceptStatus === FlexTaskCheckAcceptStatusEnum.Wait"
+ v-if="checkAcceptStatus === EnumTaskCheckReceiveStatus.Wait"
type="primary"
class="task-check-card-phone-btn"
>楠屾敹</nut-button
>
<div v-else class="task-check-card-phone-status" :style="{ color: Colors.Success }">
- {{ FlexTaskCheckAcceptStatusEnumText[checkAcceptStatus] }}
+ {{ EnumTaskCheckReceiveStatusText[checkAcceptStatus] }}
</div>
</template>
</TaskCheckPersonalView>
@@ -25,11 +25,12 @@
<script setup lang="ts">
import TaskCheckPersonalView from './TaskCheckPersonalView.vue';
-import { Colors, Gender } from '@12333/constants';
import {
- FlexTaskCheckAcceptStatusEnum,
- FlexTaskCheckAcceptStatusEnumText,
-} from '@12333/constants/task';
+ Colors,
+ EnumUserGender,
+ EnumTaskCheckReceiveStatus,
+ EnumTaskCheckReceiveStatusText,
+} from '@12333/constants';
defineOptions({
name: 'TaskCheckCard',
@@ -38,10 +39,10 @@
type Props = {
avatarUrl?: string;
name?: string;
- genderType?: Gender;
+ genderType?: EnumUserGender;
isRealName?: boolean;
contactPhone?: string;
- checkAcceptStatus?: API.FlexTaskCheckAcceptStatusEnum;
+ checkAcceptStatus?: EnumTaskCheckReceiveStatus;
};
const props = withDefaults(defineProps<Props>(), {});
diff --git a/apps/bMiniApp/src/subpackages/task/components/TaskCheckPersonalView.vue b/apps/bMiniApp/src/subpackages/task/components/TaskCheckPersonalView.vue
index 55a7923..c29a64e 100644
--- a/apps/bMiniApp/src/subpackages/task/components/TaskCheckPersonalView.vue
+++ b/apps/bMiniApp/src/subpackages/task/components/TaskCheckPersonalView.vue
@@ -19,7 +19,7 @@
<script setup lang="ts">
import { FlexJobTopView } from '@12333/components';
-import { Gender } from '@12333/constants';
+import { EnumUserGender } from '@12333/constants';
defineOptions({
name: 'TaskCheckPersonalView',
@@ -28,7 +28,7 @@
type Props = {
avatarUrl?: string;
name?: string;
- genderType?: Gender;
+ genderType?: EnumUserGender;
isRealName?: boolean;
contactPhone?: string;
};
diff --git a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
index db4237e..9d19582 100644
--- a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -217,7 +217,21 @@
name: [{ required: true, message: '璇疯緭鍏ヤ换鍔″悕绉�' }],
genderLimit: [{ required: true, message: '璇烽�夋嫨鎬у埆瑕佹眰' }],
addressDetail: [{ required: true, message: '璇疯緭鍏ヨ缁嗗湴鍧�' }],
-
+ billingMethod: [
+ {
+ required: true,
+ message: '璇烽�夋嫨鏀惰垂鏂瑰紡',
+ validator: () => {
+ if (!form.billingMethod) {
+ return Promise.reject('璇烽�夋嫨鏈嶅姟璐圭被鍨�');
+ }
+ if (!form.serviceFee) {
+ return Promise.reject('璇疯緭鍏ユ湇鍔¤垂');
+ }
+ return Promise.resolve(true);
+ },
+ },
+ ],
weMapInfo: [
{ required: true, message: '璇疯缃伐浣滃湴鐐�', validator: FormValidator.validatorWeMap },
],
diff --git a/apps/bMiniApp/src/subpackages/task/taskCheck/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/taskCheck/InnerPage.vue
index aba6805..639db70 100644
--- a/apps/bMiniApp/src/subpackages/task/taskCheck/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/taskCheck/InnerPage.vue
@@ -1,7 +1,7 @@
<template>
- <Calendar v-model="queryState.date"></Calendar>
+ <Calendar v-model="queryMenuState.time"></Calendar>
<ProTabs
- v-model="queryState.status"
+ v-model="queryMenuState.status"
name="task-tab"
:showPaneContent="false"
class="task-tabs"
@@ -9,20 +9,21 @@
title-gutter="8"
title-scroll
>
+ <ProTabPane title="寰呮彁浜�" pane-key="10"></ProTabPane>
<ProTabPane title="寰呴獙鏀�" pane-key="10"></ProTabPane>
<ProTabPane title="宸查獙鏀�" pane-key="20"></ProTabPane>
</ProTabs>
<InfiniteLoading
scrollViewClassName="common-infinite-scroll-list"
v-bind="infiniteLoadingProps"
- :key="queryState.status"
+ :key="queryMenuState.status"
>
<template #renderItem="{ item }">
<MyTaskCard
- :taskName="item.taskName"
- :startDate="item.startDate"
- :endDate="item.endDate"
- :address="item.address"
+ :name="item.name"
+ :beginTime="item.beginTime"
+ :endTime="item.endTime"
+ :addressName="item.addressName"
@click="goSubmitTaskDetail(item)"
/>
</template>
@@ -32,42 +33,21 @@
<script setup lang="ts">
import { MyTaskCard, ProTabs, ProTabPane, Calendar } from '@12333/components';
import Taro from '@tarojs/taro';
-import { useInfiniteLoading } from '@12333/hooks';
-import { OrderInputType } from '@12333/constants';
-import * as flexWorkerServices from '@12333/services/api/FlexWorker';
+import { useTaskList } from '@12333/hooks';
defineOptions({
name: 'InnerPage',
});
-const queryState = reactive({
- status: '10',
- date: new Date(),
+const { queryMenuState, infiniteLoadingProps } = useTaskList({
+ defaultQueryMenuState: {
+ status: EnumTaskStatus.Wait,
+ },
});
-const { infiniteLoadingProps } = useInfiniteLoading(
- ({ pageParam }) => {
- let params: API.GetFlexTaskListInput = {
- isOverCheck: queryState.status === '20',
- pageModel: {
- rows: 20,
- page: pageParam,
- orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }],
- },
- };
-
- return flexWorkerServices.getFlexTaskByIsOverCheck(params, {
- showLoading: false,
- });
- },
- {
- queryKey: ['flexWorkerServices/getFlexTaskByIsOverCheck', queryState],
- }
-);
-
-function goSubmitTaskDetail(item: API.GetFlexTaskListOutput) {
+function goSubmitTaskDetail(item: API.GetTaskInfosQueryResultItem) {
Taro.navigateTo({
- url: `${RouterPath.taskCheckDetail}?taskId=${item.taskId}`,
+ url: `${RouterPath.taskCheckDetail}?taskId=${item.id}`,
});
}
</script>
diff --git a/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
index 5728029..a91b416 100644
--- a/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
@@ -2,8 +2,8 @@
<LoadingLayout :loading="isLoading" :error="isError" :loadError="refetch">
<ContentView>
<MyTaskCard
- :task-name="detail.taskName"
- :address="address"
+ :namee="detail.name"
+ :addressName="detail.addressName"
:showMyTaskArrow="false"
:showTime="false"
></MyTaskCard>
@@ -32,7 +32,7 @@
<script setup lang="ts">
import Taro from '@tarojs/taro';
import { useQuery } from '@tanstack/vue-query';
-import * as flexWorkerServices from '@12333/services/api/FlexWorker';
+import * as taskServices from '@12333/services/apiV2/task';
import { useInfiniteLoading } from '@12333/hooks';
import { OrderInputType } from '@12333/constants';
import TaskCheckCard from '../components/TaskCheckCard.vue';
@@ -52,20 +52,16 @@
data: detail,
refetch,
} = useQuery({
- queryKey: ['flexWorkerServices/getFlexTaskDto', taskId],
+ queryKey: ['taskServices/getTaskInfo', taskId],
queryFn: async () => {
- return await flexWorkerServices.getFlexTaskDto(
+ return await taskServices.getTaskInfo(
{ id: taskId },
{
showLoading: false,
}
);
},
- placeholderData: () => ({} as API.GetFlexTaskDtoOutput),
-});
-
-const address = computed(() => {
- return `${detail.value.provinceName} ${detail.value.cityName} ${detail.value.areaName} ${detail.value.address}`;
+ placeholderData: () => ({} as API.GetTaskInfoQueryResult),
});
const queryState = reactive({
diff --git a/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue
index 195ea72..b877a4a 100644
--- a/apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue
+++ b/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"
@@ -62,11 +65,11 @@
},
});
-const hasCount = computed(() => {
- return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.hasCount ?? 0;
+const completedAssignCount = computed(() => {
+ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.completedAssignCount ?? 0;
});
-const notCount = computed(() => {
- return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.notCount ?? 0;
+const waitAssignCount = computed(() => {
+ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.waitAssignCount ?? 0;
});
function goSubmitTaskDetail(item: API.GetTaskInfosQueryResultItem) {
diff --git a/packages/components/src/Card/FlexJobTopView.vue b/packages/components/src/Card/FlexJobTopView.vue
index 35f10ac..4461f81 100644
--- a/packages/components/src/Card/FlexJobTopView.vue
+++ b/packages/components/src/Card/FlexJobTopView.vue
@@ -6,7 +6,7 @@
<div class="flexJob-card-top-info-name">{{ name }}</div>
<div class="flexJob-card-top-info-gender">
<img
- v-if="genderType === Gender.Male"
+ v-if="genderType === EnumUserGender.Male"
:src="IconMale"
class="flexJob-card-top-info-gender-icon"
/>
@@ -28,7 +28,7 @@
<script setup lang="ts">
import IconMale from '@/assets/mine/icon-male.png';
import IconFemale from '@/assets/mine/icon-female.png';
-import { AvatarImage, Gender } from '@12333/constants';
+import { AvatarImage, EnumUserGender } from '@12333/constants';
import { Avatar } from '@12333/components';
defineOptions({
@@ -40,7 +40,7 @@
avatarUrl?: string;
name?: string;
- genderType?: Gender;
+ genderType?: EnumUserGender;
age?: number;
educationalLevel?: string;
arrangeCount?: number;
diff --git a/packages/components/src/Card/MyTaskCard.vue b/packages/components/src/Card/MyTaskCard.vue
index 8283af6..d86170e 100644
--- a/packages/components/src/Card/MyTaskCard.vue
+++ b/packages/components/src/Card/MyTaskCard.vue
@@ -6,7 +6,7 @@
</template>
<div class="my-task-card-time" v-if="showTime">
{{
- `${dayjs(startDate).format('YYYY骞碝M鏈圖D鏃�')}鑷�${dayjs(endDate).format('YYYY骞碝M鏈圖D鏃�')}`
+ `${dayjs(beginTime).format('YYYY骞碝M鏈圖D鏃�')}鑷�${dayjs(endTime).format('YYYY骞碝M鏈圖D鏃�')}`
}}
</div>
<div v-else></div>
@@ -27,10 +27,10 @@
showMyTaskArrow?: boolean;
showTime?: boolean;
- startDate?: string;
- endDate?: string;
- taskName?: string;
- address?: string;
+ name?: string;
+ beginTime?: string;
+ endTime?: string;
+ addressName?: string;
};
const props = withDefaults(defineProps<Props>(), {
diff --git a/packages/constants/task.ts b/packages/constants/task.ts
index ef18f0a..bc23d2c 100644
--- a/packages/constants/task.ts
+++ b/packages/constants/task.ts
@@ -3,6 +3,7 @@
EnumUserGender,
EnumSettlementCycle,
EnumTaskReleaseStatus,
+ EnumTaskCheckReceiveStatus,
} from './apiEnum';
export const EnumBillingMethodText = {
@@ -40,3 +41,8 @@
[EnumTaskReleaseStatus.InProcess]: '鍙戝竷涓�',
[EnumTaskReleaseStatus.Stopped]: '宸插仠姝�',
};
+
+export const EnumTaskCheckReceiveStatusText = {
+ [EnumTaskCheckReceiveStatus.Wait]: '寰呴獙鏀�',
+ [EnumTaskCheckReceiveStatus.Completed]: '宸查獙鏀�',
+};
diff --git a/packages/hooks/task.ts b/packages/hooks/task.ts
index 3a07d88..57079fd 100644
--- a/packages/hooks/task.ts
+++ b/packages/hooks/task.ts
@@ -11,6 +11,7 @@
import { trim } from '@12333/utils';
import { MaybeRef, reactive, ref, unref } from 'vue';
import * as taskServices from '@12333/services/apiV2/task';
+import dayjs from 'dayjs';
export enum HomeOrderType {
Recommend = 'Recommend',
@@ -28,6 +29,7 @@
settlementCycle?: EnumSettlementCycle;
benefitCodes?: string;
enterpriseId?: string;
+ time?: Date;
};
};
@@ -43,6 +45,7 @@
status: '' as any as EnumTaskStatus,
releaseStatus: EnumTaskReleaseStatus.InProcess,
enterpriseId: '',
+ time: '' as any as Date,
...defaultQueryMenuState,
});
@@ -75,6 +78,8 @@
status: queryMenuState.status,
releaseStatus: queryMenuState.releaseStatus,
enterpriseId: queryMenuState.enterpriseId,
+ beginTime: dayjs(queryMenuState.time).format('YYYY-MM-DD 00:00:00'),
+ endTime: dayjs(queryMenuState.time).format('YYYY-MM-DD 23:59:59'),
};
return taskServices.getTaskInfos(params, {
--
Gitblit v1.9.1