예제 #1
0
        public static List <FabStep> GetPrevSteps(this FabStep currnetStep, string productID)
        {
            List <FabStep> result = new List <FabStep>();

            if (currnetStep.IsArrayShop && currnetStep.IsFirst)
            {
                return(result);
            }

            foreach (FabStep item in currnetStep.GetInnerPrevSteps())
            {
                result.Add(item);
            }

            FabProduct prod = BopHelper.FindProduct(currnetStep.ShopID, productID);

            FabInterBom bom;

            prod.TryGetPrevInterRoute(currnetStep, out bom);

            if (bom != null)
            {
                result.Add(bom.ChangeStep);
            }

            return(result);
        }
예제 #2
0
        private static void WriteAdditionalSubStep(FabProduct nextProd, FabStep currentStep, FabStep prvStep, float idx)
        {
            var prevSteps = currentStep.GetInnerPrevSteps();

            if (prevSteps != null)
            {
                foreach (FabStep subStep in prevSteps)
                {
                    if (subStep.IsMainStep)
                    {
                        continue;
                    }

                    if (prvStep != null && subStep == prvStep)
                    {
                        continue;
                    }

                    WriteProductRoute(nextProd, subStep, idx - 0.5f);
                }
            }
        }