[Bug 42966] New: Migrate POS payment screen to Vue.js (pos/pay.pl)
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42966 Bug ID: 42966 Summary: Migrate POS payment screen to Vue.js (pos/pay.pl) Initiative type: --- Sponsorship --- status: Product: Koha Version: Main Hardware: All OS: All Status: NEW Severity: enhancement Priority: P5 - low Component: Point of Sale Assignee: koha-bugs@lists.koha-community.org Reporter: martin.renvoize@openfifth.co.uk QA Contact: martin.renvoize@openfifth.co.uk Depends on: 42962, 42964, 42965 Blocks: 42959 Target Milestone: --- This is part of the Point of Sale to Vue migration tracked under bug 42959. This patch replaces pos/pay.pl and pos/pay.tt with a Vue.js 3 application, following the module/route/store/component pattern already established by the ERM and Preservation modules under koha-tmpl/intranet-tmpl/prog/js/vue/. This bug covers both the initial application scaffold (module entry point, route definitions, Pinia store, API composables) and the payment screen itself, since a bare scaffold with no visible UI is not meaningfully testable on its own. Scope: - Register selector - Sellable debit types table (item selection), backed by bug 42964 - Running sale total / cart - Payment collection form (tendered amount, change calculation, payment type), backed by bug 42965 - Email receipt action - Removal of the legacy pos/pay.pl controller and pos/pay.tt template once parity is confirmed, including the cash_management: takepayment permission check moving to the API layer - Cypress coverage for the sale flow, included as part of this patchset This is a rework, not a strict like-for-like port: minor UX improvements to the flow are welcome as long as all existing end-user actions remain possible. Larger UX ideas that surface during the work but are out of scope here should be captured as follow-on bugs rather than expanding this one. If gaps or reusable improvements in the shared Vue component library are identified while building this (e.g. a generic money/currency input, item-picker component, or form validation helper), split those out as separate prerequisite bugs so they can land independently and be reused by other Vue modules. Test plan: 1. Enable EnablePointOfSale and UseCashRegisters. 2. Navigate to the new Vue-based POS payment screen and select a register. 3. Add one or more sellable items to the sale and confirm the running total updates correctly. 4. Take payment, confirm change calculation, and confirm the resulting accountlines match what the legacy pos/pay.pl produced. 5. Email a receipt and confirm delivery. 6. Confirm the cash_management: takepayment permission is enforced. 7. Run the included Cypress spec. Referenced Bugs: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42959 [Bug 42959] Migrate staff interface functionality from CGI controller + Template Toolkit to REST API + Vue.js https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42962 [Bug 42962] Expose cash register outstanding accountlines via REST API https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42964 [Bug 42964] Expose sellable debit types scoped by library via REST API https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42965 [Bug 42965] REST API: Endpoint to record an anonymous or patron-optional POS sale -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42966 Martin Renvoize (ashimema) <martin.renvoize@openfifth.co.uk> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |42967 Blocks| |42969 Blocks| |42970 Blocks| |42971 Strategic theme|--- |Modernisation Initiative type|--- |Epic Referenced Bugs: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42967 [Bug 42967] Migrate POS register detail view to Vue.js (pos/register.pl) https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42969 [Bug 42969] Migrate POS registers list and cashup view to Vue.js (pos/registers.pl) https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42970 [Bug 42970] Migrate POS receipt view to Vue.js (pos/printreceipt.pl) https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42971 [Bug 42971] POS: UX improvements enabled by the Vue rework -- You are receiving this mail because: You are watching all bug changes. You are the assignee for the bug.
participants (1)
-
bugzilla-daemon@bugs.koha-community.org