Exemple #1
0
        /// <summary>
        /// </summary>
        /// <param name="pegPart"/>
        /// <returns/>
        public Step GETLASTPEGGINGSTEP(Mozart.SeePlan.Pegging.PegPart pegPart)
        {
            MicronBETestBEPegPart pp      = pegPart as MicronBETestBEPegPart;
            MicronBETestProcess   process = pp.Product.Process as MicronBETestProcess;

            return(process.LastStep);
        }
Exemple #2
0
        /// <summary>
        /// </summary>
        /// <param name="pegPart"/>
        /// <param name="isRun"/>
        /// <param name="handled"/>
        /// <param name="prevReturnValue"/>
        /// <returns/>
        public TimeSpan GET_TAT0(Mozart.SeePlan.Pegging.PegPart pegPart, bool isRun, ref bool handled, TimeSpan prevReturnValue)
        {
            MicronBETestBEPegPart pp = pegPart as MicronBETestBEPegPart;
            double tat = FindHelper.FindTAT(pp.Product.LineID, pp.Product.ProductID, pp.CurrentStep.StepID, isRun);

            return(TimeSpan.FromSeconds(tat));
        }
Exemple #3
0
        internal static void WriteStepTarget(Mozart.SeePlan.Pegging.PegPart pegPart, bool isOut)
        {
            MicronBETestBEPegPart pp = pegPart as MicronBETestBEPegPart;

            foreach (MicronBETestBEPegTarget target in pegPart.PegTargetList)
            {
                MicronBETestBEMoPlan   moPlan   = target.Mo as MicronBETestBEMoPlan;
                MicronBETestBEMoMaster moMaster = moPlan.MoMaster as MicronBETestBEMoMaster;

                StepTarget info = new StepTarget();

                info.LINE_ID    = pp.Product.LineID;
                info.PRODUCT_ID = pp.Product.ProductID;
                info.PROCESS_ID = pp.CurrentStep.RouteID;
                info.STEP_ID    = pp.CurrentStep.StepID;

                if (isOut)
                {
                    info.OUT_QTY = Convert.ToDecimal(target.Qty);
                }
                else
                {
                    info.IN_QTY = Convert.ToDecimal(target.Qty);
                }

                info.TARGET_DATE   = target.DueDate;
                info.MO_PRODUCT_ID = moPlan.ProductID;

                OutputMart.Instance.StepTarget.Add(info);
            }
        }
Exemple #4
0
        /// <summary>
        /// </summary>
        /// <param name="pegPart"/>
        /// <param name="handled"/>
        /// <param name="prevReturnValue"/>
        /// <returns/>
        public double GET_YIELD0(Mozart.SeePlan.Pegging.PegPart pegPart, ref bool handled, double prevReturnValue)
        {
            MicronBETestBEPegPart pp = pegPart as MicronBETestBEPegPart;
            double yield             = FindHelper.FindYield(pp.Product.LineID, pp.Product.ProductID, pp.CurrentStep.StepID);

            return(yield);
        }
Exemple #5
0
        /// <summary>
        /// </summary>
        /// <param name="pegPart"/>
        /// <param name="isRun"/>
        /// <param name="handled"/>
        /// <param name="prevReturnValue"/>
        /// <returns/>
        public IList <Mozart.SeePlan.Pegging.IMaterial> GET_WIPS0(Mozart.SeePlan.Pegging.PegPart pegPart, bool isRun, ref bool handled, IList <IMaterial> prevReturnValue)
        {
            MicronBETestBEPegPart pp = pegPart as MicronBETestBEPegPart;

            List <IMaterial> wips = new List <IMaterial>();

            ICollection <MicronBETestPlanWip> wipList;

            if (InputMart.Instance.MicronBETestPlanWip.TryGetValue(pegPart.CurrentStep.StepID, out wipList))
            {
                foreach (MicronBETestPlanWip wip in wipList)
                {
                    if (wip.Qty <= 0)
                    {
                        continue;
                    }


                    if (pp.Product.ProductID != wip.Product.ProductID)
                    {
                        continue;
                    }


                    if (isRun)
                    {
                        if (wip.Wip.CurrentState != EntityState.RUN)
                        {
                            continue;
                        }
                    }
                    else
                    {
                        if (wip.Wip.CurrentState != EntityState.WAIT)
                        {
                            continue;
                        }
                    }

                    wips.Add(wip);

                    wip.MapCount++;
                }
            }

            return(wips);
        }
Exemple #6
0
        /// <summary>
        /// </summary>
        /// <param name="pegPart"/>
        /// <param name="handled"/>
        /// <param name="prevReturnValue"/>
        /// <returns/>
        public PegPart PREPARE_TARGET0(PegPart pegPart, ref bool handled, PegPart prevReturnValue)
        {
            MergedPegPart mp = new MergedPegPart();

            foreach (MicronBETestBEMoMaster moMaster in InputMart.Instance.MicronBETestBEMoMaster.Values)
            {
                MicronBETestBEPegPart pp = new MicronBETestBEPegPart(moMaster, moMaster.Product);

                foreach (MicronBETestBEMoPlan moPlan in moMaster.MoPlanList)
                {
                    MicronBETestBEPegTarget target = new MicronBETestBEPegTarget(pp, moPlan);
                    pp.AddPegTarget(target);
                }

                mp.Merge(pp);
            }

            return(mp);
        }