From 9c8b6d1cf6b43c6652b5183cd0183e8e257001f7 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 11 九月 2025 17:41:31 +0800
Subject: [PATCH] feat: 页面

---
 apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue             |   27 +++++----
 apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue        |    4 
 packages/constants/task.ts                                              |    8 ++
 apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue |   44 ++++++++++----
 apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue            |   14 ++++
 packages/components/src/Card/WithdrawMoneyCard.vue                      |    6 -
 packages/services/apiV2/typings.d.ts                                    |   30 ++++++---
 packages/components/src/Card/TaskCheckFileCard.vue                      |    4 
 packages/constants/apiEnum.ts                                           |    4 
 9 files changed, 95 insertions(+), 46 deletions(-)

diff --git a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue
index 9b371ce..601974b 100644
--- a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue
@@ -1,6 +1,6 @@
 <template>
   <ProTabs
-    v-model="queryState.userSignContractStatus"
+    v-model="queryState.status"
     name="home-tab"
     :showPaneContent="false"
     class="home-tabs"
@@ -8,14 +8,15 @@
     title-gutter="12"
     title-scroll
   >
-    <ProTabPane :title="`宸茬绾" :pane-key="EnumTaskUserSignContractStatus.Pass"></ProTabPane>
-    <ProTabPane :title="`寰呯绾" :pane-key="EnumTaskUserSignContractStatus.Wait"></ProTabPane>
-    <ProTabPane :title="`宸茶В绾" :pane-key="EnumTaskUserSignContractStatus.Stop"></ProTabPane>
+    <ProTabPane :title="`鐏靛伐寰呯绾" :pane-key="Status.FlexJobWait"></ProTabPane>
+    <ProTabPane :title="`浼佷笟寰呯绾" :pane-key="Status.EnterpriseWait"></ProTabPane>
+    <ProTabPane :title="`宸茬绾" :pane-key="Status.Pass"></ProTabPane>
+    <!-- <ProTabPane :title="`宸茶В绾" :pane-key="EnumTaskUserSignContractStatus.Stop"></ProTabPane> -->
   </ProTabs>
   <InfiniteLoading
     scrollViewClassName="common-infinite-scroll-list home-list"
     v-bind="infiniteLoadingProps"
-    :key="queryState.userSignContractStatus"
+    :key="queryState.status"
   >
     <template #renderItem="{ item }">
       <FlexJobCard
@@ -35,7 +36,7 @@
       >
         <template #footerRight>
           <template
-            v-if="Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Pass"
+            v-if="item.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Pass"
           >
             <nut-button
               class="flexJobManage-card-plain-button"
@@ -47,13 +48,16 @@
             <nut-button type="primary" @click.stop="checkContract(item)">鏌ョ湅鍚堢害</nut-button>
           </template>
           <nut-button
-            v-else-if="
-              Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Wait ||
-              Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Stop
-            "
+            v-if="item.userSignContractStatus === EnumTaskUserSignContractStatus.Wait"
             type="primary"
             @click.stop="goFlexJobSign(item)"
-            >绛剧害</nut-button
+            >閭�璇风绾�</nut-button
+          >
+          <nut-button
+            v-if="item.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Wait"
+            type="primary"
+            @click.stop="goFlexJobSign(item)"
+            >浼佷笟绛剧害</nut-button
           >
         </template>
       </FlexJobCard>
@@ -78,8 +82,14 @@
   name: 'InnerPage',
 });
 
+const enum Status {
+  FlexJobWait = 1,
+  EnterpriseWait = 2,
+  Pass = 3,
+}
+
 const queryState = reactive({
-  userSignContractStatus: EnumTaskUserSignContractStatus.Pass,
+  status: Status.FlexJobWait,
 });
 
 const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
@@ -91,8 +101,16 @@
         orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
       },
       hireStatus: EnumTaskUserHireStatus.Pass,
-      userSignContractStatus: queryState.userSignContractStatus,
     };
+    if (Number(queryState.status) === Status.FlexJobWait) {
+      params.userSignContractStatus = EnumTaskUserSignContractStatus.Wait;
+    }
+    if (Number(queryState.status) === Status.EnterpriseWait) {
+      params.enterpriseSignContractStatus = EnumTaskUserSignContractStatus.Wait;
+    }
+    if (Number(queryState.status) === Status.Pass) {
+      params.userSignContractStatus = EnumTaskUserSignContractStatus.Pass;
+    }
 
     return enterpriseEmployeeServices.getEnterpriseEmployees(params, {
       showLoading: false,
diff --git a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
index 010a8a2..452eaf8 100644
--- a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -42,6 +42,19 @@
           }}</BlRadio>
         </nut-radio-group>
       </nut-form-item>
