internal static void WriteAcidDensityLog(FabAoEquipment eqp, FabLot lot, AcidAlter alter, float alterQty, DateTime inTime, string status) { Outputs.AcidDensityLog row = new AcidDensityLog(); row.VERSION_ID = ModelContext.Current.VersionNo; row.FACTORY_ID = eqp.FactoryID; row.SHOP_ID = eqp.ShopID; row.EQP_ID = eqp.EqpID; row.EQP_GROUP = eqp.TargetEqp.EqpGroup; row.IN_TIME = inTime; row.STATUS = status; row.LOT_ID = lot.LotID; row.PRODUCT_ID = lot.CurrentProductID; row.STEP_ID = lot.CurrentStepID; row.UNIT_QTY = lot.UnitQty; row.CURRENT_DENSITY = eqp.AcidDensity.CurrentAcid; row.USED_DENSITY = alterQty; row.ALTER_DENCITY = alter != null ? alter.DENSITY_ALTER : 0; row.INIT_DENSITY = eqp.AcidDensity.InitAcid; row.MAX_DENSITY = eqp.AcidDensity.ChangeDensity; OutputMart.Instance.AcidDensityLog.Add(row); }
internal static void OnBegingProcessing(AoEquipment aeqp, FabLot lot) { FabAoEquipment eqp = aeqp.ToFabAoEquipment(); AcidAlter alter = GetAcidAlter(eqp.ShopID, eqp.TargetEqp.EqpGroup, lot.CurrentProductID, lot.CurrentStepID); if (alter == null) { return; } float alterQty = alter.DENSITY_ALTER * lot.UnitQty; if (alter.ALTER_TYPE != "UP") { eqp.AcidDensity.CurrentAcid -= alterQty; } else { eqp.AcidDensity.CurrentAcid += alterQty; WriteAcidDensityLog(eqp, lot, alter, alterQty, aeqp.NowDT, "BUSY"); } }