|
@@ -466,15 +466,17 @@
|
|
and apo.PROCESS in ('中退','成退','小卷成退')
|
|
and apo.PROCESS in ('中退','成退','小卷成退')
|
|
and apope.WORKSTATUS = '待开工'
|
|
and apope.WORKSTATUS = '待开工'
|
|
and apope.PLANSTARTDATE >= #{chongpaiStartDate} -- 调度开始时间之后计划开工
|
|
and apope.PLANSTARTDATE >= #{chongpaiStartDate} -- 调度开始时间之后计划开工
|
|
- AND (ifnull(apope.PREVIOUSPROCESSESIDS,'')='' -- 没有前道
|
|
|
|
- and apope.PLANSTARTDATE < DATE_ADD(#{chongpaiStartDate}, INTERVAL 3 DAY) -- 调度开始时间+5天内计划开工
|
|
|
|
- OR ifnull(apope.PREVIOUSPROCESSESIDS,'')!='' -- 有前道
|
|
|
|
- and preapope.PLANSTARTDATE <= #{chongpaiStartDate} -- 前道计划开工时间在调度开始时间之前,表示该作业是需要调度的作业的第一道
|
|
|
|
- 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.PLANSTARTDATE <= #{chongpaiEndDate} OR
|
|
|
|
+ (ifnull(apope.PREVIOUSPROCESSESIDS,'')='' -- 没有前道
|
|
|
|
+ and apope.PLANSTARTDATE < DATE_ADD(#{chongpaiStartDate}, INTERVAL 3 DAY)) -- 调度开始时间+5天内计划开工
|
|
|
|
+ OR (ifnull(apope.PREVIOUSPROCESSESIDS,'')!='' -- 有前道
|
|
|
|
+ and preapope.PLANSTARTDATE <= #{chongpaiStartDate} -- 前道计划开工时间在调度开始时间之前,表示该作业是需要调度的作业的第一道
|
|
|
|
+ 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}) -- 调度结束时间之前可以开工
|
|
)
|
|
)
|
|
</select>
|
|
</select>
|
|
<select id="selectNeedRescheduleEqu3"
|
|
<select id="selectNeedRescheduleEqu3"
|
|
@@ -490,15 +492,17 @@
|
|
and apo.PROCESS not in ('铸轧','中退','成退','小卷成退')
|
|
and apo.PROCESS not in ('铸轧','中退','成退','小卷成退')
|
|
and apope.WORKSTATUS = '待开工'
|
|
and apope.WORKSTATUS = '待开工'
|
|
and apope.PLANSTARTDATE >= #{chongpaiStartDate} -- 调度开始时间之后计划开工
|
|
and apope.PLANSTARTDATE >= #{chongpaiStartDate} -- 调度开始时间之后计划开工
|
|
- AND (ifnull(apope.PREVIOUSPROCESSESIDS,'')='' -- 没有前道
|
|
|
|
- and apope.PLANSTARTDATE < DATE_ADD(#{chongpaiStartDate}, INTERVAL 3 DAY) -- 调度开始时间+5天内计划开工
|
|
|
|
- OR ifnull(apope.PREVIOUSPROCESSESIDS,'')!='' -- 有前道
|
|
|
|
|
|
+ AND (
|
|
|
|
+ apope.PLANSTARTDATE <= #{chongpaiEndDate} OR
|
|
|
|
+ (ifnull(apope.PREVIOUSPROCESSESIDS,'')='' -- 没有前道
|
|
|
|
+ and apope.PLANSTARTDATE < DATE_ADD(#{chongpaiStartDate}, INTERVAL 3 DAY)) -- 调度开始时间+5天内计划开工
|
|
|
|
+ OR (ifnull(apope.PREVIOUSPROCESSESIDS,'')!='' -- 有前道
|
|
and preapope.PLANSTARTDATE <= #{chongpaiStartDate} -- 前道计划开工时间在调度开始时间之前,表示该作业是需要调度的作业的第一道
|
|
and preapope.PLANSTARTDATE <= #{chongpaiStartDate} -- 前道计划开工时间在调度开始时间之前,表示该作业是需要调度的作业的第一道
|
|
and date_add(preapope.PLANENDDATE, -- 前道计划完工时间 + 流转时间 小于 调度结束时间
|
|
and date_add(preapope.PLANENDDATE, -- 前道计划完工时间 + 流转时间 小于 调度结束时间
|
|
INTERVAL GREATEST(ifnull(apo.MINFLOWWAITMIN,0), -- 最小流转等待时间
|
|
INTERVAL GREATEST(ifnull(apo.MINFLOWWAITMIN,0), -- 最小流转等待时间
|
|
if(apope.PROCESSWORKSHOPID!=preapope.PROCESSWORKSHOPID,#{workshopcross}, -- 车间流转时间
|
|
if(apope.PROCESSWORKSHOPID!=preapope.PROCESSWORKSHOPID,#{workshopcross}, -- 车间流转时间
|
|
if(apope.PROCESSDEVICEID!=preapope.PROCESSDEVICEID,#{workshopin},0))) MINUTE -- 机台流转时间
|
|
if(apope.PROCESSDEVICEID!=preapope.PROCESSDEVICEID,#{workshopin},0))) MINUTE -- 机台流转时间
|
|
- ) <= #{chongpaiEndDate} -- 调度结束时间之前可以开工
|
|
|
|
|
|
+ ) <= #{chongpaiEndDate}) -- 调度结束时间之前可以开工
|
|
)
|
|
)
|
|
</select>
|
|
</select>
|
|
</mapper>
|
|
</mapper>
|