From 8328df0f84dc6e24896d788166a67263ff029ae5 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期日, 19 十月 2025 14:38:50 +0800
Subject: [PATCH] Merge branch 'dev-1.2.0.1' of http://120.26.58.240:8888/r/flexJobMiniApp into dev-1.2.0.1
---
apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue | 116 ++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 80 insertions(+), 36 deletions(-)
diff --git a/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
index c72c92e..b3f3e83 100644
--- a/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
@@ -1,6 +1,6 @@
<template>
<ProTabs
- v-model="queryState.mineHireType"
+ v-model="queryMenuState.releaseStatus"
name="home-tab"
:showPaneContent="false"
class="home-tabs"
@@ -8,15 +8,41 @@
title-gutter="12"
title-scroll
>
- <ProTabPane :title="`鍙戝竷涓�(${1})`" :pane-key="0"></ProTabPane>
- <ProTabPane :title="`宸插仠姝�(${1})`" :pane-key="10"></ProTabPane>
+ <ProTabPane
+ :title="`鍙戝竷涓�(${releaseing})`"
+ :pane-key="EnumTaskReleaseStatus.InProcess"
+ ></ProTabPane>
+ <ProTabPane
+ :title="`宸插仠姝�(${stoping})`"
+ :pane-key="EnumTaskReleaseStatus.Stopped"
+ ></ProTabPane>
</ProTabs>
<InfiniteLoading
scrollViewClassName="common-infinite-scroll-list home-list"
v-bind="infiniteLoadingProps"
+ :key="queryMenuState.releaseStatus"
>
<template #renderItem="{ item }">
- <JobApplicationCard @edit="goEdit" @detail="goDetail"> </JobApplicationCard>
+ <JobApplicationCard
+ :name="item.name"
+ :beginTime="item.beginTime"
+ :endTime="item.endTime"
+ :createdTime="item.createdTime"
+ :addressName="item.addressName"
+ :serviceFee="item.serviceFee"
+ :userCount="item.userCount"
+ :status="item.status"
+ :unit="BillingMethodEnumUnit[item.billingMethod]"
+ :releaseStatus="item.releaseStatus"
+ @edit="goEdit(item)"
+ @copy="goEdit(item, true)"
+ @detail="goDetail(item)"
+ @click="goDetail(item)"
+ @publish="handleChangeStatus(item, EnumTaskReleaseStatus.InProcess)"
+ @stop="handleChangeStatus(item, EnumTaskReleaseStatus.Stopped)"
+ @delete="handleDelete(item)"
+ >
+ </JobApplicationCard>
</template>
</InfiniteLoading>
</template>
@@ -24,56 +50,74 @@
<script setup lang="ts">
import { JobApplicationCard, ProTabs, ProTabPane } from '@12333/components';
import { RouterPath } from '@/constants';
-import { useInfiniteLoading } from '@12333/hooks';
-import { OrderInputType } from '@12333/constants';
-import * as flexWorkerServices from '@12333/services/api/FlexWorker';
-import { TaskStatus } from '@/constants/task';
+import { EnumTaskReleaseStatus, BillingMethodEnumUnit } from '@12333/constants';
import Taro from '@tarojs/taro';
+import { Message } from '@12333/utils';
+import * as taskServices from '@12333/services/apiV2/task';
+import { useTaskList } from '@12333/hooks';
defineOptions({
name: 'InnerPage',
});
-const queryState = reactive({
- mineHireType: TaskStatus.All,
+const { queryMenuState, infiniteLoadingProps, invalidateQueries } = useTaskList({
+ defaultQueryMenuState: {
+ releaseStatus: EnumTaskReleaseStatus.InProcess,
+ },
});
-const { infiniteLoadingProps } = useInfiniteLoading(
- ({ pageParam }) => {
- let params: API.GetFlexTaskListInput = {
- pageModel: {
- rows: 20,
- page: pageParam,
- orderInput: [{ property: 'isRecommend', order: OrderInputType.Desc }],
- },
+const releaseing = computed(() => {
+ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.inProcessReleaseCount ?? 0;
+});
+const stoping = computed(() => {
+ return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.stoppedReleaseCount ?? 0;
+});
+
+async function handleChangeStatus(
+ item: API.GetTaskInfosQueryResultItem,
+ releaseStatus: EnumTaskReleaseStatus
+) {
+ try {
+ let params: API.SetTaskInfoReleaseStatusCommand = {
+ ids: [item.id],
+ releaseStatus: releaseStatus,
};
+ let res = await taskServices.setTaskInfoReleaseStatus(params);
+ if (res) {
+ Message.success('鎿嶄綔鎴愬姛');
+ invalidateQueries();
+ }
+ } catch (error) {}
+}
- return flexWorkerServices.getFlexTaskByArrange(params, {
- showLoading: false,
+async function handleDelete(item: API.GetTaskInfosQueryResultItem) {
+ try {
+ await Message.confirm({
+ message: '纭畾瑕佸垹闄ゅ悧锛�',
});
- },
- {
- queryKey: ['flexWorkerServices/getFlexTaskByArrange'],
- }
-);
+ let params: API.DeleteTaskInfoCommand = {
+ ids: [item.id],
+ };
+ let res = await taskServices.deleteTaskInfo(params);
+ if (res) {
+ Message.success('鍒犻櫎鎴愬姛');
+ invalidateQueries();
+ }
+ } catch (error) {}
+}
-function goPage(routeName: string) {
+function goEdit(item: API.GetTaskInfosQueryResultItem, isCopy = false) {
Taro.navigateTo({
- url: routeName,
+ url: `${RouterPath.publishTask}?id=${item.id}&isCopy=${isCopy}`,
});
}
-
-function goEdit() {
- goPage(RouterPath.publishTask);
-}
-function goDetail() {
- goPage(RouterPath.jobApplicationDetail);
+function goDetail(item: API.GetTaskInfosQueryResultItem) {
+ Taro.navigateTo({
+ url: `${RouterPath.jobApplicationDetail}?id=${item.id}`,
+ });
}
</script>
<style lang="scss">
@import '@/styles/common.scss';
-
-// .jobApplicationManage-page-wrapper {
-// }
</style>
--
Gitblit v1.9.1