12382503f47bec8723810913d64483db6a2aca57
Root cause: The SQL query in AdviceProcessAppMapper.xml used a plain LEFT JOIN with med_medication_dispense on med_req_id. When a single medication request had multiple dispense records (e.g., from repeated executions or summary operations), the JOIN produced multiple rows per request — up to 222 rows for one request. SELECT DISTINCT could not deduplicate because dispense_status values differed across rows. Fix: Replace the plain LEFT JOIN with LEFT JOIN LATERAL (subquery ORDER BY create_time DESC LIMIT 1) to fetch only the most recent dispense record per medication request. This ensures exactly one row per request regardless of how many dispense records exist. Verified: SQL query now returns 0 duplicate rows across all medication requests.
Description
No description provided
Languages
Java
49.4%
Vue
44.9%
JavaScript
4.6%
HTML
0.7%
SCSS
0.1%