예제 #1
0
        private DateTime GetAvailableTime(FabWipInfo wip, string holdCode, DateTime holdStartTime, bool isSubStepHold = false)
        {
            DateTime planStartTime = ModelContext.Current.StartTime;

            if (holdStartTime == DateTime.MinValue)
            {
                holdStartTime = planStartTime;
            }

            float holdTime = HoldMaster.GetHoldTime(wip.ShopID, holdCode);

            DateTime holdEndTime = holdStartTime.AddMinutes(holdTime);

            if (holdEndTime > planStartTime)
            {
                return(holdEndTime);
            }

            //SubStep Wip의 경우 기준 HoldTime 이후에도 SubStep에 존재시 기본 HoldTime을 추가 반영함(2020.03.05 - by.liujian(유건))
            if (isSubStepHold)
            {
                var defaultSubStepHoldTime = SiteConfigHelper.GetDefaultSubStepHoldTime();
                return(planStartTime.AddMinutes(defaultSubStepHoldTime.TotalMinutes));
            }

            return(planStartTime);
        }