mirror of
https://dev.azure.com/hugendubel/ISA/_git/ISA-Frontend
synced 2025-12-28 22:42:11 +01:00
feat(crm-customer-booking): add loyalty card booking component Implement new component for customer loyalty card credit/debit bookings with booking type selection and real-time transaction updates. Includes automatic reload of transaction history after successful bookings. Key changes: - Add CrmFeatureCustomerBookingComponent with booking form UI - Create CustomerCardBookingFacade for booking API calls - Add CustomerBookingReasonsResource for loading booking types - Extend CrmSearchService with booking methods (addBooking, fetchBookingReasons, fetchCurrentBookingPartnerStore) - Add AddBookingSchema with Zod validation - Integrate component into KundenkarteMainViewComponent - Update CustomerCardTransactionsResource to providedIn: 'root' for shared access - Improve transaction list UX (hide header/center empty state when no data) Technical details: - New library: @isa/crm/feature/customer-booking (Vitest-based) - Signals-based state management with computed properties - Automatic points calculation based on booking type multiplier - Error handling with feedback dialogs - 500ms delay before transaction reload to ensure API consistency - Data attributes for E2E testing (data-what, data-which) Ref: #5315
22 lines
624 B
HTML
22 lines
624 B
HTML
<div class="flex flex-row justify-end -mt-2">
|
|
<page-customer-menu
|
|
[customerId]="customerId$ | async"
|
|
[processId]="processId$ | async"
|
|
[showCustomerCard]="false"
|
|
/>
|
|
</div>
|
|
<crm-customer-loyalty-cards
|
|
[customerId]="customerId$ | async"
|
|
[tabId]="processId$ | async"
|
|
class="mt-4"
|
|
/>
|
|
<crm-customer-booking [cardCode]="firstActiveCardCode()" class="mt-4" />
|
|
<crm-customer-card-transactions
|
|
[cardCode]="firstActiveCardCode()"
|
|
class="mt-8"
|
|
/>
|
|
<utils-scroll-top-button
|
|
[target]="hostElement"
|
|
class="flex flex-col justify-self-end fixed bottom-6 right-6"
|
|
></utils-scroll-top-button>
|