@@ -7,7 +7,6 @@
|
||||
SELECT T4.encounter_id,
|
||||
T4.encounter_bus_no,
|
||||
T4.patient_id,
|
||||
T4.encounter_status,
|
||||
T4.reception_time,
|
||||
T4.patient_name,
|
||||
T4.patient_bus_no,
|
||||
@@ -17,62 +16,47 @@
|
||||
T4.start_time,
|
||||
T4.patient_py_str,
|
||||
T4.patient_wb_str,
|
||||
T4.balance_amount
|
||||
FROM (SELECT T1.id AS encounter_id,
|
||||
T1.bus_no AS encounter_bus_no,
|
||||
T1.patient_id,
|
||||
T1.reception_time,
|
||||
T1.delete_flag,
|
||||
T1.tenant_id,
|
||||
T1.start_time,
|
||||
T1.status_enum AS encounter_status,
|
||||
T2."name" AS patient_name,
|
||||
T2.bus_no AS patient_bus_no,
|
||||
T2.gender_enum,
|
||||
T2.birth_date,
|
||||
T2.id_card,
|
||||
T2.py_str AS patient_py_str,
|
||||
T2.wb_str AS patient_wb_str,
|
||||
T3.balance_amount
|
||||
FROM adm_encounter AS T1
|
||||
LEFT JOIN adm_patient AS T2
|
||||
ON T1.patient_id = T2.id
|
||||
LEFT JOIN (SELECT aa.encounter_id,
|
||||
(aa.balance_amount -
|
||||
COALESCE(SUM(CASE
|
||||
WHEN aci.status_enum IN (#{billed}, #{billable})
|
||||
THEN aci.total_price
|
||||
ELSE 0 END), 0) +
|
||||
COALESCE(
|
||||
SUM(CASE WHEN aci.status_enum = #{refunded} THEN aci.total_price ELSE 0 END),
|
||||
0)) AS balance_amount
|
||||
FROM adm_account aa
|
||||
LEFT JOIN adm_charge_item aci ON aa.encounter_id = aci.encounter_id
|
||||
AND aa.delete_flag = '0'
|
||||
WHERE aa.type_code = #{personalCashAccount}
|
||||
AND aa.delete_flag = '0'
|
||||
GROUP BY aa.encounter_id,
|
||||
aa.balance_amount) AS T3 ON T3.encounter_id = T1.id
|
||||
WHERE T1.delete_flag = '0'
|
||||
AND T1.class_enum = #{classEnum}
|
||||
AND T1.status_enum IN (#{dischargedFromHospital}, #{alreadySettled})
|
||||
GROUP BY T1.id,
|
||||
T1.bus_no,
|
||||
T1.patient_id,
|
||||
T1.reception_time,
|
||||
T1.delete_flag,
|
||||
T1.tenant_id,
|
||||
T1.start_time,
|
||||
T1.status_enum,
|
||||
T2."name",
|
||||
T2.bus_no,
|
||||
T2.gender_enum,
|
||||
T2.birth_date,
|
||||
T2.id_card,
|
||||
T2.py_str,
|
||||
T2.wb_str,
|
||||
T3.balance_amount
|
||||
ORDER BY T1.bus_no DESC) AS T4
|
||||
T4.status_enum
|
||||
FROM (
|
||||
SELECT T1.id AS encounter_id,
|
||||
T1.bus_no AS encounter_bus_no,
|
||||
T1.patient_id,
|
||||
T1.reception_time,
|
||||
T1.delete_flag,
|
||||
T1.tenant_id,
|
||||
T2."name" AS patient_name,
|
||||
T2.bus_no AS patient_bus_no,
|
||||
T2.gender_enum,
|
||||
T2.birth_date,
|
||||
T1.start_time,
|
||||
T2.id_card,
|
||||
T2.py_str AS patient_py_str,
|
||||
T2.wb_str AS patient_wb_str,
|
||||
T3.status_enum
|
||||
FROM adm_encounter AS T1
|
||||
LEFT JOIN adm_patient AS T2
|
||||
ON T1.patient_id = T2.id
|
||||
INNER JOIN adm_charge_item AS T3
|
||||
ON T3.encounter_id = T1.id
|
||||
AND T3.delete_flag = '0'
|
||||
WHERE T1.delete_flag = '0'
|
||||
AND T1.class_enum = #{classEnum}
|
||||
GROUP BY T1.id,
|
||||
T1.bus_no,
|
||||
T1.patient_id,
|
||||
T1.reception_time,
|
||||
T1.delete_flag,
|
||||
T1.tenant_id,
|
||||
T2."name",
|
||||
T2.bus_no,
|
||||
T2.gender_enum,
|
||||
T2.birth_date,
|
||||
T2.id_card,
|
||||
T2.py_str,
|
||||
T2.wb_str,
|
||||
T3.status_enum
|
||||
ORDER BY T1.bus_no DESC
|
||||
) AS T4
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
@@ -148,6 +132,8 @@
|
||||
, #{refunded}
|
||||
, #{partRefund})
|
||||
AND T1.context_enum != #{register}
|
||||
AND T1.entered_date >= #{startTime}
|
||||
AND T1.entered_date <= #{endTime}
|
||||
AND T1.delete_flag = '0'
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -75,6 +75,10 @@
|
||||
T2.unit_code,
|
||||
T1.unit_price,
|
||||
T1.total_price,
|
||||
T3.status_enum AS dispense_status,
|
||||
T3.not_performed_reason_enum AS not_performed_reason,
|
||||
0 AS service_status,
|
||||
T3.id AS dispense_id,
|
||||
T2.id AS request_id,
|
||||
T7.name AS item_name,
|
||||
T10.id AS payment_id,
|
||||
@@ -83,6 +87,9 @@
|
||||
LEFT JOIN med_medication_request AS T2
|
||||
ON T2.id = T1.service_id
|
||||
AND T2.delete_flag = '0'
|
||||
LEFT JOIN med_medication_dispense AS T3
|
||||
ON T3.med_req_id = T2.id
|
||||
AND T3.delete_flag = '0'
|
||||
LEFT JOIN med_medication_definition AS T7
|
||||
ON T1.product_id = T7.id
|
||||
AND T7.delete_flag = '0'
|
||||
@@ -110,6 +117,10 @@
|
||||
T4.unit_code,
|
||||
T1.unit_price,
|
||||
T1.total_price,
|
||||
T5.status_enum AS dispense_status,
|
||||
T5.not_performed_reason_enum AS not_performed_reason,
|
||||
0 AS service_status,
|
||||
T5.id AS dispense_id,
|
||||
T4.id AS request_id,
|
||||
T8.name AS item_name,
|
||||
T10.id AS payment_id,
|
||||
@@ -118,6 +129,9 @@
|
||||
LEFT JOIN wor_device_request AS T4
|
||||
ON T4.id = T1.service_id
|
||||
AND T4.delete_flag = '0'
|
||||
LEFT JOIN wor_device_dispense AS T5
|
||||
ON T5.device_req_id = T4.id
|
||||
AND T5.delete_flag = '0'
|
||||
LEFT JOIN adm_device_definition AS T8
|
||||
ON T1.product_id = T8.id
|
||||
AND T8.delete_flag = '0'
|
||||
@@ -145,6 +159,10 @@
|
||||
T6.unit_code,
|
||||
T1.unit_price,
|
||||
T1.total_price,
|
||||
0 AS dispense_status,
|
||||
null AS not_performed_reason,
|
||||
T6.status_enum AS service_status,
|
||||
null AS dispense_id,
|
||||
T6.id AS request_id,
|
||||
T9.name AS item_name,
|
||||
T10.id AS payment_id,
|
||||
@@ -264,7 +282,10 @@
|
||||
aci.service_table,
|
||||
mmr.prescription_no,
|
||||
mmr.id AS request_id,
|
||||
dis.status_enum AS dispense_status,
|
||||
0 AS service_status,
|
||||
dis.dispense_quantity,
|
||||
dis.id AS dispense_id,
|
||||
mmd."name" AS item_name,
|
||||
fpr.id AS payment_id,
|
||||
fpr.enterer_id,
|
||||
@@ -289,6 +310,9 @@
|
||||
ON aci.service_id = mmr.refund_medicine_id
|
||||
AND mmr.refund_medicine_id IS NOT NULL
|
||||
AND mmr.delete_flag = '0'
|
||||
LEFT JOIN med_medication_dispense dis
|
||||
ON mmr.id = dis.med_req_id
|
||||
AND dis.delete_flag = '0'
|
||||
INNER JOIN med_medication_definition mmd
|
||||
ON aci.product_id = mmd.id
|
||||
AND mmd.delete_flag = '0'
|
||||
@@ -326,7 +350,10 @@
|
||||
aci.service_table,
|
||||
wdr.prescription_no,
|
||||
wdr.id AS request_id,
|
||||
wdd.status_enum AS dispense_status,
|
||||
0 AS service_status,
|
||||
wdd.dispense_quantity,
|
||||
wdd.id AS dispense_id,
|
||||
dev."name" AS item_name,
|
||||
fpr.id AS payment_id,
|
||||
fpr.enterer_id,
|
||||
@@ -351,6 +378,9 @@
|
||||
ON aci.service_id = wdr.refund_device_id
|
||||
AND wdr.refund_device_id IS NOT NULL
|
||||
AND wdr.delete_flag = '0'
|
||||
LEFT JOIN wor_device_dispense wdd
|
||||
ON wdr.id = wdd.device_req_id
|
||||
AND wdd.delete_flag = '0'
|
||||
INNER JOIN adm_device_definition dev
|
||||
ON aci.product_id = dev.id
|
||||
AND dev.delete_flag = '0'
|
||||
@@ -388,7 +418,10 @@
|
||||
aci.service_table,
|
||||
wsr.prescription_no,
|
||||
wsr.id AS request_id,
|
||||
0 AS dispense_status,
|
||||
wsr.status_enum AS service_status,
|
||||
0 AS dispense_quantity,
|
||||
null AS dispense_id,
|
||||
wad."name" AS item_name,
|
||||
fpr.id AS payment_id,
|
||||
fpr.enterer_id,
|
||||
|
||||
Reference in New Issue
Block a user