yourName пре 1 година
родитељ
комит
edb14b8349
1 измењених фајлова са 10 додато и 6 уклоњено
  1. 10 6
      src/main/resources/com/steerinfo/dil/mapper/UniversalMapper.xml

+ 10 - 6
src/main/resources/com/steerinfo/dil/mapper/UniversalMapper.xml

@@ -1624,9 +1624,7 @@
         RP.PERSONNEL_PHONE "personnelPhone",
         RP.IDENTITY_CARD "personnelCard",
         RP.INNNER_CODE "innerCode",
-        (
-        select count(*) from oms_trans_order oto where oto.driver_id = rp.personnel_id or oto.driver_id2 = rp.personnel_id
-        ) "orders",
+        oto.oto_count+oto2.oto_count "orders",
         to_char(RP.SSO_ID) "ssoId",
         RP.PERSONNEL_ID "id",
         RP.PERSONNEL_ID "value",
@@ -1638,6 +1636,10 @@
         </if>
         FROM
         RMS_PERSONNEL RP
+        left join (select count(*) oto_count,oto.driver_id from oms_trans_order oto group by oto.driver_id) oto
+            on oto.driver_id = RP.PERSONNEL_ID
+        left join (select count(*) oto_count,oto.driver_id2 from oms_trans_order oto group by oto.driver_id2) oto2
+            on oto2.driver_id2 = RP.PERSONNEL_ID
         <if test="capacityId!=null and capacityId!=''">
             LEFT JOIN (
             SELECT DRIVER_ID "driverId",
@@ -1689,9 +1691,7 @@
             RP.PERSONNEL_PHONE "personnelPhone",
             RP.IDENTITY_CARD "personnelCard",
             RP.INNNER_CODE "innerCode",
-            (
-            select count(*) from oms_trans_order oto where oto.driver_id = rp.personnel_id or oto.driver_id2 = rp.personnel_id
-            ) "orders",
+            oto.oto_count+oto2.oto_count "orders",
             to_char(RP.SSO_ID) "ssoId",
             RP.PERSONNEL_ID "id",
             RP.PERSONNEL_ID "value",
@@ -1702,6 +1702,10 @@
                 ,NVL(T ."countNumber",0) "countNumber"
             </if>
             from RMS_PERSONNEL RP
+            left join (select count(*) oto_count,oto.driver_id from oms_trans_order oto group by oto.driver_id) oto
+            on oto.driver_id = RP.PERSONNEL_ID
+            left join (select count(*) oto_count,oto.driver_id2 from oms_trans_order oto group by oto.driver_id2) oto2
+            on oto2.driver_id2 = RP.PERSONNEL_ID
             <if test="capacityId!=null and capacityId!=''">
                 LEFT JOIN (
                 SELECT DRIVER_ID "driverId",