protected override void OnInitialized(ModelElementBase modelElement) { WorkCenter workCenter = (WorkCenter)modelElement; //headerToConsole(workCenter); headerToFile(workCenter); }
public IHttpActionResult PutWorkCenter(int id, WorkCenter workCenter) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != workCenter.Id) { return(BadRequest()); } WorkCenterServicio servicio = new WorkCenterServicio(); RespuestaServicio <WorkCenterView> respuesta = new RespuestaServicio <WorkCenterView>(); respuesta = servicio.ActualizarWorkCenter(id, workCenter); if (respuesta.EjecucionCorrecta) { return(Ok(respuesta.Respuesta)); } else { return(NotFound()); } }
public List <Lot> GetInitialLots(string wc, string inputDirectory, string outputDirectory, DateTime initialDateTime, WaferFabSettings waferFabSettings) { // Create an instance of a simulation class to retrieve lot steps Simulation simulation = new Simulation("CSSLWaferFabArea", outputDirectory); WaferFab waferFab = new WaferFab(simulation.MyModel, "WaferFab", new ConstantDistribution(60 * 60 * 24), initialDateTime); WorkCenter workCenter = new WorkCenter(waferFab, $"WorkCenter_{wc}", waferFabSettings.WCServiceTimeDistributions[wc], waferFabSettings.LotStepsPerWorkStation[wc]); // Sequences foreach (var sequence in waferFabSettings.Sequences) { waferFab.AddSequence(sequence.Key, sequence.Value); } // LotSteps waferFab.LotSteps = waferFab.Sequences.Select(x => x.Value).Select(x => x.GetCurrentStep(0)).ToDictionary(x => x.Name); // Read initial lots RealSnapshotReader reader = new RealSnapshotReader(); List <RealSnapshot> realSnapshots = reader.Read(Path.Combine(inputDirectory, "SerializedFiles", reader.GetRealSnapshotString(initialDateTime)), 1); RealSnapshot realSnapShot = realSnapshots.Where(x => x.Time == initialDateTime).First(); List <RealLot> initialRealLots = realSnapShot.GetRealLots(1).Where(x => x.LotActivity.WorkStation == wc).ToList(); List <Lot> initialLots = initialRealLots.Select(x => x.ConvertToLotArea(0, waferFabSettings.Sequences, initialDateTime)).ToList(); return(initialLots); }
public void SaveWorkCenter(Sender sender, SaveWorkCenterArgs args) { try { using (ObjectProxy op = new ObjectProxy(true)) { WorkCenter obj = new WorkCenter(); obj.WorkCenterID = args.WorkCenter.WorkCenterID; if (op.LoadWorkCenterByWorkCenterID(obj) == 0) { args.WorkCenter.Created = DateTime.Now; args.WorkCenter.CreatedBy = string.Format("{0}.{1}", sender.UserCode, sender.UserName); args.WorkCenter.Modified = DateTime.Now; args.WorkCenter.ModifiedBy = string.Format("{0}.{1}", sender.UserCode, sender.UserName); op.InsertWorkCenter(args.WorkCenter); } else { args.WorkCenter.Modified = DateTime.Now; args.WorkCenter.ModifiedBy = string.Format("{0}.{1}", sender.UserCode, sender.UserName); op.UpdateWorkCenterByWorkCenterID(args.WorkCenter); } op.CommitTransaction(); } } catch (Exception ex) { PLogger.LogError(ex); throw ex; } }
public string GetSpec(string sampleName) { try { QCSample sample = db.Select <QCSample>(new QCSample { SampleName = sampleName }); if (string.IsNullOrEmpty(sample.Description_CN)) { return(""); } WorkCenter workCenter = db.Select <WorkCenter>(new WorkCenter { LabID = sample.LabID, Lang = "CN" }); Category category = db.Select <Category>(new Category { TypeID = sample.TypeID, Lang = "CN" }); return(string.Format("({0}){1}-{2}", workCenter.LabID, workCenter.LabName, category.TypeName)); } catch (Exception e) { log.Error(e); throw new Exception(e.Message); } }
static void Main(string[] args) { string directory = @"C:\Users\nx008314\OneDrive - Nexperia\Work\WaferFab\"; // Load data InputData inputData = new InputData(directory + "CSVs"); // Build the model Simulation sim = new Simulation("WaferFab", directory + "Results"); WaferFab waferFab = new WaferFab(sim.MyModel, "WaferFab"); waferFab.LotStarts = inputData.LotStarts; waferFab.LotSteps = inputData.LotSteps; foreach (var wc in inputData.WorkCentersData) { WorkCenter workCenter = new WorkCenter(waferFab, $"WorkCenter_{wc.Key}", new ExponentialDistribution(wc.Value), inputData.LotStepsPerWorkStation[wc.Key]); workCenter.SetDispatcher(new BQFDispatcher(workCenter, workCenter.Name + "_BQFDispatcher")); waferFab.AddWorkCenter(workCenter.Name, workCenter); } //foreach(var sequence in inputData.SequencesData) //waferFab.AddSequence() //int stop = 0; }
protected override void OnInitialized(ModelElementBase modelElement) { Writer.Write("Simulation Time\tComputational Time\tQueue Length"); WorkCenter workCenter = (WorkCenter)modelElement; queueLength.UpdateValue(workCenter.TotalQueueLength); }
protected void ODS_WorkCenter_Updating(object sender, ObjectDataSourceMethodEventArgs e) { WorkCenter workCenter = (WorkCenter)e.InputParameters[0]; WorkCenter oldWC = TheWorkCenterMgr.LoadWorkCenter(WorkCenterCode); workCenter.Party = oldWC.Party; workCenter.Type = ((Controls_TextBox)(this.FV_WorkCenter.FindControl("tbType"))).Text; }
public SeperateQueuesObserver(Simulation mySimulation, WorkCenter workCenter) : base(mySimulation) { foreach (LotStep step in workCenter.LotSteps) { queueLengths.Add(step, new Variable <int>(this)); queueLengthsStatistic.Add(step, new WeightedStatistic("QueueLength_" + step.Name)); } }
public ActionResult DeleteConfirmed(int id) { WorkCenter workCenter = db.WorkCenters.Find(id); db.WorkCenters.Remove(workCenter); db.SaveChanges(); return(RedirectToAction("Index")); }
public void ListView(object sender) { string region = ((object[])sender)[0].ToString(); string workcenter = ((object[])sender)[1].ToString(); string para_starttime = ((object[])sender)[2].ToString(); string para_endtime = ((object[])sender)[3].ToString(); DateTime starttime = DateTime.Now; DateTime endtime = DateTime.Now; if (region != "") { Region r = TheRegionMgr.LoadRegion(region); if (r == null) { ShowWarningMessage("MasterData.WorkCalendar.WarningMessage.RegionInvalid", region); return; } } if (workcenter != "") { WorkCenter r = TheWorkCenterMgr.LoadWorkCenter(workcenter); if (r == null) { ShowWarningMessage("MasterData.WorkCalendar.WarningMessage.WorkCenterInvalid", workcenter); return; } } try { starttime = Convert.ToDateTime(para_starttime); } catch (Exception) { ShowWarningMessage("MasterData.WorkCalendar.WarningMessage.StartTimeInvalid"); return; } try { endtime = Convert.ToDateTime(para_endtime); } catch (Exception) { ShowWarningMessage("MasterData.WorkCalendar.WarningMessage.EndTimeInvalid"); return; } if (DateTime.Compare(starttime, endtime) > 0) { ShowWarningMessage("MasterData.WorkCalendar.WarningMessage.TimeCompare"); return; } List <WorkCalendar> workCalendars = TheWorkCalendarMgr.GetWorkCalendar(starttime, endtime, region, workcenter); this.GV_List.DataSource = workCalendars; this.GV_List.DataBind(); GridViewHelper.GV_MergeTableCell(GV_List, new int[] { 0, 1 }); }
protected override void OnReplicationEnd(ModelElementBase modelElement) { WorkCenter workCenter = (WorkCenter)modelElement; queueLength.UpdateValue(workCenter.TotalQueueLength); QueueLengthStatistic.Collect(queueLength.PreviousValue, queueLength.Weight); Writer?.WriteLine($"{workCenter.GetTime},{queueLength.Value}"); }
protected override void OnUpdate(ModelElementBase modelElement) { WorkCenter workCenter = (WorkCenter)modelElement; queueLength.UpdateValue(workCenter.TotalQueueLength); queueLengthStatistic.Collect(queueLength.PreviousValue, queueLength.Weight); Writer.Write(workCenter.GetTime + "\t" + workCenter.GetWallClockTime + "\t" + queueLength.Value); }
public RespuestaServicio <WorkCenterView> PostWorkCenter(WorkCenter workCenter) { RespuestaServicio <WorkCenterView> respuesta = new RespuestaServicio <WorkCenterView>(); _context.WorkCenters.Add(workCenter); _context.SaveChanges(); respuesta = GetWorkCenter(workCenter.Id); return(respuesta); }
private void writeToConsole(WorkCenter workCenter) { Console.Write(workCenter.GetTime + "\t" + workCenter.GetWallClockTime + "\t"); foreach (LotStep step in workCenter.LotSteps) { Console.Write(queueLengths[step] + "\t"); } Console.Write("\n"); }
protected override void OnInitialized(ModelElementBase modelElement) { Writer?.WriteLine("Simulation Time,Queue Length"); WorkCenter workCenter = (WorkCenter)modelElement; queueLength.UpdateValue(workCenter.InitialLots.Count()); Writer?.WriteLine($"{workCenter.GetTime},{queueLength.Value}"); }
protected override void OnUpdate(ModelElementBase modelElement) { WorkCenter workCenter = (WorkCenter)modelElement; LotStep step = workCenter.LastArrivedLot.GetCurrentStep; queueLengths[step].UpdateValue(workCenter.Queues[step].Length); queueLengthsStatistic[step].Collect(queueLengths[step].PreviousValue, queueLengths[step].Weight); writeToFile(workCenter); }
public ActionResult Edit([Bind(Include = "WorkCenterId,WorkCenterLocation")] WorkCenter workCenter) { if (ModelState.IsValid) { db.Entry(workCenter).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(workCenter)); }
private void writeToFile(WorkCenter workCenter) { Writer?.Write(workCenter.GetTime + "," + workCenter.GetWallClockTime + ","); foreach (LotStep step in workCenter.LotSteps) { Writer?.Write(queueLengths[step].Value + ","); } Writer?.Write("\n"); }
public IActionResult ChangeActiveStatus(WorkCenter workCenter, bool ActiveStatus) { var result = (_workCenterServices.ChangeActiveStatus(workCenter, ActiveStatus)); if (result.Success) { return(Ok(result.Success)); } return(BadRequest(result.Message)); }
public SeperateQueuesObserver(Simulation mySimulation, WorkCenter workCenter, string name) : base(mySimulation, name) { queueLengths = new Dictionary <LotStep, Variable <int> >(); queueLengthsStatistic = new Dictionary <LotStep, WeightedStatistic>(); foreach (LotStep step in workCenter.LotSteps) { queueLengths.Add(step, new Variable <int>(this)); queueLengthsStatistic.Add(step, new WeightedStatistic("QueueLength_" + step.Name)); } }
protected void FV_WorkCenter_DataBound(object sender, EventArgs e) { WorkCenter wc = TheWorkCenterMgr.LoadWorkCenter(this.WorkCenterCode); ((Literal)(this.FV_WorkCenter.FindControl("lbCurrentParty"))).Text = wc.Party.Code; Controls_TextBox tbType = (Controls_TextBox)(this.FV_WorkCenter.FindControl("tbType")); tbType.ServiceParameter = "string:" + BusinessConstants.CODE_MASTER_WORKCENTER_TYPE; tbType.DataBind(); tbType.Text = wc.Type; }
public IActionResult Update(WorkCenter workCenter) { var result = _workCenterServices.Update(workCenter); if (result.Success) { return(Ok(result.Success)); } return(BadRequest(result.Message)); }
protected override void OnReplicationStart(ModelElementBase modelElement) { WorkCenter workCenter = (WorkCenter)modelElement; foreach (LotStep step in workCenter.LotSteps) { queueLengths[step].Reset(); // Uncomment below if one want to save across replication statistics queueLengthsStatistic[step].Reset(); } }
public ActionResult Create([Bind(Include = "WorkCenterId,WorkCenterLocation")] WorkCenter workCenter) { if (ModelState.IsValid) { db.WorkCenters.Add(workCenter); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(workCenter)); }
public IActionResult Add(WorkCenter workCenter) { var result = (_workCenterServices.Add(workCenter)); if (result.Success) { return(Ok(result.Success)); } return(BadRequest(result.Message)); }
private void headerToFile(WorkCenter workCenter) { Writer?.Write("Simulation Time,Computational Time,"); foreach (LotStep step in workCenter.LotSteps) { queueLengths[step].UpdateValue(workCenter.Queues[step].Length); Writer?.Write(step.Name + ","); } Writer?.Write("\n"); }
public ActionResult Edit(WorkCenter workCenter) { if (ModelState.IsValid) { db.Entry(workCenter).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.IdBussinesUnit = new SelectList(db.BussinesUnits, "Id", "Nombre", workCenter.IdBussinesUnit); ViewBag.IdResponsable = new SelectList(db.Personas.Select(x => new { Id = x.Id, Nombre = x.Nombre + " " + x.Apellido1 + " " + x.Apellido2 }).OrderBy(x => x.Nombre), "Id", "Nombre", workCenter.IdResponsable); return(View(workCenter)); }
protected override void Execute(NativeActivityContext context) { BLL bll = new BLL(); if (bll.CheckForSAPMapping(WorkCenter.Get(context))) { Console.WriteLine("Workcenter present"); Result.Set(context, true); } else { Result.Set(context, false); } }
public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } WorkCenter workCenter = db.WorkCenters.Find(id); if (workCenter == null) { return(HttpNotFound()); } return(View(workCenter)); }
public void DeleteWorkCenter(WorkCenter workCenter) { WorkCenterMgr.DeleteWorkCenter(workCenter); }
public void CreateWorkCenter(WorkCenter workCenter) { WorkCenterMgr.CreateWorkCenter(workCenter); }
public virtual void CreateWorkCenter(WorkCenter entity) { entityDao.CreateWorkCenter(entity); }
public virtual void UpdateWorkCenter(WorkCenter entity) { entityDao.UpdateWorkCenter(entity); }
public virtual void DeleteWorkCenter(WorkCenter entity) { entityDao.DeleteWorkCenter(entity); }
protected void ODS_WorkCenter_Inserting(object sender, ObjectDataSourceMethodEventArgs e) { workCenter = (WorkCenter)e.InputParameters[0]; workCenter.Party = ThePartyMgr.LoadParty(this.ParentCode); workCenter.Type = ((Controls_TextBox)(this.FV_WorkCenter.FindControl("tbType"))).Text; }
public void UpdateWorkCenter(WorkCenter workCenter) { WorkCenterMgr.UpdateWorkCenter(workCenter); }