Advertisement
Guest User

Untitled

a guest
Jul 20th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 5.15 KB | None | 0 0
  1. SELECT p.MR_CODE, p.PATIENT_NM,p.ADDRESS,
  2.             r.REGISTRY_DT,r.IN_OUT_STS, pg.price_group_code, deb.debitur_nm,
  3.             COALESCE(su_ri.SRVC_UNIT_NM,su_rj.SRVC_UNIT_NM) SRVC_UNIT_NM,
  4.             COALESCE(sc_ri.SERVICE_CLASS_NAME,sc_rj.SERVICE_CLASS_NAME) SERVICE_CLASS_NAME,
  5.             roomd.*, coalesce(pay.terbayar,0) terbayar, bil.jaminan, bil.total, bil.total_patient
  6.         FROM
  7.             registry r JOIN patient p ON r.MR_ID=p.MR_ID
  8.             LEFT JOIN (
  9.                 SELECT uv.REGISTRY_ID, max(rm.ROOM_MUTATION_ID) ROOM_MUTATION_ID
  10.                 FROM unit_visit uv JOIN room_mutation rm ON uv.UNIT_VISIT_ID=rm.UNIT_VISIT_ID
  11.                 GROUP BY uv.REGISTRY_ID) rm_max ON r.REGISTRY_ID=rm_max.REGISTRY_ID
  12.             LEFT JOIN room_mutation rm ON rm_max.ROOM_MUTATION_ID=rm.ROOM_MUTATION_ID
  13.             LEFT JOIN room ON rm.ROOM_ID=room.ROOM_ID
  14.             LEFT JOIN service_unit su_ri ON room.SRVC_UNIT_ID=su_ri.SRVC_UNIT_ID
  15.             LEFT JOIN service_class sc_ri ON rm.SERVICE_CLASS_ID=sc_ri.SERVICE_CLASS_ID
  16.             LEFT JOIN (
  17.                 SELECT uv.REGISTRY_ID, max(uv.UNIT_VISIT_ID) UNIT_VISIT_ID
  18.                 FROM unit_visit uv WHERE registry_no IS NOT NULL
  19.                 GROUP BY uv.REGISTRY_ID) uv_max ON r.REGISTRY_ID=uv_max.REGISTRY_ID
  20.             LEFT JOIN unit_visit uv ON uv_max.UNIT_VISIT_ID=uv.UNIT_VISIT_ID
  21.             LEFT JOIN service_unit su_rj ON uv.UNIT_ID_TO=su_rj.SRVC_UNIT_ID
  22.             LEFT JOIN service_class sc_rj ON r.SERVICE_CLASS_ID=sc_rj.SERVICE_CLASS_ID
  23.             LEFT JOIN price_group pg ON r.price_group_id = pg.price_group_id
  24.             LEFT JOIN patient_debitur pdeb ON r.registry_id = pdeb.registry_id
  25.             LEFT JOIN debitur deb ON pdeb.debitur_id = deb.debitur_id
  26.             JOIN (
  27.                 (
  28.                     SELECT 'Transaksi Penggunaan Tempat TIdur' ket,r.REGISTRY_ID, sg.S_GROUP_NM, ms.MEDICAL_SERVICE_NAME, '' MEDICAL_ACTOR,
  29.                        sc.SERVICE_CLASS_NAME SC_DETIL,rm.MUTATION_DT startDate,rm.UNTIL_DT endDate,
  30.                        b.SOURCE_CHARGE, b.DISCOUNT, b.NETTO_CHARGE, COALESCE(b.DEBITUR_CHARGE, 0) DEBITUR_CHARGE,
  31.                        COALESCE(b.NETTO_CHARGE, 0) -  COALESCE(b.DEBITUR_CHARGE, 0)  IUR
  32.                     FROM
  33.                         registry r JOIN patient p ON r.MR_ID=p.MR_ID
  34.                         JOIN unit_visit uv ON r.REGISTRY_ID=uv.REGISTRY_ID
  35.                         JOIN room_mutation rm ON uv.UNIT_VISIT_ID=rm.UNIT_VISIT_ID
  36.                         JOIN room ON rm.ROOM_ID=room.ROOM_ID
  37.                         JOIN medical_service ms ON room.MEDICAL_SERVICE_ID=ms.MEDICAL_SERVICE_ID
  38.                         JOIN service_class sc ON rm.SERVICE_CLASS_ID=sc.SERVICE_CLASS_ID
  39.                         JOIN service_group sg ON ms.S_GROUP_ID=sg.S_GROUP_ID
  40.                         JOIN billing b ON rm.BILLING_ID=b.BILLING_ID
  41.                     WHERE r.REGISTRY_ID='110207075802745101RSHA'
  42.                         AND (EXISTS (SELECT * FROM payment_billing pbil WHERE pbil.billing_id = b.billing_id AND pbil.payment_id = '110207092536229353RSHA')
  43.                             OR COALESCE(b.NETTO_CHARGE, 0) -  COALESCE(b.DEBITUR_CHARGE, 0) = 0)
  44.                 )
  45.                 UNION (
  46.                     SELECT 'Transaksi Tindakan' ket,r.REGISTRY_ID,sg.S_GROUP_NM, ms.MEDICAL_SERVICE_NAME,
  47.                         CASE WHEN visDoc.employee_nm is not null THEN
  48.                             ' (' || visDoc.employee_nm || ')'
  49.                         WHEN emp.employee_nm IS NOT NULL THEN
  50.                             ' (' || emp.employee_nm || ')'
  51.                         ELSE '' END MEDICAL_ACTOR,
  52.                         sc.SERVICE_CLASS_NAME SC_DETIL,b.BILLING_DT startDate, null endDate,
  53.                         b.SOURCE_CHARGE, b.DISCOUNT, b.NETTO_CHARGE, COALESCE(b.DEBITUR_CHARGE, 0) DEBITUR_CHARGE,
  54.                         COALESCE(b.NETTO_CHARGE, 0) -  COALESCE(b.DEBITUR_CHARGE, 0)  IUR
  55.                     FROM
  56.                         registry r JOIN patient p ON r.MR_ID=p.MR_ID
  57.                         JOIN billing b ON r.REGISTRY_ID=b.REGISTRY_ID
  58.                         JOIN medical_service ms ON b.MEDICAL_SERVICE_ID=ms.MEDICAL_SERVICE_ID
  59.                         JOIN service_class sc ON b.SERVICE_CLASS_ID=sc.SERVICE_CLASS_ID
  60.                         LEFT JOIN service_group sg ON ms.S_GROUP_ID=sg.S_GROUP_ID
  61.                         LEFT JOIN (
  62.                             SELECT emp.employee_nm, vis.billing_id FROM visite vis LEFT JOIN employee emp ON vis.employee_id = emp.employee_id
  63.                         ) visDoc ON b.billing_id = visDoc.billing_id
  64.                         LEFT JOIN employee emp ON b.employee_charge = emp.employee_id
  65.                     WHERE r.REGISTRY_ID='110207075802745101RSHA'
  66.                        AND (sg.S_GROUP_CODE!='SKI' OR sg.S_GROUP_CODE IS NULL)
  67.                         AND (EXISTS (SELECT * FROM payment_billing pbil WHERE pbil.billing_id = b.billing_id AND pbil.payment_id = '110207092536229353RSHA')
  68.                             OR COALESCE(b.NETTO_CHARGE, 0) -  COALESCE(b.DEBITUR_CHARGE, 0) = 0)
  69.                     ORDER BY sg.S_GROUP_NM, ms.MEDICAL_SERVICE_NAME
  70.                 )
  71.             ORDER BY ket,startDate
  72.             ) roomd ON r.REGISTRY_ID=roomd.REGISTRY_ID
  73.         LEFT JOIN (
  74.             SELECT payment.REGISTRY_ID,SUM(payment.PAYMENT_AMT) terbayar FROM payment
  75.             WHERE payment.REGISTRY_ID='110207075802745101RSHA'
  76.             GROUP BY payment.REGISTRY_ID
  77.             ) pay ON pay.REGISTRY_ID=r.REGISTRY_ID
  78.         LEFT JOIN (
  79.             SELECT b.REGISTRY_ID,sum(b.NETTO_CHARGE) total,
  80.                 SUM(COALESCE(b.NETTO_CHARGE, 0) -  COALESCE(b.DEBITUR_CHARGE, 0)) total_patient, sum(coalesce(db.CHARGE,0)) jaminan
  81.             FROM billing b left join debitur_billing db on b.BILLING_ID=db.BILLING_ID
  82.             WHERE b.REGISTRY_ID='110207075802745101RSHA'
  83.                 AND (EXISTS (SELECT * FROM payment_billing pbil WHERE pbil.billing_id = b.billing_id AND pbil.payment_id = '110207092536229353RSHA')
  84.                     OR COALESCE(b.NETTO_CHARGE, 0) -  COALESCE(b.DEBITUR_CHARGE, 0) = 0)
  85.             GROUP BY REGISTRY_ID
  86.         ) bil ON r.REGISTRY_ID=r.REGISTRY_ID       
  87.         WHERE r.REGISTRY_ID='110207075802745101RSHA'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement