From 2b7fccce78fe4d57d73f4cf350cbe16b75a72fd4 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 08 八月 2025 14:34:36 +0800
Subject: [PATCH] fix: 任务详情

---
 packages/components/src/Card/TaskCard.vue |   61 ++++++++++++++++++++++++++----
 1 files changed, 52 insertions(+), 9 deletions(-)

diff --git a/packages/components/src/Card/TaskCard.vue b/packages/components/src/Card/TaskCard.vue
index f358afb..098b45c 100644
--- a/packages/components/src/Card/TaskCard.vue
+++ b/packages/components/src/Card/TaskCard.vue
@@ -1,23 +1,29 @@
 <template>
   <div class="task-card-wrapper">
     <div class="task-card-title-wrapper">
-      <div class="task-card-title">{{ taskName }}</div>
+      <div class="task-card-title">{{ name }}</div>
       <slot name="title-right">
-        <TaskPrice :value="212" />
+        <TaskPrice :value="serviceFee ?? 0" :unit="BillingMethodEnumUnit[billingMethod]" />
       </slot>
     </div>
     <slot>
       <div class="task-card-welfare-list">
-        <div class="task-card-welfare-list-item">鏃ョ粨</div>
-        <div class="task-card-welfare-list-item">鐢峰コ涓嶉檺</div>
+        <div class="task-card-welfare-list-item">
+          {{ EnumSettlementCycleText[settlementCycle] }}
+        </div>
+        <div class="task-card-welfare-list-item">{{ TaskUtils.getGenderText(genderLimit) }}</div>
         <div class="task-card-welfare-list-item">鍖呬笁椁�</div>
       </div>
-      <div class="task-card-time">涓婄彮鏃堕棿:07:00-15:30</div>
+      <div class="task-card-time">
+        {{ dayjs(beginTime).format('YYYY骞碝M鏈圖D鏃�') }}鑷硔{
+          dayjs(endTime).format('YYYY骞碝M鏈圖D鏃�')
+        }}
+      </div>
     </slot>
     <div class="task-card-footer">
       <div class="task-card-left">
         <div class="task-card-footer-tag">H</div>
-        <div class="task-card-footer-address">{{ address }}</div>
+        <div class="task-card-footer-address">{{ 'address' }}</div>
       </div>
       <div class="task-card-actions" v-if="showActions">
         <slot name="actions">
@@ -29,8 +35,24 @@
 </template>
 
 <script setup lang="ts">
+import {
+  EnumBillingMethod,
+  EnumSettlementCycle,
+  EnumTaskCheckReceiveStatus,
+  EnumTaskRecommendStatus,
+  EnumTaskReleaseStatus,
+  EnumTaskSettlementStatus,
+  EnumTaskStatus,
+  EnumUserGender,
+  EnumBillingMethodText,
+  EnumUserGenderText,
+  EnumSettlementCycleText,
+  BillingMethodEnumUnit,
+} from '@12333/constants';
 import TaskPrice from './TaskPrice.vue';
 import { CommonTaskCardProps } from './card';
+import dayjs from 'dayjs';
+import { TaskUtils } from '@12333/utils';
 
 defineOptions({
   name: 'TaskCard',
@@ -38,9 +60,30 @@
 
 type Props = CommonTaskCardProps & {
   showActions?: boolean;
-
-  taskName?: string;
-  address?: string;
+  /** Id */
+  id?: string;
+  /** 浠诲姟鍚嶇О */
+  name: string;
+  /** 浠诲姟鍗曞彿 */
+  code?: string;
+  billingMethod?: EnumBillingMethod;
+  /** 鏈嶅姟璐� */
+  serviceFee?: number;
+  settlementCycle?: EnumSettlementCycle;
+  genderLimit?: EnumUserGender;
+  /** 鎶ュ悕浜烘暟 */
+  userCount?: number;
+  status?: EnumTaskStatus;
+  /** 浠诲姟寮�濮嬫椂闂� */
+  beginTime?: string;
+  /** 浠诲姟缁撴潫鏃堕棿 */
+  endTime?: string;
+  releaseStatus?: EnumTaskReleaseStatus;
+  checkReceiveStatus?: EnumTaskCheckReceiveStatus;
+  settlementStatus?: EnumTaskSettlementStatus;
+  recommendStatus?: EnumTaskRecommendStatus;
+  /** 鍒涘缓鏃堕棿 */
+  createdTime?: string;
 };
 
 const props = withDefaults(defineProps<Props>(), {

--
Gitblit v1.9.1