fix: update per-patient collected in reports to use mhPaidAmount + copayment
All per-patient SQL queries now compute: collected = mhPaidAmount + copayment balance = totalBilled - collected - adjustment Fixes patient rows showing $0 collected while report total was correct. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -388,8 +388,8 @@ export const paymentsReportsStorage: IPaymentsReportsStorage = {
|
|||||||
SELECT
|
SELECT
|
||||||
pay."patientId" AS patient_id,
|
pay."patientId" AS patient_id,
|
||||||
SUM(pay."totalBilled")::numeric(12,2) AS total_charges,
|
SUM(pay."totalBilled")::numeric(12,2) AS total_charges,
|
||||||
SUM(pay."totalPaid")::numeric(12,2) AS total_paid,
|
SUM(COALESCE(pay."mhPaidAmount",0) + pay."copayment")::numeric(12,2) AS total_paid,
|
||||||
SUM(pay."totalAdjusted")::numeric(12,2) AS total_adjusted,
|
SUM(pay."adjustment")::numeric(12,2) AS total_adjusted,
|
||||||
MAX(pay."createdAt") AS last_payment_date
|
MAX(pay."createdAt") AS last_payment_date
|
||||||
FROM "Payment" pay
|
FROM "Payment" pay
|
||||||
${paymentWhereClause}
|
${paymentWhereClause}
|
||||||
@@ -509,8 +509,8 @@ export const paymentsReportsStorage: IPaymentsReportsStorage = {
|
|||||||
SELECT COUNT(*)::int AS cnt FROM (
|
SELECT COUNT(*)::int AS cnt FROM (
|
||||||
SELECT pay."patientId" AS patient_id,
|
SELECT pay."patientId" AS patient_id,
|
||||||
SUM(pay."totalBilled")::numeric(14,2) AS total_charges,
|
SUM(pay."totalBilled")::numeric(14,2) AS total_charges,
|
||||||
SUM(pay."totalPaid")::numeric(14,2) AS total_paid,
|
SUM(COALESCE(pay."mhPaidAmount",0) + pay."copayment")::numeric(14,2) AS total_paid,
|
||||||
SUM(pay."totalAdjusted")::numeric(14,2) AS total_adjusted
|
SUM(pay."adjustment")::numeric(14,2) AS total_adjusted
|
||||||
FROM "Payment" pay
|
FROM "Payment" pay
|
||||||
${paymentWhereClause}
|
${paymentWhereClause}
|
||||||
GROUP BY pay."patientId"
|
GROUP BY pay."patientId"
|
||||||
@@ -639,10 +639,10 @@ export const paymentsReportsStorage: IPaymentsReportsStorage = {
|
|||||||
payments_agg AS (
|
payments_agg AS (
|
||||||
SELECT
|
SELECT
|
||||||
pay."patientId" AS patient_id,
|
pay."patientId" AS patient_id,
|
||||||
SUM(pay."totalBilled")::numeric(14,2) AS total_charges,
|
SUM(pay."totalBilled")::numeric(14,2) AS total_charges,
|
||||||
SUM(pay."totalPaid")::numeric(14,2) AS total_paid,
|
SUM(COALESCE(pay."mhPaidAmount",0) + pay."copayment")::numeric(14,2) AS total_paid,
|
||||||
SUM(pay."totalAdjusted")::numeric(14,2) AS total_adjusted,
|
SUM(pay."adjustment")::numeric(14,2) AS total_adjusted,
|
||||||
MAX(pay."createdAt") AS last_payment_date
|
MAX(pay."createdAt") AS last_payment_date
|
||||||
FROM "Payment" pay
|
FROM "Payment" pay
|
||||||
JOIN "Claim" c ON pay."claimId" = c.id
|
JOIN "Claim" c ON pay."claimId" = c.id
|
||||||
WHERE c."staffId" = ${Number(staffId)}
|
WHERE c."staffId" = ${Number(staffId)}
|
||||||
|
|||||||
Reference in New Issue
Block a user