Forráskód Böngészése

aps-调度挪动数据sql调整

sucheng 3 hónapja
szülő
commit
9412e776fe

+ 17 - 18
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsBlankOrderDao.xml

@@ -337,24 +337,23 @@
           and apope.TENANTID = #{tenantId}
           and apo.PROCESS != '铸轧'
           and apope.WORKSTATUS = '待开工'
-          AND ((apope.PLANSTARTDATE between #{chongpaiStartDate} and #{chongpaiEndDate}) -- 在调度时间范围内开工
-            or ((preapope.PLANSTARTDATE between #{chongpaiStartDate} and #{chongpaiEndDate}) -- 前道在调度时间范围内开工
-                AND (
-                    date_add(preapope.PLANENDDATE, -- 前道计划完工时间 + 流转时间 > 计划开工时间
-                             INTERVAL GREATEST(
-                                     ifnull(apo.MINFLOWWAITMIN,0), -- 最小流转等待时间
-                                     if(apope.PROCESSWORKSHOPID!=preapope.PROCESSWORKSHOPID,#{workshopcross}, -- 车间流转时间
-                                        if(apope.PROCESSDEVICEID!=preapope.PROCESSDEVICEID,#{workshopin},0))) MINUTE -- 机台流转时间
-                    ) > apope.PLANSTARTDATE
-                        or date_add(preapope.PLANENDDATE, -- 前道计划完工时间 + 流转时间 小于 调度结束时间
-                                    INTERVAL GREATEST(
-                                            ifnull(apo.MINFLOWWAITMIN,0), -- 最小流转等待时间
-                                            if(apope.PROCESSWORKSHOPID!=preapope.PROCESSWORKSHOPID,#{workshopcross}, -- 车间流转时间
-                                               if(apope.PROCESSDEVICEID!=preapope.PROCESSDEVICEID,#{workshopin},0))) MINUTE -- 机台流转时间
-                           ) < #{chongpaiEndDate} -- 调度结束时间
-                    )
-                   )
-            )
+        AND ((apope.PLANSTARTDATE between #{chongpaiStartDate} and #{chongpaiEndDate}) -- 在调度时间范围内开工
+        or (preapope.PLANSTARTDATE between #{chongpaiStartDate} and #{chongpaiEndDate} -- 前道在调度时间范围内开工
+            AND date_add(preapope.PLANENDDATE, -- 前道计划完工时间 + 流转时间 > 计划开工时间
+            INTERVAL GREATEST(
+            ifnull(apo.MINFLOWWAITMIN,0), -- 最小流转等待时间
+            if(apope.PROCESSWORKSHOPID!=preapope.PROCESSWORKSHOPID,#{workshopcross}, -- 车间流转时间
+            if(apope.PROCESSDEVICEID!=preapope.PROCESSDEVICEID,#{workshopin},0))) MINUTE -- 机台流转时间
+            ) > apope.PLANSTARTDATE
+        )
+        or (apope.PLANSTARTDATE > #{chongpaiEndDate}
+            AND date_add(preapope.PLANENDDATE, -- 前道计划完工时间 + 流转时间 小于 调度结束时间,表示可以在调度时间范围内开工
+            INTERVAL GREATEST(
+            ifnull(apo.MINFLOWWAITMIN,0), -- 最小流转等待时间
+            if(apope.PROCESSWORKSHOPID!=preapope.PROCESSWORKSHOPID,#{workshopcross}, -- 车间流转时间
+            if(apope.PROCESSDEVICEID!=preapope.PROCESSDEVICEID,#{workshopin},0))) MINUTE -- 机台流转时间
+            ) < #{chongpaiEndDate} -- 调度结束时间
+        ) -- 计划调度结束时间之后开工
           AND (apope.PLANENDDATE!=date_add(apope.PLANENDDATE,
                                            INTERVAL TIMESTAMPdiff(SECOND,
                                                                   apope.PLANSTARTDATE,