From fb243f3345c6f3ed7e7c8c2d98c39b5afc782b9a Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 20 十月 2025 10:24:40 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp

---
 apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue |   80 ++++++++++++++++++++++++++++-----------
 1 files changed, 57 insertions(+), 23 deletions(-)

diff --git a/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue b/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue
index 5334987..801c3ee 100644
--- a/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue
+++ b/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue
@@ -1,23 +1,44 @@
 <template>
-  <div class="task-check-card-wrapper">
+  <div class="task-check-card-wrapper" @click.stop="emit('checkReceive')">
     <TaskCheckPersonalView
       class="task-check-card-view"
-      :avatarUrl="avatarUrl"
+      :avatar="avatar"
       :name="name"
-      :genderType="genderType"
-      :isRealName="isRealName"
-      :contactPhone="contactPhone"
+      :gender="gender"
+      :isReal="isReal"
+      :contactPhoneNumber="contactPhoneNumber"
     >
       <template #actions>
-        <nut-button
-          v-if="checkAcceptStatus === FlexTaskCheckAcceptStatusEnum.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] }}
-        </div>
+        <template v-if="checkReceiveMethod === EnumTaskCheckReceiveMethod.CheckIn">
+          <nut-button
+            v-if="!checkInTime"
+            type="primary"
+            class="task-check-card-phone-btn"
+            @click.stop="emit('checkInOrOut', CheckInOrOutEventEnum.CheckIn)"
+            >绛惧埌</nut-button
+          >
+          <nut-button
+            v-else-if="!checkOutTime"
+            type="primary"
+            class="task-check-card-phone-btn"
+            @click.stop="emit('checkInOrOut', CheckInOrOutEventEnum.CheckOut)"
+            >绛惧嚭</nut-button
+          >
+          <div v-else class="task-check-card-phone-status" :style="{ color: Colors.Success }">
+            {{ EnumTaskCheckReceiveStatusText[checkReceiveStatus] }}
+          </div>
+        </template>
+        <template v-else>
+          <nut-button
+            v-if="checkReceiveStatus === EnumTaskCheckReceiveStatus.WaitCheckReceive"
+            type="primary"
+            class="task-check-card-phone-btn"
+            >楠屾敹</nut-button
+          >
+          <div v-else class="task-check-card-phone-status" :style="{ color: Colors.Success }">
+            {{ EnumTaskCheckReceiveStatusText[checkReceiveStatus] }}
+          </div>
+        </template>
       </template>
     </TaskCheckPersonalView>
   </div>
@@ -25,26 +46,39 @@
 
 <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,
+  EnumTaskCheckReceiveMethod,
+} from '@12333/constants';
+import { CheckInOrOutEventEnum } from '../constants';
 
 defineOptions({
   name: 'TaskCheckCard',
 });
 
 type Props = {
-  avatarUrl?: string;
+  avatar?: string;
   name?: string;
-  genderType?: Gender;
-  isRealName?: boolean;
-  contactPhone?: string;
-  checkAcceptStatus?: API.FlexTaskCheckAcceptStatusEnum;
+  gender?: EnumUserGender;
+  isReal?: boolean;
+  contactPhoneNumber?: string;
+  checkReceiveStatus?: EnumTaskCheckReceiveStatus;
+  /** 绛惧埌鏃堕棿 */
+  checkInTime?: string;
+  /** 绛惧嚭鏃堕棿 */
+  checkOutTime?: string;
+  checkReceiveMethod?: EnumTaskCheckReceiveMethod;
 };
 
 const props = withDefaults(defineProps<Props>(), {});
+
+const emit = defineEmits<{
+  (e: 'checkReceive'): void;
+  (e: 'checkInOrOut', ev: CheckInOrOutEventEnum): void;
+}>();
 </script>
 
 <style lang="scss">

--
Gitblit v1.9.1