فهرست منبع

aps-调度调整数据sql修改

sucheng 2 ماه پیش
والد
کامیت
1c8f700482
1فایلهای تغییر یافته به همراه16 افزوده شده و 16 حذف شده
  1. 16 16
      cx-aps/cx-aps-common/src/main/resources/mybatis/ApsBlankOrderDao.xml

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

@@ -345,24 +345,24 @@
           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 -- 机台流转时间
+          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} -- 调度结束时间
                     )
-                   )
-            )
+                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!=if( -- 如果前道在调度时间之前开工,并且与前道是连续作业,则移动到前道计划完工时间
                     apope.PROCESSDEVICEID = preapope.PROCESSDEVICEID and ifnull(apo.MINFLOWWAITMIN,0)=0,