mirror of
https://github.com/opensourcepos/opensourcepos.git
synced 2026-11-08 23:43:32 -05:00
Introduce a CashupAmounts transfer object and break down large Cashups controller methods into focused private helpers. Includes a breaking change to constructor parameter order. - Add CashupAmounts (TransferObjects/Cashups) to bundle open/transfer/ closed cash, due, card, and check amounts; reorder constructor params to cash-before-due sequence - Replace positional _calculate_total() with calculateTotal(CashupAmounts), eliminating argument-order errors - Decompose getView() into buildEmployeeLookup(), normalizeCashupInfo(), initializeNewCashup(), isPendingClose(), closeCashup(), buildReportDateRangeInputs(), applyPaymentTotals(), subtractCashExpenses() - Decompose postSave() with parseCashupDate() and getCashupAmountsFromPost() helpers; update both CashupAmounts call sites to new param order - Rename snake_case vars/params to camelCase throughout Cashups controller - Drop stale TODO comments in OSPOS.php and Cashups::getIndex filter block - Scope escape => false to cashup_headers() note column rather than a broad regex exclusion in transform_headers() - Add CashupFixtureTrait and ExpenseFixtureTrait under tests/Support; tighten cashup view test to assertSeeInField on specific form fields BREAKING CHANGE: CashupAmounts constructor positional argument order changed — closedAmountCash now precedes closedAmountDue; any callers passing positional args must swap those two arguments. Signed-off-by: objecttothis <17935339+objecttothis@users.noreply.github.com>