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 | 73 +++++++++++++++++++++++++++++++++--- 1 files changed, 66 insertions(+), 7 deletions(-) diff --git a/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue b/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue index db091ef..801c3ee 100644 --- a/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue +++ b/apps/bMiniApp/src/subpackages/task/components/TaskCheckCard.vue @@ -1,9 +1,44 @@ <template> - <div class="task-check-card-wrapper"> - <TaskCheckPersonalView class="task-check-card-view"> + <div class="task-check-card-wrapper" @click.stop="emit('checkReceive')"> + <TaskCheckPersonalView + class="task-check-card-view" + :avatar="avatar" + :name="name" + :gender="gender" + :isReal="isReal" + :contactPhoneNumber="contactPhoneNumber" + > <template #actions> - <nut-button type="primary" class="task-check-card-phone-btn">楠屾敹</nut-button> - <!-- <div class="task-check-card-phone-status" :style="{ color: Colors.Success }">楠屾敹閫氳繃</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> @@ -11,15 +46,39 @@ <script setup lang="ts"> import TaskCheckPersonalView from './TaskCheckPersonalView.vue'; -import { Colors } from '@12333/constants'; +import { + Colors, + EnumUserGender, + EnumTaskCheckReceiveStatus, + EnumTaskCheckReceiveStatusText, + EnumTaskCheckReceiveMethod, +} from '@12333/constants'; +import { CheckInOrOutEventEnum } from '../constants'; defineOptions({ name: 'TaskCheckCard', }); -// type Props = {}; +type Props = { + avatar?: string; + name?: string; + gender?: EnumUserGender; + isReal?: boolean; + contactPhoneNumber?: string; + checkReceiveStatus?: EnumTaskCheckReceiveStatus; + /** 绛惧埌鏃堕棿 */ + checkInTime?: string; + /** 绛惧嚭鏃堕棿 */ + checkOutTime?: string; + checkReceiveMethod?: EnumTaskCheckReceiveMethod; +}; -// const props = withDefaults(defineProps<Props>(), {}); +const props = withDefaults(defineProps<Props>(), {}); + +const emit = defineEmits<{ + (e: 'checkReceive'): void; + (e: 'checkInOrOut', ev: CheckInOrOutEventEnum): void; +}>(); </script> <style lang="scss"> -- Gitblit v1.9.1