/// <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); }
/// <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)); }
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); } }
/// <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); }
/// <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); }
/// <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); }