+      <nut-form-item
+        label="缁撶畻鏃ユ湡:"
+        class="bole-form-item"
+        prop="settlementCycleDate"
+        label-width="90px"
+        required
+      >
+        <ChooseInputWithPicker
+          v-model="form.genderLimit"
+          placeholder="璇疯缃粨绠楁棩鏈�"
+          :value-enum="[]"
+        />
+      </nut-form-item>
       <nut-form-item label="绂忓埄:" class="bole-form-item" prop="benefits" label-width="90px">
         <ChooseInputWithCheckbox
           v-model="form.benefits"
@@ -218,6 +231,7 @@
 const rules = reactive<FormRules>({
   name: [{ required: true, message: '璇疯緭鍏ヤ换鍔″悕绉�' }],
   genderLimit: [{ required: true, message: '璇烽�夋嫨鎬у埆瑕佹眰' }],
+  settlementCycleDate: [{ required: true, message: '璇疯缃粨绠楁棩鏈�' }],
   addressDetail: [{ required: true, message: '璇疯緭鍏ヨ缁嗗湴鍧�' }],
   billingMethod: [
     {
diff --git a/apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
index 3c3f8db..4b1898d 100644
--- a/apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
@@ -23,10 +23,10 @@
       </template>
     </InfiniteLoading>
   </ContentScrollView>
-  <div class="taskCheckDetail-tips-wrapper" v-if="!isBindBankCard">
+  <!-- <div class="taskCheckDetail-tips-wrapper" v-if="!isBindBankCard">
     <div class="taskCheckDetail-tips-text">鎮ㄥ皻鏈粦瀹氶摱琛屽崱锛屾殏鏃舵棤娉曠粨绠楁湇鍔¤垂</div>
     <div class="taskCheckDetail-tips-btn" @click="goBindBankCard">绔嬪嵆缁戝畾閾惰鍗′俊鎭�</div>
-  </div>
+  </div> -->
 </template>
 
 <script setup lang="ts">
diff --git a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
index 683b95e..4511852 100644
--- a/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
+++ b/apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
@@ -236,18 +236,21 @@
   }
 });
 
-const handleApply = useAccessLogin(async () => {
-  try {
-    let params: API.ApplyTaskCommand = {
-      ids: [id],
-    };
-    let res = await taskUserServices.applyTask(params);
-    if (res) {
-      Message.success('鎶ュ悕鎴愬姛');
-      refetch({ type: 'inactive' });
-    }
-  } catch (error) {}
-});
+const handleApply = useAccessReal(
+  async () => {
+    try {
+      let params: API.ApplyTaskCommand = {
+        ids: [id],
+      };
+      let res = await taskUserServices.applyTask(params);
+      if (res) {
+        Message.success('鎶ュ悕鎴愬姛');
+        refetch({ type: 'inactive' });
+      }
+    } catch (error) {}
+  },
+  { message: '瀹炲悕鎴愬姛鍚庢墠鍙姤鍚嶏紝璇峰墠寰�瀹炲悕璁よ瘉' }
+);
 
 const handleAttention = useAccessLogin(async () => {
   try {
diff --git a/packages/components/src/Card/TaskCheckFileCard.vue b/packages/components/src/Card/TaskCheckFileCard.vue
index 0a54b2a..87e9e2a 100644
--- a/packages/components/src/Card/TaskCheckFileCard.vue
+++ b/packages/components/src/Card/TaskCheckFileCard.vue
@@ -10,7 +10,7 @@
           color: Colors.Warning,
         }"
       >
-        {{ EnumTaskCheckReceiveStatusText[props.checkReceiveStatus] }}
+        {{ EnumTaskUserSubmitCheckReceiveStatusText[props.checkReceiveStatus] }}
       </div>
     </div>
 
@@ -44,7 +44,7 @@
 import {
   Colors,
   EnumTaskUserSubmitCheckReceiveStatus,
-  EnumTaskCheckReceiveStatusText,
+  EnumTaskUserSubmitCheckReceiveStatusText,
 } from '@12333/constants';
 import { setOSSLink } from '@12333/utils';
 import dayjs from 'dayjs';
diff --git a/packages/components/src/Card/WithdrawMoneyCard.vue b/packages/components/src/Card/WithdrawMoneyCard.vue
index a3210f3..0af938c 100644
--- a/packages/components/src/Card/WithdrawMoneyCard.vue
+++ b/packages/components/src/Card/WithdrawMoneyCard.vue
@@ -2,7 +2,7 @@
   <div class="withdraw-money-card">
     <div class="withdraw-money-card-value">
       <div class="withdraw-money-card-value-unit">锟�</div>
-      <div class="withdraw-money-card-value-num">{{ toThousand(props.money) }}</div>
+      <div class="withdraw-money-card-value-num">{{ toThousand(props.money ?? 0) }}</div>
     </div>
     <div class="withdraw-money-card-type">{{ props.title }}</div>
   </div>
@@ -21,10 +21,6 @@
 };
 
 const props = withDefaults(defineProps<Props>(), {});
-
-const emit = defineEmits<{
-  (e: 'update:checkedId', value: string): void;
-}>();
 </script>
 
 <style lang="scss">
diff --git a/packages/constants/apiEnum.ts b/packages/constants/apiEnum.ts
index c852ec0..f9a35bd 100644
--- a/packages/constants/apiEnum.ts
+++ b/packages/constants/apiEnum.ts
@@ -259,9 +259,9 @@
 export enum EnumPersonalUserRealStatus {
   /**鏈疄鍚� */
   UnReal = 0,
-  /**鏍¢獙涓� */
+  /**璁よ瘉涓� */
   Checking = 10,
-  /**瀹炲悕澶辫触 */
+  /**璁よ瘉澶辫触 */
   Fail = 99,
   /**宸插疄鍚� */
   Real = 100,
diff --git a/packages/constants/task.ts b/packages/constants/task.ts
index 4a5dd65..c03f939 100644
--- a/packages/constants/task.ts
+++ b/packages/constants/task.ts
@@ -12,6 +12,7 @@
   GetPersonalHireTaskInfosQueryStatus,
   GetTaskInfoQueryResultHireButton,
   GetTaskInfoQueryResultApplyButton,
+  EnumTaskUserSubmitCheckReceiveStatus,
 } from './apiEnum';
 
 export const EnumBillingMethodText = {
@@ -56,6 +57,13 @@
   [EnumTaskCheckReceiveStatus.Completed]: '宸查獙鏀�',
 };
 
+export const EnumTaskUserSubmitCheckReceiveStatusText = {
+  [EnumTaskUserSubmitCheckReceiveStatus.WaitSubmit]: '寰呮彁浜�',
+  [EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive]: '寰呴獙鏀�',
+  [EnumTaskUserSubmitCheckReceiveStatus.Success]: '宸查獙鏀�',
+  [EnumTaskUserSubmitCheckReceiveStatus.Fail]: '楠屾敹鏈�氳繃',
+};
+
 export const EnumPersonalFreeTimeText = {
   [EnumPersonalFreeTime.NoLimit]: '涓嶉檺',
   [EnumPersonalFreeTime.WinterSummerVacations]: '瀵掓殤鍋�',
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index de7df56..daeb4ad 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -728,9 +728,9 @@
   enum EnumPersonalUserRealStatus {
     /**鏈疄鍚� */
     UnReal = 0,
-    /**鏍¢獙涓� */
+    /**璁よ瘉涓� */
     Checking = 10,
-    /**瀹炲悕澶辫触 */
+    /**璁よ瘉澶辫触 */
     Fail = 99,
     /**宸插疄鍚� */
     Real = 100,
@@ -3336,10 +3336,6 @@
     /** 閽卞寘Id */
     id?: string;
     access?: EnumEnterpriseWalletAccess;
-    /** 璐﹀彿 */
-    account?: string;
-    /** 鍟嗘埛Id */
-    merchantId?: string;
     /** 鍗忚鍙� */
     code?: string;
     /** 閫氶亾鍗忚鍙� */
@@ -3351,6 +3347,21 @@
     /** 鍗忚澶辨晥鏃堕棿 */
     invalidTime?: string;
     signStatus?: EnumEnterpriseWalletSignStatus;
+    /** 鏀粯瀹濆鍚� */
+    name?: string;
+    /** 鏀粯瀹濈櫥褰曡处鍙� */
+    identity?: string;
+    scene?: EnumEnterpriseWalletExpandindirectOrderScene;
+    /** 杞处鍦烘櫙璇存槑 */
+    sceneDirections?: string;
+    orderStatus?: EnumEnterpriseWalletExpandindirectOrderStatus;
+    /** 杩涗欢鍗曚换鍔″畬缁撴椂闂� */
+    taskFinishTime?: string;
+    /** 杩涗欢鍗曞鏍镐笉閫氳繃鍘熷洜 */
+    riskReviewRemark?: string;
+    sitesInfo?: GetEnterpriseWalletExpandindirectOrderQueryResultSites;
+    /** 闄勪欢 */
+    files?: GetEnterpriseWalletExpandindirectOrderQueryResultFile[];
     expandindirectOrderStatus?: EnumEnterpriseWalletExpandindirectOrderStatus;
   }
 
@@ -3759,6 +3770,9 @@
     contactPhoneNumber?: string;
     /** 鏄惁瀹炲悕 */
     isReal?: boolean;
+    realStatus?: EnumPersonalUserRealStatus;
+    /** 瀹炲悕澶辫触娑堟伅 */
+    realFailMessage?: string;
     realMethod?: EnumUserRealMethod;
     /** 鎴戠殑鎶ュ悕 */
     taskCount?: number;
@@ -4906,10 +4920,6 @@
     /** 浼佷笟Id */
     enterpriseId?: string;
     access?: EnumEnterpriseWalletAccess;
-    /** 璐﹀彿 */
-    account?: string;
-    /** 鍟嗘埛Id */
-    merchantId?: string;
   }
 
   interface OpenEnterpriseWalletCommandResult {

--
Gitblit v1.9.1