Beispiel #1
0
        /// <summary>
        /// </summary>
        /// <param name="handled"/>
        /// <param name="prevReturnValue"/>
        /// <returns/>
        public IList <Mozart.SeePlan.Simulation.IHandlingBatch> GET_WIPS0(ref bool handled, IList <Mozart.SeePlan.Simulation.IHandlingBatch> prevReturnValue)
        {
            List <IHandlingBatch> list = new List <IHandlingBatch>();

            foreach (FabWipInfo wip in InputMart.Instance.FabWipInfo.Values)
            {
                FabStep step = wip.InitialStep as FabStep;

                if (SimHelper.IsTftRunning && step.IsCellShop)
                {
                    continue;
                }
                else if (SimHelper.IsCellRunning && step.IsCellShop == false)
                {
                    continue;
                }

                FabLot lot = CreateHelper.CreateLot(wip, LotState.WIP);
                list.Add(lot);

                if (wip.IsRun)
                {
                    string eqpID = wip.WipEqpID ?? string.Empty;

                    FabEqp eqp;
                    InputMart.Instance.FabEqp.TryGetValue(eqpID, out eqp);
                    if (eqp != null)
                    {
                        eqp.InitRunWips.AddSort(lot, CompareHelper.RunWipComparer.Default);
                    }
                }

                if (SimHelper.IsTftRunning)
                {
                    WipCollector.AddProductByVersion(lot);
                }
            }

            //TODO :  임시로직, CF에 있는 Array제품 버전문제
            if (SimHelper.IsTftRunning)
            {
                foreach (FabLot lot in list)
                {
                    FabProduct prod = lot.FabProduct;


                    if (BopHelper.IsCfShop(lot.Wip.ShopID) && prod.IsArrayShopProduct())
                    {
                        string version = WipCollector.GetVersion(prod.ProductID);

                        if (LcdHelper.IsEmptyID(version) == false)
                        {
                            lot.OrigProductVersion = version;
                        }
                        else
                        {
                            Console.WriteLine();
                        }
                    }
                }
            }

            return(list);
        }