From 01ac80d67da9c36e43855b373b1079b0b6238945 Mon Sep 17 00:00:00 2001 From: MSuMshk <2039814060@qq.com> Date: Fri, 27 Feb 2026 17:15:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=87=8D=E6=9E=84=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=A4=A7=E5=8E=85=E7=9C=8B=E6=9D=BFUI=E5=AF=B9=E9=BD=90?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E7=A8=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/hall/components/BoardColumn.vue | 49 ++- .../order/hall/components/BoardOrderCard.vue | 243 +++++++++---- .../order/hall/components/BoardStatsBar.vue | 53 +-- .../order/hall/components/BoardToolbar.vue | 123 ++++--- .../hall/components/RejectOrderModal.vue | 2 +- .../composables/order-hall-page/constants.ts | 42 ++- .../order-hall-page/data-actions.ts | 57 ++- .../hall/composables/useOrderHallPage.ts | 35 +- apps/web-antd/src/views/order/hall/index.vue | 88 +++-- .../views/order/hall/styles/animations.less | 35 +- .../src/views/order/hall/styles/card.less | 305 ++++++++++++----- .../src/views/order/hall/styles/layout.less | 324 +++++++++++++++--- .../src/views/order/hall/styles/toolbar.less | 180 ++++++++-- apps/web-antd/src/views/order/hall/types.ts | 38 +- 14 files changed, 1159 insertions(+), 415 deletions(-) diff --git a/apps/web-antd/src/views/order/hall/components/BoardColumn.vue b/apps/web-antd/src/views/order/hall/components/BoardColumn.vue index c59b8a0..c9440f1 100644 --- a/apps/web-antd/src/views/order/hall/components/BoardColumn.vue +++ b/apps/web-antd/src/views/order/hall/components/BoardColumn.vue @@ -4,6 +4,8 @@ import type { BoardColumnKey } from '../types'; import type { OrderBoardCard } from '#/api/order-hall'; +import { computed } from 'vue'; + import BoardOrderCard from './BoardOrderCard.vue'; const { @@ -13,11 +15,11 @@ const { columnKey, title = '', } = defineProps<{ - cards: OrderBoardCard[]; - colorClass: string; + cards?: OrderBoardCard[]; + colorClass?: string; columnKey: BoardColumnKey; - isLoading: boolean; - title: string; + isLoading?: boolean; + title?: string; }>(); const emit = defineEmits<{ @@ -26,20 +28,49 @@ const emit = defineEmits<{ confirmDelivery: [orderId: string]; reject: [orderId: string]; }>(); + +const deliveryChannelCount = computed( + () => cards.filter((item) => item.deliveryType === 2).length, +); + +const shouldShowCount = computed(() => columnKey !== 'completed'); + +const countText = computed(() => { + if (columnKey === 'delivering') { + return `(${deliveryChannelCount.value}/${cards.length})`; + } + + return String(cards.length); +});