feat: add admin transaction create/update with auto payment status sync
Allow admins to edit transaction amount and status, recalculate payment totals, and mark invoices fully paid when paid transactions cover the payable amount.
This commit is contained in:
@@ -5,7 +5,8 @@ const paymentController = require('./paymentController');
|
||||
const {
|
||||
validateCreatePayment,
|
||||
validateUpdatePayment,
|
||||
validateAddTransaction
|
||||
validateAddTransaction,
|
||||
validateUpdateTransaction
|
||||
} = require('./paymentValidator');
|
||||
const authMiddleware = require('../../middlewares/authMiddleware');
|
||||
const perm = require('../../middlewares/permissionMiddleware');
|
||||
@@ -25,6 +26,8 @@ router.get('/admin/get-all', perm.requires(PERMISSIONS.PAYMENTS_READ), paymentCo
|
||||
router.get('/admin/search', perm.requires(PERMISSIONS.PAYMENTS_SEARCH), paymentController.search);
|
||||
router.get('/admin/get-one/:id', perm.requires(PERMISSIONS.PAYMENTS_READ), paymentController.getOne);
|
||||
router.put('/admin/update/:id', perm.requires(PERMISSIONS.PAYMENTS_UPDATE), validateUpdatePayment, paymentController.update);
|
||||
router.put('/admin/transactions/:transactionId', perm.requires(PERMISSIONS.PAYMENTS_UPDATE), validateUpdateTransaction, paymentController.updateTransaction);
|
||||
router.post('/admin/transactions/:paymentId', perm.requires(PERMISSIONS.PAYMENTS_UPDATE), validateAddTransaction, paymentController.createTransaction);
|
||||
router.delete('/admin/delete/:id', perm.requires(PERMISSIONS.PAYMENTS_DELETE), paymentController.delete);
|
||||
|
||||
module.exports = router;
|
||||
|
||||
Reference in New Issue
Block a user