From 186234cb3833e620aa0ae46212fe337eb2d6e77d Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 13 三月 2025 13:07:02 +0800
Subject: [PATCH] feat: 接口对接

---
 apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue |   54 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 43 insertions(+), 11 deletions(-)

diff --git a/apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue
index b251fc7..d8c055d 100644
--- a/apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue
@@ -1,5 +1,5 @@
 <template>
-  <div class="searchbar-container">
+  <div class="searchbar-container" v-if="showQueryState">
     <BlSearchbar
       v-model.trim="searchValue"
       placeholder="鎼滅储濮撳悕/韬唤璇佸彿"
@@ -9,10 +9,19 @@
   </div>
   <InfiniteLoading scrollViewClassName="common-infinite-scroll-list" v-bind="infiniteLoadingProps">
     <template #renderItem="{ item }">
-      <FlexJobCard :showFooterLeft="false">
+      <FlexJobCard
+        :name="item.name"
+        :genderType="item.genderType"
+        :age="item.age"
+        :educationalLevel="item.educationalLevel"
+        :arrangeCount="item.arrangeCount"
+        :showFooterLeft="false"
+      >
         <template #footerRight>
-          <nut-button type="primary">瀹夋帓</nut-button>
-          <!-- <div class="batch-task-card-status">宸插畨鎺�</div> -->
+          <nut-button v-if="showQueryState" type="primary" @click="handleArrange(item)"
+            >瀹夋帓</nut-button
+          >
+          <div v-else class="batch-task-card-status">宸插畨鎺�</div>
         </template>
       </FlexJobCard>
     </template>
@@ -23,9 +32,9 @@
 import Taro from '@tarojs/taro';
 import { useInfiniteLoading } from '@12333/hooks';
 import { OrderInputType } from '@12333/constants';
-import * as orderServices from '@12333/services/api/Order';
+import * as flexWorkerServices from '@12333/services/api/FlexWorker';
 import _ from 'lodash';
-import { trim } from '@12333/utils';
+import { Message, trim } from '@12333/utils';
 import { FlexJobCard } from '@12333/components';
 
 defineOptions({
@@ -33,18 +42,26 @@
 });
 
 const searchValue = ref('');
-
+const router = Taro.useRouter();
+const taskId = router.params?.taskId ?? '';
+const status = router.params?.status ?? '';
 const queryState = reactive({
   searchValueTrim: '',
+});
+
+const showQueryState = computed(() => {
+  return status === 'arrange';
 });
 
 const handleSearch = _.debounce(function () {
   queryState.searchValueTrim = trim(searchValue.value);
 }, 300);
 
-const { infiniteLoadingProps } = useInfiniteLoading(
+const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
   ({ pageParam }) => {
-    let params: API.FrontOrderListInput = {
+    let params: API.GetFlexTaskWorkerArrangeListInput = {
+      searchKeys: queryState.searchValueTrim,
+      flexTaskId: taskId,
       pageModel: {
         rows: 20,
         page: pageParam,
@@ -52,14 +69,29 @@
       },
     };
 
-    return orderServices.getFrontOrderList(params, {
+    return flexWorkerServices.getFlexTaskWorkerArrangeList(params, {
       showLoading: false,
     });
   },
   {
-    queryKey: ['orderServices/getFrontOrderList', queryState],
+    queryKey: ['flexWorkerServices/getFlexTaskWorkerArrangeList', queryState],
   }
 );
+
+async function handleArrange(item: API.GetNewestWorkerListOutput) {
+  try {
+    let params: API.TaskWorkerArrangeInput = {
+      flexTaskId: taskId,
+      flexWorkerId: item.userId,
+      arrange: true,
+    };
+    let res = await flexWorkerServices.taskWorkerArrange(params);
+    if (res) {
+      Message.success('宸插畨鎺�');
+      invalidateQueries();
+    }
+  } catch (error) {}
+}
 </script>
 
 <style lang="scss">

--
Gitblit v1.9.1