private static StageElementInstance BuildStage(string id, tStage stage, string casePlanInstanceId) { var planItems = BuildPlanItems(stage, casePlanInstanceId); var result = new StageElementInstance { Id = BaseCasePlanItemInstance.BuildId(casePlanInstanceId, stage.id, 0), Name = stage.name, EltId = id }; foreach (var planItem in planItems) { result.AddChild(planItem); } if (!result.ExitCriterions.Any() && stage.exitCriterion != null) { foreach (var exitCriteria in stage.exitCriterion) { var sEntry = stage.sentry.First(s => s.id == exitCriteria.sentryRef); result.ExitCriterions.Add(new Criteria(exitCriteria.name) { SEntry = BuildSEntry(sEntry) }); } } return(result); }
public ProductionSituationValueUpdateViewModel(tStage t) { this.idStaege = t.idStage; this.badProductValue = t.NumberBadProductValue ?? 0.0; this.niceProductValue = t.NumberNiceProductValue ?? 0.0; this.totalProduction = badProductValue + niceProductValue; }
private static string Serialize(tStage stage) { var xmlSerializer = new XmlSerializer(typeof(tStage)); var strBuilder = new StringBuilder(); using (var txtWriter = new StringWriter(strBuilder)) { xmlSerializer.Serialize(txtWriter, stage); } return(strBuilder.ToString()); }
private static tStage DeserializeStage(string xml) { var xmlSerializer = new XmlSerializer(typeof(tStage)); tStage result = null; using (var txtReader = new StringReader(xml)) { result = (tStage)xmlSerializer.Deserialize(txtReader); } return(result); }
public ProductionSituationModel(tStage stage) { this.badProductValue = stage.NumberBadProductValue ?? 0.0; this.niceProductValue = stage.NumberNiceProductValue ?? 0.0; this.totalProduction = badProductValue + niceProductValue; this.productName = stage.tProduct.tProductCategory.Nome; this.machineName = stage.tMachine.Name; this.machineStateDescription = stage.tMachine.tMachineState.NameState; this.idStage = stage.idStage; users = new List <UserViewModel>(); foreach (tShift item in stage.tShift.ToList()) { users.Add(new UserViewModel(item.tUser)); } }
private static List <BaseCasePlanItemInstance> BuildPlanItems(tStage stage, string casePlanInstanceId) { var planItems = new List <BaseCasePlanItemInstance>(); if (stage.planItem != null) { foreach (var planItem in stage.planItem) { var planItemDef = stage.Items.First(i => i.id == planItem.definitionRef); var flowInstanceElt = BuildPlanItem(planItem.id, planItem.name, planItemDef, casePlanInstanceId); if (planItem.entryCriterion != null) { foreach (var entryCriterion in planItem.entryCriterion) { var sEntry = stage.sentry.First(s => s.id == entryCriterion.sentryRef); flowInstanceElt.EntryCriterions.Add(new Criteria(entryCriterion.name) { SEntry = BuildSEntry(sEntry) }); } } if (planItem.exitCriterion != null) { foreach (var exitCriteria in planItem.exitCriterion) { var sEntry = stage.sentry.First(s => s.id == exitCriteria.sentryRef); flowInstanceElt.ExitCriterions.Add(new Criteria(exitCriteria.name) { SEntry = BuildSEntry(sEntry) }); } } if (planItem.itemControl != null) { var baseTask = flowInstanceElt as BaseTaskOrStageElementInstance; if (planItem.itemControl.manualActivationRule != null && baseTask != null) { var manualActivationRule = new ManualActivationRule(planItem.itemControl.manualActivationRule.name); var condition = planItem.itemControl.manualActivationRule.condition; if (condition != null && condition.Text.Any()) { manualActivationRule.Expression = new CMMNExpression(condition.language, condition.Text.First()); } baseTask.ManualActivationRule = manualActivationRule; } if (planItem.itemControl.repetitionRule != null) { var repetitionRule = new RepetitionRule(planItem.itemControl.repetitionRule.name); var condition = planItem.itemControl.repetitionRule.condition; if (condition != null && condition.Text.Any()) { repetitionRule.Condition = new CMMNExpression(condition.language, condition.Text.First()); } flowInstanceElt.RepetitionRule = repetitionRule; } } planItems.Add(flowInstanceElt); } } return(planItems); }