diff --git a/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataLogisticsMapper.xml b/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataLogisticsMapper.xml index f3ab3639..4f5ae815 100644 --- a/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataLogisticsMapper.xml +++ b/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataLogisticsMapper.xml @@ -237,15 +237,20 @@ GROUP BY a.prtmdept, a.subpkdate ) s - LEFT JOIN dba_mgr.v_mes_rb_pkpqry d + LEFT JOIN ( + SELECT * + FROM ( + SELECT d.*, + ROW_NUMBER() OVER ( + PARTITION BY d.prtmdept, d.subpkdate + ORDER BY d.pkreqdat DESC, d.pkno DESC + ) rn + FROM dba_mgr.v_mes_rb_pkpqry d + ) dd + WHERE dd.rn = 1 + ) d ON d.prtmdept = s.prtmdept AND d.subpkdate = s.subpkdate - AND d.rowid = ( - SELECT MIN(x.rowid) - FROM dba_mgr.v_mes_rb_pkpqry x - WHERE x.prtmdept = s.prtmdept - AND x.subpkdate = s.subpkdate - ) ORDER BY s.subpkdate DESC, s.prtmdept DESC ) t WHERE ROWNUM <= #{dto.current} * #{dto.size} @@ -253,6 +258,7 @@ WHERE no >= (#{dto.current} - 1) * #{dto.size} + 1 +