Add admin transaction cancellation without deleting history.

Cancelled transactions are excluded from paid totals and due-date
calculations while remaining visible for audit purposes.
This commit is contained in:
2026-08-16 22:38:00 +03:30
parent a436cfeb47
commit 5328f36f06
6 changed files with 53 additions and 2 deletions
+10
View File
@@ -73,6 +73,16 @@ describe('paid vs pending transactions', () => {
assert.equal(isPaidTransaction({ status: 'pending', amount: 2_000_000 }), false);
assert.equal(isPaidTransaction({ status: 'paid', amount: 8_000_000 }), true);
});
it('ignores cancelled transactions in paid totals', () => {
const transactions = [
{ amount: 5_000_000, status: 'paid', date: '2026-08-03' },
{ amount: 5_000_000, status: 'cancelled' },
{ amount: 2_000_000, status: 'pending', dueDate: '2026-08-23' }
];
assert.equal(sumPaidTransactions(transactions), 5_000_000);
assert.equal(isPaidTransaction({ status: 'cancelled', amount: 5_000_000, date: '2026-08-03' }), false);
});
});
describe('sanitizeNotes', () => {